Skip to main content
BMC Bioinformatics logoLink to BMC Bioinformatics
. 2023 Apr 12;24:143. doi: 10.1186/s12859-023-05260-w

lifex-fiber: an open tool for myofibers generation in cardiac computational models

Pasquale Claudio Africa 1,, Roberto Piersanti 1, Marco Fedele 1, Luca Dede’ 1, Alfio Quarteroni 1,2
PMCID: PMC10091584  PMID: 37046208

Abstract

Background

Modeling the whole cardiac function involves the solution of several complex multi-physics and multi-scale models that are highly computationally demanding, which call for simpler yet accurate, high-performance computational tools. Despite the efforts made by several research groups, no software for whole-heart fully-coupled cardiac simulations in the scientific community has reached full maturity yet.

Results

In this work we present lifex-fiber, an innovative tool for the generation of myocardial fibers based on Laplace-Dirichlet Rule-Based Methods, which are the essential building blocks for modeling the electrophysiological, mechanical and electromechanical cardiac function, from single-chamber to whole-heart simulations. lifex-fiber is the first publicly released module for cardiac simulations based on lifex, an open-source, high-performance Finite Element solver for multi-physics, multi-scale and multi-domain problems developed in the framework of the iHEART project, which aims at making in silico experiments easily reproducible and accessible to a wide community of users, including those with a background in medicine or bio-engineering.

Conclusions

The tool presented in this document is intended to provide the scientific community with a computational tool that incorporates general state of the art models and solvers for simulating the cardiac function within a high-performance framework that exposes a user- and developer-friendly interface. This report comes with an extensive technical and mathematical documentation to welcome new users to the core structure of lifex-fiber and to provide them with a possible approach to include the generated cardiac fibers into more sophisticated computational pipelines. In the near future, more modules will be successively published either as pre-compiled binaries for x86-64 Linux systems or as open source software.

Keywords: Computational cardiology, High-performance computing, Cardiac fibers, Mathematical modeling, Finite element methods

Background

The human heart function is a complex system involving interacting processes at the molecular, cellular, tissue, and organ levels with widely varying time scales. For this reason, it is still among the most arduous modeling and computational challenges in a field where in silico models and experiments are essential to reproduce both physiological and pathological behaviors [1].

A satisfactorily accurate model for the whole cardiac function must be able to describe a wide range of different processes, such as: the propagation of the trans-membrane potential and the flow of ionic species in the myocardium, the deformation caused by the muscle contraction, the dynamics of the blood flow through the heart chambers and cardiac valves [2]. In particular, the dynamics of ionic species needs for accurate models specifically designed to reproduce physiological [3] and pathological scenarios [4, 5] (such as the ten Tusscher–Panfilov [6] and the Courtemanche-Ramirez-Nattel [7] ionic models for ventricular/atrial cells, respectively).

These demanding aspects make whole-heart fully-coupled simulations computationally intensive and call for simpler yet accurate, high-performance computational tools.

