- Author:
- Soroush Safaei <ssaf006@aucklanduni.ac.nz>
- Date:
- 2018-06-04 00:21:40+12:00
- Desc:
- adding minute units
- Permanent Source URI:
- https://models.cellml.org/workspace/483/rawfile/29dc5b30e1d8caa484fb61f1ca92502dcac8a02d/SI/1-WholeBodyLevel.cellml
<?xml version='1.0'?>
<model name="main1" 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">
<!-- in:
out: INS,G_t,vglucoseuptake-->
<import xlink:href="Parameters.cellml">
<component component_ref="param1" name="param"/>
</import>
<component name="environment">
<variable name="time" public_interface="out" units="second"/>
</component>
<component name="state">
<variable name="t" public_interface="in" units="second"/>
<!-- Parameters-->
<!-- V_G: distribution volume of Glucose
k_1: rate parameter
k_2: rate parameter
k_p1: extrapolated EGP at zero Glucose and Insulin
k_p2: liver Glucose effectiveness
k_p3: amplitude of insulin action on liver
k_p4: amplitude of portal Insulin action on liver
k_i: delay between Insulin signal and Insulin action
k_abs: rate of intestinal absorption
k_gri: rate of grinding
f: fraction of intestinal absorption appears in plasma
BW: body weight
D: ingested Glucose mass
p_2U: rate constant of Insulin action on the peripheral Glucose utilisation
V_I: distribution volume of Insulin
gamma: transfer rate constant between portalvein & liver
beta: pancreatic responsivity to Glucose
alpha: delay between Glucose signal & Insulin secretion
K: pancreatic responsivity to Glucose rate of change
U_ii: Glucose insulin independent utilisation-->
<variable name="I_b" public_interface="in" units="M"/>
<variable name="f" public_interface="in" units="dimensionless"/>
<variable name="b" public_interface="in" units="dimensionless"/>
<variable name="d" public_interface="in" units="dimensionless"/>
<variable name="K_m0" public_interface="in" units="dimensionless"/>
<variable name="part" public_interface="in" units="dimensionless"/>
<variable name="m_6" public_interface="in" units="dimensionless"/>
<variable name="BW" public_interface="in" units="kilogram"/>
<variable name="D" public_interface="in" units="kilogram"/>
<variable name="k_1" public_interface="in" units="per_s"/>
<variable name="k_2" public_interface="in" units="per_s"/>
<variable name="U_ii" public_interface="in" units="per_s"/>
<variable name="k_p1" public_interface="in" units="per_s"/>
<variable name="k_p2" public_interface="in" units="per_s"/>
<variable name="k_i" public_interface="in" units="per_s"/>
<variable name="k_max" public_interface="in" units="per_s"/>
<variable name="k_min" public_interface="in" units="per_s"/>
<variable name="k_abs" public_interface="in" units="per_s"/>
<variable name="k_gri" public_interface="in" units="per_s"/>
<variable name="V_m0" public_interface="in" units="per_s"/>
<variable name="m_1" public_interface="in" units="per_s"/>
<variable name="m_2" public_interface="in" units="per_s"/>
<variable name="m_4" public_interface="in" units="per_s"/>
<variable name="p_2U" public_interface="in" units="per_s"/>
<variable name="alpha" public_interface="in" units="per_s"/>
<variable name="gamma" public_interface="in" units="per_s"/>
<variable name="k_p3" public_interface="in" units="per_M_s"/>
<variable name="V_mX" public_interface="in" units="per_M_s"/>
<variable name="V_I" public_interface="in" units="l_per_kg"/>
<variable name="V_G" public_interface="in" units="l_per_kg"/>
<variable name="G_b" public_interface="in" units="kg_per_l"/>
<variable name="k_p4" public_interface="in" units="kg_per_mol_s"/>
<variable name="m_5" public_interface="in" units="kg_s_per_mol"/>
<variable name="S_b" public_interface="in" units="mol_per_kg_s"/>
<variable name="K" public_interface="in" units="mol_l_per_kg2"/>
<variable name="beta" public_interface="in" units="mol_l_per_kg2_s"/>
<!-- State variables-->
<!-- G_p: Glucose mass in plasma & rapidly equilibrating tissues
G_t: Glucose mass in slowly equilibrating tissues
G: Glucose concentration in plasma
EGP: endogenous Glucose production
Ra: Glucose rate of appearance in plasma
E: renal excretion
U_id: Glucose insulin dependent utilisation
U_ii: Glucose insulin independent utilisation
EGP: endogenous Glucose production
I_1: delayed Insulin signal
I_d: delayed Insulin signal
I_po: Insulin amount in portal vein
Ra: Glucose rate of appearance in plasma
Q_sto1: Glucose mass in first stomach compartment
Q_sto2: Glucose mass in second stomach compartment
Q_gut: Glucose mass in intestine
Q_sto: Glucose mass in stomach
k_empt: rate constant of gastric emptying
U_id: Insulin dependent Glucose uptake
U_idm: Insulin dependent Glucose uptake by the muscle tissue
INS: Insulin in interstitial fluid
vglucoseuptake: Glucose uptake by the adipose tissue
I: Insulin concentration in plasma
I_p: Insulin mass in plasma
I_l: Insulin mass in liver
S: Insulin secretion
HE: Insulin hepatic extraction
Y: aux state for Insulin secretion
S: Insulin secretion to beta cells
S_po: Insulin secretion to portal vein-->
<variable initial_value="0" name="INS" public_interface="out" units="M"/>
<variable name="I" public_interface="out" units="M"/>
<variable initial_value="25e-12" name="I_1" public_interface="out" units="M"/>
<variable initial_value="25e-12" name="I_d" public_interface="out" units="M"/>
<variable name="HE" public_interface="out" units="dimensionless"/>
<variable initial_value="178e-6" name="G_p" public_interface="out" units="dimensionless"/>
<variable initial_value="135e-6" name="G_t" public_interface="out" units="dimensionless"/>
<variable initial_value="0.078" name="Q_sto1" public_interface="out" units="kilogram"/>
<variable initial_value="0" name="Q_sto2" public_interface="out" units="kilogram"/>
<variable initial_value="0" name="Q_gut" public_interface="out" units="kilogram"/>
<variable name="Q_sto" public_interface="out" units="kilogram"/>
<variable name="m_3" public_interface="out" units="per_s"/>
<variable name="k_empt" public_interface="out" units="per_s"/>
<variable name="Ra" public_interface="out" units="per_s"/>
<variable name="EGP" public_interface="out" units="per_s"/>
<variable name="V_mmax" public_interface="out" units="per_s"/>
<variable name="U_idm" public_interface="out" units="per_s"/>
<variable name="U_id" public_interface="out" units="per_s"/>
<variable initial_value="0" name="E" public_interface="out" units="per_s"/>
<variable name="vglucoseuptake" public_interface="in" units="per_s"/>
<variable name="a" public_interface="out" units="per_kg"/>
<variable name="c" public_interface="out" units="per_kg"/>
<variable name="G" public_interface="out" units="kg_per_l"/>
<variable initial_value="4.5e-12" name="I_l" public_interface="out" units="mol_per_kg"/>
<variable initial_value="1.25e-12" name="I_p" public_interface="out" units="mol_per_kg"/>
<variable initial_value="3.6e-12" name="I_po" public_interface="out" units="mol_per_kg"/>
<variable initial_value="0" name="Y" public_interface="out" units="mol_per_kg_s"/>
<variable name="S" public_interface="out" units="mol_per_kg_s"/>
<variable name="S_po" public_interface="out" units="mol_per_kg_s"/>
<!-- Conservation laws-->
<!-- Glucose Kinetics-->
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>G_p</ci>
</apply>
<apply>
<plus/>
<apply>
<minus/>
<apply>
<minus/>
<apply>
<minus/>
<apply>
<plus/>
<ci>EGP</ci>
<ci>Ra</ci>
</apply>
<ci>U_ii</ci>
</apply>
<ci>E</ci>
</apply>
<apply>
<times/>
<ci>k_1</ci>
<ci>G_p</ci>
</apply>
</apply>
<apply>
<times/>
<ci>k_2</ci>
<ci>G_t</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>G_t</ci>
</apply>
<apply>
<minus/>
<apply>
<plus/>
<apply>
<minus/>
<ci>U_id</ci>
</apply>
<apply>
<times/>
<ci>k_1</ci>
<ci>G_p</ci>
</apply>
</apply>
<apply>
<times/>
<ci>k_2</ci>
<ci>G_t</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>G</ci>
<apply>
<divide/>
<ci>G_p</ci>
<ci>V_G</ci>
</apply>
</apply>
<!-- Insulin Kinetics-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>I_p</ci>
</apply>
<apply>
<plus/>
<apply>
<minus/>
<apply>
<times/>
<apply>
<minus/>
<ci>m_2</ci>
</apply>
<ci>I_p</ci>
</apply>
<apply>
<times/>
<ci>m_4</ci>
<ci>I_p</ci>
</apply>
</apply>
<apply>
<times/>
<ci>m_1</ci>
<ci>I_l</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>I_l</ci>
</apply>
<apply>
<plus/>
<apply>
<minus/>
<apply>
<times/>
<apply>
<minus/>
<ci>m_1</ci>
</apply>
<ci>I_l</ci>
</apply>
<apply>
<times/>
<ci>m_3</ci>
<ci>I_l</ci>
</apply>
</apply>
<apply>
<times/>
<ci>m_2</ci>
<ci>I_p</ci>
</apply>
<ci>S</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>I</ci>
<apply>
<divide/>
<ci>I_p</ci>
<ci>V_I</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>HE</ci>
<apply>
<plus/>
<apply>
<times/>
<apply>
<minus/>
<ci>m_5</ci>
</apply>
<ci>S</ci>
</apply>
<ci>m_6</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>m_3</ci>
<apply>
<divide/>
<apply>
<times/>
<ci>HE</ci>
<ci>m_1</ci>
</apply>
<apply>
<minus/>
<cn cellml:units="dimensionless">1</cn>
<ci>HE</ci>
</apply>
</apply>
</apply>
<!-- Glucose Rate of Appearance-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>Q_sto1</ci>
</apply>
<apply>
<times/>
<apply>
<minus/>
<ci>k_gri</ci>
</apply>
<ci>Q_sto1</ci>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>Q_sto2</ci>
</apply>
<apply>
<plus/>
<apply>
<times/>
<apply>
<minus/>
<ci>k_empt</ci>
</apply>
<ci>Q_sto2</ci>
</apply>
<apply>
<times/>
<ci>k_gri</ci>
<ci>Q_sto1</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>Q_gut</ci>
</apply>
<apply>
<plus/>
<apply>
<times/>
<apply>
<minus/>
<ci>k_abs</ci>
</apply>
<ci>Q_gut</ci>
</apply>
<apply>
<times/>
<ci>k_empt</ci>
<ci>Q_sto2</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>Q_sto</ci>
<apply>
<plus/>
<ci>Q_sto1</ci>
<ci>Q_sto2</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>k_empt</ci>
<apply>
<plus/>
<ci>k_min</ci>
<apply>
<times/>
<apply>
<divide/>
<apply>
<minus/>
<ci>k_max</ci>
<ci>k_min</ci>
</apply>
<cn cellml:units="dimensionless">2</cn>
</apply>
<apply>
<plus/>
<apply>
<minus/>
<apply>
<tanh/>
<apply>
<times/>
<ci>a</ci>
<apply>
<minus/>
<ci>Q_sto</ci>
<apply>
<times/>
<ci>b</ci>
<ci>D</ci>
</apply>
</apply>
</apply>
</apply>
<apply>
<tanh/>
<apply>
<times/>
<ci>c</ci>
<apply>
<minus/>
<ci>Q_sto</ci>
<apply>
<times/>
<ci>d</ci>
<ci>D</ci>
</apply>
</apply>
</apply>
</apply>
</apply>
<cn cellml:units="dimensionless">2</cn>
</apply>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>a</ci>
<apply>
<divide/>
<cn cellml:units="dimensionless">2.5</cn>
<apply>
<times/>
<apply>
<minus/>
<cn cellml:units="dimensionless">1</cn>
<ci>b</ci>
</apply>
<ci>D</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>c</ci>
<apply>
<divide/>
<cn cellml:units="dimensionless">2.5</cn>
<apply>
<times/>
<ci>d</ci>
<ci>D</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>Ra</ci>
<apply>
<divide/>
<apply>
<times/>
<ci>f</ci>
<ci>k_abs</ci>
<ci>Q_gut</ci>
</apply>
<ci>BW</ci>
</apply>
</apply>
<!-- Glucose Production-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>I_1</ci>
</apply>
<apply>
<times/>
<apply>
<minus/>
<ci>k_i</ci>
</apply>
<apply>
<minus/>
<ci>I_1</ci>
<ci>I</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>I_d</ci>
</apply>
<apply>
<times/>
<apply>
<minus/>
<ci>k_i</ci>
</apply>
<apply>
<minus/>
<ci>I_d</ci>
<ci>I_1</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>EGP</ci>
<apply>
<minus/>
<apply>
<minus/>
<apply>
<minus/>
<ci>k_p1</ci>
<apply>
<times/>
<ci>k_p2</ci>
<ci>G_p</ci>
</apply>
</apply>
<apply>
<times/>
<ci>k_p3</ci>
<ci>I_d</ci>
</apply>
</apply>
<apply>
<times/>
<ci>k_p4</ci>
<ci>I_po</ci>
</apply>
</apply>
</apply>
<!-- Glucose Uptake-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>INS</ci>
</apply>
<apply>
<plus/>
<apply>
<times/>
<apply>
<minus/>
<ci>p_2U</ci>
</apply>
<ci>INS</ci>
</apply>
<apply>
<times/>
<ci>p_2U</ci>
<apply>
<minus/>
<ci>I</ci>
<ci>I_b</ci>
</apply>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>V_mmax</ci>
<apply>
<times/>
<apply>
<minus/>
<cn cellml:units="dimensionless">1</cn>
<ci>part</ci>
</apply>
<apply>
<plus/>
<ci>V_m0</ci>
<apply>
<times/>
<ci>V_mX</ci>
<ci>INS</ci>
</apply>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>U_idm</ci>
<apply>
<divide/>
<apply>
<times/>
<ci>V_mmax</ci>
<ci>G_t</ci>
</apply>
<apply>
<plus/>
<ci>K_m0</ci>
<ci>G_t</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>U_id</ci>
<apply>
<plus/>
<ci>U_idm</ci>
<ci>vglucoseuptake</ci>
</apply>
</apply>
<!-- Insulin Secretion-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>I_po</ci>
</apply>
<apply>
<plus/>
<apply>
<times/>
<apply>
<minus/>
<ci>gamma</ci>
</apply>
<ci>I_po</ci>
</apply>
<ci>S_po</ci>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>Y</ci>
</apply>
<apply>
<times/>
<apply>
<minus/>
<ci>alpha</ci>
</apply>
<apply>
<minus/>
<ci>Y</ci>
<apply>
<times/>
<ci>beta</ci>
<apply>
<minus/>
<ci>G</ci>
<ci>G_b</ci>
</apply>
</apply>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>S</ci>
<apply>
<times/>
<ci>gamma</ci>
<ci>I_po</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>S_po</ci>
<apply>
<plus/>
<ci>Y</ci>
<apply>
<divide/>
<apply>
<times/>
<ci>K</ci>
<apply>
<plus/>
<apply>
<minus/>
<apply>
<minus/>
<apply>
<minus/>
<apply>
<plus/>
<ci>EGP</ci>
<ci>Ra</ci>
</apply>
<ci>E</ci>
</apply>
<ci>U_ii</ci>
</apply>
<apply>
<times/>
<ci>k_1</ci>
<ci>G_p</ci>
</apply>
</apply>
<apply>
<times/>
<ci>k_2</ci>
<ci>G_t</ci>
</apply>
</apply>
</apply>
<ci>V_G</ci>
</apply>
<ci>S_b</ci>
</apply>
</apply>
</math>
</component>
<connection>
<map_components component_1="param" component_2="state"/>
<!-- Glucose Kinetics-->
<map_variables variable_1="V_G" variable_2="V_G"/>
<map_variables variable_1="k_1" variable_2="k_1"/>
<map_variables variable_1="k_2" variable_2="k_2"/>
<map_variables variable_1="U_ii" variable_2="U_ii"/>
<!-- Insulin Kinetics-->
<map_variables variable_1="V_I" variable_2="V_I"/>
<map_variables variable_1="m_1" variable_2="m_1"/>
<map_variables variable_1="m_2" variable_2="m_2"/>
<map_variables variable_1="m_4" variable_2="m_4"/>
<map_variables variable_1="m_5" variable_2="m_5"/>
<map_variables variable_1="m_6" variable_2="m_6"/>
<!-- Ra-->
<map_variables variable_1="k_max" variable_2="k_max"/>
<map_variables variable_1="k_min" variable_2="k_min"/>
<map_variables variable_1="k_abs" variable_2="k_abs"/>
<map_variables variable_1="k_gri" variable_2="k_gri"/>
<map_variables variable_1="f" variable_2="f"/>
<map_variables variable_1="b" variable_2="b"/>
<map_variables variable_1="d" variable_2="d"/>
<map_variables variable_1="BW" variable_2="BW"/>
<map_variables variable_1="D" variable_2="D"/>
<!-- EGP-->
<map_variables variable_1="k_p1" variable_2="k_p1"/>
<map_variables variable_1="k_p2" variable_2="k_p2"/>
<map_variables variable_1="k_p3" variable_2="k_p3"/>
<map_variables variable_1="k_p4" variable_2="k_p4"/>
<map_variables variable_1="k_i" variable_2="k_i"/>
<!-- Glucose Uptake-->
<map_variables variable_1="V_m0" variable_2="V_m0"/>
<map_variables variable_1="V_mX" variable_2="V_mX"/>
<map_variables variable_1="K_m0" variable_2="K_m0"/>
<map_variables variable_1="p_2U" variable_2="p_2U"/>
<map_variables variable_1="part" variable_2="part"/>
<map_variables variable_1="I_b" variable_2="I_b"/>
<!-- Insulin Secretion-->
<map_variables variable_1="K" variable_2="K"/>
<map_variables variable_1="alpha" variable_2="alpha"/>
<map_variables variable_1="beta" variable_2="beta"/>
<map_variables variable_1="gamma" variable_2="gamma"/>
<map_variables variable_1="S_b" variable_2="S_b"/>
<map_variables variable_1="G_b" variable_2="G_b"/>
</connection>
<connection>
<map_components component_1="environment" component_2="state"/>
<map_variables variable_1="time" variable_2="t"/>
</connection>
</model>