是否有可能从matlab提高ODE求解器的速度? (ode45 ode15s等)

我在matlab中编写了一个使用ode45和ode15s来解决系统的代码.我想知道我是否可以在我的脚本中使用多核(或并行代码)来提高代码的速度.

有人试过吗?

谢谢

最佳答案
不,你不能.

所有数值积分器,包括ode45和朋友,使用某种形式的迭代方案来解决用户实现的(耦合的)非线性(部分)微分方程.

ode45 / 15s / ..(计算系统的新状态)的迭代方案中的每个新步骤取决于前一步骤(系统的旧状态),因此,这些数值积分器不能有效地并行化.

您可以做的唯一可能产生重大影响的加速是优化差分方程的实现.

转载注明原文:是否有可能从matlab提高ODE求解器的速度? (ode45 ode15s等) - 代码日志