PDF

Biventricular Cardiac Model
Introduction
This example demonstrates how to simulate a cardiac contraction on a simplified heart geometry, where only the ventricles are considered and the stimulus starts from the atrioventricular node.
During the cardiac cycle (heartbeat) an electrical stimulus generated from the sino–atrial node propagates throughout the entire heart. When excited, cardiac cells are subjected to an electric potential jump across their membranes. The transport and accumulation of ions and additional chemical reactions cause cells to contract. At a macro-scale these chemical and electrical processes trigger the contraction of the muscle tissue, the myocardium, allowing blood to be pumped to the arteries.
The muscle tissue (myocardium) is mainly composed of myocardial cells grouped in layered sheets that are aligned in a preferential direction (fibers). The fiber orientation strongly affects the mechanical and electrical tissue properties. This arrangement suggests that the cardiac tissue can be modeled as an anisotropic hyperelastic material.
The time and spatial evolution of the electric potential is described by the Aliev–Panfilov equations with a nonlinear current-voltage relation. This electrochemical model describes the quick rise of the cell’s transmembrane electric potential (depolarization) and the return to its resting value (repolarization).
The tissue contraction in the hyperelastic model is obtained using an additive decomposition of the stress tensor. The actual contraction at cellular level is taken into account by introducing an additional stress (active stress) in the Solid Mechanics interface. This additional stress is voltage-dependent, and its evolution is described by additional partial differential equations.
Model Definition
The simplified heart geometry shown in Figure 1 includes the two elliptical ventricular chambers. The atria are not considered.
Figure 1: Geometry of the two ventricular chambers of the heart.
The base is located at Z = 0, and the left ventricle apex is located at Z = −70 mm. The ventricle dimensions are taken from Ref. 2 and shown in Table 1.
The ventricular wall (myocardium) is surrounded by the epicardium on the outside (Figure 2) and by the endocardium on the inside (Figure 3). These are not included in the model, but these terms will refer to the walls boundaries that are in contact with the myocardium.
Figure 2: Boundaries in contact with the epicardium.
Figure 3: Boundaries in contact with the endocardium.
Fiber direction
The fibers have an inclination of 60° at the endocardium () and 60° at the epicardium () with respect to the horizontal basal plane (Z = 0). It is also assumed that the fibers’ inclination goes to zero at the left ventricle apex (), so the expressions for the fiber angle on the myocardium boundaries read
Across the cardiac walls the fiber angle varies linearly as
where β is a dimensionless parameter representing the fiber distance to the epicardium boundary. It takes values between 0 (epicardium) and 1 (endocardium), and it is an expression based on the fiber distance to the epicardium, Depi, and to the endocardium, Dend,
(1)
The myocardium is modeled as an anisotropic hyperelastic material with three preferential directions: fiber direction (a), sheet direction (s) and normal to sheet direction (n). This reference system can be approximated through a composition of coordinate systems.
The coordinate system used to define the material and electrical tissue properties is created in two steps. First, the transmural direction is obtained through the use of the Curvilinear Coordinate interface. It is assumed that the transmural direction coincides with the sheet direction (s). The resulting curvilinear system has the first basis vector oriented in the sheet direction, and the second basis vector oriented towards the apico-basal direction (Figure 4).
Figure 4: Intermediate coordinate system obtained with the Curvilinear Coordinate interface. The first basis vector (red) corresponds to the transmural direction. Note that the transmural direction coincides with the sheet direction in this example.
This intermediate coordinate system is rotated with an angle θ around the first basis vector (s) to align the third axis along the fiber direction a. The resulting fiber orientation is shown in Figure 5.
Figure 5: Fiber layout in the undeformed configuration. Note that the fiber angle changes along the transmural direction.
ELECTROPHYSIOLOGY MODEL
The electric potential Φ in the myocardium is described by the following equation (Ref. 1)
(2)
where χm is the membrane surface to volume ratio, Cm is the membrane capacitance, D is the conductivity tensor, Iion is the ionic current per unit area, and F the deformation gradient. The ionic current depends on the potential, the deformation gradient, and other internal variables, ri.
In this example, the ionic current is split into an excitation-induced, purely electrical part Ie, and a stretch-induced part Im, as described in Ref. 2.
(3)
The Aliev–Panfilov equations (Ref. 3) are used to represent the purely electrical part of the ionic current, Ie, as a function of the electric potential. These equations use one additional internal variable, and they are usually expressed in dimensionless form:
Here, is the dimensionless electric potential, τ is the dimensionless time, and r is an internal variable called recovery variable. Furthermore, c, α, γ, μ1, μ2, and b are material parameters whose values are taken from Ref. 2 and can be found in Table 2.
α
γ
μ1
μ2
The a stretch-induced electric current Im is defined as
where λ is the stretch in the fiber direction, Gs is the maximum conductance, is the resting electric potential for the ion channels, and θ is an activation parameter. This expression assumes the value of 1 when the fibers are stretched, and 0 when they are compressed. The values of the additional parameters are taken from Ref. 2 and shown in Table 3.
Gs
A dimensional mapping of the ionic current equation (Equation 3) is used to match the experimental values of electric potential and activation time in the myocardium:
Here, and are selected to match experimental values: the resting potential of the heart is 80 mV and the maximum potential value is 20 mV.
The time scaling parameter βt is considered to be dependent on the activation time ta, which shows better agreement with experimental observations (see Ref. 2 for details). During the cardiac cycle, the activation lapse (time between depolarization and repolarization) is not constant throughout the myocardium. Regions that are depolarized last are the first to repolarize. Therefore, the parameter βt assumes the following expression
(4)
where τ0, t0, and t1 are tuning parameters (Table 4).
τ0
t0
t1
In this example, the activation time ta depends on the Z coordinate and the vertical distance to the apex
The dimensional ionic current is then obtained from dimensionless purely electrical current , and stretch-induced current
The conductivity tensor in Equation 2 is decomposed into an isotropic part and an anisotropic part, which depends on the fiber direction (Ref. 2)
where diso = 1 mm2/ms and dani = 0.1 mm2/ms.
 