In this work we introduce lifex-fiber, an innovative tool for the generation of myocardial fibers based on lifex [8], an open-source, high-performance Finite Element (FE) numerical solver for multi-physics, multi-scale and multi-domain differential problems. It is written in C++ using the most modern programming techniques available in the C++17 standard and is built upon the deal.II1 [9] FE core. The code is natively parallel and designed to run on diverse architectures, ranging from laptop computers to High Performance Computing (HPC) facilities and cloud platforms. We tested our software on a cluster node endowed with 192 cores based on Intel Xeon Gold 6238R, 2.20 GHz, available at MOX, Dipartimento di Matematica, Politecnico di Milano, and on the GALILEO100 supercomputer available at CINECA (Intel CascadeLake 8260, 2.40GHz, see https://wiki.u-gov.it/confluence/display/SCAIUS/UG3.3%3A+GALILEO100+UserGuide for more technical specifications).

Despite being conceived as an academic research library in the framework of the iHEART project (see Section “Funding”), lifex is intended to provide the scientific community with a Finite Element solver for real world applications that boosts the user and developer experience without sacrificing its computational efficiency and generality.

Since its initial development, lifex has served as the core block to build several modules for the simulation of the cardiac function, such as electrophysiology, mechanics, electromechanics, blood fluid dynamics, and myocardial perfusion [8], as displayed in Fig. 1. Such models have been recently exploited for a variety of standalone or coupled simulations both under physiological and pathological conditions (see, e.g., [4, 5, 1017]).

Fig. 1.

Fig. 1

lifex modules: the library provides core functionalities and a framework for the numerical solution of the Finite Element problems described in Section “Laplace-Dirichlet rule-based methods”. lifex-fiber is the first publicly released heart module based on lifex

As the present release focuses on modeling the cardiac fibers, in the next two paragraphs we will briefly review the physiology of myofibers and the most used mathematical methods to model them, describing in detail their implementation which is included within lifex-fiber.

Cardiac fibers: physiology and modeling

The heart is a four chambers muscular organ whose function is to pump the blood throughout the whole circulatory system. The upper chambers, the right and left atria, receive incoming blood. The lower chambers, the right and left ventricles, pump blood out of the heart and are more muscular than atria. The left heart (i.e. left atrium and left ventricle) pumps the oxygenated blood through the systemic circulation, meanwhile the right heart (i.e. right atrium and right ventricle) recycles the deoxygenated blood through the pulmonary circulation [1, 2]. The atria and the ventricles are separated by the atrioventricular valves (mitral and tricuspid valves) that regulate the blood transfer from the upper to lower cavities. The four chambers are connected to the circulatory system: the ventricles with the aorta through the aortic valve and pulmonary artery via the pulmonary valve; the left atrium with the left and right pulmonary veins, whereas the right atrium with superior and inferior caval veins [1, 2].

The heart wall is made up of three layers: the internal thin endocardium, the external thin epicardium and the thick muscular cardiac tissue, the myocardium. Most of the myocardium is occupied by cardiomyocytes, striated excitable muscle cells that are joined together in linear arrays. The result of cluster cardiomyocytes, locally organized as composite laminar sheets, defines the orientation of muscular fibers (also called myofibers). Aggregations of myofibers give rise to the fiber-reinforced heart structure defining the cardiac muscular architecture [18, 19].

A schematic representation of the multiscale myocardial fiber-structure is shown in Fig. 2. Ventricular muscular fibers are well-organized as two intertwined spirals wrapping the heart around, defining the characteristic myocardial helical structure [20, 21]. Local orientation of myofibers is identified by their angle on the tangent plane and on the normal plane of the heart, called the helical and the sheet angles, respectively [18, 22]. The transition inside the myocardial wall is characterized by a continuous, almost linear change in helical angle from about 60 at the epicardium to nearly -60 at the endocardium [18, 21].

Fig. 2.

Fig. 2

a Representation of the multiscale cardiac muscle. b Anatomical dissection of myocardial fibers in ventricles (top) and atria (bottom). Images taken and readapted from [5457]. Images were available either freely under a Creative Commons Attribution license or have been granted reuse permission by the copyright holder

Atrial fibers architecture is very different from that of the ventricles, where myofibers are aligned in a regular pattern [18]. Indeed, myofibers in the atria are arranged in individual bundles running along different directions throughout the wall chambers [23, 24]. Preferred orientation of myofibers in the human atria is characterized by multiple overlapping structures, which promote the formation of separate attached bundles [25], as shown in Fig. 2.

The cardiac muscular fiber architecture is the backbone of a proper pumping function and has a strong influence on the electric signal propagation throughout the myocardium and also on the mechanical contraction of the muscle [2629]. This motivates the need to accurately include fibers orientation in cardiac computational models in order to obtain physically sound results [3, 17, 30].

Due to the difficulty of reconstructing cardiac fibers from medical imaging, different methodologies have been proposed to provide a realistic surrogate of myofibers orientation [21, 3139]. Among these, atlas-based methods map and project a detailed fiber field, previously reconstructed on an atlas, on the geometry of interest, exploiting imaging or histological data [21, 34, 39]. However, these methods require complex registration algorithms and their results depend on the original atlas data upon which they have been built.

Alternative strategies for generating myofiber orientations are the Rule-Based Methods (RBMs) [3, 32, 3537, 4042]. RBMs describe fiber orientations with mathematically sound rules based on histological and imaging observations and only require information about the myocardial geometry [18]. These methods parametrize the transmural and apico-basal directions in the entire myocardium in order to assign orthotropic (longitudinal, transversal and normal) myofibers [3].

A particular class of RBMs, which relies on the solution of Laplace boundary-value problems, is known as Laplace-Dirichlet Rule-Based Methods (LDRBMs), addressed in [3133] and recently analyzed under a unified mathematical formulation [3]. LDRBMs define the transmural and apico-basal directions by taking the gradient of harmonic functions (the potentials) corresponding to suitable Dirichlet boundary conditions. These directions are then properly rotated to match histological observations [18, 20, 21, 23].

This initial release includes a generator for myocardial fibers based on LDRBMs [3], with application to a number of different prototypical and realistic geometries (slab models, left ventricles and left atria).

Laplace-Dirichlet rule-based methods

In this section, we briefly recall the LDRBMs that stand behind the myocardial fiber generation. In Section “Results and discussion” we will present several examples where we elaborate on how to reproduce and run the algorithms presented hereafter.

This getting started guide presents LDRBMs for (ventricular and spherical) slabs, (based and complete) left ventricular and left atrial geometries. For further details about the LDRBMs presented here see also [3].

The following common steps are the building blocks of all LDRBMs.

1. Labeled mesh:
A labeled volumetric mesh of the domain Ω must be provided to define specific partition of the boundary Ω as
Ω=ΓepiΓendoΓbaseΓapex,
where Γendo is the endocardium, Γepi is the epicardium, Γbase is the basal plane and Γapex is the apex, which are demarcated through proper surface labels included in the input mesh. lifex is designed to support both hexahedral and tetrahedral labeled meshes in the widely used *.msh format [8], see Fig. 3. This type of mesh can be generated by a variety of mesh generation software (e.g. gmsh,2netgen,3vmtk4 and meshtools5). Otherwise, other mesh-format types can be converted in *.msh using for example the open-source library meshio.6

Fig. 3.

Fig. 3

a Hexahedral mesh of a ventricular slab. b Tetrahedral mesh of a realistic left atrium [38]

Epicardium and endocardium:

for the ventricular slab geometry Γendo and Γepi are the lateral walls of the slab, see Fig. 4a; for the spherical slab, the ventricular and atrial geometries Γendo and Γepi are the internal and external surfaces, see Fig. 4b–f.

Basal plane and apex:

for the ventricular slab geometry Γbase and Γapex are the top and bottom surfaces, respectively (see Fig. 4a); for the spherical slab, Γbase and Γapex are selected as the north and south pole points of the epicardial sphere (see Fig. 4b); for the based ventricular geometry Γbase is an artificial basal plane located well below the cardiac valves (see Fig. 4d), whereas for the complete ventricular geometry Γbase is split into Γmv and Γav, representing the mitral and aortic valve rings, respectively (see Fig. 4e); for the ventricular geometries Γapex is selected as the epicardial point furthest from the ventricular base (see Fig. 4d, e); for the atrial geometry Γbase is the mitral valve ring and Γapex represents the apex of the left atrial appendage (see Fig. 4c–f);

Atrial pulmonary rings:

the atrial geometry type also requires the definition of the boundary labels for the left Γlpv and right Γrpv pulmonary vein rings, see Fig. 4c–f.

2. Transmural direction:
A transmural distance ϕ is defined to compute the distance of the epicardium from the endocardium, by means of the following Laplace-Dirichlet (LD) problem:
-Δϕ=0,inΩ,ϕ=1,onΓepi,ϕ=0,onΓendo,ϕ·n=0,onΩ\(ΓendoΓepi). 1
Then, the transmural distance gradient ϕ is used to build the unit transmural direction:
e^t=ϕϕ.
3. Normal direction:
A normal (or apico-basal) direction k (which is directed from the apex towards the base) is introduced and used to build the unit normal direction e^n:
e^n=k-(k·e^t)e^tk-(k·e^t)e^t.
The normal direction k can be computed following one of these approaches (see also Fig. 5):
  • Rossi-Lassila (RL) et al. approach [31]: k is defined as the vector nbase, i.e. the outward normal to the basal plane, that is k=nbase.

  • Bayer-Trayanova (BT) et al. approach [32]: k is the gradient of the solution ψ (k=ψ), which can be obtained by solving the following LD problem:
    -Δψ=0,inΩ,ψ=1,onΓbase,ψ=0,onΓapex,ψ·n=0,onΩ\(ΓbaseΓapex). 2
  • Doste et al. approach [33]: k is a weighted sum of the apico-basal (ψab) and apico-outflow-tract (ψot) directions, obtained using an interpolation function w:
    k=wψab+(1-w)ψot,
    where ψab and ψot are obtained by solving LD problems in the form of (2) where Γbase=Γmv (for ψab) and Γbase=Γav (for ψot), respectively. Moreover, the interpolation function w is obtained by solving:
    -Δw=0,inΩ,w=1,onΓmvΓapex,w=0,onΓav,w·n=0,onΩ\(ΓavΓmvΓapex).
  • Piersanti et al. approach [3]: for each point in Ω, a unique normal direction k is selected among the gradient of several normal directions k=ψi (i=ab,v,r), where ψi are obtained by solving the following LD problem
    -Δψi=0,inΩ,ψi=χa,onΓa,ψi=χb,onΓb,ψi·n=0,onΩ\(ΓaΓb). 3
    Please refer to [3] for further details about the selection procedure for k and the specific choices of χa, χb, Γa and Γb in problem (2) made for ψi (i=ab,v,r).

Fig. 4.

Fig. 4

Labeled meshes. a Ventricular slab. b Spherical slab. c Idealized left atrium. d Idealized based left ventricle. e Realistic complete left ventricle. f Realistic left atrium. Γbase denotes the basal plane, Γapex the apex, Γendo the endocardium, Γepi the epicardium, Γlpv, Γrpv the left (right) pulmonary veins, respectively

Fig. 5.

Fig. 5

Different types of normal distances: a Bayer-Trayanova et al. approach [32]. b Doste et al. approach [33]. (c) Piersanti et al. approach [3]

The BT approach is used in the ventricular and spherical slab geometry types, see also Fig. 5a. The BT and RL approaches can be adopted in the based ventricular geometry (by setting either Algorithm type equal to BT or RL in the parameter file, respectively), whereas the Doste approach is used in the complete ventricular geometry, see also Fig. 5b. Finally, the Piersanti approach is employed for the atrial geometry, see also Fig. 5c.

4. Local coordinate system:
For each point of the domain an orthonormal local coordinate axial system is defined by e^t, e^n and the unit longitudinal direction e^l (orthogonal to the previous ones), as shown in Fig. 6:
Q=e^l,e^n,e^t=e^t=ϕϕ,e^n=k-(k·e^t)e^tk-(k·e^t)e^t,e^l=e^n×e^t. 4
5. Axis rotation:
The reference frame is rotated with the purpose of defining the myofibers orientation: f the fiber direction, n the sheet-normal direction and s the sheet direction. Specifically, e^l rotates counter-clockwise around e^t by the helical angle α, whereas the transmural direction e^t is rotated counter-clockwise around e^l by the sheetlet angle β, see Fig. 6:
e^l,e^n,e^tf,n,s,
The rotation angles follow the linear relationships:
α(ϕ)=αendo(1-ϕ)+αepiϕ,β(ϕ)=βendo(1-ϕ)+βepiϕ,
where αendo, αepi, βendo, βepi are suitable helical and sheetlet rotation angles on the epicardium and endocardium (specifying in the parameter file alpha epi, alpha endo, beta epi, beta endo). Moreover, for the complete ventricular geometry it is possible to set specific fiber and sheet angle rotations in the outflow tract (OT) region (i.e. around the aortic valve ring) by specifying alpha epi OT, alpha endo OT, beta epi OT, beta endo OT). Finally, for the atrial geometry type, no transmural variation in the myofibers direction is prescribed and the three unit directions correspond to the final myofibers directions [e^l,e^n,e^t]=[f,n,s].

