求解偏微分方程的Python包
py-pde的Python项目详细描述
py pde公司
py-pde
是一个用于求解偏微分方程(pde)的Python包。
这个包为网格提供了类,标量和张量字段可以在这些网格上
定义。关联的微分运算符是使用
numba编译的有限差分实现。这样可以定义,
研究中出现的典型偏微分方程的检验和求解
物理学中的动力系统。软件包的重点在于易于使用
探索偏微分方程的行为。但是,核心计算可以编译
透明地使用numba来提高速度。在
安装
py-pde
在pypi
上可用,因此您应该能够通过
pip
:
pip install py-pde
为了使包的所有功能都可用,您可能还希望 安装以下可选软件包:
^{pr2}$此外,需要安装ffmpeg
来创建电影。在
或者,您可以安装py-pde
到conda
使用conda-forge频道:
conda install -c conda-forge py-pde
使用conda
进行的安装包括所有必需的依赖项,以拥有py-pde
的所有功能。在
使用
一个简单的例子显示了二维扩散方程的演变:
importpdegrid=pde.UnitGrid([64,64])# generate gridstate=pde.ScalarField.random_uniform(grid)# generate initial conditioneq=pde.DiffusionPDE(diffusivity=0.1)# define the pderesult=eq.solve(state,t_range=10)# solve the pderesult.plot()# plot the resulting field
pde也可以通过编写进化率的表达式来指定。 例如 Cahn-Hilliard equation 可以实现为
eq=pde.PDE({'c':'laplace(c**3 - c - laplace(c))'})
它可以用来代替上面例子中的DiffusionPDE
。在
更多信息
- 教程笔记本在tutorials folder
- Examples gallery 对软件包的功能进行了概述
- Full documentation on readthedocs 或者作为a single PDF file。在
- paper published in the Journal of Open Source Software
- 项目
标签: