How to integrate imported data with specified limits.

8 visualizzazioni (ultimi 30 giorni)
Hi,
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.
Thanks,
J
  1 Commento
M Herper
M Herper il 5 Ott 2022
Hi,
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

Accedi per commentare.

Risposte (1)

Jiri Hajek
Jiri Hajek il 5 Ott 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!

Translated by