我对垫子实验室很陌生,我正在努力掌握曲线下的积分。
我想看看使用"trapz(y(">和"trapz(x,y("来查找高斯函数曲线下的面积之间的区别,我似乎无法理解的是为什么我得到两个不同的面积值,我试图弄清楚哪个更准确。
dataset = xlsread('Lab 3 Results 11.10.18 (1).xlsx','Sheet3','C6:D515');
x=dataset(:,1);
a1=38.38;
b1=1179;
c1=36.85;
d1=6.3
y=a1*exp(-((x-b1)/c1).^2)-d1;
int1=trapz(x,y)
int2=trapz(y)
因此,当我运行此代码时,我得到 int1=1738.3 和 int2=5.78.4,但是当我使用梯形规则手动集成此功能时,我的 ans 更接近 int1 而不是 int2 如果可能的话,有没有人可以对此有所了解?我只是无法想象 matlab 如何以两种不同的方式使用 trapz 规则,
这两种实现都不是更准确的,但trapz(y)
假设每个数据点的单位间距(例如,数据点之间的间距均匀 x = 1(。请参阅 trapz 文档。
由于您知道 x 坐标,请使用trapz(x,y)
。