How to integrate imported data with specified limits.

26 views (last 30 days)
I am studying switchies losses during swithcing transients of certain devices. I have imported the swithcing data from a different software an uploded it into MATLAB. I am trying to calcuate the area under the curve from the data that has been imported. I have used the Trapz rule and can find out the area under the whole curve, however when I am struggling to apply limits.
I have also looked at the integration Funciton however, I dont know how to run my waveform into a specific function.
I have included the full wavform, and then a section of it, which I wish to calculate the area under.
  1 Comment
M Herper
M Herper on 5 Oct 2022
trapz integrates the whole array, so you can create a subset of the array to be integrated.
Here a little code sample:
lower_limit = 2;
upper_limit = 4;
stepsize = 1;
t = lower_limit:stepsize:upper_limit;
raw_data = [1 1 1 1 1 1 1 1]
data_to_be_integrated = raw_data(lower_limit:upper_limit)
trapz(t, data_to_be_integrated) % ans = 2
cumtrapz(t, data_to_be_integrated) % ans = 1x3: 0 1 2

Sign in to comment.

Answers (1)

Jiri Hajek
Jiri Hajek on 5 Oct 2022
If you data is e.g. X,Y, both vectors 1:N, you can create suitable subinterval by assigning Xsub = X(i1:i2), Ysub = Y(i1:i2) and then applying the trapz function on these new data vectors.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!