跳转到主要内容

模拟血管中的血流

项目描述

AstroVascPy Logo

AstroVascPy

AstroVascPy 是一个用于计算血管(整个皮层柱)中的血压和血流的 Python 库。AstroVascPy 集成了星形胶质细胞末梢对血管半径的影响。特别是,AstroVascPy 复制了血管半径因血管扩张而产生的动态变化。

AstroVascPy 使用 vascpy 点图表示法访问存储在 h5 文件(sonata 格式)中的血管数据库。

vascpy 标准化了血管数据集的 API。点状血管(点图)表示法基本上是两个 pandas 数据帧的组合,一个用于节点属性(x, y, z, 半径,其他...),另一个用于边属性(起始节点,结束节点,其他...)。

输入

  • 点图血管
  • 对应的 ID 的末梢位置
  • 末梢位置的血管半径(可能取决于模拟时间)

输出

  • 血管每个节点的血压(节点向量)
  • 每个段的血流(边向量)

安装(Linux & MacOS)

AstroVascPy 可以在这里 git 克隆

https://github.com/BlueBrain/astrovascpy

要么在本地运行,要么在 BB5 中运行

source setup.sh

安装AstroVascPy求解器(及其所有依赖项)并设置环境。对于本地安装(工作站),请在运行上述命令之前安装 conda注意:每次使用求解器之前都要运行此命令,以确保正确设置环境。

后端求解器:使用 export BACKEND_SOLVER_BFS='petsc'export BACKEND_SOLVER_BFS='scipy',用户可以选择线性系统的后端求解器。 注意:PETSc 本身是并行的,而SciPy 不是。因此,只有在使用 petsc 时,使用MPI运行血液流动求解器才有意义!

血液流动求解器(BFS)调试:通过输入 export DEBUG_BFS=1,我们同时运行PETSc和SciPy,并比较它们的结果。要禁用此行为,请输入 export DEBUG_BFS=0(默认行为)。

用法

可以使用以下方式运行代码

python3 compute_static_flow_pressure.py

加载架构图

可以使用 examples 文件夹内的 load_graph_archngv.py 脚本来加载架构图并将其转换为pickle二进制格式。以以下方式运行脚本:

python3 load_graph_archngv.py --filename_ngv "path_to_ngv_circuit" --output_graph "output_graph_name.bin"

Sonata报告

报告结构:这是血管的一个特定类型的隔室报告。在每个时间步长,我们存储血液流动、血压和血管每个段落的半径,共3个报告。以下是这些实体的单位:-流动(µm^3.s^-1)-压力(g.µm^-1.s^-2)-半径(µm)

作者

Stéphanie Battini,Nicola Cantarutti,Christos Kotsalos和Tristan Carel

到Bio-arxiv文章的链接

资助和致谢

本软件的开发得到了瑞士政府ETH委员会对洛桑联邦理工学院(EPFL)的Blue Brain项目的资助。

我们感谢Alessandro Cattabiani,Thomas Delemontex和Eleftherios Zisis对代码和工程支持的审查。

版权(c)2023-2023 Blue Brain Project/EPFL

项目详情


下载文件

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

源分发

astrovascpy-0.1.6.tar.gz (47.8 kB 查看散列值)

上传时间

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面