2

我想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++ 包是什么?

4

1 回答 1

0

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

在免费库方面,Netlib 中有一些 PDE 求解器,但我从未使用过它们。另一种选择是 C 语言中的数值食谱,我实际上不建议这样做。我见过的最糟糕的数字代码将数字食谱例程用作黑匣子。GSL 是免费的,我已经非常成功地使用它来求解耦合 ODE 系统,但是 GSL 中没有 PDE 求解器。

于 2013-03-23T03:04:30.267 回答