Fig. 6.

Fig. 6

Representation of the local coordinate system employed by a LDRBM for an idealized ventricular domain. Only directions on the endocardium Γendo are represented. In blue: unit transmural direction, e^t. In green: unit normal direction, e^n. In red: unit longitudinal direction, e^l. Right: zoom on a slab of the left ventricular myocardium showing the three final myofibers orientations f, s and n

In order to represent the fiber architecture, LDRBMs use the gradient of specific intra-chamber distances, by means of harmonic problems, combined with a precise definition of boundary sections where boundary conditions are prescribed. This strategy makes the fibers less open to subjective variability. On the other hand, the myofiber orientations could be adapted to a patient-specific setting by simply changing the parameters involved in LDRBMs (e.g. the helical and sheetlet angles α and β). Therefore, unlike other RBMs requiring manual or semi-automatic interventions, LDRBMs can be easily applied to any arbitrary patient-specific geometry [3].

Comparison to existing software

Several packages have been developed and are available in the framework of cardiac fibers generation.

Meshtools7 [43] is a comand-line tool designed to automate image-based mesh generation and manipulate tasks in cardiac modeling workflows, such as operations on label fields and/or geometric features; it integrates seamlessly with the openCARP8 ecosystem [44]; the algorithms supported are only for left ventricular geometries and of BT type. KIT-IBT-LDRB_Fibers9 is a MATLAB tool for generating left and bi-ventricular fibers; the original BT algorithm was adapted to eliminate a discontinuity in the fiber field in correspondence of the free walls and to yield a fiber rotation that is directly proportional to the transmural Laplace solution (approximately linear across the wall) [45]. CARDIO SUITE for GIMIAS10 includes tools for patient-specific modelling that allow to generate the FE meshes required for the simulations and to build additional structures such as fiber orientation [46]; at the time of writing and to the best of our knowledge, the latest version was released in 2016. SimCardio11 is advertised as the only fully open-source software package providing a complete pipeline from medical image data segmentation to patient specific blood flow simulation and analysis; its module svFSI supports specifying distributed fiber and sheet direction generated by BT-like rule-based algorithms.

Poisson interpolation algorithms [35] have inspired the implementation of fiber generation packages, despite being generally more computationaly demanding than, e.g., RL or BT algorithms [31]. This class of methods has been implemented in Cardiac Chaste,12 which supports automatic generation of mathematical model for fiber orientation associated with both idealized and anatomically-based geometry meshes [47], and in BeatIt,13 which is to our knowledge the only publicly available software which natively supports the generation of fiber architectures also for atrial geometries [48].

Compared to the software described above, the strengths of lifex-fiber reside in its user-friendly interface and in its generality, by supporting either idealized and realistic, (left) ventricular and atrial geometries and for each of them the user can selected one of the different state-of-the-art algorithms described in Section “Laplace-Dirichlet rule-based methods”. Finally, lifex-fiber offers a seamless integration with many other cardiac core models based on lifex (such as electrophysiology, mechanics, electromechanics, and blood fluid dynamics) for modeling the cardiac function from single-chamber to whole-heart simulations which will be targeted by future releases.

Implementation

In this section we introduce the technical specifications of lifex-fiber as well as a thorough documentation of the user interface exposed. The users will be guided from downloading it to running a full simulation of the algorithms presented in Section “Laplace-Dirichlet rule-based methods”

Technical specifications

Here we specify the package content, copyright and licensing information and software and hardware specifications required by lifex-fiber.

Package content

lifex-fiber is shipped in binary form as an AppImage14 executable.

This provides a universal package for x86-64 Linux operating systems, without the need to deliver different distribution-specific versions. From the user’s perspective, this implies an effortless download-then-run process, without having to manually take care of installing the proper system dependencies required.

Once the source code will be made publicly accessible, a standard build-from-source procedure with automatic installers will be available to make the dependencies setup tailored to the specific hardware of HPC facilities or cloud platforms.

License and third-party software

This work is copyrighted by the lifex-fiber authors and licensed under the Creative Commons Attribution Non-Commercial No-Derivatives 4.0 International License.15

lifex-fiber makes use of third-party libraries. Please note that such libraries are copyrighted by their respective authors (independent of lifex and lifex-fiber authors) and are covered by various permissive licenses.

The third-party software bundled with (in binary form), required by, copied, modified or explicitly used in lifex-fiber include the following packages [8]:

  • lifex16: the open-source, high-performance framework providing the core functionalities for the numerical solution of the Finite Element problems described in Section “Laplace-Dirichlet rule-based methods”;

  • Boost17: its modules Filesystem and Math are used for manipulating files/directories and for advanced mathematical functions and interpolators, respectively;

  • deal.II18: it provides support to mesh handling, assembling and solving Finite Element problems (with a main support to third-party libraries as PETSc19 and Trilinos20 for linear algebra data structures and solvers) and to input/output functionalities;

  • VTK21: it is used for importing external surface or volume input data and coefficients appearing in the mathematical formulation.

Some of the packages listed above, as stated by their respective authors, rely on additional third-party dependencies that may also be bundled (in binary form) with lifex-fiber, although not used directly. These dependencies include: ADOL-C,22ARPACK-NG,23BLACS,24Eigen,25FFTW,26GLPK,27HDF5,28HYPRE,29METIS,30MUMPS,31NetCDF,32OpenBLAS,33ParMETIS,34ScaLAPACK,35Scotch,36SuiteSparse,37SuperLU,38oneTBB,39p4est.40

The libraries listed above are all free software and, as such, they place few restrictions on their use. However, different terms may hold. Please refer to the content of the folder doc/licenses/ for more information on license and copyright statements for these packages.

Finally, an MPI installation (such as OpenMPI41 or MPICH42) may also be required to successfully run lifex executables in parallel.

Software and hardware requirements

As an AppImage, lifex-fiber has been built on Debian Buster (the current oldstable version)43 following the “Build on old systems, run on newer systems” paradigm.44

Therefore, it is expected to run on (virtually) any recent enough x86-64 Linux distribution, assuming that glibc45 version 2.28 or higher is installed.

Quick start guide: running the lifex-fiber executable

The following steps are required in order to run the lifex-fiber executable.

Download and installation

The lifex-fiber release archive can be downloaded from https://doi.org/10.5281/zenodo.5810268. After extracting the archive, the AppImage file should be made executable by typing the following command in a terminal:graphic file with name 12859_2023_5260_Figa_HTML.jpg

Finally, lifex_fiber_generation-1.4.0-x86_64.AppImage can be executed with:graphic file with name 12859_2023_5260_Figb_HTML.jpg

Root permissions are not required. Please note that, in order for the above procedure to succeed, AppImage relies upon the userspace filesystem framework FUSE46 which is assumed to be installed on your system. In case of errors, the following commands might be decisive:graphic file with name 12859_2023_5260_Figc_HTML.jpg

