什么 ODE 求解器使用步进函数中的计算进行插值?

发布于 2024-12-08 10:26:07 字数 247 浏览 0 评论 0原文

我对具有不同初始条件的 ODE 的多个解进行平均,因此所有解同时具有值​​非常重要;例如,增量为 0.01。

我一直在使用数值食谱 3 (nr3) 中的 ODE 例程。他们进行自适应大小步长并使用计算值进行相同顺序的插值。我不能使用它们,因为它们与升压冲突。还有其他类似的套路吗?

我看了 GSL,它非常好,但它没有内置插值。我可以做到的一种方法是用自适应大小求解 ODE,然后运行 ​​Akima 插值。但看起来 nr3 解决方案会更快、更准确。

I average over a multiple solutions of ODEs that have different initial conditions, so it's important for all of the solutions to have values at the same times; for example, at an increment of 0.01.

i've been using ODE routines from numerical recipes 3 (nr3). they do adaptive size-step and use the calculated values to do the same order of interpolation. i can't use them because they conflict with boost. are there any other similar routines?

i looked at GSL, it's very nice but it doesn't have a built in interpolation. one way i can do it is solve the ODE with an adaptive size and than run Akima interpolation. But it seems like nr3 solution would be faster and more accurate.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

贪恋 2024-12-15 10:26:07

您可以使用 odeint。它具有用于密集输出的 Dopri5、Rosenbrock4 和 Burlish-Stoer。

You can use odeint. It has Dopri5, Rosenbrock4 and Burlish-Stoer for dense output.

私藏温柔 2024-12-15 10:26:07

I have used DOPRI5 from http://www.unige.ch/~hairer/software.html with dense output = interpolation. I found it reliable. I used the original version (in Fortran); there is also a C version on the same webpage which I haven't used myself but I seem to remember that people were happy with it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文