Location: A review of cardiac cellular electrophysiology models @ f954e5918331 / models / 2004_tenTusscher / experiments / periodic-stimulus-endocardial.xml

Author:
David Nickerson <david.nickerson@gmail.com>
Date:
2021-09-16 00:41:19+12:00
Desc:
Updating Noble 1962 model: * Exposing the membrane potential to the top-level model; * adding SED-ML for the paced and pacemaker variants of the model. Using OpenCOR Snapshot release 2021-09-14.
Permanent Source URI:
https://models.fieldml.org/workspace/a1/rawfile/f954e59183314cd37f86c8832dc81317d01c8ec5/models/2004_tenTusscher/experiments/periodic-stimulus-endocardial.xml

<?xml version="1.0" encoding="iso-8859-1"?>

<model
    name="periodic_stimulus_endo"
    cmeta:id="periodic_stimulus_endo"
    xmlns="http://www.cellml.org/cellml/1.1#"
    xmlns:cellml="http://www.cellml.org/cellml/1.1#"
    xmlns:cmeta="http://www.cellml.org/metadata/1.0#"
    xmlns:xlink="http://www.w3.org/1999/xlink">
  <rdf:RDF
      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
      xmlns:cmeta="http://www.cellml.org/metadata/1.0#"
      xmlns:bqs="http://www.cellml.org/bqs/1.0#"
      xmlns:dc="http://purl.org/dc/elements/1.1/"
      xmlns:dcterms="http://purl.org/dc/terms/"
      xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#"
      xmlns:cs="http://www.cellml.org/metadata/simulation/1.0#">
    <rdf:Description rdf:about="">
      <dc:creator rdf:parseType="Resource">
        <vCard:N rdf:parseType="Resource">
          <vCard:Family>Nickerson</vCard:Family>
          <vCard:Given>David</vCard:Given>
        </vCard:N>
        <vCard:EMAIL rdf:parseType="Resource">
          <rdf:value>d.nickerson@auckland.ac.nz</rdf:value>
          <rdf:type rdf:resource="http://imc.org/vCard/3.0#internet"/>
        </vCard:EMAIL>
        <vCard:ORG rdf:parseType="Resource">
          <vCard:Orgname>The University of Auckland</vCard:Orgname>
          <vCard:Orgunit>Bioengineering Institute</vCard:Orgunit>
        </vCard:ORG>
      </dc:creator>
      <dcterms:created rdf:parseType="Resource">
        <dcterms:W3CDTF>2004-12-31</dcterms:W3CDTF>
      </dcterms:created>
      <dc:publisher>
        Bioengineering Institute, The University of Auckland
      </dc:publisher>
    </rdf:Description>
    <rdf:Description rdf:about="#periodic_stimulus_endo">
      <dc:title>
        Action potential simulation with periodic stimulus.
      </dc:title>
      <cmeta:comment rdf:parseType="Resource">
        <rdf:value>
          This is the CellML description of a action potential simulation
          with a periodic stimulus current applied. Uses the endocardial
          variant of the ten Tusscher et al. (2004) human ventricular myocyte
          model.
        </rdf:value>
        <dc:creator rdf:parseType="Resource">
          <vCard:FN>David Nickerson</vCard:FN>
        </dc:creator>
      </cmeta:comment>
      <bqs:reference rdf:parseType="Resource">
        <bqs:Pubmed_id>14656705</bqs:Pubmed_id>
      </bqs:reference>
      <cs:simulation>
        <rdf:Description rdf:ID="simulation">
          <cs:multistepMethod>bdf</cs:multistepMethod>
          <cs:iterationMethod>newton</cs:iterationMethod>
          <cs:linearSolver>dense</cs:linearSolver>
          <cs:boundIntervals rdf:parseType="Collection">
            <rdf:Description>
              <cs:boundVariable>
                <rdf:Description rdf:about="#time"/>
              </cs:boundVariable>
              <cs:maximumStepSize rdf:datatype="http://www.w3.org/2001/XMLSchema#double">
                0.01
              </cs:maximumStepSize>
              <cs:tabulationStepSize rdf:datatype="http://www.w3.org/2001/XMLSchema#double">
                2.0
              </cs:tabulationStepSize>
              <cs:startingValue rdf:datatype="http://www.w3.org/2001/XMLSchema#double">
                0
              </cs:startingValue>
              <cs:endingValue rdf:datatype="http://www.w3.org/2001/XMLSchema#double">
                1500
              </cs:endingValue>
            </rdf:Description>
          </cs:boundIntervals>
        </rdf:Description>
      </cs:simulation>
    </rdf:Description>
  </rdf:RDF>
  
  <import xlink:href="../../common/units.xml">
    <units name="ms" units_ref="ms"/>
    <units name="mV" units_ref="mV"/>
    <units name="mM" units_ref="mM"/>
    <units name="pA_per_pF" units_ref="pA_per_pF"/>
    <units name="mM_per_ms" units_ref="mM_per_ms"/>
    <units name="per_mm" units_ref="per_mm"/>
    <units name="uF_per_cmsq" units_ref="uF_per_cmsq"/>
    <units name="umcu" units_ref="umcu"/>
    <units name="nS_per_pF" units_ref="nS_per_pF"/>
    <units name="K" units_ref="K"/>
    <units name="cmcu_per_uF_per_s" units_ref="cmcu_per_uF_per_s"/>
    <units name="per_ms" units_ref="per_ms"/>
    <units name="mM_per_s" units_ref="mM_per_s"/>
  </import>
  <import xlink:href="../2004_tenTusscher_noble_noble_panfilov-endo.xml">
    <component name="model" component_ref="interface"/>
  </import>
  
  <component name="time" cmeta:id="timeComponent">
    <rdf:RDF
      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
      xmlns:cmeta="http://www.cellml.org/metadata/1.0#">
      <rdf:Description rdf:about="#timeComponent">
        <cmeta:comment rdf:parseType="Resource">
          <rdf:value>
            The actual definition of the time variable.
          </rdf:value>
        </cmeta:comment>
      </rdf:Description>
    </rdf:RDF>
    <variable cmeta:id="time" name="time" initial_value="0.0" public_interface="out" units="ms"/>
  </component>
  <connection>
    <map_components component_1="model" component_2="time"/>
    <map_variables variable_1="time" variable_2="time"/>
  </connection>
  
  <component name="stimulus_protocol" cmeta:id="stimulus_protocol">
    <rdf:RDF
      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
      xmlns:cmeta="http://www.cellml.org/metadata/1.0#">
      <rdf:Description rdf:about="#stimulus_protocol">
        <cmeta:comment rdf:parseType="Resource">
          <rdf:value>
            Here we define the stimulus protocol for the simulation.
            In this case we are using a periodic stimulus.
          </rdf:value>
        </cmeta:comment>
      </rdf:Description>
    </rdf:RDF>
    <variable name="IStim" public_interface="out" units="pA_per_pF"/>
    <variable name="time" public_interface="in" units="ms"/>
    <variable name="stimPeriod" initial_value="1000" units="ms"/>
    <variable name="stimDuration" initial_value="1" units="ms"/>
    <variable name="stimCurrent" initial_value="52" units="pA_per_pF"/>
    <variable name="Am" public_interface="in" units="per_mm"/>
    <math xmlns="http://www.w3.org/1998/Math/MathML">
      <apply id="stimulus_calculation"><eq />
        <ci>IStim</ci>
        <piecewise>
          <piece>
            <ci>stimCurrent</ci>
            <apply><lt/>
              <apply><rem/>
                <ci>time</ci>
                <ci>stimPeriod</ci>
              </apply>
              <ci>stimDuration</ci>
            </apply>
          </piece>
          <otherwise>
            <cn cellml:units="pA_per_pF">0.0</cn>
          </otherwise>
        </piecewise>
      </apply>
    </math>
  </component>
  <connection>
    <map_components component_1="model" component_2="stimulus_protocol"/>
    <map_variables variable_1="Istim" variable_2="IStim"/>
  </connection>
  <connection>
    <map_components component_1="time" component_2="stimulus_protocol"/>
    <map_variables variable_1="time" variable_2="time"/>
  </connection>
  
  <component name="parameters" cmeta:id="parameters">
    <rdf:RDF
      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
      xmlns:cmeta="http://www.cellml.org/metadata/1.0#">
      <rdf:Description rdf:about="#parameters">
        <cmeta:comment rdf:parseType="Resource">
          <rdf:value>
            The model parameters.
          </rdf:value>
        </cmeta:comment>
      </rdf:Description>
    </rdf:RDF>
    <variable name="Am" initial_value="200" public_interface="out" units="per_mm"/>
    <variable name="Cm" initial_value="1.0" public_interface="out" units="uF_per_cmsq"/>
    <variable name="Capacitance" initial_value="0.185" public_interface="out" units="uF_per_cmsq"/>
    <variable name="temperature" initial_value="310" public_interface="out" units="K"/>
    <variable name="vC" initial_value="0.016404" public_interface="out" units="umcu"/>
    <variable name="vSR" initial_value="0.001094" public_interface="out" units="umcu"/>
    <variable name="g_Na" initial_value="14.838" public_interface="out" units="nS_per_pF"/>
    <variable name="g_K1" initial_value="5.405" public_interface="out" units="nS_per_pF"/>
    <variable name="g_to" initial_value="0.073" public_interface="out" units="nS_per_pF"/>
    <variable name="g_Kr" initial_value="0.096" public_interface="out" units="nS_per_pF"/>
    <variable name="g_Ks" initial_value="0.245" public_interface="out" units="nS_per_pF"/>
    <variable name="g_pK" initial_value="0.0146" public_interface="out" units="nS_per_pF"/>
    <variable name="g_bNa" initial_value="0.29e-3" public_interface="out" units="nS_per_pF"/>
    <variable name="g_bCa" initial_value="0.592e-3" public_interface="out" units="nS_per_pF"/>
    <variable name="p_KNa" initial_value="0.03" public_interface="out" units="dimensionless"/>
    <variable name="P_NaK" initial_value="1.362" public_interface="out" units="pA_per_pF"/>
    <variable name="K_mNa" initial_value="40.0" public_interface="out" units="mM"/>
    <variable name="K_mK" initial_value="1.0" public_interface="out" units="mM"/>
    <variable name="g_CaL" initial_value="1.75e-4" public_interface="out" units="cmcu_per_uF_per_s"/>
    <variable name="Bufc" initial_value="0.15" public_interface="out" units="mM"/>
    <variable name="Kbufc" initial_value="0.001" public_interface="out" units="mM"/>
    <variable name="Bufsr" initial_value="10.0" public_interface="out" units="mM"/>
    <variable name="Kbufsr" initial_value="0.3" public_interface="out" units="mM"/>
    <variable name="Nao" initial_value="140" public_interface="out" units="mM"/>
    <variable name="Ko" initial_value="5.4" public_interface="out" units="mM"/>
    <variable name="Cao" initial_value="2.0" public_interface="out" units="mM"/>
    <variable name="V_leak" initial_value="0.08e-3" public_interface="out" units="per_ms"/>
    <variable name="K_up" initial_value="0.25e-3" public_interface="out" units="mM"/>
    <variable name="Vmax_up" initial_value="0.425e-3" public_interface="out" units="mM_per_ms"/>
    <variable name="a_rel" initial_value="0.016464" public_interface="out" units="mM_per_s"/>
    <variable name="b_rel" initial_value="0.25" public_interface="out" units="mM"/>
    <variable name="c_rel" initial_value="0.008232" public_interface="out" units="mM_per_s"/>
    <variable name="tau_g" initial_value="2" public_interface="out" units="ms"/>
    <variable name="g_pCa" initial_value="0.825" public_interface="out" units="pA_per_pF"/>
    <variable name="K_pCa" initial_value="0.5e-3" public_interface="out" units="mM"/>
    <variable name="k_NaCa" initial_value="1.0e3" public_interface="out" units="pA_per_pF"/>
    <variable name="K_mNai" initial_value="87.5" public_interface="out" units="mM"/>
    <variable name="K_mCa" initial_value="1.38" public_interface="out" units="mM"/>
    <variable name="k_sat" initial_value="0.1" public_interface="out" units="dimensionless"/>
    <variable name="gamma" initial_value="0.35" public_interface="out" units="dimensionless"/>
    <variable name="alpha" initial_value="2.5" public_interface="out" units="dimensionless"/>
  </component>
  <connection>
    <map_components component_1="model" component_2="parameters"/>
    <map_variables variable_1="Am" variable_2="Am"/>
    <map_variables variable_1="Cm" variable_2="Cm"/>
    <map_variables variable_1="Capacitance" variable_2="Capacitance"/>
    <map_variables variable_1="temperature" variable_2="temperature"/>
    <map_variables variable_1="vC" variable_2="vC"/>
    <map_variables variable_1="vSR" variable_2="vSR"/>
    <map_variables variable_1="g_Na" variable_2="g_Na"/>
    <map_variables variable_1="g_K1" variable_2="g_K1"/>
    <map_variables variable_1="g_to" variable_2="g_to"/>
    <map_variables variable_1="g_Kr" variable_2="g_Kr"/>
    <map_variables variable_1="g_Ks" variable_2="g_Ks"/>
    <map_variables variable_1="g_pK" variable_2="g_pK"/>
    <map_variables variable_1="g_bNa" variable_2="g_bNa"/>
    <map_variables variable_1="g_bCa" variable_2="g_bCa"/>
    <map_variables variable_1="p_KNa" variable_2="p_KNa"/>
    <map_variables variable_1="P_NaK" variable_2="P_NaK"/>
    <map_variables variable_1="K_mNa" variable_2="K_mNa"/>
    <map_variables variable_1="K_mK" variable_2="K_mK"/>
    <map_variables variable_1="g_CaL" variable_2="g_CaL"/>
    <map_variables variable_1="Bufc" variable_2="Bufc"/>
    <map_variables variable_1="Kbufc" variable_2="Kbufc"/>
    <map_variables variable_1="Bufsr" variable_2="Bufsr"/>
    <map_variables variable_1="Kbufsr" variable_2="Kbufsr"/>
    <map_variables variable_1="Nao" variable_2="Nao"/>
    <map_variables variable_1="Ko" variable_2="Ko"/>
    <map_variables variable_1="Cao" variable_2="Cao"/>
    <map_variables variable_1="V_leak" variable_2="V_leak"/>
    <map_variables variable_1="K_up" variable_2="K_up"/>
    <map_variables variable_1="Vmax_up" variable_2="Vmax_up"/>
    <map_variables variable_1="a_rel" variable_2="a_rel"/>
    <map_variables variable_1="b_rel" variable_2="b_rel"/>
    <map_variables variable_1="c_rel" variable_2="c_rel"/>
    <map_variables variable_1="tau_g" variable_2="tau_g"/>
    <map_variables variable_1="g_pCa" variable_2="g_pCa"/>
    <map_variables variable_1="K_pCa" variable_2="K_pCa"/>
    <map_variables variable_1="k_NaCa" variable_2="k_NaCa"/>
    <map_variables variable_1="K_mNai" variable_2="K_mNai"/>
    <map_variables variable_1="K_mCa" variable_2="K_mCa"/>
    <map_variables variable_1="k_sat" variable_2="k_sat"/>
    <map_variables variable_1="gamma" variable_2="gamma"/>
    <map_variables variable_1="alpha" variable_2="alpha"/>
  </connection>
  <connection>
    <map_components component_1="stimulus_protocol" component_2="parameters"/>
    <map_variables variable_1="Am" variable_2="Am"/>
  </connection>

  <component name="initial_conditions" cmeta:id="initial_conditions">
    <rdf:RDF
      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
      xmlns:cmeta="http://www.cellml.org/metadata/1.0#">
      <rdf:Description rdf:about="#initial_conditions">
        <cmeta:comment rdf:parseType="Resource">
          <rdf:value>
            The initial conditions.
          </rdf:value>
        </cmeta:comment>
      </rdf:Description>
    </rdf:RDF>
    <variable name="V_initial" initial_value="-86.2" public_interface="out" units="mV"/>
    <variable name="m_initial" initial_value="0" public_interface="out" units="dimensionless"/>
    <variable name="h_initial" initial_value="0.75" public_interface="out" units="dimensionless"/>
    <variable name="j_initial" initial_value="0.75" public_interface="out" units="dimensionless"/>
    <variable name="s_initial" initial_value="1.0" public_interface="out" units="dimensionless"/>
    <variable name="r_initial" initial_value="0.0" public_interface="out" units="dimensionless"/>
    <variable name="Xr1_initial" initial_value="0.0" public_interface="out" units="dimensionless"/>
    <variable name="Xr2_initial" initial_value="1.0" public_interface="out" units="dimensionless"/>
    <variable name="Xs_initial" initial_value="0.0" public_interface="out" units="dimensionless"/>
    <variable name="d_initial" initial_value="0.0" public_interface="out" units="dimensionless"/>
    <variable name="f_initial" initial_value="1.0" public_interface="out" units="dimensionless"/>
    <variable name="fCa_initial" initial_value="1.0" public_interface="out" units="dimensionless"/>
    <variable name="g_initial" initial_value="1.0" public_interface="out" units="dimensionless"/>
    <variable name="Nai_initial" initial_value="11.6" public_interface="out" units="mM"/>
    <variable name="Ki_initial" initial_value="138.3" public_interface="out" units="mM"/>
    <variable name="Cai_total_initial" initial_value="0.0064" public_interface="out" units="mM"/>
    <variable name="CaSR_total_initial" initial_value="4.2" public_interface="out" units="mM"/>
  </component>
  <connection>
    <map_components component_1="model" component_2="initial_conditions"/>
    <map_variables variable_1="V_initial" variable_2="V_initial"/>
    <map_variables variable_1="m_initial" variable_2="m_initial"/>
    <map_variables variable_1="h_initial" variable_2="h_initial"/>
    <map_variables variable_1="j_initial" variable_2="j_initial"/>
    <map_variables variable_1="s_initial" variable_2="s_initial"/>
    <map_variables variable_1="r_initial" variable_2="r_initial"/>
    <map_variables variable_1="Xr1_initial" variable_2="Xr1_initial"/>
    <map_variables variable_1="Xr2_initial" variable_2="Xr2_initial"/>
    <map_variables variable_1="Xs_initial" variable_2="Xs_initial"/>
    <map_variables variable_1="d_initial" variable_2="d_initial"/>
    <map_variables variable_1="f_initial" variable_2="f_initial"/>
    <map_variables variable_1="fCa_initial" variable_2="fCa_initial"/>
    <map_variables variable_1="g_initial" variable_2="g_initial"/>
    <map_variables variable_1="Nai_initial" variable_2="Nai_initial"/>
    <map_variables variable_1="Ki_initial" variable_2="Ki_initial"/>
    <map_variables variable_1="Cai_total_initial" variable_2="Cai_total_initial"/>
    <map_variables variable_1="CaSR_total_initial" variable_2="CaSR_total_initial"/>
  </connection>
</model>