python的有限体积离散化

pyfvm的Python项目详细描述


#PyFvm

[![循环](https://img.shields.io/circleci/project/github/nschloe/pyfvm.svg)(https://circleci.com/gh/nschloe/pyfvm)
[![codecov](https://img.shields.io/codecov/c/github/nschloe/pyfvm.svg)(https://codecov.io/gh/nschloe/pyfvm)
[![代码样式:黑色](https://img.shields.io/badge/code%20style-black-000000.svg)(https://github.com/ambv/black)
[![pypi版本](https://img.shields.io/pypi/v/pyfvm.svg)(https://pypi.org/project/pyfvm)
[![Github之星](https://img.shields.io/github/stars/nschloe/pyfvm.svg?logo=github&;label=stars)(https://github.com/nschloe/pyfvm)


轻松创建有限体积方程系统。

配置文件中指定有限体积公式,pyfvm将为其创建矩阵/右侧或
非线性系统。这个软件包是为每个想快速构造fvm系统的人准备的。

测试
从pyfvm导入pyfvm
语言导入*
从scipy导入meshzoo
稀疏导入linalg
导入meshplex

return[(lambda x:u(x)-0.0,bound界())]





;使用meshzoo创建网格
('out.vtk',point_data={'u':u}
```
此示例使用[meshzoo](https://pypi.org/project/meshzoo)创建
一个简单的网格,但是提供顶点和单元格的任何其他方法都可以正常工作。例如,支持从各种各样的mesh文件中进行读取
(通过[meshio](https://pypi.org/project/meshio)):
```python
mesh,u2;=pyfvm.reader.read('pacman.e')
````
同样,[pyamg](https://github.com/pyamg/pyamg)是一个更快的解决方案
对于这个问题
````
导入pyamg
ml=pyamg.smooted廑aggregation廑u solver(linear廑system.matrix)
u=ml.solve(linear廑system.rhs,tol=1e-10)
```

对于bratu的问题:
`` python,测试
从pyfvm导入pyfvm
从pyfvm.form语言导入*
导入meshzoo
从sympy导入numpy
从sympy导入exp
导入meshplex

bratu类(对象):
def apply(self,u):
返回integrate(lambda x:-n-u-dot-grad(u(x)),集成(lambda x:2.0*exp(u(x)),dv)


def dirichlet(self,u):
return[(u,bound界())]






mesh=meshszoo.矩形(0.0,2.0,0.0,1.0,101,101,51)
mesh=meshplex.meshstri(顶点,单元)



U解算器(U0,rhs):
从scipy.sparse导入linalg
jac=jacobian.get_linear_operator(u0)
返回linalg.spsolve(jac,rhs)

u0=numpy.zeros(len(顶点))
u=pyfvm.newton(f.eval,jacobian_solver,u0)

mesh.write('out.vtk',点“data={'u”:u})
```
请注意,雅可比符号是从“bratu”类中计算出来的。

u0)
```

查看此存储库并键入
```
pytest
```


distribution

以创建新版本

1。点击“版本号”

2。发布到pypi和github:
```
make publish
```

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用JPA从1自动生成id?   java JSONException:CourseVide没有值   在Java中使用身份和访问管理   java观察者设计如何访问方法。调用范围?   试图从Java源代码调用JavaScript函数   java How to Fix无法解析Android中的方法“setContentView”   java如何从非结构化日志文件中提取json字符串?   将java布尔结果转换为字符串值   java无法调试servlet Eclipse+Glassfish   java是检查布尔值数组是否包含true的最快方法   java JFrame不会显示在ubuntu上   面向Web应用的javascript图像编辑   使用Hadoop自定义数据类型biginsghts时出现java EOF异常   选择尽可能多的非重叠段时超出了java时间限制   从Firebase获取数据列表并在不同活动/片段中共享的java最佳实践   使用SimpleCursorAdapter时出现java空指针异常   java以升序将元素插入到多链接列表中   支持TDD的java Eclipse插件   客户端无法从Java代码向服务器发送命令