【问题标题】:is there a c++ library for ordinary differential equation (ODE) solvers?是否有用于常微分方程 (ODE) 求解器的 c++ 库?
【发布时间】:2011-10-01 18:55:48
【问题描述】:

更具体地说,我对基于 Runge-Kutta 和刚性方程的 8 阶 Dormand-Prince 嵌入式方法感兴趣。

我使用 Numerical Recipes 3,但我经常在编译他们的库时遇到问题。我想知道替代方案。

【问题讨论】:

    标签: c++ numerical-methods ode differential-equations


    【解决方案1】:

    你也可以试试odeint。它具有经典的 Runge-Kutta 求解器、用于刚性系统的 Rosenbrock4 和一些多步方法。它只是标头,但您需要 boost 库。

    【讨论】:

    【解决方案2】:

    GNU Scientific Library 有多个微分方程求解器。他们有一个使用Prince-Dormand。它是用 C 语言编写的,所以编译它应该不会有问题。

    【讨论】:

    • 一个小提示:GSL 的 DP 步进器是明确的,可能不太适合具有非常不同时间尺度的刚性问题。您可以考虑使用隐式方法进行测试(GSL 有一些)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-28
    • 2020-01-21
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    • 1970-01-01
    • 2019-02-14
    相关资源
    最近更新 更多