我有358个数字的向量。我想对该向量进行数值积分,但我不知道该向量的功能。

我发现我们可以使用trapz或quad,但是我真的不了解如何在没有该功能的情况下进行集成。

最佳答案

如果知道矢量的水平间距,则可以使用trapz来集成它而无需使用该函数。例如,要将358个段中的y=sin(x)从0集成到pi,

x=0:pi/357:pi;
y=sin(x);
area=trapz(x,y);

如果仅使用trapz(y),则会得到更大的数字,因为假定点之间的默认距离为1。可以通过乘以x点之间的距离来解决此问题:
area=pi/357*trapz(y);

10-04 13:56