<?xml version='1.0' encoding='UTF-8'?>
<model name="BG51" xmlns="http://www.cellml.org/cellml/1.1#" xmlns:cellml="http://www.cellml.org/cellml/1.1#">
    <!-- Intracellular pH regulation-->
    <units name="dim">
        <unit units="dimensionless"/>
    </units>
    <units name="per_s">
        <unit exponent="-1" units="second"/>
    </units>
    <units name="mol_per_s">
        <unit units="mole"/>
        <unit exponent="-1" units="second"/>
    </units>
    <units name="per_mol">
        <unit exponent="-1" units="mole"/>
    </units>
    <units name="per_mol2">
        <unit exponent="-2" units="mole"/>
    </units>
    <units name="C_per_mol">
        <unit units="coulomb"/>
        <unit exponent="-1" units="mole"/>
    </units>
    <units name="J_per_mol">
        <unit units="joule"/>
        <unit exponent="-1" units="mole"/>
    </units>
    <units name="J_per_C">
        <unit units="joule"/>
        <unit exponent="-1" units="coulomb"/>
    </units>
    <component name="main">
        <variable name="t" units="second"/>
        <variable initial_value="9.64853321e4" name="F" units="C_per_mol"/>
        <variable initial_value="2462.1911" name="RT" units="J_per_mol"/>
        <variable initial_value="-0.057" name="u_e_m" units="J_per_C"/>
        <variable name="epsilon" units="dim"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>epsilon</ci>
                <apply>
                    <exp/>
                    <apply>
                        <divide/>
                        <apply>
                            <times/>
                            <ci>F</ci>
                            <ci>u_e_m</ci>
                        </apply>
                        <ci>RT</ci>
                    </apply>
                </apply>
            </apply>
        </math>
        <!-- state variables-->
        <variable initial_value="0" name="q_CO2_i" units="mole"/>
        <variable name="q_CO2_o" units="mole"/>
        <variable initial_value="0" name="q_HCO3_i" units="mole"/>
        <variable initial_value="0" name="q_HCO3_o" units="mole"/>
        <variable initial_value="3.981071705534970e-05" name="q_H_i" units="mole"/>
        <variable initial_value="1.995262314968879e-05" name="q_H_o" units="mole"/>
        <variable initial_value="1e-8" name="K_CO2_o" units="per_mol"/>
        <variable name="K_CO2_i" units="per_mol"/>
        <variable name="K_HCO3_o" units="per_mol"/>
        <variable name="K_HCO3_i" units="per_mol"/>
        <variable initial_value="1" name="K_H_o" units="per_mol"/>
        <variable initial_value="1" name="K_H_i" units="per_mol"/>
        <variable name="Q_CO2_o" units="dim"/>
        <variable name="Q_CO2_i" units="dim"/>
        <variable name="Q_HCO3_o" units="dim"/>
        <variable name="Q_HCO3_i" units="dim"/>
        <variable name="Q_H_o" units="dim"/>
        <variable name="Q_H_i" units="dim"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>K_CO2_i</ci>
                <ci>K_CO2_o</ci>
            </apply>
            <apply>
                <eq/>
                <ci>K_HCO3_o</ci>
                <apply>
                    <times/>
                    <ci>K_CO2_o</ci>
                    <cn cellml:units="dim" type="e-notation">1<sep/>3</cn>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>K_HCO3_i</ci>
                <ci>K_HCO3_o</ci>
            </apply>
            <apply>
                <eq/>
                <ci>kappa_HCO3_m</ci>
                <apply>
                    <divide/>
                    <cn cellml:units="per_s" type="e-notation">10.01<sep/>-5</cn>
                    <ci>K_HCO3_o</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>Q_CO2_o</ci>
                <apply>
                    <times/>
                    <ci>K_CO2_o</ci>
                    <ci>q_CO2_o</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>Q_CO2_i</ci>
                <apply>
                    <times/>
                    <ci>K_CO2_i</ci>
                    <ci>q_CO2_i</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>Q_HCO3_o</ci>
                <apply>
                    <times/>
                    <ci>K_HCO3_o</ci>
                    <ci>q_HCO3_o</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>Q_HCO3_i</ci>
                <apply>
                    <times/>
                    <ci>K_HCO3_i</ci>
                    <ci>q_HCO3_i</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>Q_H_o</ci>
                <apply>
                    <times/>
                    <ci>K_H_o</ci>
                    <ci>q_H_o</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>Q_H_i</ci>
                <apply>
                    <times/>
                    <ci>K_H_i</ci>
                    <ci>q_H_i</ci>
                </apply>
            </apply>
            <!-- step change in external CO2-->
            <apply>
                <eq/>
                <ci>q_CO2_o</ci>
                <piecewise>
                    <piece>
                        <cn cellml:units="mole">0</cn>
                        <apply>
                            <lt/>
                            <ci>t</ci>
                            <cn cellml:units="second">100</cn>
                        </apply>
                    </piece>
                    <piece>
                        <cn cellml:units="mole">1.1877</cn>
                        <apply>
                            <lt/>
                            <ci>t</ci>
                            <cn cellml:units="second">2800</cn>
                        </apply>
                    </piece>
                    <otherwise>
                        <cn cellml:units="mole">0</cn>
                    </otherwise>
                </piecewise>
            </apply>
        </math>
        <variable name="v_CO2_m" units="mol_per_s"/>
        <variable initial_value="3.734e+07" name="v_CO2_max" units="mol_per_s"/>
        <variable initial_value="6.366e-01" name="gamma_CO2" units="dim"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>v_CO2_m</ci>
                <apply>
                    <divide/>
                    <apply>
                        <times/>
                        <ci>v_CO2_max</ci>
                        <apply>
                            <plus/>
                            <cn cellml:units="dim">1</cn>
                            <ci>gamma_CO2</ci>
                        </apply>
                        <apply>
                            <minus/>
                            <ci>Q_CO2_o</ci>
                            <ci>Q_CO2_i</ci>
                        </apply>
                    </apply>
                    <apply>
                        <plus/>
                        <apply>
                            <times/>
                            <cn cellml:units="dim">2</cn>
                            <ci>gamma_CO2</ci>
                        </apply>
                        <ci>Q_CO2_o</ci>
                        <ci>Q_CO2_i</ci>
                        <apply>
                            <times/>
                            <cn cellml:units="dim">2</cn>
                            <ci>Q_CO2_o</ci>
                            <ci>Q_CO2_i</ci>
                        </apply>
                    </apply>
                </apply>
            </apply>
        </math>
        <variable name="v_HCO3_m" units="mol_per_s"/>
        <variable name="kappa_HCO3_m" units="mol_per_s"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>v_HCO3_m</ci>
                <apply>
                    <times/>
                    <ci>kappa_HCO3_m</ci>
                    <apply>
                        <minus/>
                        <apply>
                            <times/>
                            <ci>Q_HCO3_o</ci>
                            <ci>epsilon</ci>
                        </apply>
                        <ci>Q_HCO3_i</ci>
                    </apply>
                </apply>
            </apply>
        </math>
        <variable name="v_H_m" units="mol_per_s"/>
        <variable initial_value="1e2" name="kappa_H_m" units="mol_per_s"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>v_H_m</ci>
                <apply>
                    <times/>
                    <ci>kappa_H_m</ci>
                    <apply>
                        <minus/>
                        <ci>Q_H_o</ci>
                        <apply>
                            <times/>
                            <ci>Q_H_i</ci>
                            <ci>epsilon</ci>
                        </apply>
                    </apply>
                </apply>
            </apply>
        </math>
        <variable name="v_H2CO3_o" units="mol_per_s"/>
        <variable name="v_H2CO3_i" units="mol_per_s"/>
        <variable initial_value="1e8" name="kappa_H2CO3" units="mol_per_s"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>v_H2CO3_o</ci>
                <apply>
                    <times/>
                    <ci>kappa_H2CO3</ci>
                    <apply>
                        <minus/>
                        <ci>Q_CO2_o</ci>
                        <apply>
                            <times/>
                            <ci>Q_HCO3_o</ci>
                            <ci>Q_H_o</ci>
                        </apply>
                    </apply>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>v_H2CO3_i</ci>
                <apply>
                    <times/>
                    <ci>kappa_H2CO3</ci>
                    <apply>
                        <minus/>
                        <ci>Q_CO2_i</ci>
                        <apply>
                            <times/>
                            <ci>Q_HCO3_i</ci>
                            <ci>Q_H_i</ci>
                        </apply>
                    </apply>
                </apply>
            </apply>
            <!-- conservation equations-->
            <apply>
                <eq/>
                <apply>
                    <diff/>
                    <bvar>
                        <ci>t</ci>
                    </bvar>
                    <ci>q_CO2_i</ci>
                </apply>
                <apply>
                    <minus/>
                    <ci>v_CO2_m</ci>
                    <ci>v_H2CO3_i</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <apply>
                    <diff/>
                    <bvar>
                        <ci>t</ci>
                    </bvar>
                    <ci>q_HCO3_o</ci>
                </apply>
                <apply>
                    <plus/>
                    <apply>
                        <minus/>
                        <ci>v_HCO3_m</ci>
                    </apply>
                    <ci>v_H2CO3_o</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <apply>
                    <diff/>
                    <bvar>
                        <ci>t</ci>
                    </bvar>
                    <ci>q_HCO3_i</ci>
                </apply>
                <apply>
                    <plus/>
                    <ci>v_HCO3_m</ci>
                    <ci>v_H2CO3_i</ci>
                </apply>
            </apply>
            <!-- ode(q_H_o, t) = -v_H_m+v_H2CO3_o;-->
            <apply>
                <eq/>
                <apply>
                    <diff/>
                    <bvar>
                        <ci>t</ci>
                    </bvar>
                    <ci>q_H_i</ci>
                </apply>
                <apply>
                    <plus/>
                    <ci>v_H_m</ci>
                    <ci>v_H2CO3_i</ci>
                </apply>
            </apply>
        </math>
        <variable name="pH_i" units="dim"/>
        <variable name="pH_o" units="dim"/>
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>pH_i</ci>
                <apply>
                    <minus/>
                    <apply>
                        <log/>
                        <apply>
                            <times/>
                            <cn cellml:units="per_mol" type="e-notation">1<sep/>-3</cn>
                            <ci>q_H_i</ci>
                        </apply>
                    </apply>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>pH_o</ci>
                <apply>
                    <minus/>
                    <apply>
                        <log/>
                        <apply>
                            <times/>
                            <cn cellml:units="per_mol" type="e-notation">1<sep/>-3</cn>
                            <ci>q_H_o</ci>
                        </apply>
                    </apply>
                </apply>
            </apply>
        </math>
    </component>
</model>