We also refer the reader to the AppImage troubleshooting guide.47

Step 0: parameter file configuration

Each lifex application or example, including the lifex-fiber executable described in Section “Download and installation”, defines a set of parameters that are required in order to be run [8]. They involve problem-specific parameters (such as constitutive relations, geometry, time interval, boundary conditions) as well as numerical parameters (types of linear/non-linear solvers, tolerances, maximum number of iterations) or output-related options.

In case an application has sub-dependencies (such as a linear solver), also the related parameters are included (typically in a proper subsection).

Every application comes with a set of command line options, which can be printed using the -h (or –help) flag:graphic file with name 12859_2023_5260_Figd_HTML.jpg

The first step before running an executable is to generate the parameter file(s) containing all the default parameter values. This is done via the -g (or –generate-params) flag:graphic file with name 12859_2023_5260_Fige_HTML.jpg

that by default generates a parameter file named after the executable, in .prm format.

By default, only parameters considered standard are printed. The parameter file verbosity can be decreased or increased by passing an optional flag minimal or full to the -g flag, respectively:graphic file with name 12859_2023_5260_Figf_HTML.jpg

The parameter basename to generate can be customized with the -f (or –params-filename) option:graphic file with name 12859_2023_5260_Figg_HTML.jpg

Absolute or relative paths can be specified.

At user’s option, in order to guarantee a flexible interface to external file processing tools, the parameter file extension ext can be chosen among three different interchangeable file formats prm, json or xml, from the most human-readable to the most machine-readable.

As an example, the three parameter files displayed in Listings 1, 2 and 3 are semantically equivalent.

We highlight that, following with the design of the ParameterHandler class of deal.II,48 each parameter is provided with:

  • a given pattern, specifying the parameter type (e.g. boolean, integer, floating-point number, string, list, ...) and, whenever relevant, a range of admissible values (pattern description);

  • a default value, printed in the parameter file upon generation and implicitly assumed if the user omits a custom value;

  • the actual value, possibly overriding the default one;

  • a documentation string;

  • a global index.

All of these features, combined to a runtime check for the correctness of each parameter, make the code syntactically and semantically robust with respect to possible errors or typos introduced unintentionally.graphic file with name 12859_2023_5260_Figh_HTML.jpggraphic file with name 12859_2023_5260_Figi_HTML.jpggraphic file with name 12859_2023_5260_Figj_HTML.jpg

Once generated, the user can modify, copy, move or rename the parameter file depending on their needs.

Step 1: run

The executable can be run by simply omitting the -g, whereas the -f option is used to specify the parameter file to be read (as opposed to written, in generation mode), e.g.:graphic file with name 12859_2023_5260_Figk_HTML.jpg

If no -f flag is provided, a file named executable_name.prm is assumed to be available in the directory where the executable is run from.

The path to the directory where all the app output files will be saved to can be selected via the -o (or –output-directory) flag:graphic file with name 12859_2023_5260_Figl_HTML.jpg

If the specified directory does not already exist, it will be created. By default, the current working directory is used.

Absolute or relative paths can be specified for both the input parameter file and the output directory.

Parallel run In order to run an app in parallel, the mpirun or mpiexec wrapper commands (which may vary depending on the MPI implementation available on your machine) should be prepended, e.g.:graphic file with name 12859_2023_5260_Figm_HTML.jpg

where <N_PROCS> is the desired number of parallel processes to run on.

As a rule of thumb, 10,000 to 100,000 degrees of freedom per process should lead to the best performance.

Dry run and parameter file conversion Upon running, a parameter log file is automatically generated in the output directory, that can be used later to retrieve which parameters had been used for a specific run.

By default, log_params.ext will be used as its filename. This can be changed via the -l (or –log-file) flag, e.g.:graphic file with name 12859_2023_5260_Fign_HTML.jpg

The file extension is not mandatory: if unspecified, the same extension as the input parameter file will be used.

If the dry run option is enabled via the -d (or –dry-run) flag, the execution terminates right after the parameter log file generation. This has a two-fold purpose:

  1. checking the correctness of the parameters being declared and parsed before running the actual simulation (if any of the parameters does not match the specified pattern or has a wrong name or has not been declared in a given subsection then a runtime exception is thrown);

  2. converting a parameter file between two different formats/extensions. For example, the following command converts input.xml to

    output.json:

graphic file with name 12859_2023_5260_Figo_HTML.jpg

Results and discussion

The LDRBMs described in Section “Laplace-Dirichlet rule-based methods” have been applied to a set of idealized or realistic test cases, namely ventricular and spherical slabs, based and complete left ventricular and left atrial geometries.

This section presents the results obtained, as well as a possible pipeline for reproducing such test cases, consisting of the following steps:

  1. setting up input data (e.g. generating or importing computational meshes);

  2. setting up the parameter files associated with a given simulation scenario and running the corresponding simulation;

  3. post-processing the solution and visualizing the output.

A mesh sensitivity analysis has been performed and reported in Section “Mesh sensitivity and validation”.

Input data

Additional input data (scripts, meshes and parameter files) associated with the guided examples described below can be downloaded from the release archive https://doi.org/10.5281/zenodo.5810268.

In this getting started guide, we provide different ready-to-use meshes, namely

  • a set of four idealized geometries consisting of a ventricular slab, a spherical slab, an idealized based left ventricle and an idealized left atrium, see Fig. 4a–d;

  • two realistic geometries composed by a left ventricle and a left atrium, see Fig. 4e, f.

The idealized meshes have been generated using the built-in CAD engine of gmsh, an open-source 3D FE mesh generator, starting from the corresponding gmsh geometrical models (represented by *.geo files, also provided) defined using their boundary representation, where a volume is bounded by a set of surfaces. For details about the geometrical definition of a model geometry we refer to the online documentation of gmsh.49

In order to perform the mesh generation, starting from the geometrical files provided in this tutorial, the following command can be run in a terminal:graphic file with name 12859_2023_5260_Figp_HTML.jpg

where geometry.geo is the geometrical file model, mesh.msh is the output mesh file, which will be provided as an input to the lifex-fiber app, and s (0,1] is the mesh element size factor. To produce a coarser (finer) mesh the clscale factor can be reduced (increased).

The realistic left ventricle and left atrium have been produced starting from the open-source meshes adopted in [38] (for the left atrium50) and in [49] (for the left ventricle51) and using the Vascular Modelling Toolkit (vmtk) software [50] along with the semi-automatic meshing tools52 recently proposed in [51].

All the characteristic informations of the ready-to-use meshes, above described, are reported in Table 1.

Table 1.

Mesh information regarding the ready-to-use meshes presented in this work. In particular the mesh quality is computed selecting the edge ratio option in the ParaView mesh quality filter

Geometry Type hmin [mm] havg [mm] hmax [mm] #elements #vertices Quality
Ventricular slab Hex 4.74 5.95 6.73 988 1400 1.69
Ventricular slab Tet 3.10 6.76 8.71 2439 762 2.91
Spherical slab Tet 1.96 3.46 4.70 18455 4924 2.46
Idealized left atrium Tet 2.78 3.43 4.15 10039 3387 2.36
Idealized left ventricle Tet 1.71 3.53 4.93 74488 16567 3.27
Realistic left ventricle Tet 0.51 1.17 1.67 1885227 330703 2.80
Realistic left atrium Tet 0.15 1.00 1.76 112994 33297 4.23

Generating fibers

