【发布时间】:2016-05-01 04:23:16
【问题描述】:
我正在处理一些关于速度、加速度等的问题,包括给定数据点的曲线拟合、插值等。我需要找到二阶导数,加速度,给定时间和距离点。在用 100 个点进行三次拟合后,我目前正在使用以下代码找到速度。
time = [0:12];
altitude = [0,107.37,210.00,307.63,400.00,484.60,550.00,583.97,580.00,549.53,...
570.00,699.18,850];
newTime = linspace(0,12,100);
rcubic = polyfit(time,altitude,3);
vrcubic = polyval(rcubic,newTime);
velocity = polyval(polyder(rcubic),newTime);
但是,当我应用相同的公式来尝试获得加速度时,下面的代码,我得到的答案是 110 次方的顺序
acceleration = polyval(polyder(velocity,newTime));
是我没有正确找到速度,还是我的加速方法错误,如果是,我该如何解决。
【问题讨论】:
-
如果解决了您的问题,请accept the answer。
标签: matlab plot graph derivative