我最近在boost.odeint库上搞砸了,我对可能性和可配置性的数量感到惊讶。但是,广泛使用scipy.integrate.odeint(这实际上是fortran中ODEPACK的包装)我想知道他们的表现如何比较。我知道boost.odeint也带有并行化,这是scipy(据我所知)不可能提高性能然后很多,但我要求单核心情况。 但是,因为在这种情况下我必须将boost.odeint(使用cython或boost.python)包装到python中,也许有人已经这样做了吗?这将是一个很好的成就,因为所有的分析可能性在python中都要先进得多。
答案 0 :(得分:0)
据我所知,通过比较可用的步进器列表
Boost.odeint和scipy.integrate.ode,两者实现的唯一算法是
Dormand-Prince五阶步进,dopri5
。你可以比较一下
使用Python在Python中实现这两种算法的效率
this Cython wrapper到Boost.odeint(它没有暴露所有的
由Boost.odeint提供的步进器,但确实暴露了dopri5
)。
根据您对“测试性能”的定义,您还可以进行比较 不同的算法,但这显然与比较不一样 两种相同算法的实现。