Parameter files for fiber generation are characterized by a common section named Mesh and space discretization. Select Element type = Tet for tetrahedral meshes or Element type = Hex for hexahedral meshes. Finally, specify in FE space degree the degree of the (piecewise continuous) polynomial FE space used to solve the LD problems described above. Finally, we remark that lifex-fiber internally treats all physical quantities as if they are provided in International System of Units (SI): therefore, a Scaling factor can be set in order to convert the input mesh from a given unit of measurement (e.g. if the mesh coordinates are provided in millimeters then Scaling factor must be set equal to 1e-3).

The Geometry type parameters enables to specify the kind of geometry provided in input, in order to apply the proper LDRBM algorithm among the ones described above. Once specified, parameters related to the specific algorithm and geometry will be parsed from a subsection named after the value of Geometry type.

All parameters missing from the parameter file will take their default value, which is hard-coded.graphic file with name 12859_2023_5260_Figq_HTML.jpg

Slab fibers

The parameter Geometry type = Slab must be set to prescribe fibers in slab geometries and the path of the input mesh file in Filename.

Ventricular slab For a ventricular slab geometry the user should set Sphere slab = false. Labels for the top (Tags base up) and bottom (Tags base down) surfaces of the slab, as well as for the epicardium (Tags epi) and endocardium (Tags endo) must be prescribed. Finally, the helical and sheetlet rotation angles at the epicardium and endocardium must be provided in the corresponding alpha epi, alpha endo, beta epi, beta endo parameters.graphic file with name 12859_2023_5260_Figr_HTML.jpg

Spherical slab For a spherical slab geometry the user should set Sphere slab = true. The epicardial coordinates (xyz) of the north (North pole) and south (South pole) poles of the sphere of the slab, and the labels of the endocardium (Tags endo) and epicardium (Tags epi) must be prescribed. Finally, the helical and sheetlet rotation angles at the epicardium and endocardium must be provided in the alpha epi, alpha endo, beta epi, beta endo parameters. A fiber architecture for the sphere slab with radial fiber f can be prescribed by setting in the parameter file Sphere with radial fibers = true. This consists of exchanging the sheet direction s with the fiber direction f. Instead, a tangential (to the epicardial and endocardial surfaces) fiber field f is assigned when Sphere with radial fibers = false.graphic file with name 12859_2023_5260_Figs_HTML.jpg

Left ventricular fibers

The parameter Geometry type = Left ventricle (Left ventricle complete) prescribes fibers in a based (complete) left ventricular geometry. Other mesh-related parameters have the same meaning as described above.graphic file with name 12859_2023_5260_Figt_HTML.jpg

Based left ventricle The parameters needed are the labels for the basal plane (Tags base), the epicardium (Tags epi) and endocardium (Tags endo) of the ventricle. The RL or BT approach can be toggled via Algorithm type. The helical and sheetlet rotation angles at the epicardium and endocardium must be prescribed in alpha epi, alpha endo, beta epi, beta endo. Finally, for the RL approach the outward normal vector to the basal plane must be specified in Normal to base, whereas for the BT approach the apex epicardial coordinates (xyz) (Apex) of the ventricle is needed.graphic file with name 12859_2023_5260_Figu_HTML.jpg

Selecting the RL approach as Algorithm type, this setup can be also exploited in bi-ventricular geometries (not included in the example meshes). In this case, the mesh must have two additional surface labels in the right ventricular endocardium: one delimiting the part facing to the septum (e.g. 15) and the other for the remaining part (e.g. 25). In this way, it is sufficient to set Tags endo as the two endocardial labels (excluding the right septum) and Tags epi as the epicardial label and the right endocardial septum label. Further detail on this approach can be found in [3].graphic file with name 12859_2023_5260_Figv_HTML.jpg

Complete left ventricle The labels for the mitral (Tags MV) and aortic (Tags AV) valve rings, the epicardium (Tags epi) and endocardium (Tags endo) of the ventricle are required. The apex epicardial coordinates (xyz) must be set in Apex. Finally, the helical and sheetlet rotation angles at the epicardium and endocardium must be prescribed in alpha epi, alpha endo, beta epi, beta endo. A specific helical and sheetlet rotation angles around the outflow tract of the left ventricle (i.e. the mitral valve ring) can be specified by setting alpha epi OT, alpha endo OT, beta epi OT, beta endo OT.graphic file with name 12859_2023_5260_Figw_HTML.jpg

Left atrial fibers

Fibers in a left atrial geometry can be generated by setting Geometry type = Left atrium. Other mesh-related parameters have the same meaning as described above.graphic file with name 12859_2023_5260_Figx_HTML.jpg

Idealized left atrium The parameter Appendage = false prescribes fibers in the hollow sphere geometry. The labels for the mitral valve ring (Tags MV), the right (Tags RPV) and left (Tags LPV) pulmonary veins rings, the epicardium (Tags epi) and endocardium (Tags endo) of the idealized atrium must be provided. Finally, the dimension of each atrial bundle is needed: Tau bundle MV for the mitral valve bundle; Tau bundle LPV and Tau bundle RPV for the left and right pulmonary valves ring bundles.graphic file with name 12859_2023_5260_Figy_HTML.jpg

Realistic left atrium The parameter Appendage = true prescribes fibers in a realistic left atrial geometry. The user should provide labels for the mitral valve ring (Tags MV), the right (Tags RPV) and left (Tags LPV) pulmonary veins rings, the epicardium (Tags epi) and endocardium (Tags endo) of the idealized atrium. The epicardial coordinates (xyz) for the apex of the atrial appendage must be provided in Apex. Finally, the dimension of each atrial bundle is needed: for the mitral valve bundle Tau bundle MV; for the left and right pulmonary valves rings bundle Tau bundle LPV and Tau bundle RPV, respectively.graphic file with name 12859_2023_5260_Figz_HTML.jpg

Output and visualization

To enable the output the user should set Enable output = true and specify the corresponding output filename in Filename. This will produce a XDMF schema file named output_filename.xdmf (wrapped around a same-named HDF5 output file output_filename.h5) that can be visualized in ParaView,53 an open-source multi-platform data analysis and visualization application. Specifically, the streamtracer and the tube filters of ParaView can be applied in sequence to visualize the fiber fields, such as the one shown in Fig. 7.

Fig. 7.

Fig. 7

Fiber field f visualized as streamlines. a Ventricular slab. b Spherical slab with circumferential fibers. c Idealized left atrium. d Idealized based left ventricle. e Realistic complete left ventricle. f Realistic left atrium

graphic file with name 12859_2023_5260_Figaa_HTML.jpg

Moreover, the HDF5 file format guarantees that the output can easily be further post-processed, not only for visualization purposes but rather to be fed as an input to more sophisticated computational pipelines.

Mesh sensitivity and validation

The robustness of the algorithms presented above is confirmed by performing a mesh sensitivity analysis. Specifically, we consider the ventricular slab geometry shown in Fig. 4a and two related sets of discretization with hexahedral and with tetrahedral elements, respectively. For each of the two element types, we run the fiber generation algorithm (see Section “Ventricular slab”) for four decreasing mesh sizes h1>h2>h3>h4.

As the fibers field is orthonormalized, the difference between two numerical solutions is only due to the orientation angle. This allows us to define an error estimate as:

Δθi=arccosf0i·f04,i=1,2,3,

where f0i is the fiber field computed on the mesh with size hi and the results on the finest mesh with size h4 are considered as a reference solution.

We show the error distribution in the whole domain in Fig. 8, whereas Tables 2 and 3 report the average and maximum errors for the hexahedral and the tetrahedral meshes, respectively. We determine both an average and a maximum error smaller than 8 even for the coarsest mesh. These values are very small and, in particular, much smaller than the physiological fibers dispersion angle [52].

Fig. 8.

Fig. 8

Mesh sensitivity analysis performed on the ventricular slab geometry and three different mesh sizes h1,h2,h3. a Hexahedral meshes. b Tetrahedral meshes

