Location: Core Domains Principled Model Example @ cce6374c21a6 / ICaL_to_Cai.cellml

Author:
Michael Cooling <mcoo001@UoA.auckland.ac.nz>
Date:
2016-04-11 12:26:19+12:00
Desc:
Adding .zip file of complete model
Permanent Source URI:
http://models.cellml.org/workspace/2c5/rawfile/cce6374c21a60771321701b2f88857175ca5c31e/ICaL_to_Cai.cellml

<?xml version="1.0" encoding="utf-8"?>

<model xmlns:xlink="http://www.w3.org/1999/xlink" name="ICaL_to_Cai" cmeta:id="ICaL_to_Cai"
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#">

    <import xlink:href="Principled_Base/Units_Cellular_Systems.cellml">
	<units name="per_mm" units_ref="per_mm" />
	<units name="uF_per_mm2" units_ref="uF_per_mm2" />
	<units name="mM_per_ms" units_ref="mM_per_ms" />
	<units name="per_ms" units_ref="per_ms" />
	<units name="ms" units_ref="ms" />
	<units name="mM_per_s" units_ref="mM_per_s" />
    </import>

    <import xmlns="http://www.cellml.org/cellml/1.1#" xlink:href="Principled_Base/Time.cellml">
		<component name="Time" component_ref="Time"/>
    </import>
        
    <component name="ICaL_to_Cai_Parameters">
    	<variable name="Am" units="per_mm" initial_value="200" public_interface="out"/>
    	<variable name="vC" units="dimensionless" initial_value="0.49" public_interface="out"/>
    	<variable name="Cm" initial_value="0.01" units="uF_per_mm2" public_interface="out"/>
    	<variable name="I_V_MinusExternal" initial_value="0" public_interface="out"  units="uA_per_mm2" />
    	<variable name="J_Cai_External" initial_value="0" public_interface="out"  units="mM_per_s" />
    </component>
    
    <import xmlns="http://www.cellml.org/cellml/1.1#" xlink:href="ICaL_pHSensitive.cellml">
		<component name="ICaL_pHSensitive_Parameters" component_ref="ICaL_pHSensitive_Parameters"/>
    </import>
    
    <import xlink:href="Principled_Base/mohr_taylor_newell_2008_subset.cellml">
    	<units name="J_per_mole_per_K" units_ref="J_per_mole_per_K" />
	<units name="C_per_mole" units_ref="C_per_mole" />
    	<component name="codata_2006_physicochemical" component_ref="codata_2006_physicochemical_subset" />
    </import>
    
   <connection>
      <map_components component_1="ICaL_to_Cai" component_2="codata_2006_physicochemical"/>
      <map_variables variable_1="R" 	variable_2="molar_gas_constant" />
      <map_variables variable_1="F" 	variable_2="Faraday_constant" 	/>
   </connection>
    
   <connection>
	<map_components component_1="ICaL_to_Cai" component_2="ICaL_pHSensitive_Parameters"/>
	<map_variables variable_1="H_i" 		variable_2="H_i" 		/>
	<map_variables variable_1="k_half_pHi" 		variable_2="k_half_pHi" 	/>
	<map_variables variable_1="H_o" 		variable_2="H_o" 		/>
	<map_variables variable_1="k_half_pHo" 		variable_2="k_half_pHo" 	/>
	<map_variables variable_1="ATP_i" 		variable_2="ATP_i" 		/>
	<map_variables variable_1="k_half_ATPi" 	variable_2="k_half_ATPi" 	/>
	<map_variables variable_1="H_ATPi" 		variable_2="H_ATPi" 		/>
	<map_variables variable_1="g_CaL" 		variable_2="g_CaL" 		/>
	<map_variables variable_1="V_init" 		variable_2="V" 			/>
	<map_variables variable_1="Cai_init" 		variable_2="Cai" 		/>
	<map_variables variable_1="Cao" 		variable_2="Cao" 		/>
	<map_variables variable_1="T" 			variable_2="T" 			/>
	<map_variables variable_1="d_init" 		variable_2="d_init" 		/>
	<map_variables variable_1="f_init" 		variable_2="f_init" 		/>
	<map_variables variable_1="fCa_init" 		variable_2="fCa_init" 		/>
   </connection>
    
   <group>
      <relationship_ref relationship="encapsulation"/>
      <component_ref component="ICaL_to_Cai">
         <component_ref component="membraneV"/>
         <component_ref component="membraneV_delta"/>
         <component_ref component="ICaL_pHSensitive"/>
         <component_ref component="Cai"/>
         <component_ref component="Cai_delta"/>
         <component_ref component="Cai_ICaLflux_converter"/>
      </component_ref>
   </group>
    
    <component name="ICaL_to_Cai">
    	
    	<variable name="time" units="second" public_interface="in" private_interface="out"/>
    	<variable name="Cm"  units="uF_per_mm2" public_interface="in" private_interface="out"/>
    	<variable name="V_init"  units="mV" public_interface="in" private_interface="out"/>
	<variable name="Am" units="per_mm"  public_interface="in" private_interface="out"/>
    	<variable name="vC" units="dimensionless"  public_interface="in" private_interface="out"/>
    	
	<variable name="H_i" units="mM" public_interface="in" private_interface="out"/>
	<variable name="k_half_pHi" units="mM" public_interface="in" private_interface="out"/>
	<variable name="H_o" units="mM" public_interface="in" private_interface="out"/>
	<variable name="k_half_pHo" units="mM" public_interface="in" private_interface="out"/>
	<variable name="ATP_i" units="mM"  public_interface="in" private_interface="out"/>
	<variable name="k_half_ATPi" units="mM" public_interface="in" private_interface="out"/>
	<variable name="H_ATPi" units="dimensionless" public_interface="in" private_interface="out"/>
	
	<variable name="g_CaL" public_interface="in" private_interface="out" units="mm_per_ms"/>

	<variable name="Cai_init" public_interface="in" private_interface="out" units="mM"/>
	<variable name="Cao" public_interface="in" private_interface="out" units="mM"/>
	<variable name="T" public_interface="in" private_interface="out" units="K"/>
	<variable name="R" public_interface="in" private_interface="out" units="J_per_mole_per_K"/>
	<variable name="F" public_interface="in" private_interface="out" units="C_per_mole"/>

	<variable name="d_init" public_interface="in" private_interface="out" units="dimensionless"  />
	<variable name="f_init"  public_interface="in" private_interface="out"  units="dimensionless" />
	<variable name="fCa_init" public_interface="in" private_interface="out"  units="dimensionless" />
	
	<variable name="J_Cai_External" public_interface="in" private_interface="out"  units="mM_per_s" />
	<variable name="I_V_MinusExternal" public_interface="in" private_interface="out"  units="uA_per_mm2" />
	
	<variable name="V"   public_interface="out" private_interface="in" units="mV"/>
	<variable name="I_V_Minus" public_interface="out" private_interface="in"  units="uA_per_mm2" />
	<variable name="Cai" public_interface="out" private_interface="in" units="mM"/>
	<variable name="J_Cai" public_interface="out" private_interface="in" units="mM_per_s"/>
	
    </component>
    
        <connection>
          <map_components component_1="ICaL_to_Cai" component_2="Time"/>
          <map_variables variable_1="time" variable_2="time"/>
   	</connection>
    
        <connection>
          <map_components component_1="ICaL_to_Cai" component_2="ICaL_to_Cai_Parameters"/>
          <map_variables variable_1="Am" variable_2="Am"/>
          <map_variables variable_1="vC" variable_2="vC"/>
          <map_variables variable_1="Cm" variable_2="Cm"/>
          <map_variables variable_1="I_V_MinusExternal" variable_2="I_V_MinusExternal"/>
          <map_variables variable_1="J_Cai_External" 	variable_2="J_Cai_External" 	/>
   	</connection>
    
	<component name="membraneV_delta">
		<variable name="ICaL" public_interface="in" units="uA_per_mm2"/>
		<variable name="IMinusExternal" public_interface="in" units="uA_per_mm2"/>
		<variable name="INetMinus" units="uA_per_mm2" public_interface="out" />

	       <math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply><eq/>
			<ci>INetMinus</ci>
				<apply>
					<minus/>
					<apply>
						<plus/>
						<ci>ICaL</ci>
						<ci>IMinusExternal</ci>
					</apply>
				</apply>
			</apply>
		</math>
	</component>

        <connection>
          <map_components component_1="ICaL_to_Cai" component_2="membraneV_delta"/>
          <map_variables variable_1="I_V_MinusExternal" variable_2="IMinusExternal"/>
          <map_variables variable_1="I_V_Minus" variable_2="INetMinus"/>
   	</connection>
   	
        <connection>
          <map_components component_1="ICaL_pHSensitive" component_2="membraneV_delta"/>
          <map_variables variable_1="ICaL" variable_2="ICaL"/>
   	</connection>


	<component name="membraneV">
		<variable name="V_init" public_interface="in" units="mV"/>
		<variable name="time" public_interface="in" units="ms"/>
		<variable name="INetMinus" public_interface="in" units="uA_per_mm2" />
		<variable name="Cm" units="uF_per_mm2" public_interface="in" />
		<variable name="V" initial_value="V_init" public_interface="out" units="mV"/>

	       <math xmlns="http://www.w3.org/1998/Math/MathML">
		 <apply><eq/>
		   <apply><diff/>
		     <bvar><ci>time</ci></bvar>
		     <ci>V</ci>
		   </apply>
		   <apply><divide/>
		     <apply><minus/>
			<ci>INetMinus</ci>
		     </apply>
		     <ci>Cm</ci>
		   </apply>
		 </apply>
	    </math>
	</component>
  
    
      <connection>
         <map_components component_1="ICaL_to_Cai" component_2="membraneV"/>
         <map_variables variable_1="V_init" variable_2="V_init"/>
         <map_variables variable_1="Cm" variable_2="Cm"/>
         <map_variables variable_1="time" variable_2="time"/>
         <map_variables variable_1="V" variable_2="V"/>
      </connection>
      
      <connection>
         <map_components component_1="membraneV_delta" component_2="membraneV"/>
         <map_variables variable_1="INetMinus" variable_2="INetMinus"/>
      </connection>
   
	<import  xlink:href="Principled_Base/Template_Species_uM.cellml">
		<component name="Cai" component_ref="Template_Species_uM"/>
	</import> 
   
      	<connection>
      		<map_components component_1="Cai" component_2="ICaL_to_Cai"/>
      		<map_variables variable_1="concentrationInitialValue" variable_2="Cai_init"/>
      		<map_variables variable_1="concentration" variable_2="Cai"/>
      		<map_variables variable_1="time" variable_2="time"/>
      	</connection> 
      	 
      	
      	<connection>
      		<map_components component_1="Cai_delta" component_2="Cai"/>
      		<map_variables variable_1="JNet" variable_2="JGain"/>
      	</connection> 
      	
      	<component name="Cai_delta">
      	<variable name="JPlusICaL" units="mM_per_s" public_interface="in" />
      	<variable name="JNet"  units="mM_per_s" public_interface="out" />
      	<variable name="JExternal"  units="mM_per_s" public_interface="in" />
      	<math xmlns="http://www.w3.org/1998/Math/MathML">
      		<apply>
      			<eq/>
      			<ci>JNet</ci>	
      			<apply>
      				<plus/>
      				<ci>JPlusICaL</ci>
      				<ci>JExternal</ci>
      			</apply>
      		</apply>
      	</math>
      	</component>
      	
      	<connection>
      		<map_components component_1="Cai_delta" component_2="Cai_ICaLflux_converter"/>
      		<map_variables variable_1="JPlusICaL" variable_2="J_Cai"/>
	</connection> 
	
      	<connection>
      		<map_components component_1="Cai_delta" component_2="ICaL_to_Cai"/>
      		<map_variables variable_1="JNet" variable_2="J_Cai"/>
      		<map_variables variable_1="JExternal" variable_2="J_Cai_External"/>
	</connection>
        
   <component name="Cai_ICaLflux_converter">
      <variable name="vC" units="dimensionless" public_interface="in" />
      <variable name="Am" units="per_mm" public_interface="in"/>
      <variable name="F" units="C_per_mole" public_interface="in"/>
      <variable name="ICaL" units="uA_per_mm2" public_interface="in"/>
      
     <variable name="J_Cai" units="mM_per_ms" public_interface="out" />
      <math xmlns="http://www.w3.org/1998/Math/MathML">
         <apply>
            <eq/>
            <ci>J_Cai</ci>
            <apply>
               <times/>
               <apply>
                  <divide/>
                  <ci>Am</ci>
                  <apply>
                     <times/>
                     <cn cellml:units="dimensionless">2</cn>
                     <ci>vC</ci>
                     <ci>F</ci>
                  </apply>
               </apply>
               <apply>
                  <minus/>
                  <ci>ICaL</ci>
               </apply>
            </apply>
         </apply>
      </math>
   </component>
   
    <connection>
        <map_components component_1="Cai_ICaLflux_converter" component_2="ICaL_to_Cai"/>
        <map_variables variable_1="Am" variable_2="Am"/>
        <map_variables variable_1="vC" variable_2="vC"/>
        <map_variables variable_1="F" variable_2="F"/>
   </connection>
   
   <connection>
      <map_components component_1="ICaL_pHSensitive" component_2="Cai_ICaLflux_converter"/>
      <map_variables variable_1="ICaL" variable_2="ICaL"/>
   </connection>
   
   
