- Author:
- Randall Britten <r.britten@auckland.ac.nz>
- Date:
- 2013-12-05 16:29:47+13:00
- Desc:
- Added ?SaveDefinitions -> True? to ?Manipulate? blocks so that CDF export works.
- Permanent Source URI:
- https://staging.physiomeproject.org/workspace/178/rawfile/b2146c6c6b06de44ace1035d9cbcd1d68d199808/pHcontrol.cellml
<?xml version="1.0"?>
<model xmlns="http://www.cellml.org/cellml/1.1#" xmlns:cmeta="http://www.cellml.org/metadata/1.0#" cmeta:id="pHcontrol" name="pHcontrol">
<component name="Environment">
<variable name="Time" public_interface="out" units="second"/>
</component>
<component name="Flux">
<variable initial_value="initialCO2mM" name="CO2" public_interface="out" units="mM"/>
<variable initial_value="initialHCO3mM" name="HCO3" units="mM"/>
<variable initial_value="initialH" name="H" units="mM"/>
<variable name="kf" units="per_second"/>
<variable name="kb" units="per_mM_per_second"/>
<variable name="J" units="mM_per_second"/>
<variable name="Time" public_interface="in" units="second"/>
<math xmlns="http://www.w3.org/1998/Math/MathML" id="ReactionRates">
<apply id="ReactionFlux">
<eq/>
<ci>J
</ci>
<apply>
<minus/>
<apply>
<times/>
<ci>kf
</ci>
<ci>CO2
</ci>
</apply>
<apply>
<times/>
<ci>kb
</ci>
<ci>HCO3
</ci>
<ci>H
</ci>
</apply>
</apply>
</apply>
<apply id="CO2 ODE">
<eq/>
<apply>
<diff/>
<bvar>
<ci>Time
</ci>
</bvar>
<ci>CO2
</ci>
</apply>
<apply>
<minus/>
<ci>CO2source
</ci>
<ci>CO2sink
</ci>
</apply>
</apply>
<apply id="HCO3 ODE">
<eq/>
<apply>
<diff/>
<bvar>
<ci>Time
</ci>
</bvar>
<ci>HCO3
</ci>
</apply>
<ci>J
</ci>
</apply>
<apply id="H ODE">
<eq/>
<apply>
<diff/>
<bvar>
<ci>Time
</ci>
</bvar>
<ci>H
</ci>
</apply>
<apply>
<plus/>
<ci>J
</ci>
<ci>protonSource
</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>pK
</ci>
<cn xmlns:cellml="http://www.cellml.org/cellml/1.1#" cellml:units="dimensionless">6.1
</cn>
</apply>
<apply id="pK to equilibrium constant">
<eq/>
<ci>K
</ci>
<apply>
<power/>
<cn xmlns:cellml="http://www.cellml.org/cellml/1.1#" cellml:units="dimensionless">10
</cn>
<apply>
<minus/>
<ci>pK
</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>kf
</ci>
<apply>
<times/>
<ci>K
</ci>
<cn xmlns:cellml="http://www.cellml.org/cellml/1.1#" cellml:units="per_second">1
</cn>
</apply>
</apply>
<apply>
<eq/>
<ci>kb
</ci>
<cn xmlns:cellml="http://www.cellml.org/cellml/1.1#" cellml:units="per_mM_per_second">1
</cn>
</apply>
<apply>
<eq/>
<ci>initialHCO3mM
</ci>
<apply>
<divide/>
<apply>
<times/>
<ci>initialCO2mM
</ci>
<ci>K
</ci>
</apply>
<ci>initialH
</ci>
</apply>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" id="Auxilliary">
<apply id="CO2mmHg_proxy">
<eq/>
<ci>CO2mmHg_proxy
</ci>
<ci>CO2mmHg
</ci>
</apply>
</math>
<math xmlns="http://www.w3.org/1998/Math/MathML" id="pH conversions">
<apply id="HConcToPh">
<eq/>
<ci>pH
</ci>
<apply>
<minus/>
<apply>
<log/>
<apply>
<divide/>
<ci>H
</ci>
<ci>c1
</ci>
</apply>
</apply>
</apply>
</apply>
<apply id="phToHConc">
<eq/>
<ci>initialH
</ci>
<apply>
<times/>
<apply>
<power/>
<cn xmlns:cellml="http://www.cellml.org/cellml/1.1#" cellml:units="dimensionless">10
</cn>
<apply>
<minus/>
<ci>initialPh
</ci>
</apply>
</apply>
<ci>c1
</ci>
</apply>
</apply>
</math>
<variable initial_value="0" name="CO2source" units="mM_per_second"/>
<variable initial_value="0" name="CO2sink" units="mM_per_second"/>
<variable initial_value="0" name="protonSource" units="mM_per_second"/>
<variable name="pH" units="dimensionless"/>
<variable initial_value="1000" name="c1" units="mM"/>
<variable name="initialH" units="mM"/>
<variable initial_value="7.4" name="initialPh" units="dimensionless"/>
<variable name="initialCO2mM" public_interface="in" units="mM"/>
<variable initial_value="40" name="initialCO2mmHg" public_interface="out" units="mmHg"/>
<variable name="CO2mmHg" public_interface="in" units="mmHg"/>
<variable name="CO2mmHg_proxy" units="mmHg"/>
<math xmlns="http://www.w3.org/1998/Math/MathML" id="solubility of CO2">
<apply>
<eq/>
<ci>sCO2
</ci>
<cn xmlns:cellml="http://www.cellml.org/cellml/1.1#" cellml:units="mM_per_mmHg">0.03
</cn>
</apply>
</math>
<variable name="sCO2" public_interface="out" units="mM_per_mmHg"/>
<variable name="pK" units="dimensionless"/>
<variable name="K" units="dimensionless"/>
<variable name="initialHCO3mM" units="dimensionless"/>
</component>
<units name="mM">
<unit prefix="milli" units="mole"/>
<unit exponent="-1" units="litre"/>
</units>
<units name="per_second">
<unit exponent="-1" units="second"/>
</units>
<units name="per_mM_per_second">
<unit exponent="-1" units="mM"/>
<unit exponent="-1" units="second"/>
</units>
<units name="mM_per_second">
<unit units="mM"/>
<unit exponent="-1" units="second"/>
</units>
<connection>
<map_components component_1="Environment" component_2="Flux"/>
<map_variables variable_1="Time" variable_2="Time"/>
</connection>
<import xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="PressureConversion.cellml">
<component component_ref="PPresToConc" name="PPToConc_CO2_initial"/>
<component component_ref="ConcToPPres" name="ConcToPP_CO2_instantaneous"/>
</import>
<connection>
<map_components component_1="PPToConc_CO2_initial" component_2="Flux"/>
<map_variables variable_1="Cx" variable_2="initialCO2mM"/>
<map_variables variable_1="Px" variable_2="initialCO2mmHg"/>
<map_variables variable_1="solubility" variable_2="sCO2"/>
</connection>
<connection>
<map_components component_1="ConcToPP_CO2_instantaneous" component_2="Flux"/>
<map_variables variable_1="Cx" variable_2="CO2"/>
<map_variables variable_1="Px" variable_2="CO2mmHg"/>
<map_variables variable_1="solubility" variable_2="sCO2"/>
</connection>
<units name="mmHg">
<unit multiplier="0.00750062" units="pascal"/>
</units>
<units name="mM_per_mmHg">
<unit units="mM"/>
<unit exponent="-1" units="mmHg"/>
</units>
</model>