我想解决以下PDE
对于二元函数 f(q,y)
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 中的数字食谱,我实际上不建议这样做。我见过的最糟糕的数字代码将 Numerical Recipes 例程用作黑匣子。 GSL 是免费的,我已经非常成功地使用它求解耦合 ODE 系统,但 GSL 中没有 PDE 求解器。
关于c++ - 在 C/C++ 中求解非线性反抛物线 PDE 的包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15238352/