<import  xlink:href="ICaL_pHSensitive.cellml">
	<units name="mM" units_ref="mM" />
	<units name="mm_per_ms" units_ref="mm_per_ms" />
	<units name="mV" units_ref="mV" />
	<units name="K" units_ref="K" />
	<units name="uA_per_mm2" units_ref="uA_per_mm2" />
	<component name="ICaL_pHSensitive" component_ref="ICaL_pHSensitive"/>
</import> 
   
	<connection>
		<map_components component_1="Cai" component_2="ICaL_pHSensitive"/>
		<map_variables variable_1="concentration" variable_2="Cai"/>
	</connection> 
	
   <connection>
	<map_components component_1="ICaL_pHSensitive" component_2="ICaL_to_Cai"/>
	<map_variables variable_1="H_i" 		variable_2="H_i" 		/>
	<map_variables variable_1="k_half_pHi" 		variable_2="k_half_pHi" 	/>
	<map_variables variable_1="H_o" 		variable_2="H_o" 		/>
	<map_variables variable_1="k_half_pHo" 		variable_2="k_half_pHo" 	/>
	<map_variables variable_1="ATP_i" 		variable_2="ATP_i" 		/>
	<map_variables variable_1="k_half_ATPi" 	variable_2="k_half_ATPi" 	/>
	<map_variables variable_1="H_ATPi" 		variable_2="H_ATPi" 		/>
	<map_variables variable_1="g_CaL" 		variable_2="g_CaL" 		/>
	<map_variables variable_1="Cao" 		variable_2="Cao" 		/>
	<map_variables variable_1="T" 			variable_2="T" 			/>
	<map_variables variable_1="d_init" 		variable_2="d_init" 		/>
	<map_variables variable_1="f_init" 		variable_2="f_init" 		/>
	<map_variables variable_1="fCa_init" 		variable_2="fCa_init" 	/>
	<map_variables variable_1="time" 		variable_2="time" 	/>
	<map_variables variable_1="F" 			variable_2="F" 	/>
	<map_variables variable_1="R" 			variable_2="R" 	/>
   </connection>
   
   <connection>
	<map_components component_1="ICaL_pHSensitive" component_2="membraneV"/>   
	<map_variables variable_1="V" 			variable_2="V" 			/>
   </connection>	
   
</model>