Skip to content

Latest commit

 

History

History
49 lines (32 loc) · 3.3 KB

README.md

File metadata and controls

49 lines (32 loc) · 3.3 KB

A finite element model for calcium reaction-diffusion in a cardiomyocyte

This finite element model simulates reaction-diffusion in an eight-sarcomere representation of a cardiomyocyte during the rising phase (first 30ms) of the calcium transient. This model builds on a previous half-sarcomere model (see Rajagopal et al. 2015 and accompanying code). Calcium (Ca2+) is released from ryanodine receptor (RyR) ion channels into the intracellular volume with an exponential rise and decay model specified in the CellML model found in the input directory. RyR cluster locations, release times (RyRTimelag), and densities (RyRDensity) were simulated for each z-disk location using the RyR-Simulator.

The finite element model solves the reaction-diffusion mechanics of diffusing Ca2+ in several fields: calcium (Ca), fluorophore (F), fluorophore-bound calcium (FCa), calmodulin (CaM), calmodulin-bound calcium (CaMCa), adenosine triphosphate (ATP), ATP-bound calcium (ATPCa), troponin-c (CaTnC).

Two sets of parameters may be explored with the available supporting files:

  • The effect of RyR cluster spacing in low (51 clusters per z-disk) or high (123 clusters per z-disk) cluster density configurations. This is controlled with the 'lowRyRDensity' boolean parameter.
  • The effect of mitochondria acting as barriers to diffusion. This is controlled with the 'mitochondria' boolean parameter.

Usage

This model is written in Python 3. It relies on the Iron library from the OpenCMISS mathematical modelling environment to create, constrain, and solve the finite element model. See the OpenCMISS website and GitHub repository for details on installation, usage, and source code.

The main script checks for the expected mesh files in the input folder and downloads them from online repositories using the Python Requests module if they are not yet present. This works around tracking large binary datasets with git. To run this program without internet access, download the mesh files from the URLs indicated in the resourceLinks dictionary in the main script.

Python modules used in this project:

Author

Contributor(s)

License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

Acknowledgments