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

8 次查看(过去 30 天)
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!

采纳的回答

Robert Daly
Robert Daly 2023-5-4
移动:Mathieu NOE 2023-5-4
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 个评论
Robert Daly
Robert Daly 2023-5-5
编辑:Robert Daly 2023-5-5
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 2024-1-18
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 ?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Numerical Integration and Differentiation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by