如何在MATLAB中保持原点在中心进行累积梯形积分?

问题描述 投票:0回答:1

我有向量 top、bottom、mid,我试图将它们与 i 积分,将原点保持在索引 11。

i=0:0.01e-06:1.3e-06;
bottom=cumtrapz(i(11:end),b(11:end));
top=cumtrapz(i(11:end),t(11:end));
mid=cumtrapz(i(11:end),m(11:end));

bottom1=cumtrapz(i(1:11),b(1:11));
top1=cumtrapz(i(1:11),t(1:11));
mid1=cumtrapz(i(1:11),m(1:11));

figure(2)
plot([bottom1 bottom]);hold on
plot([top1 top])
plot([mid1 mid])

然而,剧情看起来并不顺利,一开始就出现了不该有的突变。如何纠正。

matlab numerical-integration
1个回答
1
投票

计算两个单独的积分不是正确的方法。计算积分后,可以根据需要移动 x 轴和 y 轴截距来调整原点。

i = 0:0.01e-06:1.3e-06;
t = rand(size(i));

top = cumtrapz(i,t);

plot(i-i(11), top-top(11))
xline(0)
yline(0)

© www.soinside.com 2019 - 2024. All rights reserved.