我可以从ODE系统开始解决DDE吗?

时间:2016-09-26 13:32:37

标签: matlab ode dde

我有一个由4个方程和5个参数组成的系统,我想在ODE系统中包含一个时间延迟,但我认为如果我从已经使用的ODE系统开始解决DDE系统会更好。 有没有办法在MATLAB中连接这两个系统?

我试过这种语法:

[t, y] = dde23('ODEfinal', [0 12000], [4*C 0 0 0]);

但MATLAB每次都会标记错误。

1 个答案:

答案 0 :(得分:1)

您的语法似乎不正确。这应该是这样的:

[t,y] = dde23(@function, <lags>, @history, <tspan>),其中

@function是你的ODE函数句柄 <lags>是一个常量数组,用于指定函数中每个变量的延迟 @history是一个函数,它返回t<=t0系统的解决方案,以下列方式之一指定:

  • t的函数,y = history(t)返回解y(t) t ≤ t0作为列向量
  • 常量列向量,如果y(t)是常量
  • 来自先前集成的解决方案sol,如果此调用 继续整合 <tspan>为您的解决方案指定t0tend

使用dde求解器查看Matlab page。此外,在Matlab中键入edit ddex1将向您显示使用求解器和辅助函数的示例。