用于求解 C/C++ 中非线性反抛物偏微分方程的软件包

Package to solve nonlinear antiparabolic PDE in C/C++

本文关键字:微分方程 软件包 非线性 C++ 用于      更新时间:2023-10-16

我想解决双变量函数f(q,y)的以下PDE

d f(q,y) / dq + 1/2 (d^2f(q,y)/dy^2 + x(q)*(df(q,y)/dy)^2) = 0,

在间隔-inf < y < inf, 0<=q<=1 和边界条件f(1,y) = g(y),其中g(y)是一个已知的函数。

用数值求解这个方程的最佳 C/C++ 包是什么?

如果您可以访问NAG库,请尝试它们(昂贵(。 如果您的大学/公司/研究所拥有正确类型的许可证,NAG的人员将为您提供帮助。 我遇到了来自NAG的人,他们对技术支持非常认真。 有些人对NAG图书馆发誓;我几乎不用过它们,因为它们太贵了,而且我总是担心我的下一份工作无法使用它们,所以我不想依赖它们。

在自由库方面,Netlib 中有一些 PDE 求解器,但我从未使用过它们。 另一种选择是 C 中的数字配方,我实际上会推荐它。 我见过的最糟糕的数字代码使用数字配方例程作为黑匣子。 GSL 是免费的,我已经非常成功地使用它来求解耦合常微分方程系统,但 GSL 中没有偏微分方程求解器。