Table 2.

Mesh sensitivity analysis for hexahedral elements

i h [mm] #dofs avgΩΔθi[] maxΩΔθi[]
1 5.95 1400 0.62 6.33
2 3.00 9477 0.24 4.54
3 1.50 69377 0.08 2.40
4 0.75 530145

Table 3.

Mesh sensitivity analysis for tetrahedral elements

i h [mm] #dofs avgΩΔθi[] maxΩΔθi[]
1 6.76 762 1.35 7.85
2 3.53 3989 0.50 5.57
3 1.76 25661 0.19 4.28
4 0.88 179338

The interest of accurately reconstructing a fiber orientation field consists of providing it as an input to more sophisticated computational models, such as for cardiac electrophysiology and electromechanics. As the dynamics of such physical models demands for a high resolution in both time and space [3, 17, 53], the LDRBM algorithms are typically run on fine meshes. Therefore, the impact of possible numerical errors due to the mesh size is to be considered negligible, as confirmed by the small errors presented above.

The proposed LDRBMs have been validated in [3], where the fiber orientation field computed numerically provided a satisfactory match to histological data.

Furthermore, the anisotropic nature of the fiber orientation strongly influences the electrophysiological, mechanical, and electromechanical cardiac function. Therefore, an indirect way to validate the fiber field provided by LDRBMs is to compute quantitative indices or biomarkers in such kind of simulations.

Matching quantitative indices in a physiological range is only possible when the fiber reconstruction algorithm is accurate enough: this is shown in [3] for the whole-heart electrophysiology, in [17] for the ventricular electromechanics, and in [53] for the whole-heart electromechanics.

Future developments

As anticipated in Section ”Background”, lifex has served as the core framework for the development of several heart modules for the simulation of cardiac electrophysiology, mechanics, electromechanics, and blood fluid dynamics models.

In the near future, the deployment of lifex modules will follow two lines:

  • more modules will be successively published in binary form, starting from an advanced solver for cardiac electrophysiology, blood fluid dynamics and other solvers for the cardiac function;

  • in the meantime, the source code associated with previous binary releases will be gradually made publicly available under an open-source license.

In the long run, also modules unrelated to the cardiac function are expected to be included within lifex.

Conclusions

lifex is intended to provide the scientific community with an integrated FE framework for exploring many physiological and pathological scenarios using in silico experiments for the whole-heart cardiac function, boosting both the user and developer experience without sacrificing its computational efficiency and universality.

We believe that the release of lifex-fiber provides the scientific community with an invaluable tool for in silico scenario analyses of myofibers orientation; such a tool supports either idealized and realistic, (left) ventricular and atrial geometries. It also offers a seamless integration of LDRBMs into more sophisticated computational pipelines involving other core models – such as electrophysiology, mechanics and electromechanics – for the cardiac function, in a wide range of settings covering from single-chamber to whole-heart simulations.

The content of this initial release is published on the official website https://lifex.gitlab.io/heart.html: we encourage users to interact with the lifex development community via the issue tracker54 of our public website repository. Any curiosity, question, bug report or suggestion is welcome.

News and announcements about lifex will be posted to the official website https://lifex.gitlab.io/.

Availability and requirements

  • Project name: lifex-fiber

  • Project home page: https://lifex.gitlab.io/heart.html

  • Operating system(s): Linux (x86-64)

  • Programming language: C++

  • Other requirements: glibc version 2.28 or higher

  • License: CC BY-NC-ND 4.0

  • Any restrictions to use by non-academics: no additional restriction.

Acknowledgements

Not applicable.

Abbreviations

FE

Finite element

BT

Bayer-Trayanova

RL

Rossi-Lassila

HPC

High performance computing

LD

Laplace-Dirichlet

RBM

Rule-based method

LDRBM

Laplace-Dirichlet rule-based method

SI

International system of units

Author contributions

The initial design of lifex was conceived by PCA with precious hints and contributions by MF. The mathematical models and the Laplace-Dirichlet Rule-Based Methods were developed by RP. The software development and testing were carried out by PCA, MF and RP. PCA and RP wrote the paper. LD and AQ supervised the model development and the interpretation of results. All authors read and approved the final manuscript.

Funding

This project has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation program (grant agreement No 740132, iHEART - An Integrated Heart Model for the simulation of the cardiac function, P.I. Prof. A. Quarteroni).

Availability of data and materials

All input data, meshes and the binary executable of lifex can be found at https://doi.org/10.5281/zenodo.5810268.

Declarations

Ethics approval and consent to participate

Not applicable.

Consent for publication

Not applicable.

Competing interest

The authors declare that they have no competing interests.

Footnotes

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

