Location: Hodgkin & Huxley (1952) model @ ab2962b87966 / components / clamped_current.cellml

Author:
WeiweiAi <wai484@aucklanduni.ac.nz>
Date:
2022-03-31 10:48:40+13:00
Desc:
Add open channel IV of HH models; Add simulation and plot python scripts
Permanent Source URI:
https://models.fieldml.org/workspace/64f/rawfile/ab2962b8796666ad9938a2577611c954f006b5fd/components/clamped_current.cellml

<?xml version='1.0' encoding='UTF-8'?>
<model name="clamped_current" xmlns="http://www.cellml.org/cellml/1.1#" xmlns:cellml="http://www.cellml.org/cellml/1.1#" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- get membrane current given voltage V-->
    <import xlink:href="../cellLib/Components/units.cellml">
        <units name="mV" units_ref="mV"/>
        <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="uF_per_cmsq" units_ref="uF_per_cmsq"/>
    </import>
    <import xlink:href="INa.cellml">
        <component component_ref="INa" name="INa"/>
    </import>
    <import xlink:href="IK.cellml">
        <component component_ref="IK" name="IK"/>
    </import>
    <import xlink:href="Ileak.cellml">
        <component component_ref="Ileak" name="Ileak"/>
    </import>
    <component name="membrane_current">
        <variable name="n_initial" private_interface="out" public_interface="in" units="dimensionless"/>
        <variable name="m_initial" private_interface="out" public_interface="in" units="dimensionless"/>
        <variable name="h_initial" private_interface="out" public_interface="in" units="dimensionless"/>
        <variable name="V" private_interface="out" public_interface="in" units="mV"/>
        <variable name="INa" private_interface="in" public_interface="out" units="uA_per_cmsq"/>
        <variable name="IK" private_interface="in" public_interface="out" units="uA_per_cmsq"/>
        <variable name="Ileak" private_interface="in" public_interface="out" units="uA_per_cmsq"/>
        <variable name="Ii" public_interface="out" units="uA_per_cmsq"/>
        <variable name="gK" private_interface="in" public_interface="out" units="mS_per_cmsq"/>
        <variable name="gNa" private_interface="in" public_interface="out" units="mS_per_cmsq"/>
        <variable name="g" public_interface="out" units="mS_per_cmsq"/>
        <variable name="h" private_interface="in" public_interface="out" units="dimensionless"/>
        <variable name="m" private_interface="in" public_interface="out" units="dimensionless"/>
        <variable name="n" private_interface="in" public_interface="out" units="dimensionless"/>
        <variable name="T" private_interface="out" public_interface="in" units="kelvin"/>
        <variable name="T0K" private_interface="out" public_interface="in" units="kelvin"/>
        <variable name="Q10K" private_interface="out" public_interface="in" units="dimensionless"/>
        <variable name="T0Na" private_interface="out" public_interface="in" units="kelvin"/>
        <variable name="Q10Na" private_interface="out" public_interface="in" units="dimensionless"/>
        <variable name="VNa" private_interface="out" public_interface="in" units="mV"/>
        <variable name="VK" private_interface="out" public_interface="in" units="mV"/>
        <variable name="Vleak" private_interface="out" public_interface="in" units="mV"/>
        <variable name="minus_V" public_interface="out" units="mV"/>
        <variable name="gNa_max" private_interface="out" public_interface="in" units="mS_per_cmsq"/>
        <variable name="gK_max" private_interface="out" public_interface="in" units="mS_per_cmsq"/>
        <variable name="gleak_max" private_interface="out" public_interface="in" units="mS_per_cmsq"/>
        <variable name="Cm" private_interface="out" public_interface="in" units="uF_per_cmsq"/>
        <variable name="time" private_interface="out" public_interface="in" units="ms"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>Ii</ci>
                <apply>
                    <plus/>
                    <ci>INa</ci>
                    <ci>IK</ci>
                    <ci>Ileak</ci>
                </apply>
            </apply>
            <apply id="minus_V_calculation">
                <eq/>
                <ci>minus_V</ci>
                <apply>
                    <minus/>
                    <ci>V</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>g</ci>
                <apply>
                    <plus/>
                    <ci>gK</ci>
                    <ci>gNa</ci>
                    <ci>gleak_max</ci>
                </apply>
            </apply>
        </math>
    </component>
    <group>
        <relationship_ref relationship="encapsulation"/>
        <component_ref component="membrane_current">
            <component_ref component="INa"/>
            <component_ref component="IK"/>
            <component_ref component="Ileak"/>
        </component_ref>
    </group>
    <connection>
        <map_components component_1="membrane_current" component_2="INa"/>
        <map_variables variable_1="INa" variable_2="INa"/>
        <map_variables variable_1="h" variable_2="h"/>
        <map_variables variable_1="m" variable_2="m"/>
        <map_variables variable_1="m_initial" variable_2="m_initial"/>
        <map_variables variable_1="h_initial" variable_2="h_initial"/>
        <map_variables variable_1="time" variable_2="time"/>
        <map_variables variable_1="V" variable_2="V"/>
        <map_variables variable_1="T" variable_2="T"/>
        <map_variables variable_1="VNa" variable_2="VNa"/>
        <map_variables variable_1="gNa_max" variable_2="gNa_max"/>
        <map_variables variable_1="gNa" variable_2="gNa"/>
        <map_variables variable_1="T0Na" variable_2="T0Na"/>
        <map_variables variable_1="Q10Na" variable_2="Q10Na"/>
    </connection>
    <connection>
        <map_components component_1="membrane_current" component_2="IK"/>
        <map_variables variable_1="IK" variable_2="IK"/>
        <map_variables variable_1="n" variable_2="n"/>
        <map_variables variable_1="n_initial" variable_2="n_initial"/>
        <map_variables variable_1="time" variable_2="time"/>
        <map_variables variable_1="V" variable_2="V"/>
        <map_variables variable_1="T" variable_2="T"/>
        <map_variables variable_1="VK" variable_2="VK"/>
        <map_variables variable_1="gK_max" variable_2="gK_max"/>
        <map_variables variable_1="gK" variable_2="gK"/>
        <map_variables variable_1="T0K" variable_2="T0K"/>
        <map_variables variable_1="Q10K" variable_2="Q10K"/>
    </connection>
    <connection>
        <map_components component_1="membrane_current" component_2="Ileak"/>
        <map_variables variable_1="Ileak" variable_2="Ileak"/>
        <map_variables variable_1="V" variable_2="V"/>
        <map_variables variable_1="Vleak" variable_2="Vleak"/>
        <map_variables variable_1="gleak_max" variable_2="gleak_max"/>
    </connection>
</model>