我有以下任意数据:
t=[0 1 2 3 4 5 6 7 8 9 10 12 14];
C=[0 1 5 8 10 8 6 4 3.0 2.2 1.5 0.6 0];
area=trapz(t,C);
E=C./area;
F=cumtrapz(t,E);
现在,我想平滑这些情节:
t_int=[];
E_int=[];
F_int=[];
xmin=min(t);
xmax=max(t);
points=5000;
stepSize=(xmax-xmin)/points;
for i=xmin:stepSize:xmax
t_int=[t_int i];
E_int=[E_int interp1(t, E, i,'pchip')];
F_int=[F_int interp1(t, F, i,'pchip')];
end
好的,所以我们在这里找到问题所在的实际部分。 实际上,我有一些F情节,我想获得相应的E图。 由于F曲线是E的积分,因此E是微分F曲线。
那么:
dy=diff(F_int);
dx=diff(t_int);
dydx = dy./dx;
plot(t_int(:,1:length(dydx)),dydx,t_int,E_int)
legend('E (calculated)','E (actual)')
为什么计算出的E曲线如此糟糕?