References

  • 1.Quarteroni A, Dede’ L, Manzoni A, Vergara C. Mathematical modelling of the human cardiovascular system: data, numerical approximation, clinical applications. Cambridge Monographs on Applied and Computational Mathematics, 2019; 10.1017/9781108616096
  • 2.Quarteroni A, Lassila T, Rossi S, Ruiz-Baier R. Integrated heart–coupling multiscale and multiphysics models for the simulation of the cardiac function. Comput Methods Appl Mech Eng 2017;314:345–407. 10.1016/j.cma.2016.05.031. Special Issue on Biological Systems Dedicated to William S. Klug
  • 3.Piersanti R, Africa PC, Fedele M, Vergara C, Dede’ L, Corno AF, Quarteroni A. Modeling cardiac muscle fibers in ventricular and atrial electrophysiology simulations. Comput Methods Appl Mech Eng. 2021;373:113468. doi: 10.1016/j.cma.2020.113468. [DOI] [Google Scholar]
  • 4.Salvador M, Fedele M, Africa PC, Sung E, Dede’ L, Prakosa A, Chrispin J, Trayanova N, Quarteroni A. Electromechanical modeling of human ventricles with ischemic cardiomyopathy: numerical simulations in sinus rhythm and under arrhythmia. Comput Biol Med. 2021;136:104674. doi: 10.1016/j.compbiomed.2021.104674. [DOI] [PubMed] [Google Scholar]
  • 5.Salvador M, Regazzoni F, Pagani S, Dede’ L, Trayanova N, Quarteroni A. The role of mechano-electric feedbacks and hemodynamic coupling in scar-related ventricular tachycardia. Comput Biol Med, 2022;105203. [DOI] [PubMed]
  • 6.ten Tusscher KHWJ, Panfilov AV. Alternans and spiral breakup in a human ventricular tissue model. Am J Physiol Heart Circul Physiol. 2006;291(3):1088–1100. doi: 10.1152/ajpheart.00109.2006. [DOI] [PubMed] [Google Scholar]
  • 7.Courtemanche M, Ramirez RJ, Nattel S. Ionic mechanisms underlying human atrial action potential properties: insights from a mathematical model. Am J Physiol Heart Circul Physiol. 1998;275(1):301–321. doi: 10.1152/ajpheart.1998.275.1.H301. [DOI] [PubMed] [Google Scholar]
  • 8.Africa PC. lifex: A flexible, high performance library for the numerical solution of complex finite element problems. SoftwareX 2022;20:101252. 10.1016/j.softx.2022.101252
  • 9.Arndt D, Bangerth W, Blais B, Fehling M, Gassmöller R, Heister T, Heltai L, Köcher U, Kronbichler M, Maier M, Munch P, Pelteret JP, Proell S, Konrad S, Turcksin B, Wells D, Zhang J. The deal.II library, version 9.3. J Numer Math. 2021;29(3):171–186. doi: 10.1515/jnma-2021-0081. [DOI] [Google Scholar]
  • 10.Regazzoni F, Salvador M, Africa PC, Fedele M, Dede’ L, Quarteroni A. A cardiac electromechanical model coupled with a lumped-parameter model for closed-loop blood circulation. J Comput Phys, 2022;111083.
  • 11.Regazzoni F, Quarteroni A. Accelerating the convergence to a limit cycle in 3d cardiac electromechanical simulations through a data-driven 0d emulator. Comput Biol Med. 2021;135:104641. doi: 10.1016/j.compbiomed.2021.104641. [DOI] [PubMed] [Google Scholar]
  • 12.Zingaro A, Fumagalli I, Fedele M, Africa PC, Dede’ L, Quarteroni A, Corno AF. A geometric multiscale model for the numerical simulation of blood flow in the human left heart. Discrete Continuous Dyn Syst S. 2022;15(8):2391–2427. doi: 10.3934/dcdss.2022052. [DOI] [Google Scholar]
  • 13.Bucelli M, Dede’ L, Quarteroni A, Vergara C. Partitioned and monolithic algorithms for the numerical solution of cardiac fluid-structure interaction. Commun Comput Phys. 2023;32(5):1217–1256. doi: 10.4208/cicp.OA-2021-0243. [DOI] [Google Scholar]
  • 14.Fumagalli I, Vitullo P, Scrofani R, Vergara C. Image-based computational hemodynamics analysis of systolic obstruction in hypertrophic cardiomyopathy. medRxiv 2021. 10.1101/2021.06.02.21258207 [DOI] [PMC free article] [PubMed]
  • 15.Stella S, Vergara C, Maines M, Catanzariti D, Africa PC, Demattè C, Centonze M, Nobile F, Del Greco M, Quarteroni A. Integration of activation maps of epicardial veins in computational cardiac electrophysiology. Comput Biol Med. 2020;127:104047. doi: 10.1016/j.compbiomed.2020.104047. [DOI] [PubMed] [Google Scholar]
  • 16.Dede’ L, Regazzoni F, Vergara C, Zunino P, Guglielmo M, Scrofani R, Fusini L, Cogliati C, Pontone G, Quarteroni A. Modeling the cardiac response to hemodynamic changes associated with covid-19: a computational study. Math Biosci Eng. 2021;18(4):3364–3383. doi: 10.3934/mbe.2021168. [DOI] [PubMed] [Google Scholar]
  • 17.Piersanti R, Regazzoni F, Salvador M, Corno AF, Dede’ L, Vergara C, Quarteroni A. 3d–0d closed-loop model for the simulation of cardiac biventricular electromechanics. Comput Methods Appl Mech Eng. 2022;391:114607. doi: 10.1016/j.cma.2022.114607. [DOI] [Google Scholar]
  • 18.Streeter DD, Jr, Spotnitz HM, Patel DP, Ross J, Jr, Sonnenblick EH. Fiber orientation in the canine left ventricle during diastole and systole. Circ Res. 1969;24(3):339–347. doi: 10.1161/01.RES.24.3.339. [DOI] [PubMed] [Google Scholar]
  • 19.LeGrice IJ, Smaill BH, Chai LZ, Edgar SG, Gavin JB, Hunter PJ. Laminar structure of the heart: ventricular myocyte arrangement and connective tissue architecture in the dog. Am J Physiol Heart Circul Physiol. 1995;269(2):571–582. doi: 10.1152/ajpheart.1995.269.2.H571. [DOI] [PubMed] [Google Scholar]
  • 20.Greenbaum RA, Ho SY, Gibson DG, Becker AE, Anderson RH. Left ventricular fibre architecture in man. Heart. 1981;45(3):248–263. doi: 10.1136/hrt.45.3.248. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 21.Lombaert H, Peyrat J, Croisille P, Rapacchi S, Fanton L, Cheriet F, Clarysse P, Magnin I, Delingette H, Ayache N. Human atlas of the cardiac fiber architecture: study on a healthy population. IEEE Trans Med Imaging. 2012;31(7):1436–1447. doi: 10.1109/TMI.2012.2192743. [DOI] [PubMed] [Google Scholar]
  • 22.Toussaint N, Stoeck CT, Schaeffter T, Kozerke S, Sermesant M, Batchelor PG. In vivo human cardiac fibre architecture estimation using shape-based diffusion tensor processing. Med Image Anal. 2013;17(8):1243–1255. doi: 10.1016/j.media.2013.02.008. [DOI] [PubMed] [Google Scholar]
  • 23.Ho SY, Anderson RH, Sánchez-Quintana D. Atrial structure and fibres: morphologic bases of atrial conduction. Cardiovasc Res. 2002;54:325–336. doi: 10.1016/S0008-6363(02)00226-2. [DOI] [PubMed] [Google Scholar]
  • 24.Ho SY, Sánchez-Quintana D. The importance of atrial structure and fibers. Clin Anatomy Off J Am Assoc Clin Anatom Br Assoc Clin Anatom. 2009;22:52–63. doi: 10.1002/ca.20634. [DOI] [PubMed] [Google Scholar]
  • 25.Sánchez-Quintana D, Pizarro G, López-Mínguez JR, Ho SY, Cabrera JA. Standardized review of atrial anatomy for cardiac electrophysiologists. J Cardiovasc Transl Res. 2013;6:124–44. doi: 10.1007/s12265-013-9447-2. [DOI] [PubMed] [Google Scholar]
  • 26.Roberts DE, Hersh LT, Scher AM. Influence of cardiac fiber orientation on wavefront voltage, conduction velocity, and tissue resistivity in the dog. Circ Res. 1979;44(5):701–712. doi: 10.1161/01.RES.44.5.701. [DOI] [PubMed] [Google Scholar]
  • 27.Punske BB, Taccardi B, Steadman B, Ershler PR, England A, Valencik ML, McDonald JA, Litwin SE. Effect of fiber orientation on propagation: electrical mapping of genetically altered mouse hearts. J Electrocardiol. 2005;38(4):40–44. doi: 10.1016/j.jelectrocard.2005.06.097. [DOI] [PubMed] [Google Scholar]
  • 28.Eriksson TSE, Prassl AJ, Plank G, Holzapfel GA. Influence of myocardial fiber/sheet orientations on left ventricular mechanical contraction. Math Mech Solids. 2013;18(6):592–606. doi: 10.1177/1081286513485779. [DOI] [Google Scholar]
  • 29.Palit A, Bhudia SK, Arvanitis TN, Turley GA, Williams MA. Computational modelling of left-ventricular diastolic mechanics: Effect of fibre orientation and right-ventricle topology. J Biomech. 2015;48(4):604–612. doi: 10.1016/j.jbiomech.2014.12.054. [DOI] [PubMed] [Google Scholar]
  • 30.Guan D, Yao J, Luo X, Gao H. Effect of myofibre architecture on ventricular pump function by using a neonatal porcine heart model: from DT-MRI to rule-based methods. R Soc Open Sci. 2020;7(4):191655. doi: 10.1098/rsos.191655. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 31.Rossi S, Lassila T, Ruiz-Baier R, Sequeira A, Quarteroni A. Thermodynamically consistent orthotropic activation model capturing ventricular systolic wall thickening in cardiac electromechanics. Eur J Mech A Solids. 2014;48:129–142. doi: 10.1016/j.euromechsol.2013.10.009. [DOI] [Google Scholar]
  • 32.Bayer JD, Blake RC, Plank G, Trayanova N. A novel rule-based algorithm for assigning myocardial fiber orientation to computational heart models. Ann Biomed Eng. 2012;40(10):2243–2254. doi: 10.1007/s10439-012-0593-5. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 33.Doste R, Soto-Iglesias D, Bernardino G, Alcaine A, Sebastian R, Giffard-Roisin S, Sermesant M, Berruezo A, Sanchez-Quintana D, Camara O. A rule-based method to model myocardial fiber orientation in cardiac biventricular geometries with outflow tracts. Int J Numer Methods Biomed Eng. 2019;35(4):3185. doi: 10.1002/cnm.3185. [DOI] [PubMed] [Google Scholar]
  • 34.Hoermann JM, Pfaller MR, Avena L, Bertoglio C, Wall WA. Automatic mapping of atrial fiber orientations for patient-specific modeling of cardiac electromechanics using image registration. Int J Numer Methods Biomed Eng. 2019;35(6):3190. doi: 10.1002/cnm.3190. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 35.Wong J, Kuhl E. Generating fibre orientation maps in human heart models using poisson interpolation. Comput Methods Biomech Biomed Eng. 2014;17(11):1217–1226. doi: 10.1080/10255842.2012.739167. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 36.Krueger MW, Schmidt V, Tobón C, Weber FM, Lorenz C, Keller DUJ, Barschdorf H, Burdumy M, Neher P, Plank G et al. Modeling atrial fiber orientation in patient-specific geometries: a semi-automatic rule-based approach. In: International conference on functional imaging and modeling of the heart, 2011;223–232.
  • 37.Ferrer A, Sebastián R, Sánchez-Quintana D, Rodríguez JF, Godoy EJ, Martínez L, Saiz J. Detailed anatomical and electrophysiological models of human atria and torso for the simulation of atrial activation. PLoS ONE. 2015;10(11):0141573. doi: 10.1371/journal.pone.0141573. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 38.Fastl TE, Tobon-Gomez C, Crozier A, Whitaker J, Rajani R, McCarthy KP, Sanchez-Quintana D, Ho SY, O’Neill MD, Plank G et al. Personalized computational modeling of left atrial geometry and transmural myofiber architecture. Med Image Anal 2018. [DOI] [PMC free article] [PubMed]
  • 39.Roney CH, Bendikas R, Pashakhanloo F, Corrado C, Vigmond EJ, McVeigh ER, Trayanova NA, Niederer SA. Constructing a human atrial fibre atlas. Ann Biomed Eng 2020. [DOI] [PMC free article] [PubMed]
  • 40.Beyar R, Sideman S. A computer study of the left ventricular performance based on fiber structure, sarcomere dynamics, and transmural electrical propagation velocity. Circ Res. 1984;55(3):358–375. doi: 10.1161/01.RES.55.3.358. [DOI] [PubMed] [Google Scholar]
  • 41.Potse M, Dubé B, Richer J, Vinet A, Gulrajani RM. A comparison of monodomain and bidomain reaction-diffusion models for action potential propagation in the human heart. IEEE Trans Biomed Eng. 2006;53(12):2425–2435. doi: 10.1109/TBME.2006.880875. [DOI] [PubMed] [Google Scholar]
  • 42.Nielsen P, Le Grice IJ, Smaill BH, Hunter PJ. Mathematical model of geometry and fibrous structure of the heart. Am J Physiol Heart Circul Physiol. 1991;260(4):1365–1378. doi: 10.1152/ajpheart.1991.260.4.H1365. [DOI] [PubMed] [Google Scholar]
  • 43.Neic A, Gsell MAF, Karabelas E, Prassl AJ, Plank G. Automating image-based mesh generation and manipulation tasks in cardiac modeling workflows using meshtool. SoftwareX. 2020;11:100454. doi: 10.1016/j.softx.2020.100454. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 44.Plank G, Loewe A, Neic A, Augustin C, Huang Y-L, Gsell MAF, Elias Karabelas JS, Nothstein M, Prassl AJ, Seemann G, Vigmond EJ. The openCARP simulation environment for cardiac electrophysiology. Comput Methods Programs Biomed. 2021;208:106223. doi: 10.1016/j.cmpb.2021.106223. [DOI] [PubMed] [Google Scholar]
  • 45.Kovacheva E, Gerach T, Schuler S, Ochs M, Dössel O, Loewe A. Causes of altered ventricular mechanics in hypertrophic cardiomyopathy: an in-silico study. Biomed Eng Online. 2021;20(1):1–28. doi: 10.1186/s12938-021-00900-9. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 46.Larrabide I, Omedas P, Martelli Y, Planes X, Nieber M, Moya JA, Butakoff C, Sebastián R, Camara O, Craene MD et al. Gimias: an open source framework for efficient development of research tools and clinical prototypes. In: International conference on functional imaging and modeling of the heart, 2009;417–426. Springer
  • 47.Cooper FR, Baker RE, Bernabeu MO, Bordas R, Bowler L, Bueno-Orovio A, Byrne HM, Carapella V, Cardone-Noott L, Cooper J et al. Chaste: cancer, heart and soft tissue environment. J Open Source Softw 2020. [DOI] [PMC free article] [PubMed]
  • 48.Rossi S, Gaeta S, Griffith BE, Henriquez CS. Muscle thickness and curvature influence atrial conduction velocities. Front Physiol, 1344, 2018. [DOI] [PMC free article] [PubMed]
  • 49.Strocchi M, Augustin CM, Gsell MAF, Karabelas E, Neic A, Gillette K, Razeghi O, Prassl AJ, Vigmond EJ, Behar JM, Gould J, Sidhu B, Rinaldi CA, Bishop MJ, Plank G, Niederer SA. A publicly available virtual cohort of four-chamber heart meshes for cardiac electro-mechanics simulations. PLoS ONE. 2020;15:1–26. doi: 10.1371/journal.pone.0235145. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 50.Antiga L, Steinman DA. The vascular modeling toolkit 2008.
  • 51.Fedele M, Quarteroni A. Polygonal surface processing and mesh generation tools for the numerical simulation of the cardiac function. Int J Numer Methods Biomed Eng. 2021;37(4):3435. doi: 10.1002/cnm.3435. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 52.Guan D, Zhuan X, Holmes W, Luo X, Gao H. Modelling of fibre dispersion and its effects on cardiac mechanics from diastole to systole. J Eng Math. 2021;128(1):1–24. doi: 10.1007/s10665-021-10102-w. [DOI] [Google Scholar]
  • 53.Fedele M, Piersanti R, Regazzoni F, Salvador M, Africa PC, Bucelli M, Zingaro A, Dede’ L, Quarteroni A. A comprehensive and biophysically detailed computational model of the whole human heart electromechanics. arXiv 2022. 10.48550/ARXIV.2207.12460
  • 54.Chabiniok R, Wang VY, Hadjicharalambous M, Asner L, Lee J, Sermesant M, Kuhl E, Young AA, Moireau P, Nash MP, et al. Multiphysics and multiscale modelling, data-model fusion and integration of organ physiology in the clinic: ventricular cardiac mechanics. Interface Focus. 2016;6(2):20150083. doi: 10.1098/rsfs.2015.0083. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 55.Anderson RH, Niederer PF, Sanchez-Quintana D, Stephenson RS, Agger P. How are the cardiomyocytes aggregated together within the walls of the left ventricular cone? J Anat. 2019;235(4):697–705. doi: 10.1111/joa.13027. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 56.Sánchez-Quintana D, López-Mínguez JR, Macías Y, Cabrera JA, Saremi F. Left atrial anatomy relevant to catheter ablation. Cardiol Res Practice 2014;2014. [DOI] [PMC free article] [PubMed]
  • 57.Blausen.com staff: Medical gallery of Blausen Medical 2014. WikiJournal of Medicine (2014). https://en.wikiversity.org/wiki/WikiJournal_of_Medicine/Medical_gallery_of_Blausen_Medical_2014

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Data Availability Statement

All input data, meshes and the binary executable of lifex can be found at https://doi.org/10.5281/zenodo.5810268.


Articles from BMC Bioinformatics are provided here courtesy of BMC

RESOURCES