我试图用interp1来解决我的问题的颂歌...... 我想以前的数据插值到另一个公式......下面 是代码...重采样使用ODE45数据插值在Matlab
function dxdt = newforced(t,x1,d)
dxdt_1 = x1(2);
dxdt_2 = -100*x1(2)-250000*x1(1)+(25000*(d^3)); %data should be interpolated at d
dxdt = [dxdt_1;dxdt_2];
tspan=[0:0.1:100];
d=x(:,1); %x is data sampling from previous ode
initial_x1=0;
initial_dxdt=0;
f=interp1(t,d,x);
[t,x1]=ode45(@newforced,tspan,[initial_x1 initial_dxdt]);
figure
plot(t,x,':')
figure
plot(d,f)
问题:我有2个变量(d和x(:,1)),我想重新采样一个匹配另一个的长度。
以上验证码不工作尽可能多的错误弹出... 有谁能够请指正 感谢
你只是试图重新采样数据,以适应一定的长度? – krisdestruction
yup resample data,but from other ode –
所以,如果我正确地理解了你,你有2个变量,你想重新取样一个匹配另一个的长度?如果是这样,哪两个变量有问题? – krisdestruction