我正在解决一个像
y''(t) + ay(t) + b = 0
使用 Matlab 的ode45
求解器。它迭代直到找到满足错误标准的解决方案。我想读取y
每个步骤中的前一个值进行比较。
最好的方法是什么?
我的主要文件是
[t,y] = ode45(@odefnc,tspan,[0 0]',options);
而且odefnc
是
function dx=odefnc(t,x)
...
if history(end)<13
dx=[x(2),-a*x(1)-b]'
else
dx=[x(2),-c*x(1)-d]'
end
if flag==1
history(end+1)=dx;
end