ACTIVE STRESS
The active stress component, sa, is calculated by solving the following differential equation:
(5)
where ε is a delay function introduced in Ref. 2:
Here, k, Φr, ε0, ε1, ζ, and Φt are taken from Ref. 2 and shown in Table 5.
ε0
ε1
ζ
Φr
Φt
The active stress obtained from Equation 5 is added to the second Piola–Kirchhoff stress in different percentages along the fiber, sheet and normal directions as described in Ref. 1:
(6)
MATERIAL MODEL
The cardiac tissue is considered to be hyperelastic, and the strain energy density is split into isotropic and anisotropic contributions
A compressible Neo–Hookean strain energy density is used for the isotropic part,
whereas the Holzapfel–Gasser–Ogden (HGO) model is used for the anisotropic contribution.
(7)
Here, k1 and k2 are material properties, and is the invariant of the isochoric Green–Cauchy strain tensor along the fiber direction:
(8)
The anisotropic hyperelastic parameters are given in Table 6.
Boundary and initial condition
The following conditions are applied to simulate the ventricle contractions:
Figure 6: Initial impulse at the atrioventricular node.
Results and Discussion
The model computes the contraction of the myocardium due to an electric stimulus. Figure 5 displays the fibers layout in the undeformed configuration.
Figure 7 shows the time variation of the electric potential distribution and the deformation of the cardiac walls. The depolarization of the cells produces an active stress that causes the myocardium to contract. There is an upward motion of the apex and a small torsion of the ventricles. The heart returns to its original state after 300 ms.
Figure 7: Depolarization and repolarization of the cardiac walls at different times during the cardiac cycle.
Figure 8 shows the activation potential at three different points. Note that the last cells to depolarize are the first one to repolarize. This effect is achieved by manipulating the dimensionless time constant as shown in Equation 4.
Figure 9 shows the internal volume variation of the left and right ventricles. Both chambers contract during the depolarization of the excited myocardial cells, thus reducing the internal volume. Then, the ventricles gradually return to their initial configuration to be again excited during the next heartbeat.
Figure 8: Plot of the activation duration at different locations.
Figure 9: Volume variation of the left and right ventricular chambers.
References
1. A.A. Bakir, A.A. Abed, M.C. Stevens, N.H. Lovell, and S. Dokos, “A Multiphysics Biventricular Cardiac Model: Simulations With a Left-Ventricular Assist Device,” Front. Physiol., vol. 9, p. 1259, 2018.
2. S. Göktepe and E. Kuhl, “Electromechanics of the heart: a unified approach to the strongly coupled excitation-contraction problem,” Comput. Mech., vol. 45, pp. 227–243, 2010.
3. M.P. Nash and A.V. Panfilov, “Electromechanical model of excitable tissue to study reentrant cardiac arrhytmias,” Prog. Biophys. Mol. Biol., vol. 85,pp. 501–522, 2004.
Notes About the COMSOL Implementation
The analysis is performed in two separated studies. In the first study the fiber orientation is computed. In a second study, the cardiac contraction following an electrical excitation is analyzed. In particular, the following steps are taken:
The fibers paths are computed using the Wall Distance and Curvilinear Coordinate interfaces.
The Fiber feature is set up using the curvilinear fiber orientation.
The distances Depi and Dendo used in Equation 1 to compute the dimensionless parameter β are determined by two Wall Distance interfaces. In one case the wall represents the endocardium, and in the other it represents the epicardium.
Inertial terms are neglected as reported in Ref. 2. The Structural Transient Behavior is set to Quasistatic in the Solid Mechanics interface setting.
The active stress (Equation 6) is added to the total stress with the External Stress feature. The fiber coordinate system is selected in the Coordinate System Selection section.
In the settings for the Fiber feature, select the appropriate Fiber Reference System as a reference coordinate system. Then, in the Orientation section, select the orientation of the fiber (a0) to be aligned with the third axis.
The Fiber feature automatically computes the corresponding invariants, for instance Ia as used in Equation 8, in order to compute the strain energy function Wani as in Equation 7.
The option Stiffness in tension only is activated by default for the HGO model, and it evaluates the fibers’ strain energy to zero if the fiber stretch is in compression. This means that the fibers contribute to tensile stresses only.
The model parameters taken from literature references already include the effect of the membrane surface to volume ratio, χm, and the membrane capacitance, Cm. For this reason, these two parameters are set equal to 1 in this example.
The internal volume is computed through the use of Gauss’s theorem to convert area integrals to volume integrals.
Application Library path: Nonlinear_Structural_Materials_Module/Hyperelasticity/biventricular_cardiac_model
Modeling Instructions
From the File menu, choose New.
New
In the New window, click  Model Wizard.
Model Wizard
1
In the Model Wizard window, click  3D.
2
In the Select Physics tree, select Mathematics>Wall Distance (wd).
3
Click Add.
4
Click Add.
5
In the Select Physics tree, select Mathematics>Curvilinear Coordinates (cc).
6
Click Add.
7
Click  Study.
8
In the Select Study tree, select General Studies>Stationary.
9
Geometry 1
1
In the Geometry toolbar, click Insert Sequence and choose Insert Sequence.
2
3
In the Geometry toolbar, click  Build All.
4
Click the  Go to Default View button in the Graphics toolbar.
Full geometry instructions can be found in Appendix - Geometry Modeling Instructions.
Global Definitions
Heart Geometry Parameters
1
In the Model Builder window, under Global Definitions click Parameters 1.
2
In the Settings window for Parameters, type Heart Geometry Parameters in the Label text field.
Definitions
Create selections to identify the basal surface, the epicardium and the endocardium.
Basal Surface
1
In the Definitions toolbar, click  Explicit.
2
In the Settings window for Explicit, type Basal Surface in the Label text field.
3
Locate the Input Entities section. From the Geometric entity level list, choose Boundary.
4
Click the  Transparency button in the Graphics toolbar.
5
LV-Endocardium
1
In the Definitions toolbar, click  Explicit.
2
In the Settings window for Explicit, type LV-Endocardium in the Label text field.
3
Locate the Input Entities section. From the Geometric entity level list, choose Boundary.
4
RV-Endocardium
1
In the Definitions toolbar, click  Explicit.
2
In the Settings window for Explicit, type RV-Endocardium in the Label text field.
3
Locate the Input Entities section. From the Geometric entity level list, choose Boundary.
4
Epicardium
1
In the Definitions toolbar, click  Explicit.
2
In the Settings window for Explicit, type Epicardium in the Label text field.
3
Locate the Input Entities section. From the Geometric entity level list, choose Boundary.
4
Endocardium
1
In the Definitions toolbar, click  Union.
2
In the Settings window for Union, type Endocardium in the Label text field.
3
Locate the Geometric Entity Level section. From the Level list, choose Boundary.
4
Locate the Input Entities section. Under Selections to add, click  Add.
5
In the Add dialog box, in the Selections to add list, choose LV-Endocardium and RV-Endocardium.
6
Global Definitions
Structural Mechanics Parameters
1
In the Home toolbar, click  Parameters and choose Add>Parameters.
2
In the Settings window for Parameters, type Structural Mechanics Parameters in the Label text field.
3
Locate the Parameters section. Click  Load from File.
4
Browse to the model’s Application Libraries folder and double-click the file biventricular_cardiac_model_mechanical_passive_param.txt.
Electrical Parameters
1
In the Home toolbar, click  Parameters and choose Add>Parameters.
2
In the Settings window for Parameters, type Electrical Parameters in the Label text field.
3
Locate the Parameters section. Click  Load from File.
4
Active Stress Parameters
1
In the Home toolbar, click  Parameters and choose Add>Parameters.
2
In the Settings window for Parameters, type Active Stress Parameters in the Label text field.
3
Locate the Parameters section. Click  Load from File.
4
Conversion Factors Parameters
1
In the Home toolbar, click  Parameters and choose Add>Parameters.
2
In the Settings window for Parameters, type Conversion Factors Parameters in the Label text field.
3
Locate the Parameters section. Click  Load from File.
4
To compute the orientation of the fibers in any point in the myocardium it is necessary to know its distance from both the epicardium and the endocardium.
Wall Distance: Epicardium
1
In the Model Builder window, under Component 1 (comp1) click Wall Distance (wd).
2
In the Settings window for Wall Distance, type Wall Distance: Epicardium in the Label text field.
Wall 1
1
In the Physics toolbar, click  Boundaries and choose Wall.
2
In the Settings window for Wall, locate the Boundary Selection section.
3
From the Selection list, choose Epicardium.
Wall Distance: Endocardium
1
In the Model Builder window, under Component 1 (comp1) click Wall Distance 2 (wd2).
2
In the Settings window for Wall Distance, type Wall Distance: Endocardium in the Label text field.
3
In the Physics toolbar, click  Boundaries and choose Wall.
Wall 1
1
In the Settings window for Wall, locate the Boundary Selection section.
2
From the Selection list, choose Endocardium.
Assuming that the sheets are oriented perpendicularly to the wall, their direction can be found by computing the transmural direction.
Sheet Direction
1
In the Model Builder window, under Component 1 (comp1) click Curvilinear Coordinates (cc).
2
In the Settings window for Curvilinear Coordinates, type Sheet Direction in the Label text field.
3
Locate the Settings section. Select the Create base vector system check box.
Coordinate System Settings 1
1
In the Model Builder window, under Component 1 (comp1)>Sheet Direction (cc) click Coordinate System Settings 1.
2
In the Settings window for Coordinate System Settings, locate the Settings section.
3
From the Second basis vector list, choose z-axis.
Diffusion Method 1
In the Physics toolbar, click  Domains and choose Diffusion Method.
Inlet 1
1
In the Physics toolbar, click  Attributes and choose Inlet.
2
In the Settings window for Inlet, locate the Boundary Selection section.
3
From the Selection list, choose Endocardium.
Diffusion Method 1
In the Model Builder window, click Diffusion Method 1.
Outlet 1
1
In the Physics toolbar, click  Attributes and choose Outlet.
2
In the Settings window for Outlet, locate the Boundary Selection section.
3
From the Selection list, choose Epicardium.
Mesh 1
1
In the Model Builder window, under Component 1 (comp1) click Mesh 1.
2
In the Settings window for Mesh, locate the Physics-Controlled Mesh section.
3
From the Element size list, choose Finer.
4
Click  Build All.
The first study is used to obtain the sheets’ direction and the distance from the walls. These quantities can be used to find the fibers’ direction.
Study: Fiber Direction
1
In the Model Builder window, click Study 1.
2
In the Settings window for Study, type Study: Fiber Direction in the Label text field.
3
In the Home toolbar, click  Compute.
Results
3D Plot Group 1, 3D Plot Group 2, Coordinate system (cc), Vector Field (cc)
1
In the Model Builder window, under Results, Ctrl-click to select 3D Plot Group 1, 3D Plot Group 2, Vector Field (cc), and Coordinate system (cc).
2
Study: Fiber Direction
In the Settings window for Group, type Study: Fiber Direction in the Label text field.
Add variables related to the fibers orientation.
Definitions
Fiber Orientation
1
In the Model Builder window, expand the Component 1 (comp1)>Definitions node.
2
Right-click Definitions and choose Variables.
3
In the Settings window for Variables, type Fiber Orientation in the Label text field.
4
Locate the Variables section. Click  Load from File.
5
The fibers reference system is obtained by rotating the curvilinear coordinate system found in the previous study.
Rotated System 2 (sys2)
1
In the Definitions toolbar, click  Coordinate Systems and choose Rotated System.
2
In the Settings window for Rotated System, locate the Rotation section.
3
Find the Euler angles (Z-X-Z) subsection. In the β text field, type theta.
Fiber Reference System
1
In the Definitions toolbar, click  Coordinate Systems and choose Composite System.
2
In the Settings window for Composite System, type Fiber Reference System in the Label text field.
3
Locate the Input Systems section. From the Base system list, choose Curvilinear System (cc) (cc_cs).
4
From the Relative system list, choose Rotated System 2 (sys2).
Create a cylindrical system for postprocessing purposes.
Cylindrical System 4 (sys4)
1
In the Definitions toolbar, click  Coordinate Systems and choose Cylindrical System.
2
In the Settings window for Cylindrical System, locate the Coordinate Names section.
3
From the Frame list, choose Material  (X, Y, Z).
Boundary System 1 (sys1), Curvilinear System (cc) (cc_cs), Cylindrical System 4 (sys4), Fiber Reference System (sys3), Rotated System 2 (sys2)
1
In the Model Builder window, under Component 1 (comp1)>Definitions, Ctrl-click to select Boundary System 1 (sys1), Curvilinear System (cc) (cc_cs), Rotated System 2 (sys2), Fiber Reference System (sys3), and Cylindrical System 4 (sys4).
2
Coordinate Systems
1
In the Settings window for Group, type Coordinate Systems in the Label text field.
2
In the Model Builder window, collapse the Coordinate Systems node.
Now we have all information needed to simulate the contraction. Add a Solid Mechanics interface and three PDE interfaces. The three PDEs will be used to solve the monodomain equation and to compute the active stress.
Component 1 (comp1)
In the Home toolbar, click  Windows and choose Add Physics.
Add Physics
1
Go to the Add Physics window.
2
In the tree, select Structural Mechanics>Solid Mechanics (solid).
3
Find the Physics interfaces in study subsection. In the table, clear the Solve check box for Study: Fiber Direction.
4
Click Add to Component 1 in the window toolbar.
5
In the tree, select Mathematics>PDE Interfaces>Coefficient Form PDE (c).
6
In the table, clear the Solve check box for Study: Fiber Direction.
7
Click Add to Component 1 in the window toolbar.
8
In the tree, select Mathematics>PDE Interfaces>Coefficient Form PDE (c).
9
In the table, clear the Solve check box for Study: Fiber Direction.
10
Click Add to Component 1 in the window toolbar.
11
In the tree, select Mathematics>PDE Interfaces>Coefficient Form PDE (c).
12
In the table, clear the Solve check box for Study: Fiber Direction.
13
Click Add to Component 1 in the window toolbar.
14
In the tree, select Mathematics>PDE Interfaces>Coefficient Form PDE (c).
15
In the table, clear the Solve check box for Study: Fiber Direction.
16
In the Home toolbar, click  Add Physics to close the Add Physics window.
Solid Mechanics (solid)
1
In the Settings window for Solid Mechanics, locate the Structural Transient Behavior section.
2
3
Click to expand the Discretization section. From the Displacement field list, choose Linear.
Hyperelastic Material 1
1
Right-click Component 1 (comp1)>Solid Mechanics (solid) and choose Material Models>Hyperelastic Material.
2
In the Settings window for Hyperelastic Material, locate the Domain Selection section.
3
From the Selection list, choose All domains.
Fiber 1
In the Physics toolbar, click  Attributes and choose Fiber.
Materials
Material 1 (mat1)
1
In the Model Builder window, under Component 1 (comp1) right-click Materials and choose Blank Material.
2
In the Settings window for Material, locate the Material Contents section.
3
Electrophysiology: Transmembrane Potential (Phi)
1
In the Model Builder window, under Component 1 (comp1) click Coefficient Form PDE (c).
2
In the Settings window for Coefficient Form PDE, type Electrophysiology: Transmembrane Potential (Phi) in the Label text field.
3
Locate the Units section. Click  Define Dependent Variable Unit.
4
In the Dependent variable quantity table, enter the following settings:
5
In the Source term quantity table, enter the following settings:
6
Click to expand the Discretization section. From the Element order list, choose Linear.
7
From the Frame list, choose Material.
8
Click to expand the Dependent Variables section. In the Field name text field, type Phi.
9
In the Dependent variables table, enter the following settings:
Electrophysiology: Conductance of Slow Processes (r)
1
In the Model Builder window, under Component 1 (comp1) click Coefficient Form PDE 2 (c2).
2
In the Settings window for Coefficient Form PDE, type Electrophysiology: Conductance of Slow Processes (r) in the Label text field.
3
Click to expand the Discretization section. Locate the Units section. In the Source term quantity table, enter the following settings:
4
Locate the Discretization section. From the Element order list, choose Linear.
5
From the Frame list, choose Material.
6
Locate the Dependent Variables section. In the Field name text field, type r.
7
In the Dependent variables table, enter the following settings:
Active Stress (Sa)
1
In the Model Builder window, under Component 1 (comp1) click Coefficient Form PDE 3 (c3).
2
In the Settings window for Coefficient Form PDE, type Active Stress (Sa) in the Label text field.
3
Locate the Units section. Click  Define Dependent Variable Unit.
4
In the Dependent variable quantity table, enter the following settings:
5
In the Source term quantity table, enter the following settings:
6
Locate the Discretization section. From the Element order list, choose Linear.
7
From the Frame list, choose Material.
8
Locate the Dependent Variables section. In the Field name text field, type Sa.
9
In the Dependent variables table, enter the following settings:
Definitions
Electrophysiology Variables
1
In the Model Builder window, under Component 1 (comp1) right-click Definitions and choose Variables.
2
In the Settings window for Variables, type Electrophysiology Variables in the Label text field.
3
Locate the Variables section. Click  Load from File.
4
To compute the internal volume of the chamber during the contraction using Gauss’ theorem we need to integrate over the internal boundaries.
Integration 1 (intop1)
1
In the Definitions toolbar, click  Nonlocal Couplings and choose Integration.
2
In the Settings window for Integration, type intLV in the Operator name text field.
3
Locate the Source Selection section. From the Geometric entity level list, choose Boundary.
4
From the Selection list, choose LV-Endocardium.
Integration 2 (intLV2)
1
Right-click Integration 1 (intop1) and choose Duplicate.
2
In the Settings window for Integration, type intRV in the Operator name text field.
3
Locate the Source Selection section. Click  Clear Selection.
4
Ventricular Internal Volume
1
In the Model Builder window, right-click Definitions and choose Variables.
2
In the Settings window for Variables, type Ventricular Internal Volume in the Label text field.
3
Locate the Variables section. In the table, enter the following settings:
Define the partial differential equations to solve in order to obtain the active stress.
Electrophysiology: Transmembrane Potential (Phi) (c)
Coefficient Form PDE 1
1
In the Model Builder window, expand the Component 1 (comp1)>Electrophysiology: Transmembrane Potential (Phi) (c) node, then click Coefficient Form PDE 1.
2
In the Settings window for Coefficient Form PDE, locate the Diffusion Coefficient section.
3
4
In the c table, enter the following settings:
5
Locate the Source Term section. In the f text field, type -Chi_m*(Ie+Im).
6
Locate the Damping or Mass Coefficient section. In the da text field, type Chi_m*Cm.
Initial Values 1
1
In the Model Builder window, click Initial Values 1.
2
In the Settings window for Initial Values, locate the Initial Values section.
3
In the Phi text field, type Phir+70[mV]*(Z>-1e-4[mm])*(X<31[mm])*(X>0[mm])*(Y>-10[mm])*(Y<10[mm]).
Electrophysiology: Conductance of Slow Processes (r) (c2)
Coefficient Form PDE 1
1
In the Model Builder window, expand the Component 1 (comp1)>Electrophysiology: Conductance of Slow Processes (r) (c2) node, then click Coefficient Form PDE 1.
2
In the Settings window for Coefficient Form PDE, locate the Diffusion Coefficient section.
3
In the c text field, type 0.
4
Locate the Absorption Coefficient section. In the a text field, type (1/betat)*(gamma+(mu1/(phi+mu2))*c*phi*(phi-b-1)).
5
Locate the Source Term section. In the f text field, type (1/betat)*(-gamma*c*phi*(phi-b-1)-mu1/(phi+mu2)*r^2).
Active Stress (Sa) (c3)
Coefficient Form PDE 1
1
In the Model Builder window, expand the Component 1 (comp1)>Active Stress (Sa) (c3) node, then click Coefficient Form PDE 1.
2
In the Settings window for Coefficient Form PDE, locate the Diffusion Coefficient section.
3
In the c text field, type 0.
4
Locate the Absorption Coefficient section. In the a text field, type eps_delay.
5
Locate the Source Term section. In the f text field, type eps_delay*kT*(Phi-Phir).
Solid Mechanics (solid)
In the Model Builder window, expand the Component 1 (comp1)>Solid Mechanics (solid) node.
Fiber 1
1
In the Model Builder window, expand the Component 1 (comp1)>Solid Mechanics (solid)>Hyperelastic Material 1 node, then click Fiber 1.
2
In the Settings window for Fiber, locate the Coordinate System Selection section.
3
From the Coordinate system list, choose Fiber Reference System (sys3).
4
Locate the Orientation section. From the a list, choose Third axis.
The coupling between the potential and the deformation is obtained through the active stress. The active stress is added as an external stress. Use the fiber coordinate system to easily input the components.
Hyperelastic Material 1
In the Model Builder window, click Hyperelastic Material 1.
External Stress 1
1
In the Physics toolbar, click  Attributes and choose External Stress.
2
In the Settings window for External Stress, locate the Coordinate System Selection section.
3
From the Coordinate system list, choose Fiber Reference System (sys3).
4
Locate the External Stress section. From the list, choose Diagonal.
5
In the Sext table, enter the following settings:
Prescribed Displacement 1
1
In the Physics toolbar, click  Boundaries and choose Prescribed Displacement.
2
In the Settings window for Prescribed Displacement, locate the Boundary Selection section.
3
From the Selection list, choose Basal Surface.
4
Locate the Prescribed Displacement section. Select the Prescribed in x direction check box.
5
Select the Prescribed in y direction check box.
6
Select the Prescribed in z direction check box.
Add Study
1
In the Home toolbar, click  Add Study to open the Add Study window.
2
Go to the Add Study window.
3
Find the Physics interfaces in study subsection. In the table, clear the Solve check boxes for Wall Distance: Epicardium (wd), Wall Distance: Endocardium (wd2), and Sheet Direction (cc).
4
Find the Studies subsection. In the Select Study tree, select General Studies>Time Dependent.
5
Click Add Study in the window toolbar.
6
In the Home toolbar, click  Add Study to close the Add Study window.
Study: Excitation-Contraction
1
In the Model Builder window, click Study 2.
2
In the Settings window for Study, type Study: Excitation-Contraction in the Label text field.
Set up the solver and initialize the solution to generate the Fiber default plot.
Step 1: Time Dependent
1
In the Model Builder window, under Study: Excitation-Contraction click Step 1: Time Dependent.
2
In the Settings window for Time Dependent, locate the Study Settings section.
3
From the Time unit list, choose ms.
4
In the Output times text field, type range(0,5,320).
5
Click to expand the Values of Dependent Variables section. Find the Values of variables not solved for subsection. From the Settings list, choose User controlled.
6
From the Method list, choose Solution.
7
From the Study list, choose Study: Fiber Direction, Stationary.
8
In the Study toolbar, click  Get Initial Value.
Results
Study: Excitation-Contraction/Solution 2 (sol2)
1
In the Model Builder window, expand the Results>Datasets node, then click Study: Excitation-Contraction/Solution 2 (sol2).
2
In the Settings window for Solution, locate the Solution section.
3
From the Frame list, choose Material  (X, Y, Z).
Here the steps to obtain the model thumbnail are shown.
3D Plot Group 10
In the Home toolbar, click  Add Plot Group and choose 3D Plot Group.
Hyperelastic Material 1 (solid)
1
In the Model Builder window, expand the Results>Fibers (solid) node, then click Hyperelastic Material 1 (solid).
2
In the Settings window for 3D Plot Group, click to expand the Title section.
3
In the Title text area, type Fiber orientation.
4
In the Hyperelastic Material 1 (solid) toolbar, click  Plot.
Endocardium
1
In the Model Builder window, expand the Hyperelastic Material 1 (solid) node, then click Fiber 1.
2
In the Settings window for Streamline, type Endocardium in the Label text field.
3
Locate the Streamline Positioning section. From the Positioning list, choose On selected boundaries.
4
From the Point distribution list, choose Mesh based.
5
In the Element refinement text field, type 2.
6
Locate the Selection section. Click to select the  Activate Selection toggle button.
7
Filter 1
Right-click Endocardium and choose Filter.
Color Expression
1
In the Model Builder window, expand the Results>Fibers (solid)>Hyperelastic Material 1 (solid)>Endocardium node, then click Color Expression.
2
In the Settings window for Color Expression, locate the Expression section.
3
In the Expression text field, type theta.
4
In the Unit field, type deg.
5
Locate the Coloring and Style section. From the Color table list, choose Rainbow.
6
Click to expand the Range section. Select the Manual color range check box.
7
In the Minimum text field, type -60.
8
In the Maximum text field, type 60.
Filter 1
1
In the Model Builder window, click Filter 1.
2
In the Settings window for Filter, locate the Element Selection section.
3
In the Logical expression for inclusion text field, type Beta>0.95.
Myocardium
1
In the Model Builder window, right-click Endocardium and choose Duplicate.
2
In the Settings window for Streamline, type Myocardium in the Label text field.
3
Locate the Selection section. Click  Clear Selection.
4
5
Click to expand the Inherit Style section. From the Plot list, choose Endocardium.
Filter 1
1
In the Model Builder window, expand the Myocardium node, then click Filter 1.
2
In the Settings window for Filter, locate the Element Selection section.
3
In the Logical expression for inclusion text field, type (Beta>0.45)*(Beta<0.55)*(Z<-cL/9).
Epicardium
1
In the Model Builder window, right-click Myocardium and choose Duplicate.
2
In the Settings window for Streamline, type Epicardium in the Label text field.
3
Locate the Selection section. Click  Clear Selection.
4
Filter 1
1
In the Model Builder window, expand the Epicardium node, then click Filter 1.
2
In the Settings window for Filter, locate the Element Selection section.
3
In the Logical expression for inclusion text field, type Beta<0.05*((sys4.phi>-100[deg])*(sys4.phi<190[deg])*(Z>-cL/3) || (Z<-cL/3)).
4
In the Hyperelastic Material 1 (solid) toolbar, click  Plot.
5
Click the  Show Grid button in the Graphics toolbar.
6
Click the  Zoom Extents button in the Graphics toolbar.
3D Plot Group 10, 3D Plot Group 7, 3D Plot Group 8, 3D Plot Group 9, Stress (solid)
1
In the Model Builder window, under Results, Ctrl-click to select Stress (solid), 3D Plot Group 7, 3D Plot Group 8, 3D Plot Group 9, and 3D Plot Group 10.
Remove defaults plots that are not used.
2
Create a 3D plot to display the active potential distribution while the simulation runs.
Potential
1
In the Home toolbar, click  Add Plot Group and choose 3D Plot Group.
2
In the Settings window for 3D Plot Group, type Potential in the Label text field.
3
Locate the Data section. From the Dataset list, choose Study: Excitation-Contraction/Solution 2 (sol2).
Volume 1
1
Right-click Potential and choose Volume.
2
In the Settings window for Volume, locate the Expression section.
3
In the Expression text field, type Phi.
4
From the Unit list, choose mV.
5
Click to expand the Range section. Select the Manual color range check box.
6
In the Minimum text field, type -80.
7
In the Maximum text field, type 20.
Deformation 1
1
Right-click Volume 1 and choose Deformation.
2
In the Settings window for Deformation, locate the Scale section.
3
Select the Scale factor check box.
4
Study: Excitation-Contraction
1
In the Model Builder window, click Study: Excitation-Contraction.
2
In the Settings window for Study, locate the Study Settings section.
3
Clear the Generate default plots check box.
Step 1: Time Dependent
1
In the Model Builder window, expand the Study: Excitation-Contraction node, then click Step 1: Time Dependent.
2
In the Settings window for Time Dependent, click to expand the Results While Solving section.
3
Select the Plot check box.
4
From the Plot group list, choose Potential.
5
In the Home toolbar, click  Compute.
Results
Contraction, Snapshots
1
In the Home toolbar, click  Add Plot Group and choose 3D Plot Group.
2
In the Settings window for 3D Plot Group, type Contraction, Snapshots in the Label text field.
3
Locate the Data section. From the Dataset list, choose Study: Excitation-Contraction/Solution 2 (sol2).
4
Click to expand the Title section. From the Title type list, choose Manual.
5
In the Title text area, type Potential and deformation.
6
Clear the Parameter indicator text field.
7
Click to expand the Plot Array section. Select the Enable check box.
8
From the Array shape list, choose Square.
9
From the Array plane list, choose xz.
10
Click the  Go to XZ View button in the Graphics toolbar.
Slice 1
1
Right-click Contraction, Snapshots and choose Slice.
2
In the Settings window for Slice, locate the Data section.
3
From the Dataset list, choose Study: Excitation-Contraction/Solution 2 (sol2).
4
From the Time (ms) list, choose 5.
5
Locate the Expression section. In the Expression text field, type Phi.
6
From the Unit list, choose mV.
7
Locate the Plane Data section. From the Plane list, choose ZX-planes.
8
In the Planes text field, type 1.
9
Click to expand the Plot Array section. Select the Manual indexing check box.
Deformation 1
1
Right-click Slice 1 and choose Deformation.
2
In the Settings window for Deformation, locate the Scale section.
3
Select the Scale factor check box.
4
5
In the Contraction, Snapshots toolbar, click  Plot.
Slice 2
1
In the Model Builder window, under Results>Contraction, Snapshots right-click Slice 1 and choose Duplicate.
2
In the Settings window for Slice, click to expand the Title section.
3
From the Title type list, choose None.
4
Locate the Plane Data section. From the Plane list, choose XY-planes.
5
In the Planes text field, type 1.
6
Locate the Coloring and Style section. Clear the Color legend check box.
7
Click to expand the Inherit Style section. From the Plot list, choose Slice 1.
Annotation 1
1
In the Model Builder window, right-click Contraction, Snapshots and choose Annotation.
2
In the Settings window for Annotation, locate the Annotation section.
3
In the Text text field, type t=5 ms.
4
Locate the Position section. In the Z text field, type 20.
5
Click to expand the Plot Array section. Select the Manual indexing check box.
Annotation 1, Slice 1, Slice 2
1
In the Model Builder window, under Results>Contraction, Snapshots, Ctrl-click to select Slice 1, Slice 2, and Annotation 1.
2
Slice 3
1
In the Settings window for Slice, click to expand the Title section.
2
From the Title type list, choose None.
3
Locate the Coloring and Style section. Clear the Color legend check box.
4
Locate the Inherit Style section. From the Plot list, choose Slice 1.
5
Locate the Data section. From the Time (ms) list, choose 35.
6
Locate the Plot Array section. In the Column index text field, type 1.
Slice 4
1
In the Model Builder window, click Slice 4.
2
In the Settings window for Slice, locate the Data section.
3
From the Time (ms) list, choose 35.
4
Locate the Plot Array section. In the Column index text field, type 1.
Annotation 2
1
In the Model Builder window, click Annotation 2.
2
In the Settings window for Annotation, locate the Annotation section.
3
In the Text text field, type t=35 ms.
4
Locate the Plot Array section. In the Column index text field, type 1.
5
In the Contraction, Snapshots toolbar, click  Plot.
6
Click the  Zoom Extents button in the Graphics toolbar.
Annotation 2, Slice 3, Slice 4
1
In the Model Builder window, under Results>Contraction, Snapshots, Ctrl-click to select Slice 3, Slice 4, and Annotation 2.
2
Slice 5
1
In the Settings window for Slice, locate the Data section.
2
From the Time (ms) list, choose 55.
3
Locate the Plot Array section. In the Column index text field, type 2.
Slice 6
1
In the Model Builder window, click Slice 6.
2
In the Settings window for Slice, locate the Data section.
3
From the Time (ms) list, choose 55.
4
Locate the Plot Array section. In the Column index text field, type 2.
Annotation 3
1
In the Model Builder window, click Annotation 3.
2
In the Settings window for Annotation, locate the Annotation section.
3
In the Text text field, type t=50 ms.
4
Locate the Plot Array section. In the Column index text field, type 2.
5
In the Contraction, Snapshots toolbar, click  Plot.
6
Click the  Zoom Extents button in the Graphics toolbar.
Annotation 3, Slice 5, Slice 6
1
In the Model Builder window, under Results>Contraction, Snapshots, Ctrl-click to select Slice 5, Slice 6, and Annotation 3.
2
Slice 7
1
In the Settings window for Slice, locate the Data section.
2
From the Time (ms) list, choose 100.
3
Locate the Plot Array section. In the Column index text field, type 3.
Slice 8
1
In the Model Builder window, click Slice 8.
2
In the Settings window for Slice, locate the Data section.
3
From the Time (ms) list, choose 100.
4
Locate the Plot Array section. In the Column index text field, type 3.
Annotation 4
1
In the Model Builder window, click Annotation 4.
2
In the Settings window for Annotation, locate the Annotation section.
3
In the Text text field, type t=100 ms.
4
Locate the Plot Array section. In the Column index text field, type 3.
5
In the Contraction, Snapshots toolbar, click  Plot.
6
Click the  Zoom Extents button in the Graphics toolbar.
Annotation 4, Slice 7, Slice 8
1
In the Model Builder window, under Results>Contraction, Snapshots, Ctrl-click to select Slice 7, Slice 8, and Annotation 4.
2
Slice 9
1
In the Settings window for Slice, locate the Data section.
2
From the Time (ms) list, choose 145.
3
Click to expand the Plot Array section. In the Row index text field, type -1.
4
In the Column index text field, type 0.
Slice 10
1
In the Model Builder window, click Slice 10.
2
In the Settings window for Slice, locate the Data section.
3
From the Time (ms) list, choose 145.
4
Locate the Plot Array section. In the Row index text field, type -1.
5
In the Column index text field, type 0.
Annotation 5
1
In the Model Builder window, click Annotation 5.
2
In the Settings window for Annotation, locate the Annotation section.
3
In the Text text field, type t=145 ms.
4
Locate the Position section. In the Z text field, type -80.
5
Click to expand the Plot Array section. In the Row index text field, type -1.
6
In the Column index text field, type 0.
7
In the Contraction, Snapshots toolbar, click  Plot.
8
Click the  Zoom Extents button in the Graphics toolbar.
Annotation 5, Slice 10, Slice 9
1
In the Model Builder window, under Results>Contraction, Snapshots, Ctrl-click to select Slice 9, Slice 10, and Annotation 5.
2
Slice 11
1
In the Settings window for Slice, locate the Data section.
2
From the Time (ms) list, choose 200.
3
Locate the Plot Array section. In the Column index text field, type 1.
Slice 12
1
In the Model Builder window, click Slice 12.
2
In the Settings window for Slice, locate the Data section.
3
From the Time (ms) list, choose 200.
4
Locate the Plot Array section. In the Column index text field, type 1.
Annotation 6
1
In the Model Builder window, click Annotation 6.
2
In the Settings window for Annotation, locate the Annotation section.
3
In the Text text field, type t=200 ms.
4
Locate the Plot Array section. In the Column index text field, type 1.
5
In the Contraction, Snapshots toolbar, click  Plot.
6
Click the  Zoom Extents button in the Graphics toolbar.
Annotation 6, Slice 11, Slice 12
1
In the Model Builder window, under Results>Contraction, Snapshots, Ctrl-click to select Slice 11, Slice 12, and Annotation 6.
2
Annotation 7, Slice 13, Slice 14
1
In the Model Builder window, under Results>Contraction, Snapshots, Ctrl-click to select Slice 13, Slice 14, and Annotation 7.
2
In the Settings window for Slice, locate the Data section.
3
From the Time (ms) list, choose 250.
4
Locate the Plot Array section. In the Column index text field, type 2.
Slice 14
1
In the Model Builder window, click Slice 14.
2
In the Settings window for Slice, locate the Data section.
3
From the Time (ms) list, choose 250.
4
Locate the Plot Array section. In the Column index text field, type 2.
Annotation 7
1
In the Model Builder window, click Annotation 7.
2
In the Settings window for Annotation, locate the Plot Array section.
3
In the Column index text field, type 2.
4
Locate the Annotation section. In the Text text field, type t=250 ms.
5
In the Contraction, Snapshots toolbar, click  Plot.
6
Click the  Zoom Extents button in the Graphics toolbar.
Annotation 7, Slice 13, Slice 14
1
In the Model Builder window, under Results>Contraction, Snapshots, Ctrl-click to select Slice 13, Slice 14, and Annotation 7.
2
Slice 15
1
In the Settings window for Slice, locate the Data section.
2
From the Time (ms) list, choose 300.
3
Locate the Plot Array section. In the Column index text field, type 3.
Slice 16
1
In the Model Builder window, click Slice 16.
2
In the Settings window for Slice, locate the Data section.
3
From the Time (ms) list, choose 300.
4
Locate the Plot Array section. In the Column index text field, type 3.
Annotation 8
1
In the Model Builder window, click Annotation 8.
2
In the Settings window for Annotation, locate the Annotation section.
3
In the Text text field, type t=300 ms.
4
Locate the Plot Array section. In the Column index text field, type 3.
Slice 2
Click the  Zoom Extents button in the Graphics toolbar.
Contraction, Snapshots
1
Click the  Transparency button in the Graphics toolbar.
2
Click the  Orthographic Projection button in the Graphics toolbar.
3
In the Model Builder window, click Contraction, Snapshots.
4
In the Contraction, Snapshots toolbar, click  Plot.
Volume Change
1
In the Home toolbar, click  Add Plot Group and choose 1D Plot Group.
2
In the Settings window for 1D Plot Group, type Volume Change in the Label text field.
3
Locate the Data section. From the Dataset list, choose Study: Excitation-Contraction/Solution 2 (sol2).
4
Locate the Plot Settings section. Select the y-axis label check box.
5
Click to expand the Title section. From the Title type list, choose None.
6
Locate the Plot Settings section. In the y-axis label text field, type Current volume (ml).
7
Locate the Legend section. From the Position list, choose Upper middle.
Global 1
1
Right-click Volume Change and choose Global.
2
In the Settings window for Global, locate the y-Axis Data section.
3
4
Click to expand the Legends section. From the Legends list, choose Manual.
5
6
In the Volume Change toolbar, click  Plot.
Point at Z=-1mm
1
In the Results toolbar, click  Cut Point 3D.
2
In the Settings window for Cut Point 3D, type Point at Z=-1mm in the Label text field.
3
Locate the Data section. From the Dataset list, choose Study: Excitation-Contraction/Solution 2 (sol2).
4
Locate the Point Data section. In the X text field, type 25.
5
In the Y text field, type 0.
6
In the Z text field, type -1.
Point at Z=-40mm
1
Right-click Point at Z=-1mm and choose Duplicate.
2
In the Settings window for Cut Point 3D, type Point at Z=-40mm in the Label text field.
3
Locate the Point Data section. In the X text field, type 20.
4
In the Y text field, type 0.
5
In the Z text field, type -40.
Point at Z=-60mm
1
Right-click Point at Z=-40mm and choose Duplicate.
2
In the Settings window for Cut Point 3D, type Point at Z=-60mm in the Label text field.
3
Locate the Point Data section. In the X text field, type 0.
4
In the Y text field, type 0.
5
In the Z text field, type -60.
Activation Time
1
In the Results toolbar, click  1D Plot Group.
2
In the Settings window for 1D Plot Group, type Activation Time in the Label text field.
3
Click to expand the Title section. From the Title type list, choose None.
Point Graph 1
1
Right-click Activation Time and choose Point Graph.
2
In the Settings window for Point Graph, locate the Data section.
3
From the Dataset list, choose Point at Z=-1mm.
4
Locate the y-Axis Data section. In the Expression text field, type Phi.
5
From the Unit list, choose mV.
6
Click to expand the Legends section. Select the Show legends check box.
7
From the Legends list, choose Manual.
8
Point Graph 2
1
Right-click Point Graph 1 and choose Duplicate.
2
In the Settings window for Point Graph, locate the Data section.
3
From the Dataset list, choose Point at Z=-40mm.
4
Click to expand the Title section. From the Title type list, choose None.
5
Locate the Legends section. In the table, enter the following settings:
Point Graph 3
1
Right-click Point Graph 2 and choose Duplicate.
2
In the Settings window for Point Graph, locate the Data section.
3
From the Dataset list, choose Point at Z=-60mm.
4
Locate the Legends section. In the table, enter the following settings:
5
In the Activation Time toolbar, click  Plot.
Heart Deformation
1
In the Results toolbar, click  Animation and choose Player.
Create an animation to see the excitation path.
2
In the Settings window for Animation, type Heart Deformation in the Label text field.
3
Locate the Scene section. From the Subject list, choose Potential.
4
Locate the Frames section. In the Number of frames text field, type 50.
5
Click the  Zoom Extents button in the Graphics toolbar.
Appendix - Geometry Modeling Instructions
From the File menu, choose New.
New
In the New window, click  Model Wizard.
Model Wizard
1
In the Model Wizard window, click  3D.
2
Global Definitions
Heart Geometry Parameters
1
In the Model Builder window, under Global Definitions click Parameters 1.
2
In the Settings window for Parameters, type Heart Geometry Parameters in the Label text field.
3
Locate the Parameters section. Click  Load from File.
4
Geometry 1
1
In the Model Builder window, under Component 1 (comp1) click Geometry 1.
2
In the Settings window for Geometry, locate the Units section.
3
From the Length unit list, choose mm.
Ellipsoid: Left Ventricle
1
In the Geometry toolbar, click  More Primitives and choose Ellipsoid.
2
In the Settings window for Ellipsoid, type Ellipsoid: Left Ventricle in the Label text field.
3
Locate the Size and Shape section. In the a-semiaxis text field, type aL.
4
In the b-semiaxis text field, type bL.
5
In the c-semiaxis text field, type cL.
6
Click to expand the Layers section. In the table, enter the following settings:
Ellipsoid: Right Ventricle
1
Right-click Ellipsoid: Left Ventricle and choose Duplicate.
2
In the Settings window for Ellipsoid, type Ellipsoid: Right Ventricle in the Label text field.
3
Locate the Size and Shape section. In the a-semiaxis text field, type aR.
4
In the b-semiaxis text field, type bR.
5
In the c-semiaxis text field, type cR.
6
Locate the Layers section. In the table, enter the following settings:
Partition Domains 1 (pard1)
1
In the Geometry toolbar, click  Booleans and Partitions and choose Partition Domains.
2
Click the  Transparency button in the Graphics toolbar.
3
On the object elp2, select Domains 1, 3, 5, 6, and 8 only.
4
In the Settings window for Partition Domains, locate the Partition Domains section.
5
From the Partition with list, choose Faces.
6
On the object elp1, select Boundaries 16 and 22 only.
Delete Entities 1 (del1)
1
In the Geometry toolbar, click  Delete.
2
In the Settings window for Delete Entities, locate the Entities or Objects to Delete section.
3
From the Geometric entity level list, choose Domain.
4
On the object elp1, select Domains 2, 4, 5, 7, and 9 only.
5
On the object pard1, select Domains 1–7, 9, and 10 only.
6
Click  Build All Objects.
7
Click  Build All Objects.
Use virtual operations to ignore faces and edges to simplify the geometry and avoid unnecessary mesh refinement zones.
Ignore Faces 1 (igf1)
1
In the Geometry toolbar, click  Virtual Operations and choose Ignore Faces.
2
On the object fin, select Boundaries 11 and 20 only.
3
In the Geometry toolbar, click  Build All.