我在 matlab 中使用 ode45 和 ode15s 编写了一个代码来求解一个系统。我想知道我是否可以在我的脚本中使用多核(或并行代码)来提高代码的速度。
有人试过吗??
谢谢
最佳答案
不,你不能。
所有数值积分器,包括 ode45
和 friend ,都使用某种形式的迭代方案来求解用户实现的(耦合的)非线性(偏)微分方程。
ode45/15s/..
迭代方案中的每个新步骤(计算系统的新状态)都取决于前一步(系统的旧状态),因此,这些数值积分器无法有效并行化。
唯一可能产生重大影响的加速是优化微分方程的实现。
关于matlab - 是否可以通过 matlab 提高 ODE 求解器的速度? (ode45 ode15s 等),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16527379/