【问题标题】:Integrate differential equations in Matlab在 Matlab 中积分微分方程
【发布时间】:2014-11-28 12:49:51
【问题描述】:

我面临一个问题,我必须解决一个方程组:

\partial A \delta x = f(A) g(B)

\partial B \delta y = h(A) k(B)

其中 f,g,h 和 k 是 A 或 B 的一些函数,并且我有一些初始条件 A(x=0) = a, B (y=0) = b。之前的所有变量都是标量。

我已经解决了这个问题,方法是在一个变量中迈出一小步,然后在另一个变量的整个范围内对另一个方程进行积分(如 ode 例程),然后在前一个变量中再迈出一步,依此类推。

您还有其他更有效的想法吗?是否可以将一个 ode 调用放在另一个调用中运行?或者也许有更优雅的方法,比如将自变量 x 和 y 结合起来,整合一个向量函数,然后撤消更改?我觉得这可以通过某种方式完成。

非常感谢!

【问题讨论】:

标签: matlab numerical-methods differential-equations numerical-integration


【解决方案1】:

在我看来,这就像一个偏微分方程系统。 您可以使用pdepe (here is the documentation) 来解决它,或者您可以在 Np 个点中离散化一维,比如说 x,并在每个点上有一个 y 方程。您会将系统从 2 个方程复杂化为 Np,但将其从 PDE 转换为 ODE,因此可以使用 Matlab 的 ODE 求解。

【讨论】:

    猜你喜欢
    • 2015-08-14
    • 1970-01-01
    • 1970-01-01
    • 2015-02-13
    • 1970-01-01
    • 2017-10-16
    • 2016-09-20
    • 1970-01-01
    • 2021-04-20
    相关资源
    最近更新 更多