Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Thread Subject:
Calculating SI and HIC

Subject: Calculating SI and HIC

From: Scott

Date: 15 Aug, 2010 14:11:03

Message: 1 of 4

Severity Index (SI) in mathematical form is:
SI=(integrate from 0 to T) a(t)^2.5 dt
where a(t) is acceleration history from 0<t<T
Head Injury Criterion (HIC) in mathematical form is:
HIC=max[(t2-t1)[1/t2-t1 * (integrate from t2 to t1) a(t) dt]^2.5]
where t1 and t2 are two instants in time and the criteria chooses whichever t1 and t2 gives a max HIC.

How do I write a general purpose routine in MATLab that can plot acceleration time history and calculate SI and HIC values for each impact from a set of data files?

Subject: Calculating SI and HIC

From: Roger Stafford

Date: 15 Aug, 2010 18:33:04

Message: 2 of 4

"Scott " <boofheadfenn@hotmail.com> wrote in message <i48shn$4oo$1@fred.mathworks.com>...
> Severity Index (SI) in mathematical form is:
> SI=(integrate from 0 to T) a(t)^2.5 dt
> where a(t) is acceleration history from 0<t<T
> Head Injury Criterion (HIC) in mathematical form is:
> HIC=max[(t2-t1)[1/t2-t1 * (integrate from t2 to t1) a(t) dt]^2.5]
> where t1 and t2 are two instants in time and the criteria chooses whichever t1 and t2 gives a max HIC.
>
> How do I write a general purpose routine in MATLab that can plot acceleration time history and calculate SI and HIC values for each impact from a set of data files?
- - - - - - - - - -
  If you have acceleration as a single vector for evenly-spaced times or a vector of acceleration values and along with associated times, to find SI you can use trapz with a single argument or two arguments, respectively, using a^2.5 as an integrand.

  HIC is more difficult. For it you will need cumtrapz for a(t) as integrand. Then you need to construct a matrix of all possible combinations of t1 < t2 of the above quantity with zeros in the other elements. The integral values from various t1 to t2 can be obtained by appropriate differences from among the cumtrapz values. Then find the max of this matrix. Or instead of a matrix you could just use two nested for-loops calculating the same quantities to develop a maximum.

  The plotting I leave to you.

Roger Stafford

Subject: Calculating SI and HIC

From: Scott

Date: 24 Aug, 2010 10:21:04

Message: 3 of 4

Could you please explain the two for-nested loops a bit better. I have imported my data and calculated SI no worries. It's calculating HIC that's got me a little stumped.

Regards,
Scott

Subject: Calculating SI and HIC

From: Roger Stafford

Date: 24 Aug, 2010 23:16:07

Message: 4 of 4

"Scott " <boofheadfenn@hotmail.com> wrote in message <i506eg$ft8$1@fred.mathworks.com>...
> Could you please explain the two for-nested loops a bit better. I have imported my data and calculated SI no worries. It's calculating HIC that's got me a little stumped.
>
> Regards,
> Scott
- - - - - - - - -
  Suppose a and t are two vectors of the same length in which the a elements are acceleration and t elements are the corresponding times.

 v = cumtrapz(t,a); % Velocity added from time t(1)
 n = length(a);
 hic = -inf;
 for it = 1:n-1
  for jt = it+1:n
   h = (t(jt)-t(it))*((v(jt)-v(it))/(t(jt)-t(it)))^2.5;
   if h > hic
    hic = h;
   end
  end
 end

  The quantity v(jt)-v(it) here is giving you the integral of a from t(it) to t(jt), as obtained from cumtrapz.

Roger Stafford

Tags for this Thread

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Contact us