ODE45和时间间隔

时间:2013-04-05 21:59:54

标签: matlab

matlab中的

ODE45函数接受参数:

(function,[tinitial tfinal],yinitial)

但是,我相信,时间跨度是预先确定的。如何为其指定矢量?我的意思是如何解决域1:0.1:5的ODE?

谢谢。

2 个答案:

答案 0 :(得分:1)

您可以为时间跨度指定以下向量,这样,您可以在ode45中说明您希望在特定时间点使用解决方案(此处为每0.001)

tspan = ti:0.001:tf;

输出向量(T,X)将具有与tspan向量一样多的步骤。

(但如果你的意思是你希望求解器采用预定的和恒定的步骤来求解方程式,你就不能这样做。)

答案 1 :(得分:1)

如果您需要指定时间点的值,请转到:

tspan = 1:0.1:5
[T Y] = ode45(odefun, tspan, y0)

T应与tspan相同,Y将是每个时间点的相应值。