Views
Reconstruction of the electrical activity of cardiac purkinje fibres
The CellML code.
<!-- FILE : MNT_purkinje_fibre_model_1975.xml
CREATED : September 2001
LAST MODIFIED : 5th April 2003
AUTHOR : Catherine Lloyd
Department of Engineering Science
The University of Auckland
MODEL STATUS : This model conforms to the CellML 1.0 Specification released on
10th August 2001, and the CellML Metadata 1.0 Specification released on 16
January 2002.
DESCRIPTION : This file contains a CellML description of cardiac action
potentials in purkinje fibres, based on the McAllister-Noble-Tsien model, 1975.
CHANGES:
19/10/2001 - CML - Removed document type definition as this is declared as
optional according to the W3C recommendation.
24/10/2001 - CML - Made changes to some of the metadata, bringing them up to
date with the most recent working draft (26th September) of
the Metadata specification.
10/12/2001 - CML - Changed equations after checking with the mathml validator.
03/01/2002 - CML - Altered parent-child relationships as x1 and x2 were made
to be gates of the plateau potassium currents.
20/01/2002 - AAC - Updated metadata to conform to the 16/01/2002 CellML
Metadata Specification.
28/02/2002 - CML - Corrected units.
19/07/2002 - CML - Added more metadata.
05/04/2003 - AAC - Changed the model name so the model loads in the database
easier.
-->
<model xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cellml="http://www.cellml.org/cellml/1.0#" xmlns:bqs="http://www.cellml.org/bqs/1.0#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cmeta="http://www.cellml.org/metadata/1.0#" xmlns="http://www.cellml.org/cellml/1.0#" cmeta:id="MNT_purkinje_fibre_model_1975" name="mcallister_noble_tsien_1975_version02">
<!--
Below, are defined some additional units for association with variables and
constants within the model. The identifiers are fairly self-explanatory.
-->
<units name="ms">
<unit units="second" prefix="milli" />
</units>
<units name="per_ms">
<unit units="second" prefix="milli" exponent="-1" />
</units>
<units name="mV">
<unit units="volt" prefix="milli" />
</units>
<units name="per_mV">
<unit units="volt" prefix="milli" exponent="-1" />
</units>
<units name="per_mV_ms">
<unit units="mV" exponent="-1" />
<unit units="ms" exponent="-1" />
</units>
<units name="mS_per_mm2">
<unit units="siemens" prefix="milli" />
<unit units="metre" prefix="milli" exponent="-2" />
</units>
<units name="uF_per_mm2">
<unit units="farad" prefix="micro" />
<unit units="metre" prefix="milli" exponent="-2" />
</units>
<units name="uA_per_mm2">
<unit units="ampere" prefix="micro" />
<unit units="metre" prefix="milli" exponent="-2" />
</units>
<units name="concentration_units">
<unit units="mole" prefix="nano" />
<unit units="metre" prefix="milli" exponent="-3" />
</units>
<!--
The "environment" component is used to declare variables that are used by
all or most of the other components, in this case just "time".
-->
<component name="environment" cmeta:id="environment">
<variable units="ms" public_interface="out" name="time" />
</component>
<!--
The "membrane" component is really the `root' node of our model.
It defines the action potential variable "V" among other things.
-->
<component name="membrane" cmeta:id="membrane">
<!-- These variables are defined here and used in other components. -->
<variable units="mV" public_interface="out" name="V" initial_value="-80.0" />
<!-- These variables are defined here and only used internally. -->
<variable units="uF_per_mm2" name="C" initial_value="0.1" />
<!-- These variables are imported from other components. -->
<variable units="ms" public_interface="in" name="time" />
<variable units="uA_per_mm2" public_interface="in" name="i_Na" />
<variable units="uA_per_mm2" public_interface="in" name="i_si" />
<variable units="uA_per_mm2" public_interface="in" name="i_K2" />
<variable units="uA_per_mm2" public_interface="in" name="i_x1" />
<variable units="uA_per_mm2" public_interface="in" name="i_x2" />
<variable units="uA_per_mm2" public_interface="in" name="i_qr" />
<variable units="uA_per_mm2" public_interface="in" name="i_K1" />
<variable units="uA_per_mm2" public_interface="in" name="i_Na_b" />
<variable units="uA_per_mm2" public_interface="in" name="i_Cl_b" />
<variable units="uA_per_mm2" name="I_stim" />
<!--
The membrane voltage (V) is calculated as an ordinary
differential equation in terms of the currents.
-->
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="membrane_voltage_diff_eq">
<apply id="membrane_voltage_diff_eq">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> V </ci>
</apply>
<apply>
<divide />
<apply>
<minus />
<ci>I_stim</ci>
<apply>
<plus />
<ci> i_Na </ci>
<ci> i_si </ci>
<ci> i_K2 </ci>
<ci> i_x1 </ci>
<ci> i_x2 </ci>
<ci> i_qr </ci>
<ci> i_K1 </ci>
<ci> i_Na_b </ci>
<ci> i_Cl_b </ci>
</apply>
</apply>
<ci> C </ci>
</apply>
</apply>
</math>
<variable units="uA_per_mm2" public_interface="out" name="IStimC" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="IStim_for_cmiss_eq">
<apply id="IStim_for_cmiss">
<eq />
<ci>IStimC</ci>
<ci>I_stim</ci>
</apply>
</math>
</component>
<!--
The "fast_sodium_current" component contains the differential equations
governing the influx of sodium ions through the cell surface membrane
into the cell.
-->
<component name="fast_sodium_current" cmeta:id="fast_sodium_current">
<!-- These variables are defined here and used in other components. -->
<variable units="uA_per_mm2" public_interface="out" name="i_Na" />
<variable units="mV" public_interface="out" name="E_Na" initial_value="40.0" />
<!-- This variable is defined here and only used internally. -->
<variable units="mS_per_mm2" name="g_Na" initial_value="1.5" />
<!--
Time is imported from the "environment", and membrane potential is
imported from the "membrane" component. These variables are used in the
"sodium_current" parent component, which also acts as an interface,
passing the variables to its encapsulated gate components.
-->
<variable units="ms" public_interface="in" private_interface="out" name="time" />
<variable units="mV" public_interface="in" private_interface="out" name="V" />
<!-- These variables are imported from encapsulated components. -->
<variable units="dimensionless" private_interface="in" name="m" />
<variable units="dimensionless" private_interface="in" name="h" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="i_Na_calculation_eq">
<apply id="i_Na_calculation">
<eq />
<ci> i_Na </ci>
<apply>
<times />
<ci> g_Na </ci>
<apply>
<power />
<ci> m </ci>
<cn cellml:units="dimensionless"> 3.0 </cn>
</apply>
<ci> h </ci>
<apply>
<minus />
<ci> V </ci>
<ci> E_Na </ci>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "fast_sodium_current_m_gate" is the activation m gate encapsulated
inside the "fast sodium current" component.
-->
<component name="fast_sodium_current_m_gate" cmeta:id="fast_sodium_current_m_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="m" initial_value="0.019" />
<!-- These variables are defined here and only used internally. -->
<variable units="per_ms" name="alpha_m" />
<variable units="per_ms" name="beta_m" />
<!--
These variables are imported from the "environment" and the "membrane" via
the "fast_sodium_current" component.
-->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="alpha_m_calculation_eq">
<apply id="alpha_m_calculation">
<eq />
<ci> alpha_m </ci>
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 47.0 </cn>
</apply>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 47.0 </cn>
</apply>
<cn cellml:units="mV"> 10.0 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="beta_m_calculation_eq">
<apply id="beta_m_calculation">
<eq />
<ci> beta_m </ci>
<apply>
<times />
<cn cellml:units="per_ms"> 40.0 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 72.0 </cn>
</apply>
<cn cellml:units="mV"> 17.86 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="dm_dt_eq">
<apply id="dm_dt">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> m </ci>
</apply>
<apply>
<minus />
<apply>
<times />
<ci> alpha_m </ci>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<ci> m </ci>
</apply>
</apply>
<apply>
<times />
<ci> beta_m </ci>
<ci> m </ci>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "fast_sodium_current_h_gate" component is the inactivation h gate
encapsulated in the "fast sodium current" component.
-->
<component name="fast_sodium_current_h_gate" cmeta:id="fast_sodium_current_h_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="h" initial_value="0.863" />
<!-- These variables are defined here and only used internally. -->
<variable units="per_ms" name="alpha_h" />
<variable units="per_ms" name="beta_h" />
<!--
These variables are imported from the "environment" and the "membrane" via
the "fast_sodium_current" component.
-->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="alpha_h_calculation_eq">
<apply id="alpha_h_calculation">
<eq />
<ci> alpha_h </ci>
<apply>
<times />
<cn cellml:units="per_ms"> 0.0085 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 71.0 </cn>
</apply>
<cn cellml:units="mV"> 5.435 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="beta_h_calculation_eq">
<apply id="beta_h_calculation">
<eq />
<ci> beta_h </ci>
<apply>
<divide />
<cn cellml:units="per_ms"> 2.5 </cn>
<apply>
<plus />
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 10.0 </cn>
</apply>
<cn cellml:units="mV"> 12.2 </cn>
</apply>
</apply>
</apply>
<cn cellml:units="dimensionless"> 1.0 </cn>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="dh_dt_eq">
<apply id="dh_dt">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> h </ci>
</apply>
<apply>
<minus />
<apply>
<times />
<ci> alpha_h </ci>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<ci> h </ci>
</apply>
</apply>
<apply>
<times />
<ci> beta_h </ci>
<ci> h </ci>
</apply>
</apply>
</apply>
</math>
</component>
<component name="secondary_inward_current" cmeta:id="secondary_inward_current">
<!-- This variable is defined here and used in other components. -->
<variable units="uA_per_mm2" public_interface="out" name="i_si" />
<!-- These variables are defined here and only used internally. -->
<variable units="mS_per_mm2" name="g_si" initial_value="0.008" />
<variable units="mS_per_mm2" name="g_si_" initial_value="0.0004" />
<variable units="mV" name="E_si" initial_value="70.0" />
<!--
Time is imported from the "environment", and membrane potential is
imported from the "membrane" component. These variables are used in the
"secondary_inward_current" parent component, which also acts as an
interface, passing the variables to its encapsulated gate component.
-->
<variable units="ms" public_interface="in" private_interface="out" name="time" />
<variable units="mV" public_interface="in" private_interface="out" name="V" />
<!-- These variables are imported from encapsulated components. -->
<variable units="dimensionless" private_interface="in" name="d" />
<variable units="dimensionless" private_interface="in" name="f" />
<variable units="dimensionless" private_interface="in" name="d1" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="i_si_calculation_eq">
<apply id="i_si_calculation">
<eq />
<ci> i_si </ci>
<apply>
<plus />
<apply>
<times />
<ci> g_si </ci>
<ci> d </ci>
<ci> f </ci>
<apply>
<minus />
<ci> V </ci>
<ci> E_si </ci>
</apply>
</apply>
<apply>
<times />
<ci> g_si_ </ci>
<ci> d1 </ci>
<apply>
<minus />
<ci> V </ci>
<ci> E_si </ci>
</apply>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "secondary_inward_current_d_gate" component is the d gate encapsulated
in the "secondary inward current" component.
-->
<component name="secondary_inward_current_d_gate" cmeta:id="secondary_inward_current_d_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="d" initial_value="0.002" />
<!-- These variables are defined here and only used internally. -->
<variable units="per_ms" name="alpha_d" />
<variable units="per_ms" name="beta_d" />
<!--
These variables are imported from the "environment" and the "membrane" via
the "slow_inward_current" component.
-->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="alpha_d_calculation_eq">
<apply id="alpha_d_calculation">
<eq />
<ci> alpha_d </ci>
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 40.0 </cn>
</apply>
<apply>
<times />
<cn cellml:units="mV"> 500.0 </cn>
<apply>
<minus />
<cn cellml:units="ms"> 1.0 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 40.0 </cn>
</apply>
<cn cellml:units="mV"> 10.0 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="beta_d_calculation_eq">
<apply id="beta_d_calculation">
<eq />
<ci> beta_d </ci>
<apply>
<times />
<cn cellml:units="per_ms"> 0.02 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 40.0 </cn>
</apply>
<cn cellml:units="mV"> 11.26 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="dd_dt_eq">
<apply id="dd_dt">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> d </ci>
</apply>
<apply>
<minus />
<apply>
<times />
<ci> alpha_d </ci>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<ci> d </ci>
</apply>
</apply>
<apply>
<times />
<ci> beta_d </ci>
<ci> d </ci>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "secondary_inward_current_f_gate" component is the f gate encapsulated
in the "secondary inward current" component.
-->
<component name="secondary_inward_current_f_gate" cmeta:id="secondary_inward_current_f_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="f" initial_value="0.794" />
<!-- These variables are defined here and only used internally. -->
<variable units="per_ms" name="alpha_f" />
<variable units="per_ms" name="beta_f" />
<!-- These variables are imported from parent and sibling components. -->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="alpha_f_calculation_eq">
<apply id="alpha_f_calculation">
<eq />
<ci> alpha_f </ci>
<apply>
<times />
<cn cellml:units="per_ms"> 0.000987 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 60.0 </cn>
</apply>
<cn cellml:units="mV"> 25.0 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="beta_f_calculation_eq">
<apply id="beta_f_calculation">
<eq />
<ci> beta_f </ci>
<apply>
<divide />
<cn cellml:units="per_ms"> 0.02 </cn>
<apply>
<plus />
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 26.0 </cn>
</apply>
<cn cellml:units="mV"> 11.5 </cn>
</apply>
</apply>
</apply>
<cn cellml:units="dimensionless"> 1.0 </cn>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="df_dt_eq">
<apply id="df_dt">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> f </ci>
</apply>
<apply>
<minus />
<apply>
<times />
<ci> alpha_f </ci>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<ci> f </ci>
</apply>
</apply>
<apply>
<times />
<ci> beta_f </ci>
<ci> f </ci>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "secondary_inward_current_d1_gate" component is the d1 gate encapsulated
in the "secondary inward current" component.
-->
<component name="secondary_inward_current_d1_gate" cmeta:id="secondary_inward_current_d1_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="d1" />
<!-- These variables are imported from other components. -->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="d1_calculation_eq">
<apply id="d1_calculation">
<eq />
<ci> d1 </ci>
CREATED : September 2001
LAST MODIFIED : 5th April 2003
AUTHOR : Catherine Lloyd
Department of Engineering Science
The University of Auckland
MODEL STATUS : This model conforms to the CellML 1.0 Specification released on
10th August 2001, and the CellML Metadata 1.0 Specification released on 16
January 2002.
DESCRIPTION : This file contains a CellML description of cardiac action
potentials in purkinje fibres, based on the McAllister-Noble-Tsien model, 1975.
CHANGES:
19/10/2001 - CML - Removed document type definition as this is declared as
optional according to the W3C recommendation.
24/10/2001 - CML - Made changes to some of the metadata, bringing them up to
date with the most recent working draft (26th September) of
the Metadata specification.
10/12/2001 - CML - Changed equations after checking with the mathml validator.
03/01/2002 - CML - Altered parent-child relationships as x1 and x2 were made
to be gates of the plateau potassium currents.
20/01/2002 - AAC - Updated metadata to conform to the 16/01/2002 CellML
Metadata Specification.
28/02/2002 - CML - Corrected units.
19/07/2002 - CML - Added more metadata.
05/04/2003 - AAC - Changed the model name so the model loads in the database
easier.
-->
<model xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cellml="http://www.cellml.org/cellml/1.0#" xmlns:bqs="http://www.cellml.org/bqs/1.0#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cmeta="http://www.cellml.org/metadata/1.0#" xmlns="http://www.cellml.org/cellml/1.0#" cmeta:id="MNT_purkinje_fibre_model_1975" name="mcallister_noble_tsien_1975_version02">
<!--
Below, are defined some additional units for association with variables and
constants within the model. The identifiers are fairly self-explanatory.
-->
<units name="ms">
<unit units="second" prefix="milli" />
</units>
<units name="per_ms">
<unit units="second" prefix="milli" exponent="-1" />
</units>
<units name="mV">
<unit units="volt" prefix="milli" />
</units>
<units name="per_mV">
<unit units="volt" prefix="milli" exponent="-1" />
</units>
<units name="per_mV_ms">
<unit units="mV" exponent="-1" />
<unit units="ms" exponent="-1" />
</units>
<units name="mS_per_mm2">
<unit units="siemens" prefix="milli" />
<unit units="metre" prefix="milli" exponent="-2" />
</units>
<units name="uF_per_mm2">
<unit units="farad" prefix="micro" />
<unit units="metre" prefix="milli" exponent="-2" />
</units>
<units name="uA_per_mm2">
<unit units="ampere" prefix="micro" />
<unit units="metre" prefix="milli" exponent="-2" />
</units>
<units name="concentration_units">
<unit units="mole" prefix="nano" />
<unit units="metre" prefix="milli" exponent="-3" />
</units>
<!--
The "environment" component is used to declare variables that are used by
all or most of the other components, in this case just "time".
-->
<component name="environment" cmeta:id="environment">
<variable units="ms" public_interface="out" name="time" />
</component>
<!--
The "membrane" component is really the `root' node of our model.
It defines the action potential variable "V" among other things.
-->
<component name="membrane" cmeta:id="membrane">
<!-- These variables are defined here and used in other components. -->
<variable units="mV" public_interface="out" name="V" initial_value="-80.0" />
<!-- These variables are defined here and only used internally. -->
<variable units="uF_per_mm2" name="C" initial_value="0.1" />
<!-- These variables are imported from other components. -->
<variable units="ms" public_interface="in" name="time" />
<variable units="uA_per_mm2" public_interface="in" name="i_Na" />
<variable units="uA_per_mm2" public_interface="in" name="i_si" />
<variable units="uA_per_mm2" public_interface="in" name="i_K2" />
<variable units="uA_per_mm2" public_interface="in" name="i_x1" />
<variable units="uA_per_mm2" public_interface="in" name="i_x2" />
<variable units="uA_per_mm2" public_interface="in" name="i_qr" />
<variable units="uA_per_mm2" public_interface="in" name="i_K1" />
<variable units="uA_per_mm2" public_interface="in" name="i_Na_b" />
<variable units="uA_per_mm2" public_interface="in" name="i_Cl_b" />
<variable units="uA_per_mm2" name="I_stim" />
<!--
The membrane voltage (V) is calculated as an ordinary
differential equation in terms of the currents.
-->
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="membrane_voltage_diff_eq">
<apply id="membrane_voltage_diff_eq">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> V </ci>
</apply>
<apply>
<divide />
<apply>
<minus />
<ci>I_stim</ci>
<apply>
<plus />
<ci> i_Na </ci>
<ci> i_si </ci>
<ci> i_K2 </ci>
<ci> i_x1 </ci>
<ci> i_x2 </ci>
<ci> i_qr </ci>
<ci> i_K1 </ci>
<ci> i_Na_b </ci>
<ci> i_Cl_b </ci>
</apply>
</apply>
<ci> C </ci>
</apply>
</apply>
</math>
<variable units="uA_per_mm2" public_interface="out" name="IStimC" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="IStim_for_cmiss_eq">
<apply id="IStim_for_cmiss">
<eq />
<ci>IStimC</ci>
<ci>I_stim</ci>
</apply>
</math>
</component>
<!--
The "fast_sodium_current" component contains the differential equations
governing the influx of sodium ions through the cell surface membrane
into the cell.
-->
<component name="fast_sodium_current" cmeta:id="fast_sodium_current">
<!-- These variables are defined here and used in other components. -->
<variable units="uA_per_mm2" public_interface="out" name="i_Na" />
<variable units="mV" public_interface="out" name="E_Na" initial_value="40.0" />
<!-- This variable is defined here and only used internally. -->
<variable units="mS_per_mm2" name="g_Na" initial_value="1.5" />
<!--
Time is imported from the "environment", and membrane potential is
imported from the "membrane" component. These variables are used in the
"sodium_current" parent component, which also acts as an interface,
passing the variables to its encapsulated gate components.
-->
<variable units="ms" public_interface="in" private_interface="out" name="time" />
<variable units="mV" public_interface="in" private_interface="out" name="V" />
<!-- These variables are imported from encapsulated components. -->
<variable units="dimensionless" private_interface="in" name="m" />
<variable units="dimensionless" private_interface="in" name="h" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="i_Na_calculation_eq">
<apply id="i_Na_calculation">
<eq />
<ci> i_Na </ci>
<apply>
<times />
<ci> g_Na </ci>
<apply>
<power />
<ci> m </ci>
<cn cellml:units="dimensionless"> 3.0 </cn>
</apply>
<ci> h </ci>
<apply>
<minus />
<ci> V </ci>
<ci> E_Na </ci>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "fast_sodium_current_m_gate" is the activation m gate encapsulated
inside the "fast sodium current" component.
-->
<component name="fast_sodium_current_m_gate" cmeta:id="fast_sodium_current_m_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="m" initial_value="0.019" />
<!-- These variables are defined here and only used internally. -->
<variable units="per_ms" name="alpha_m" />
<variable units="per_ms" name="beta_m" />
<!--
These variables are imported from the "environment" and the "membrane" via
the "fast_sodium_current" component.
-->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="alpha_m_calculation_eq">
<apply id="alpha_m_calculation">
<eq />
<ci> alpha_m </ci>
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 47.0 </cn>
</apply>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 47.0 </cn>
</apply>
<cn cellml:units="mV"> 10.0 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="beta_m_calculation_eq">
<apply id="beta_m_calculation">
<eq />
<ci> beta_m </ci>
<apply>
<times />
<cn cellml:units="per_ms"> 40.0 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 72.0 </cn>
</apply>
<cn cellml:units="mV"> 17.86 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="dm_dt_eq">
<apply id="dm_dt">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> m </ci>
</apply>
<apply>
<minus />
<apply>
<times />
<ci> alpha_m </ci>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<ci> m </ci>
</apply>
</apply>
<apply>
<times />
<ci> beta_m </ci>
<ci> m </ci>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "fast_sodium_current_h_gate" component is the inactivation h gate
encapsulated in the "fast sodium current" component.
-->
<component name="fast_sodium_current_h_gate" cmeta:id="fast_sodium_current_h_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="h" initial_value="0.863" />
<!-- These variables are defined here and only used internally. -->
<variable units="per_ms" name="alpha_h" />
<variable units="per_ms" name="beta_h" />
<!--
These variables are imported from the "environment" and the "membrane" via
the "fast_sodium_current" component.
-->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="alpha_h_calculation_eq">
<apply id="alpha_h_calculation">
<eq />
<ci> alpha_h </ci>
<apply>
<times />
<cn cellml:units="per_ms"> 0.0085 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 71.0 </cn>
</apply>
<cn cellml:units="mV"> 5.435 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="beta_h_calculation_eq">
<apply id="beta_h_calculation">
<eq />
<ci> beta_h </ci>
<apply>
<divide />
<cn cellml:units="per_ms"> 2.5 </cn>
<apply>
<plus />
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 10.0 </cn>
</apply>
<cn cellml:units="mV"> 12.2 </cn>
</apply>
</apply>
</apply>
<cn cellml:units="dimensionless"> 1.0 </cn>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="dh_dt_eq">
<apply id="dh_dt">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> h </ci>
</apply>
<apply>
<minus />
<apply>
<times />
<ci> alpha_h </ci>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<ci> h </ci>
</apply>
</apply>
<apply>
<times />
<ci> beta_h </ci>
<ci> h </ci>
</apply>
</apply>
</apply>
</math>
</component>
<component name="secondary_inward_current" cmeta:id="secondary_inward_current">
<!-- This variable is defined here and used in other components. -->
<variable units="uA_per_mm2" public_interface="out" name="i_si" />
<!-- These variables are defined here and only used internally. -->
<variable units="mS_per_mm2" name="g_si" initial_value="0.008" />
<variable units="mS_per_mm2" name="g_si_" initial_value="0.0004" />
<variable units="mV" name="E_si" initial_value="70.0" />
<!--
Time is imported from the "environment", and membrane potential is
imported from the "membrane" component. These variables are used in the
"secondary_inward_current" parent component, which also acts as an
interface, passing the variables to its encapsulated gate component.
-->
<variable units="ms" public_interface="in" private_interface="out" name="time" />
<variable units="mV" public_interface="in" private_interface="out" name="V" />
<!-- These variables are imported from encapsulated components. -->
<variable units="dimensionless" private_interface="in" name="d" />
<variable units="dimensionless" private_interface="in" name="f" />
<variable units="dimensionless" private_interface="in" name="d1" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="i_si_calculation_eq">
<apply id="i_si_calculation">
<eq />
<ci> i_si </ci>
<apply>
<plus />
<apply>
<times />
<ci> g_si </ci>
<ci> d </ci>
<ci> f </ci>
<apply>
<minus />
<ci> V </ci>
<ci> E_si </ci>
</apply>
</apply>
<apply>
<times />
<ci> g_si_ </ci>
<ci> d1 </ci>
<apply>
<minus />
<ci> V </ci>
<ci> E_si </ci>
</apply>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "secondary_inward_current_d_gate" component is the d gate encapsulated
in the "secondary inward current" component.
-->
<component name="secondary_inward_current_d_gate" cmeta:id="secondary_inward_current_d_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="d" initial_value="0.002" />
<!-- These variables are defined here and only used internally. -->
<variable units="per_ms" name="alpha_d" />
<variable units="per_ms" name="beta_d" />
<!--
These variables are imported from the "environment" and the "membrane" via
the "slow_inward_current" component.
-->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="alpha_d_calculation_eq">
<apply id="alpha_d_calculation">
<eq />
<ci> alpha_d </ci>
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 40.0 </cn>
</apply>
<apply>
<times />
<cn cellml:units="mV"> 500.0 </cn>
<apply>
<minus />
<cn cellml:units="ms"> 1.0 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 40.0 </cn>
</apply>
<cn cellml:units="mV"> 10.0 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="beta_d_calculation_eq">
<apply id="beta_d_calculation">
<eq />
<ci> beta_d </ci>
<apply>
<times />
<cn cellml:units="per_ms"> 0.02 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 40.0 </cn>
</apply>
<cn cellml:units="mV"> 11.26 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="dd_dt_eq">
<apply id="dd_dt">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> d </ci>
</apply>
<apply>
<minus />
<apply>
<times />
<ci> alpha_d </ci>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<ci> d </ci>
</apply>
</apply>
<apply>
<times />
<ci> beta_d </ci>
<ci> d </ci>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "secondary_inward_current_f_gate" component is the f gate encapsulated
in the "secondary inward current" component.
-->
<component name="secondary_inward_current_f_gate" cmeta:id="secondary_inward_current_f_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="f" initial_value="0.794" />
<!-- These variables are defined here and only used internally. -->
<variable units="per_ms" name="alpha_f" />
<variable units="per_ms" name="beta_f" />
<!-- These variables are imported from parent and sibling components. -->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="alpha_f_calculation_eq">
<apply id="alpha_f_calculation">
<eq />
<ci> alpha_f </ci>
<apply>
<times />
<cn cellml:units="per_ms"> 0.000987 </cn>
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 60.0 </cn>
</apply>
<cn cellml:units="mV"> 25.0 </cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="beta_f_calculation_eq">
<apply id="beta_f_calculation">
<eq />
<ci> beta_f </ci>
<apply>
<divide />
<cn cellml:units="per_ms"> 0.02 </cn>
<apply>
<plus />
<apply>
<exp />
<apply>
<minus />
<apply>
<divide />
<apply>
<plus />
<ci> V </ci>
<cn cellml:units="mV"> 26.0 </cn>
</apply>
<cn cellml:units="mV"> 11.5 </cn>
</apply>
</apply>
</apply>
<cn cellml:units="dimensionless"> 1.0 </cn>
</apply>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="df_dt_eq">
<apply id="df_dt">
<eq />
<apply>
<diff />
<bvar>
<ci> time </ci>
</bvar>
<ci> f </ci>
</apply>
<apply>
<minus />
<apply>
<times />
<ci> alpha_f </ci>
<apply>
<minus />
<cn cellml:units="dimensionless"> 1.0 </cn>
<ci> f </ci>
</apply>
</apply>
<apply>
<times />
<ci> beta_f </ci>
<ci> f </ci>
</apply>
</apply>
</apply>
</math>
</component>
<!--
The "secondary_inward_current_d1_gate" component is the d1 gate encapsulated
in the "secondary inward current" component.
-->
<component name="secondary_inward_current_d1_gate" cmeta:id="secondary_inward_current_d1_gate">
<!-- This variable is defined here and used in other components. -->
<variable units="dimensionless" public_interface="out" name="d1" />
<!-- These variables are imported from other components. -->
<variable units="mV" public_interface="in" name="V" />
<variable units="ms" public_interface="in" name="time" />
<math xmlns="http://www.w3.org/1998/Math/MathML" cmeta:id="d1_calculation_eq">
<apply id="d1_calculation">
<eq />
<ci> d1 </ci>
