Location: Andre's Hodgkin Huxley model @ 957c2190e1ee / experiments / periodic-stimulus.xml

Author:
David Nickerson <nickerso@users.sourceforge.net>
Date:
2015-05-25 08:31:46+12:00
Desc:
adding a SED-ML document which does nested repeated tasks to iterate over clamp potential and temperature; doesn't work with get-sed-ml-client
Permanent Source URI:
https://models.physiomeproject.org/w/andre/HH/rawfile/957c2190e1eed47d7634613250bc274dc836b826/experiments/periodic-stimulus.xml

<?xml version="1.0" encoding="iso-8859-1"?>
<model 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" name="periodic_stimulus" cmeta:id="periodic_stimulus">
  
  
  
  <simulation xmlns="http://cellml.sourceforge.net/csim/simulation/0.1#" id="simulation1">
        <boundVariable start="0.0" end="500.0" maxStep="0.01" tabulationStep="0.1"/>
        <outputVariable component="time" variable="time" column="1"/>
        <outputVariable component="outputs" variable="INa" column="2"/>
        <outputVariable component="outputs" variable="IK" column="3"/>
        <outputVariable component="outputs" variable="Ileak" column="4"/>
        <outputVariable component="outputs" variable="V" column="5"/>
        <outputVariable component="outputs" variable="minus_V" column="6"/>
  </simulation>
  

  <import xlink:href="../components/units.xml">
    <units name="ms" units_ref="ms"/>
    <units name="uA_per_cmsq" units_ref="uA_per_cmsq"/>
    <units name="mS_per_cmsq" units_ref="mS_per_cmsq"/>
    <units name="mV" units_ref="mV"/>
  </import>
  <import xlink:href="../components/stimulated.xml">
    <component name="model" component_ref="action_potential"/>
  </import>
  <import xlink:href="periodic-IStim-protocol.xml">
    <component name="stimulus_protocol" component_ref="stimulus_protocol"/>
  </import>
  <import xlink:href="../components/default-variable-values.xml">
    <component name="default_parameters" component_ref="parameters"/>
    <component name="default_initial_conditions" component_ref="initial_conditions"/>
  </import>
  
  <component name="time" cmeta:id="time_component">
    
    <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>
  <connection>
    <map_components component_1="time" component_2="stimulus_protocol"/>
    <map_variables variable_1="time" variable_2="time"/>
  </connection>

  <component name="stimulus_protocol_params" cmeta:id="stimulus_protocol_params">
    
    <variable name="stimPeriod" public_interface="out" units="ms"/>
    <variable name="stimDuration" initial_value="0.5" public_interface="out" units="ms"/>
    <variable name="stimCurrent" initial_value="-10.0" public_interface="out" units="uA_per_cmsq"/>
    <math xmlns="http://www.w3.org/1998/Math/MathML">
    	<apply><eq/>
    		<ci>stimPeriod</ci>
    		<cn cellml:units="ms">100.0</cn>
    	</apply>
    </math>
  </component>
  <connection>
    <map_components component_1="stimulus_protocol_params" component_2="stimulus_protocol"/>
    <map_variables variable_1="stimPeriod" variable_2="stimPeriod"/>
    <map_variables variable_1="stimDuration" variable_2="stimDuration"/>
    <map_variables variable_1="stimCurrent" variable_2="stimCurrent"/>
  </connection>
  <connection>
    <map_components component_1="model" component_2="stimulus_protocol"/>
    <map_variables variable_1="Istim" variable_2="IStim"/>
  </connection>

  <component name="parameters" cmeta:id="parameters">
    <variable cmeta:id="gK_max" name="gK_max" public_interface="out" private_interface="out" units="mS_per_cmsq" initial_value="36.0"/>
    <variable cmeta:id="gNa_max" name="gNa_max" public_interface="out" private_interface="out" units="mS_per_cmsq" initial_value="120.0"/>
    <variable cmeta:id="gleak_max" name="gleak_max" public_interface="out" private_interface="out" units="mS_per_cmsq" initial_value="0.3"/>
  </component>
  <connection>
    <map_components component_1="model" component_2="parameters"/>
    <map_variables variable_1="gNa_max" variable_2="gNa_max"/>
    <map_variables variable_1="gK_max" variable_2="gK_max"/>
    <map_variables variable_1="gleak_max" variable_2="gleak_max"/>
  </connection>
  <connection>
    <map_components component_1="model" component_2="default_parameters"/>
    <map_variables variable_1="Cm" variable_2="Cm"/>
    <map_variables variable_1="VNa" variable_2="VNa"/>
    <map_variables variable_1="VK" variable_2="VK"/>
    <map_variables variable_1="Vleak" variable_2="Vleak"/>
    <map_variables variable_1="Tref_rates" variable_2="Tref_rates"/>
    <map_variables variable_1="T" variable_2="T"/>
    <map_variables variable_1="Q10_rates" variable_2="Q10_rates"/>
  </connection>
  
  <component name="initial_conditions" cmeta:id="initial_conditions">
    
  </component>
  <connection>
    <map_components component_1="model" component_2="default_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="n_initial" variable_2="n_initial"/>
  </connection>

  <component name="outputs">
    <!--  just to allow SED-ML to grab the variables for plotting -->
    <variable name="INa" public_interface="in" units="uA_per_cmsq"/>
    <variable name="IK" public_interface="in" units="uA_per_cmsq"/>
    <variable name="Ileak" public_interface="in" units="uA_per_cmsq"/>
    <variable name="V" public_interface="in" units="mV"/>
    <variable name="minus_V" public_interface="in" units="mV"/>
    <variable name="m" public_interface="in" units="dimensionless"/>
    <variable name="h" public_interface="in" units="dimensionless"/>
    <variable name="n" public_interface="in" units="dimensionless"/>
  </component>
  <connection>
    <map_components component_1="outputs" component_2="model"/>
    <map_variables variable_1="INa" variable_2="INa"/>
    <map_variables variable_1="IK" variable_2="IK"/>
    <map_variables variable_1="Ileak" variable_2="Ileak"/>
    <map_variables variable_1="V" variable_2="V"/>
    <map_variables variable_1="minus_V" variable_2="minus_V"/>
    <map_variables variable_1="m" variable_2="m"/>
    <map_variables variable_1="h" variable_2="h"/>
    <map_variables variable_1="n" variable_2="n"/>
  </connection>
</model>