Location: Models for the OpenCOR and PMR tutorial by Peter Hunter @ c702d05c6a69 / sodium_ion_channel.cellml

Author:
David Nickerson <nickerso@users.sourceforge.net>
Date:
2016-08-31 10:38:56+12:00
Desc:
update HH IK SED-ML to match changes in OpenCOR.
Permanent Source URI:
https://models.cellml.org/workspace/25d/rawfile/c702d05c6a698b7b97dbb5b106600a16abfbff97/sodium_ion_channel.cellml

<?xml version='1.0'?>
<model name="sodium_ion_channel" xmlns="http://www.cellml.org/cellml/1.0#" xmlns:cellml="http://www.cellml.org/cellml/1.0#"
	xmlns:cmeta="http://www.cellml.org/metadata/1.0#" cmeta:id="model">

	<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
		xmlns:bqs="http://www.cellml.org/bqs/1.0#" xmlns:dc="http://purl.org/dc/elements/1.1/">
		<rdf:Description rdf:about="">
			<dc:title>HH sodium ion channel model</dc:title>
		</rdf:Description>
		<rdf:Description rdf:about="#model">
			<bqs:reference rdf:parseType="Resource">
				<dc:subject rdf:parseType="Resource">
					<bqs:subject_type>keyword</bqs:subject_type>
					<rdf:value>
						<rdf:Bag>
							<rdf:li>protein module</rdf:li>
						</rdf:Bag>
					</rdf:value>
				</dc:subject>
			</bqs:reference>
		</rdf:Description>
	</rdf:RDF>
	
    <units name="millisec">
        <unit prefix="milli" units="second"/>
    </units>
    <units name="per_millisec">
        <unit exponent="-1" prefix="milli" units="second"/>
    </units>
    <units name="millivolt">
        <unit prefix="milli" units="volt"/>
    </units>
    <units name="per_millivolt">
        <unit exponent="-1" units="millivolt"/>
    </units>
    <units name="per_millivolt_millisec">
        <unit units="per_millivolt"/>
        <unit units="per_millisec"/>
    </units>
    <units name="microA_per_cm2">
        <unit prefix="micro" units="ampere"/>
        <unit exponent="-2" prefix="centi" units="metre"/>
    </units>
    <units name="milliS_per_cm2">
        <unit prefix="milli" units="siemens"/>
        <unit exponent="-2" prefix="centi" units="metre"/>
    </units>
    <component name="environment">
        <variable name="V" public_interface="out" units="millivolt"/>
        <variable name="t" public_interface="out" units="millisec"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>V</ci>
                <piecewise>
                    <piece>
                        <cn cellml:units="millivolt">0.0</cn>
                        <apply>
                            <and/>
                            <apply>
                                <gt/>
                                <ci>t</ci>
                                <cn cellml:units="millisec">5</cn>
                            </apply>
                            <apply>
                                <lt/>
                                <ci>t</ci>
                                <cn cellml:units="millisec">15</cn>
                            </apply>
                        </apply>
                    </piece>
                    <otherwise>
                        <apply>
                            <minus/>
                            <cn cellml:units="millivolt">85.0</cn>
                        </apply>
                    </otherwise>
                </piecewise>
            </apply>
        </math>
    </component>
    <group>
        <relationship_ref relationship="encapsulation"/>
        <component_ref component="sodium_channel">
            <component_ref component="sodium_channel_m_gate"/>
            <component_ref component="sodium_channel_h_gate"/>
        </component_ref>
    </group>
    <component name="sodium_channel">
        <variable name="V" private_interface="out" public_interface="in" units="millivolt"/>
        <variable name="t" private_interface="out" public_interface="in" units="millisec"/>
        <variable name="m" private_interface="in" units="dimensionless"/>
        <variable name="h" private_interface="in" units="dimensionless"/>
        <variable initial_value="120" name="g_Na" units="milliS_per_cm2"/>
        <variable initial_value="35" name="E_Na" units="millivolt"/>
        <variable name="Na_conductance" public_interface="out" units="milliS_per_cm2"/>
        <variable name="i_Na" public_interface="out" units="microA_per_cm2"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>Na_conductance</ci>
                <apply>
                    <times/>
                    <ci>g_Na</ci>
                    <apply>
                        <power/>
                        <ci>m</ci>
                        <cn cellml:units="dimensionless">3</cn>
                    </apply>
                    <ci>h</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>i_Na</ci>
                <apply>
                    <times/>
                    <ci>Na_conductance</ci>
                    <apply>
                        <minus/>
                        <ci>V</ci>
                        <ci>E_Na</ci>
                    </apply>
                </apply>
            </apply>
        </math>
    </component>
    <component name="sodium_channel_m_gate">
        <variable name="V" public_interface="in" units="millivolt"/>
        <variable name="t" public_interface="in" units="millisec"/>
        <variable name="alpha_m" units="per_millisec"/>
        <variable name="beta_m" units="per_millisec"/>
        <variable initial_value="0.05" name="m" public_interface="out" units="dimensionless"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>alpha_m</ci>
                <apply>
                    <divide/>
                    <apply>
                        <times/>
                        <apply>
                            <minus/>
                            <cn cellml:units="per_millivolt_millisec">0.1</cn>
                        </apply>
                        <apply>
                            <plus/>
                            <ci>V</ci>
                            <cn cellml:units="millivolt">50</cn>
                        </apply>
                    </apply>
                    <apply>
                        <minus/>
                        <apply>
                            <exp/>
                            <apply>
                                <divide/>
                                <apply>
                                    <minus/>
                                    <apply>
                                        <plus/>
                                        <ci>V</ci>
                                        <cn cellml:units="millivolt">50</cn>
                                    </apply>
                                </apply>
                                <cn cellml:units="millivolt">10</cn>
                            </apply>
                        </apply>
                        <cn cellml:units="dimensionless">1</cn>
                    </apply>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>beta_m</ci>
                <apply>
                    <times/>
                    <cn cellml:units="per_millisec">4</cn>
                    <apply>
                        <exp/>
                        <apply>
                            <divide/>
                            <apply>
                                <minus/>
                                <apply>
                                    <plus/>
                                    <ci>V</ci>
                                    <cn cellml:units="millivolt">75</cn>
                                </apply>
                            </apply>
                            <cn cellml:units="millivolt">18</cn>
                        </apply>
                    </apply>
                </apply>
            </apply>
            <apply>
                <eq/>
                <apply>
                    <diff/>
                    <bvar>
                        <ci>t</ci>
                    </bvar>
                    <ci>m</ci>
                </apply>
                <apply>
                    <minus/>
                    <apply>
                        <times/>
                        <ci>alpha_m</ci>
                        <apply>
                            <minus/>
                            <cn cellml:units="dimensionless">1</cn>
                            <ci>m</ci>
                        </apply>
                    </apply>
                    <apply>
                        <times/>
                        <ci>beta_m</ci>
                        <ci>m</ci>
                    </apply>
                </apply>
            </apply>
        </math>
    </component>
    <component name="sodium_channel_h_gate">
        <variable name="V" public_interface="in" units="millivolt"/>
        <variable name="t" public_interface="in" units="millisec"/>
        <variable name="alpha_h" units="per_millisec"/>
        <variable name="beta_h" units="per_millisec"/>
        <variable initial_value="0.6" name="h" public_interface="out" units="dimensionless"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>alpha_h</ci>
                <apply>
                    <times/>
                    <cn cellml:units="per_millisec">0.07</cn>
                    <apply>
                        <exp/>
                        <apply>
                            <divide/>
                            <apply>
                                <minus/>
                                <apply>
                                    <plus/>
                                    <ci>V</ci>
                                    <cn cellml:units="millivolt">75</cn>
                                </apply>
                            </apply>
                            <cn cellml:units="millivolt">20</cn>
                        </apply>
                    </apply>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>beta_h</ci>
                <apply>
                    <divide/>
                    <cn cellml:units="per_millisec">1</cn>
                    <apply>
                        <plus/>
                        <apply>
                            <exp/>
                            <apply>
                                <divide/>
                                <apply>
                                    <minus/>
                                    <apply>
                                        <plus/>
                                        <ci>V</ci>
                                        <cn cellml:units="millivolt">45</cn>
                                    </apply>
                                </apply>
                                <cn cellml:units="millivolt">10</cn>
                            </apply>
                        </apply>
                        <cn cellml:units="dimensionless">1</cn>
                    </apply>
                </apply>
            </apply>
            <apply>
                <eq/>
                <apply>
                    <diff/>
                    <bvar>
                        <ci>t</ci>
                    </bvar>
                    <ci>h</ci>
                </apply>
                <apply>
                    <minus/>
                    <apply>
                        <times/>
                        <ci>alpha_h</ci>
                        <apply>
                            <minus/>
                            <cn cellml:units="dimensionless">1</cn>
                            <ci>h</ci>
                        </apply>
                    </apply>
                    <apply>
                        <times/>
                        <ci>beta_h</ci>
                        <ci>h</ci>
                    </apply>
                </apply>
            </apply>
        </math>
    </component>
    <connection>
        <map_components component_1="sodium_channel" component_2="environment"/>
        <map_variables variable_1="V" variable_2="V"/>
        <map_variables variable_1="t" variable_2="t"/>
    </connection>
    <connection>
        <map_components component_1="sodium_channel" component_2="sodium_channel_m_gate"/>
        <map_variables variable_1="V" variable_2="V"/>
        <map_variables variable_1="t" variable_2="t"/>
        <map_variables variable_1="m" variable_2="m"/>
    </connection>
    <connection>
        <map_components component_1="sodium_channel" component_2="sodium_channel_h_gate"/>
        <map_variables variable_1="V" variable_2="V"/>
        <map_variables variable_1="t" variable_2="t"/>
        <map_variables variable_1="h" variable_2="h"/>
    </connection>
</model>