我想在matlab中解决以下问题
我的问题是经典的强制阻尼谐振子,但问题是振荡器运动的力是先前用MATLAB(带pdepe)计算的时间依赖性。
因此,当我使用ode45解算器时,出现以下错误:Attempted to access Param.Te(1.00004,10); index must be a positive
integer or logical.
我已经通过编写
在我的MATLAB ODE函数中跳过了这个问题dy(1)=1/Param.m.*Param.Te(floor(t+1),10)-Param.nu.*x(1)-Param.wo2.*x(2);
dy(2)=x(1);
而不是
dy(1)=1/Param.m.*Param.Te(t+1,10)-Param.nu.*x(1)-Param.wo2.*x(2);
dy(2)=x(1);
然而,这是一个非常“脏”且不太接近我的函数,我想知道这是否是一种为这个函数获得更好的数据范围的方法,也许是通过推断值,我是这里有点迷失......
谢谢:)
PS:这是我在这个网站上的第一篇文章,如果我忘记了这个主题的任何内容,请告诉我。