Location: Model of excitation-contraction in uterine myocytes from a pregnant rat @ f5b5a6cc798b / Components / ICl.cellml

Author:
WeiweiAi <wai484@aucklanduni.ac.nz>
Date:
2021-09-29 14:19:13+13:00
Desc:
correct the interface def and add individual currents for clamp experiment
Permanent Source URI:
https://models.physiomeproject.org/workspace/701/rawfile/f5b5a6cc798b55f4a6f6a30cc839d5698a5a598c/Components/ICl.cellml

<?xml version='1.0' encoding='UTF-8'?>
<model name="ICl" 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">
    <import xlink:href="../cellLib/Components/units.cellml">
        <units name="ms" units_ref="ms"/>
        <units name="pA_per_pF" units_ref="pA_per_pF"/>
        <units name="pA" units_ref="pA"/>
        <units name="nS" units_ref="nS"/>
        <units name="mV" units_ref="mV"/>
        <units name="mM" units_ref="mM"/>
        <units name="nS_per_pF" units_ref="nS_per_pF"/>
        <units name="J_per_K_mol" units_ref="J_per_K_mol"/>
        <units name="C_per_mmol" units_ref="C_per_mmol"/>
        <units name="pF_per_cmsq" units_ref="pF_per_cmsq"/>
        <units name="cmsq" units_ref="cmsq"/>
        <units name="per_mV" units_ref="per_mV"/>
    </import>
    <import xlink:href="../cellLib/Components/Ionic_currents.cellml">
        <component component_ref="Ionic_currents" name="I_pA"/>
    </import>
    <import xlink:href="../cellLib/Components/Hillfcn.cellml">
        <component component_ref="Hillfcn" name="Hillfcn"/>
    </import>
    <import xlink:href="../cellLib/Components/gating_kinetics.cellml">
        <component component_ref="gating_kinetics" name="n_gate"/>
    </import>
    <import xlink:href="../cellLib/Components/gating_kinetics.cellml">
        <component component_ref="gating_kinetics" name="c1_gate"/>
    </import>
    <import xlink:href="../cellLib/Components/gating_kinetics.cellml">
        <component component_ref="gating_kinetics" name="c2_gate"/>
    </import>
    <import xlink:href="ICl_gating.cellml">
        <component component_ref="n_inf" name="n_inf"/>
        <component component_ref="c_inf" name="c_inf"/>
        <component component_ref="tau_c1" name="tau_c1"/>
        <component component_ref="tau_c2" name="tau_c2"/>
    </import>
    <component name="ICl">
        <variable name="time" private_interface="out" public_interface="in" units="ms"/>
        <variable name="I_Cl" private_interface="in" public_interface="out" units="pA_per_pF"/>
        <variable name="V" private_interface="out" public_interface="in" units="mV"/>
        <variable name="E_Cl" private_interface="out" units="mV"/>
        <variable name="g_Cl" private_interface="out" public_interface="in" units="nS_per_pF"/>
        <variable name="Cm" private_interface="out" public_interface="in" units="pF_per_cmsq"/>
        <variable name="Ac" private_interface="out" public_interface="in" units="cmsq"/>
        <variable name="R" private_interface="out" public_interface="in" units="J_per_K_mol"/>
        <variable name="F" private_interface="out" public_interface="in" units="C_per_mmol"/>
        <variable name="T" private_interface="out" public_interface="in" units="kelvin"/>
        <variable name="T0Cl" private_interface="out" public_interface="in" units="kelvin"/>
        <variable name="Q10Cl" private_interface="out" public_interface="in" units="dimensionless"/>
        <variable name="Cai" private_interface="out" public_interface="in" units="mM"/>
        <variable name="K_dCl" public_interface="in" units="mM"/>
        <variable name="tau_n" private_interface="out" public_interface="in" units="ms"/>
        <variable name="x_h" private_interface="out" units="dimensionless"/>
        <variable initial_value="1" name="n_h" private_interface="out" units="dimensionless"/>
        <variable name="g_fCa" private_interface="in" units="dimensionless"/>
        <variable name="n_init" private_interface="out" public_interface="in" units="dimensionless"/>
        <variable name="n" private_interface="in" public_interface="out" units="dimensionless"/>
        <variable name="c1_init" private_interface="out" public_interface="in" units="dimensionless"/>
        <variable name="c_1" private_interface="in" public_interface="out" units="dimensionless"/>
        <variable name="c2_init" private_interface="out" public_interface="in" units="dimensionless"/>
        <variable name="c_2" private_interface="in" public_interface="out" units="dimensionless"/>
        <variable name="P_Cl" private_interface="out" public_interface="out" units="dimensionless"/>
        <variable name="g_scale" units="dimensionless"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>x_h</ci>
                <apply>
                    <divide/>
                    <ci>K_dCl</ci>
                    <ci>Cai</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>E_Cl</ci>
                <piecewise>
                    <piece>
                        <apply>
                            <minus/>
                            <cn cellml:units="mV">30</cn>
                        </apply>
                        <apply>
                            <gt/>
                            <ci>V</ci>
                            <cn cellml:units="mV">0</cn>
                        </apply>
                    </piece>
                    <otherwise>
                        <apply>
                            <minus/>
                            <cn cellml:units="mV">5</cn>
                        </apply>
                    </otherwise>
                </piecewise>
            </apply>
            <apply>
                <eq/>
                <ci>g_scale</ci>
                <piecewise>
                    <piece>
                        <apply>
                            <plus/>
                            <cn cellml:units="dimensionless">19.26</cn>
                            <apply>
                                <times/>
                                <cn cellml:units="dimensionless">365.8</cn>
                                <apply>
                                    <exp/>
                                    <apply>
                                        <times/>
                                        <cn cellml:units="per_mV">0.0564</cn>
                                        <ci>V</ci>
                                    </apply>
                                </apply>
                            </apply>
                        </apply>
                        <apply>
                            <leq/>
                            <ci>V</ci>
                            <apply>
                                <minus/>
                                <cn cellml:units="mV">20</cn>
                            </apply>
                        </apply>
                    </piece>
                    <otherwise>
                        <apply>
                            <plus/>
                            <cn cellml:units="dimensionless">0.752</cn>
                            <apply>
                                <times/>
                                <cn cellml:units="dimensionless">0.0349</cn>
                                <apply>
                                    <exp/>
                                    <apply>
                                        <times/>
                                        <apply>
                                            <minus/>
                                            <cn cellml:units="per_mV">0.414</cn>
                                        </apply>
                                        <ci>V</ci>
                                    </apply>
                                </apply>
                            </apply>
                        </apply>
                    </otherwise>
                </piecewise>
            </apply>
            <apply>
                <eq/>
                <ci>P_Cl</ci>
                <piecewise>
                    <piece>
                        <apply>
                            <times/>
                            <ci>g_scale</ci>
                            <ci>g_fCa</ci>
                            <apply>
                                <root/>
                                <ci>c_1</ci>
                            </apply>
                        </apply>
                        <apply>
                            <gt/>
                            <ci>V</ci>
                            <cn cellml:units="mV">0</cn>
                        </apply>
                    </piece>
                    <otherwise>
                        <apply>
                            <times/>
                            <ci>g_scale</ci>
                            <ci>g_fCa</ci>
                            <ci>c_2</ci>
                            <ci>n</ci>
                        </apply>
                    </otherwise>
                </piecewise>
            </apply>
        </math>
    </component>
    <component name="convert_I_pA">
        <variable name="I_Cl" public_interface="out" units="pA_per_pF"/>
        <variable name="g_Cl_ns" public_interface="out" units="nS"/>
        <variable name="I_pA" public_interface="in" units="pA"/>
        <variable name="g_Cl" public_interface="in" units="nS_per_pF"/>
        <variable name="Cm" public_interface="in" units="pF_per_cmsq"/>
        <variable name="Ac" public_interface="in" units="cmsq"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>g_Cl_ns</ci>
                <apply>
                    <times/>
                    <ci>g_Cl</ci>
                    <ci>Cm</ci>
                    <ci>Ac</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>I_Cl</ci>
                <apply>
                    <divide/>
                    <ci>I_pA</ci>
                    <apply>
                        <times/>
                        <ci>Cm</ci>
                        <ci>Ac</ci>
                    </apply>
                </apply>
            </apply>
        </math>
    </component>
    <group>
        <relationship_ref relationship="encapsulation"/>
        <component_ref component="ICl">
            <component_ref component="I_pA"/>
            <component_ref component="convert_I_pA"/>
            <component_ref component="n_gate"/>
            <component_ref component="c1_gate"/>
            <component_ref component="c2_gate"/>
            <component_ref component="n_inf"/>
            <component_ref component="c_inf"/>
            <component_ref component="Hillfcn"/>
            <component_ref component="tau_c1"/>
            <component_ref component="tau_c2"/>
        </component_ref>
    </group>
    <connection>
        <map_components component_1="ICl" component_2="Hillfcn"/>
        <map_variables variable_1="x_h" variable_2="x"/>
        <map_variables variable_1="n_h" variable_2="n"/>
        <map_variables variable_1="g_fCa" variable_2="H"/>
    </connection>
    <connection>
        <map_components component_1="ICl" component_2="n_inf"/>
        <map_variables variable_1="V" variable_2="V"/>
    </connection>
    <connection>
        <map_components component_1="ICl" component_2="c_inf"/>
        <map_variables variable_1="V" variable_2="V"/>
    </connection>
    <connection>
        <map_components component_1="ICl" component_2="tau_c1"/>
        <map_variables variable_1="V" variable_2="V"/>
    </connection>
    <connection>
        <map_components component_1="ICl" component_2="tau_c2"/>
        <map_variables variable_1="V" variable_2="V"/>
    </connection>
    <connection>
        <map_components component_1="ICl" component_2="n_gate"/>
        <map_variables variable_1="time" variable_2="time"/>
        <map_variables variable_1="T" variable_2="T"/>
        <map_variables variable_1="Q10Cl" variable_2="Q_10"/>
        <map_variables variable_1="T0Cl" variable_2="T_0"/>
        <map_variables variable_1="n_init" variable_2="X_init"/>
        <map_variables variable_1="tau_n" variable_2="tau_X"/>
        <map_variables variable_1="n" variable_2="X"/>
    </connection>
    <connection>
        <map_components component_1="ICl" component_2="c1_gate"/>
        <map_variables variable_1="time" variable_2="time"/>
        <map_variables variable_1="T" variable_2="T"/>
        <map_variables variable_1="Q10Cl" variable_2="Q_10"/>
        <map_variables variable_1="T0Cl" variable_2="T_0"/>
        <map_variables variable_1="c1_init" variable_2="X_init"/>
        <map_variables variable_1="c_1" variable_2="X"/>
    </connection>
    <connection>
        <map_components component_1="ICl" component_2="c2_gate"/>
        <map_variables variable_1="time" variable_2="time"/>
        <map_variables variable_1="T" variable_2="T"/>
        <map_variables variable_1="Q10Cl" variable_2="Q_10"/>
        <map_variables variable_1="T0Cl" variable_2="T_0"/>
        <map_variables variable_1="c2_init" variable_2="X_init"/>
        <map_variables variable_1="c_2" variable_2="X"/>
    </connection>
    <connection>
        <map_components component_1="n_inf" component_2="n_gate"/>
        <map_variables variable_1="X_inf" variable_2="X_inf"/>
    </connection>
    <connection>
        <map_components component_1="c_inf" component_2="c1_gate"/>
        <map_variables variable_1="X_inf" variable_2="X_inf"/>
    </connection>
    <connection>
        <map_components component_1="c_inf" component_2="c2_gate"/>
        <map_variables variable_1="X_inf" variable_2="X_inf"/>
    </connection>
    <connection>
        <map_components component_1="tau_c1" component_2="c1_gate"/>
        <map_variables variable_1="tau" variable_2="tau_X"/>
    </connection>
    <connection>
        <map_components component_1="tau_c2" component_2="c2_gate"/>
        <map_variables variable_1="tau" variable_2="tau_X"/>
    </connection>
    <connection>
        <map_components component_1="ICl" component_2="I_pA"/>
        <map_variables variable_1="V" variable_2="V"/>
        <map_variables variable_1="P_Cl" variable_2="PO"/>
        <map_variables variable_1="E_Cl" variable_2="E"/>
    </connection>
    <connection>
        <map_components component_1="convert_I_pA" component_2="I_pA"/>
        <map_variables variable_1="I_pA" variable_2="I"/>
        <map_variables variable_1="g_Cl_ns" variable_2="g_max"/>
    </connection>
    <connection>
        <map_components component_1="ICl" component_2="convert_I_pA"/>
        <map_variables variable_1="I_Cl" variable_2="I_Cl"/>
        <map_variables variable_1="g_Cl" variable_2="g_Cl"/>
        <map_variables variable_1="Cm" variable_2="Cm"/>
        <map_variables variable_1="Ac" variable_2="Ac"/>
    </connection>
</model>