var*_*tir 5 c++ python boost numerical-methods differential-equations
我最近偶然发现了 boost.odeint 库,我对它的可能性和可配置性感到惊讶。然而,在广泛使用 scipy.integrate.odeint (本质上是 fortran 中 ODEPACK 的包装器)后,我想知道它们的性能如何比较。我知道 boost.odeint 还具有并行化功能,这对于 scipy 来说是不可能的(据我所知),这会大大提高性能,但我要求单核情况。但是,由于在这种情况下我必须将 boost.odeint (使用 cython 或 boost.python)包装到 python 中,也许你们中的某个人已经这样做了?这将是一项伟大的成就,因为所有的分析可能性在 python 中都要先进得多。
据我通过比较 Boost.odeint 和 scipy.integrate.ode 的可用步进器列表可知,两者实现的唯一算法是 Dormand-Prince 五阶步进器dopri5。您可以通过使用此 Cython 包装器到 Boost.odeint来比较该算法在 Python 中的两种实现的效率
(它不会公开 Boost.odeint 提供的所有步进器,但会公开dopri5)。
根据您对“测试性能”的定义,您还可以比较不同的算法,但这显然与比较同一算法的两种实现不同。
| 归档时间: |
|
| 查看次数: |
891 次 |
| 最近记录: |