Using trapz to calculate the area under part of the whole pulse where y is not zero

14 views (last 30 days)
Hey,
I am trying to calculate the area under the pulse between the two specified minima shown in the picture from the whole pulse. I am wondering is it correct to use trapz here although one of the two specified points doesn't have y=0?
Thanks in advance!

Accepted Answer

Robert Daly
Robert Daly on 4 May 2023
Moved: Mathieu NOE on 4 May 2023
I would run traps on the peak data set between the two end points.
Then I would run traps using a line between the two endpoints to represent the baseline then subtract that from the first result.
peak.x = [1:10]
peak = struct with fields:
x: [1 2 3 4 5 6 7 8 9 10]
peak.y = [2,3,6,20,25,26,20,5,2,1]
peak = struct with fields:
x: [1 2 3 4 5 6 7 8 9 10] y: [2 3 6 20 25 26 20 5 2 1]
figure
plot(peak.x,peak.y)
baseline = interp1(peak.x([1,end]),peak.y([1,end]),peak.x) %interpolate a striaght line between the first and last data points in the peak
baseline = 1×10
2.0000 1.8889 1.7778 1.6667 1.5556 1.4444 1.3333 1.2222 1.1111 1.0000
hold on
plot(peak.x,baseline)
PeakArea = trapz(peak.x,peak.y) - trapz(peak.x,baseline)
PeakArea = 95
  3 Comments
Robert Daly
Robert Daly on 5 May 2023
Edited: Robert Daly on 5 May 2023
trapz(peak.x,peak.y)
will calculate the area under the curve between 0 and the curve.
It doesn't matter if the data doesn't start at zero it will still work (maybe this is what you were asking?). The results will be the area in yellow below.
trapz(peak.x,peak.y) - trapz(peak.x,baseline)
What my example will give you is the area in yellow below. This is commonly what gets done in chemistry for things like integrating peaks in chromatography (this is what I thought you were asking). It ignores the area in below the baseline.
Chen Klein
Chen Klein on 18 Jan 2024
Hey, if my signal has also negative values, will it only calculate the area from the positive values to 0 (on Y-Axes) ? or it will calculate the whole area under the pulse as you showed here ?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!