Skip to main content

一个基于 FEniCS 的 python 库,旨在解决连续介质力学问题,特别是心脏力学问题

项目描述

安装康达 CI 平台 地位 编解码器 pre-commit.ci 状态

脉冲

用于解决心脏力学问题的软件。

概述

pulse是一款基于FEniCS的软件,旨在解决心脏力学问题(但很容易扩展以解决更一般的连续体力学问题)。pulse是作者博士论文的成果,其中代码的大部分相关背景都可以找到。

虽然 FEniCS 提供了解决偏微分方程的通用框架,但pulse专门针对连续介质力学中的问题。因此,应用兼容边界条件、制定控制方程、为解选择合适的空间以及应用迭代策略等大部分代码已经实现,因此用户可以专注于他/她想要解决的实际问题。而不是实现所有必要的代码来制定和求解基础方程。

安装说明

使用 pip 安装

pulse可以直接从PyPI安装

python3  -m pip install fenics-pulse

或者您可以安装最新的开发版本

python3 -m pip install git+https://github.com/finsberg/pulse.git

使用 conda 安装

您也可以使用安装包conda

conda install -c conda-forge pulse

码头工人

也可以使用 Docker。有一个使用 FEniCS、python3.10 和脉冲的开发版本的预构建 docker 镜像。你可以通过输入得到它

docker pull finsberg/pulse:latest

要求

  • FEniCS 版本 2019.1.0 或更高版本(旧版本可能有效,但不再针对它进行测试)

请注意,如果您使用 anaconda 安装 FEniCS,那么您将无法获得对并行 HDF5 的支持,请参见例如此问题

入门

查看演示文件夹中的演示。这些演示目前采用 jupyter notebook 格式。如果您想将它们作为 python 文件运行,您可以.py使用jupytext将笔记本转换为文件

如果您对如何使用该软件有疑问,您可以在讨论部分提出问题或开始新的讨论

自动化测试

文件夹中提供了测试tests。你可以运行测试pytest

python3 -m pytest tests -vv

文档

文档可以在finsberg.github.io/pulsemake html找到。您可以通过在根目录中 键入来自己创建文档。

引用

如果您pulse在自己的研究中使用,请引用JOSS 论文

@article{pulse,
  doi = {10.21105/joss.01539},
  url = {https://doi.org/10.21105/joss.01539},
  year  = {2019},
  month = {sept},
  publisher = {The Open Journal},
  volume = {4},
  number = {41},
  pages = {1539},
  author = {Henrik Finsberg},
  title = {pulse: A python package based on FEniCS for solving problems in cardiac mechanics},
  journal = {The Journal of Open Source Software}
}

已知的问题

  • h5py如果您在尝试卸载它( )时遇到错误,pip uninstall h5py然后在不安装任何二进制包的情况下重新安装它,即
python3 -m pip install h5py --no-binary=h5py

贡献

请参阅CONTRIBUTING.md

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

fenics_pulse-2022.2.1.tar.gz (1.6 MB 查看哈希

已上传 source

内置分布

fenics_pulse-2022.2.1-py2.py3-none-any.whl (1.7 MB 查看哈希

已上传 py2 py3