- 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/BG/AP_BG.cellml
<?xml version='1.0' encoding='UTF-8'?>
<model name="AP_BG" 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/BG/units_BG.cellml">
<units name="per_fmol" units_ref="per_fmol"/>
<units name="fmol" units_ref="fmol"/>
<units name="fmol_per_sec" units_ref="fmol_per_sec"/>
<units name="fA" units_ref="fA"/>
<units name="fF" units_ref="fF"/>
<units name="fC" units_ref="fC"/>
<units name="fS" units_ref="fS"/>
</import>
<import xlink:href="INa_BG.cellml">
<component component_ref="INa_BG" name="INa_BG"/>
</import>
<import xlink:href="IK_BG.cellml">
<component component_ref="IK_BG" name="IK_BG"/>
</import>
<import xlink:href="Ileak_BG.cellml">
<component component_ref="Ileak_BG" name="Ileak_BG"/>
</import>
<component name="AP_BG">
<!--Parameters-->
<variable name="T" private_interface="out" public_interface="in" units="kelvin"/>
<variable name="C_m" public_interface="in" units="fF"/>
<variable name="q_m_init" public_interface="in" units="fC"/>
<variable name="g_leak" private_interface="out" public_interface="in" units="fS"/>
<variable name="V_leak" private_interface="out" public_interface="in" units="volt"/>
<variable name="kappa_Na" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="z_Na" private_interface="out" public_interface="in" units="dimensionless"/>
<variable name="K_i_Na" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="q_i_Na_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="K_e_Na" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="q_e_Na_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S00_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S10_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S20_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S30_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S01_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S11_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S21_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S31_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="K_S00" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S10" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S20" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S30" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S01" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S11" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S21" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S31" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="kappa_m10" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_m20" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_m30" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_m11" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_m21" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_m31" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_h0" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_h1" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_h2" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_h3" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="z_m_f" private_interface="out" public_interface="in" units="dimensionless"/>
<variable name="z_m_r" private_interface="out" public_interface="in" units="dimensionless"/>
<variable name="z_h_f" private_interface="out" public_interface="in" units="dimensionless"/>
<variable name="z_h_r" private_interface="out" public_interface="in" units="dimensionless"/>
<variable name="kappa_K" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="z_K" private_interface="out" public_interface="in" units="dimensionless"/>
<variable name="K_i_K" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="q_i_K_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="K_e_K" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="q_e_K_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S0_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S1_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S2_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S3_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="q_S4_init" private_interface="out" public_interface="in" units="fmol"/>
<variable name="K_S0" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S1" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S2" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S3" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="K_S4" private_interface="out" public_interface="in" units="per_fmol"/>
<variable name="kappa_n1" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_n2" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_n3" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="kappa_n4" private_interface="out" public_interface="in" units="fmol_per_sec"/>
<variable name="z_n_f" private_interface="out" public_interface="in" units="dimensionless"/>
<variable name="z_n_r" private_interface="out" public_interface="in" units="dimensionless"/>
<!--Inputs-->
<variable name="t" private_interface="out" public_interface="in" units="second"/>
<!--Outputs-->
<variable name="V_m" private_interface="out" public_interface="out" units="volt"/>
<variable name="I_Na" private_interface="in" public_interface="out" units="fA"/>
<variable name="I_K" private_interface="in" public_interface="out" units="fA"/>
<variable name="I_leak" private_interface="in" public_interface="out" units="fA"/>
<variable name="I_i" public_interface="out" units="fA"/>
<variable initial_value="q_m_init" name="q_m" public_interface="out" units="fC"/>
<variable name="A_g_K" private_interface="in" public_interface="out" units="J_per_mol"/>
<variable name="A_g_Na" private_interface="in" public_interface="out" units="J_per_mol"/>
<variable name="q_S00" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S10" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S20" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S30" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S01" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S11" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S21" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S31" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S0" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S1" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S2" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S3" private_interface="in" public_interface="out" units="fmol"/>
<variable name="q_S4" private_interface="in" public_interface="out" units="fmol"/>
<!-- Constitutive relation of the C:mem-->
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply>
<eq/>
<ci>V_m</ci>
<apply>
<divide/>
<ci>q_m</ci>
<ci>C_m</ci>
</apply>
</apply>
<!--Conservation laws-->
<apply>
<eq/>
<ci>I_i</ci>
<apply>
<plus/>
<ci>I_Na</ci>
<ci>I_K</ci>
<ci>I_leak</ci>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>q_m</ci>
</apply>
<ci>I_i</ci>
</apply>
</math>
</component>
<group>
<relationship_ref relationship="encapsulation"/>
<component_ref component="AP_BG">
<component_ref component="INa_BG"/>
<component_ref component="IK_BG"/>
<component_ref component="Ileak_BG"/>
</component_ref>
</group>
<connection>
<map_components component_1="AP_BG" component_2="INa_BG"/>
<map_variables variable_1="T" variable_2="T"/>
<map_variables variable_1="t" variable_2="t"/>
<map_variables variable_1="kappa_Na" variable_2="kappa_Na"/>
<map_variables variable_1="z_Na" variable_2="z_Na"/>
<map_variables variable_1="K_i_Na" variable_2="K_i_Na"/>
<map_variables variable_1="q_i_Na_init" variable_2="q_i_Na_init"/>
<map_variables variable_1="K_e_Na" variable_2="K_e_Na"/>
<map_variables variable_1="q_e_Na_init" variable_2="q_e_Na_init"/>
<map_variables variable_1="q_S00_init" variable_2="q_S00_init"/>
<map_variables variable_1="q_S10_init" variable_2="q_S10_init"/>
<map_variables variable_1="q_S20_init" variable_2="q_S20_init"/>
<map_variables variable_1="q_S30_init" variable_2="q_S30_init"/>
<map_variables variable_1="q_S01_init" variable_2="q_S01_init"/>
<map_variables variable_1="q_S11_init" variable_2="q_S11_init"/>
<map_variables variable_1="q_S21_init" variable_2="q_S21_init"/>
<map_variables variable_1="q_S31_init" variable_2="q_S31_init"/>
<map_variables variable_1="K_S00" variable_2="K_S00"/>
<map_variables variable_1="K_S10" variable_2="K_S10"/>
<map_variables variable_1="K_S20" variable_2="K_S20"/>
<map_variables variable_1="K_S30" variable_2="K_S30"/>
<map_variables variable_1="K_S01" variable_2="K_S01"/>
<map_variables variable_1="K_S11" variable_2="K_S11"/>
<map_variables variable_1="K_S21" variable_2="K_S21"/>
<map_variables variable_1="K_S31" variable_2="K_S31"/>
<map_variables variable_1="kappa_m10" variable_2="kappa_m10"/>
<map_variables variable_1="kappa_m20" variable_2="kappa_m20"/>
<map_variables variable_1="kappa_m30" variable_2="kappa_m30"/>
<map_variables variable_1="kappa_m11" variable_2="kappa_m11"/>
<map_variables variable_1="kappa_m21" variable_2="kappa_m21"/>
<map_variables variable_1="kappa_m31" variable_2="kappa_m31"/>
<map_variables variable_1="kappa_h0" variable_2="kappa_h0"/>
<map_variables variable_1="kappa_h1" variable_2="kappa_h1"/>
<map_variables variable_1="kappa_h2" variable_2="kappa_h2"/>
<map_variables variable_1="kappa_h3" variable_2="kappa_h3"/>
<map_variables variable_1="z_m_f" variable_2="z_m_f"/>
<map_variables variable_1="z_m_r" variable_2="z_m_r"/>
<map_variables variable_1="z_h_f" variable_2="z_h_f"/>
<map_variables variable_1="z_h_r" variable_2="z_h_r"/>
<map_variables variable_1="I_Na" variable_2="I_Na"/>
<map_variables variable_1="V_m" variable_2="V_m"/>
<map_variables variable_1="q_S00" variable_2="q_S00"/>
<map_variables variable_1="q_S10" variable_2="q_S10"/>
<map_variables variable_1="q_S20" variable_2="q_S20"/>
<map_variables variable_1="q_S30" variable_2="q_S30"/>
<map_variables variable_1="q_S01" variable_2="q_S01"/>
<map_variables variable_1="q_S11" variable_2="q_S11"/>
<map_variables variable_1="q_S21" variable_2="q_S21"/>
<map_variables variable_1="q_S31" variable_2="q_S31"/>
<map_variables variable_1="A_g_Na" variable_2="A_g_Na"/>
</connection>
<connection>
<map_components component_1="AP_BG" component_2="IK_BG"/>
<map_variables variable_1="T" variable_2="T"/>
<map_variables variable_1="t" variable_2="t"/>
<map_variables variable_1="kappa_K" variable_2="kappa_K"/>
<map_variables variable_1="z_K" variable_2="z_K"/>
<map_variables variable_1="K_i_K" variable_2="K_i_K"/>
<map_variables variable_1="q_i_K_init" variable_2="q_i_K_init"/>
<map_variables variable_1="K_e_K" variable_2="K_e_K"/>
<map_variables variable_1="q_e_K_init" variable_2="q_e_K_init"/>
<map_variables variable_1="q_S0_init" variable_2="q_S0_init"/>
<map_variables variable_1="q_S1_init" variable_2="q_S1_init"/>
<map_variables variable_1="q_S2_init" variable_2="q_S2_init"/>
<map_variables variable_1="q_S3_init" variable_2="q_S3_init"/>
<map_variables variable_1="q_S4_init" variable_2="q_S4_init"/>
<map_variables variable_1="K_S0" variable_2="K_S0"/>
<map_variables variable_1="K_S1" variable_2="K_S1"/>
<map_variables variable_1="K_S2" variable_2="K_S2"/>
<map_variables variable_1="K_S3" variable_2="K_S3"/>
<map_variables variable_1="K_S4" variable_2="K_S4"/>
<map_variables variable_1="kappa_n1" variable_2="kappa_n1"/>
<map_variables variable_1="kappa_n2" variable_2="kappa_n2"/>
<map_variables variable_1="kappa_n3" variable_2="kappa_n3"/>
<map_variables variable_1="kappa_n4" variable_2="kappa_n4"/>
<map_variables variable_1="z_n_f" variable_2="z_n_f"/>
<map_variables variable_1="z_n_r" variable_2="z_n_r"/>
<map_variables variable_1="I_K" variable_2="I_K"/>
<map_variables variable_1="V_m" variable_2="V_m"/>
<map_variables variable_1="q_S0" variable_2="q_S0"/>
<map_variables variable_1="q_S1" variable_2="q_S1"/>
<map_variables variable_1="q_S2" variable_2="q_S2"/>
<map_variables variable_1="q_S3" variable_2="q_S3"/>
<map_variables variable_1="q_S4" variable_2="q_S4"/>
<map_variables variable_1="A_g_K" variable_2="A_g_K"/>
</connection>
<connection>
<map_components component_1="AP_BG" component_2="Ileak_BG"/>
<map_variables variable_1="g_leak" variable_2="g_leak"/>
<map_variables variable_1="V_leak" variable_2="V_leak"/>
<map_variables variable_1="I_leak" variable_2="I_leak"/>
<map_variables variable_1="V_m" variable_2="V_m"/>
</connection>
</model>