scipy FiPy中迭代求解器的细节是什么?

t40tm48m  于 2023-03-02  发布在  其他
关注(0)|答案(1)|浏览(120)

在fipy中有一个默认的方程求解器,但不清楚是手册中提到的众多可能性中的哪一个。我想知道它遵循什么样的算法(以及什么包- Scipy,Pysparse)?时间步长的积分方案是什么,即它是Euler,RK 2,等等?

8xiog9wr

8xiog9wr1#

使用哪个求解器取决于您安装了什么、使用的平台以及是否并行运行。
您可以确定正在与一起使用的求解程序包

import fipy as fp
print(fp.solvers.solver)

您可以看到默认情况下使用的特定算法

print(fp.DefaultSolver)

对于对称(扩散)方程和

print(fp.DefaultAsymmetricSolver)

用于非对称(对流)方程。
例如,在我的macOS笔记本电脑上,这两个打印

<class 'fipy.solvers.petsc.linearGMRESSolver.LinearGMRESSolver'>

对于时间积分,FiPy执行前向欧拉步骤,尽管our first example说明了如何获得后向欧拉和Crank-Nicolson积分。
我正在开发一个名为Steppyngstounes的相关包,它提供了一些其他可以与FiPy一起使用的时间积分方案。

相关问题