<?xml version="1.0" encoding="utf-8"?>
<model
name="pulmonary_O2_uptake_parent_model"
cmeta:id="pulmonary_O2_uptake_parent_model"
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#"
xmlns:xlink="http://www.w3.org/1999/xlink">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#pulmonary_O2_uptake_parent_model">
<rdf:value>
This is the CellML 1.1 "parent" file to test the Pulmonary Oxygen Uptake Model.
</rdf:value>
</rdf:Description>
</rdf:RDF>
<!-- ======================================== DOCUMENTATION ============================================= -->
<documentation xmlns="http://cellml.org/tmp-documentation">
<article>
<articleinfo>
<title>Guyton Model: pulmonary_O2_uptake</title>
<author>
<firstname>Catherine</firstname>
<surname>Lloyd</surname>
<affiliation>
<shortaffil>Auckland Bioengineering Institute, University of Auckland</shortaffil>
</affiliation>
</author>
</articleinfo>
<section id="cellml_1_1">
<title>CellML 1.1 Version</title>
<para>
This is a CellML 1.1 version of the Pulmonary Oxygen Uptake Module of the Guyton Circulation model. To run, click on "Solve using OpenCell" and all
dependent files and components will be imported. To run offline, please download all files from the <ulink url="/workspace/guyton_pulmonary_oxygen_uptake_2008/">workspace</ulink> into the same directory and open
"pulmonary_O2_parent.cellml" in OpenCell.
</para>
</section>
<section id="sec_status">
<title>Model Status</title>
<para>
This CellML model has been validated. Due to the differences between procedural code (in this case C-code) and declarative
languages (CellML), some aspects of the original model were not able to be encapsulated by the CellML model (such as the
damping of variables). This may effect the transient behaviour of the model, however the steady-state behaviour would remain
the same. The equations in this file and the steady-state output from the model conform to the results from the MODSIM program.
</para>
</section>
<sect1 id="sec_structure">
<title>Model Structure</title>
<para>
Arthur Guyton (1919-2003) was an American physiologist who became famous for his 1950s experiments in which he studied the physiology
of cardiac output and its relationship with the peripheral circulation. The results of these experiments challenged the conventional
wisdom that it was the heart itself that controlled cardiac output. Instead Guyton demonstrated that it was the need of the body
tissues for oxygen which was the real regulator of cardiac output. The "Guyton Curves" describe the relationship between right atrial
pressures and cardiac output, and they form a foundation for understanding the physiology of circulation.
</para>
<para>
The Guyton model of fluid, electrolyte, and circulatory regulation is an extensive mathematical model of human circulatory physiology,
capable of simulating a variety of experimental conditions, and contains a number of linked subsystems relating to circulation and its
neuroendocrine control.
</para>
<para>
This is a CellML translation of the Guyton model of the regulation of the circulatory system. The complete model consists of separate
modules each of which characterise a separate physiological subsystems. The Circulation Dynamics is the primary system, to which other
modules/blocks are connected. The other modules characterise the dynamics of the kidney, electrolytes and cell water, thirst and drinking,
hormone regulation, autonomic regulation, cardiovascular system etc, and these feedback on the central circulation model. The CellML
code in these modules is based on the C code from the programme C-MODSIM created by Dr Jean-Pierre Montani.
</para>
<para>
This particular CellML model describes the dynamics of oxygen uptake by the lungs, and also calculates the dynamics of the process of
hemoglobin-oxygen binding in the blood.
</para>
<informalfigure float="0" id="full_diagram">
<mediaobject>
<imageobject>
<objectinfo>
<title>model diagram</title>
</objectinfo>
<imagedata fileref="full_model.png"/>
</imageobject>
</mediaobject>
<caption>A systems analysis diagram for the full Guyton model describing circulation regulation.</caption>
</informalfigure>
<informalfigure float="0" id="pulmonary_O2_uptake_diagram">
<mediaobject>
<imageobject>
<objectinfo>
<title>model diagram</title>
</objectinfo>
<imagedata fileref="pulmonary_o2.png"/>
</imageobject>
</mediaobject>
<caption>A schematic diagram of the components and processes described in the current CellML model.</caption>
</informalfigure>
<para>
There are several publications referring to the Guyton model. One of these papers is cited below:
</para>
<para>
Circulation: Overall Regulation, A.C. Guyton, T.G. Coleman, and H.J. Granger, 1972,
<emphasis>Annual Review of Physiology</emphasis>
, 34, 13-44. <ulink url="http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?db=pubmed&cmd=Retrieve&dopt=AbstractPlus&list_uids=4334846&query_hl=1&itool=pubmed_docsum">PubMed ID: 4334846</ulink>
</para>
</sect1>
</article>
</documentation>
<!-- ======================================================= CITATION AND KEYWORD METADATA ================================================== -->
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:bqs="http://www.cellml.org/bqs/1.0#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#">
<rdf:Description rdf:about="#pulmonary_O2_uptake_parent_model">
<bqs:reference rdf:parseType="Resource">
<bqs:JournalArticle rdf:parseType="Resource">
<dc:creator>
<rdf:Seq>
<rdf:li rdf:parseType="Resource">
<rdf:type rdf:resource="http://www.cellml.org/bqs/1.0#Person" />
<vCard:N rdf:parseType="Resource">
<vCard:Family>Guyton</vCard:Family>
<vCard:Given></vCard:Given>
<vCard:Other></vCard:Other>
</vCard:N>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<rdf:type rdf:resource="http://www.cellml.org/bqs/1.0#Person" />
<vCard:N rdf:parseType="Resource">
<vCard:Family>Pulmonary Oxygen Uptake</vCard:Family>
<vCard:Given></vCard:Given>
<vCard:Other></vCard:Other>
</vCard:N>
</rdf:li>
</rdf:Seq>
</dc:creator>
<dc:title>Description of Guyton pulmonary oxygen uptake module</dc:title>
<bqs:volume />
<bqs:first_page />
<bqs:last_page />
<bqs:Journal rdf:parseType="Resource">
<dc:title></dc:title>
</bqs:Journal>
<dcterms:issued rdf:parseType="Resource">
<dcterms:W3CDTF>2008-00-00 00:00</dcterms:W3CDTF>
</dcterms:issued>
</bqs:JournalArticle>
</bqs:reference>
<bqs:reference rdf:parseType="Resource">
<dc:subject rdf:parseType="Resource">
<bqs:subject_type>keyword</bqs:subject_type>
<rdf:value>
<rdf:Bag>
<rdf:li>physiology</rdf:li>
<rdf:li>organ systems</rdf:li>
<rdf:li>cardiovascular circulation</rdf:li>
<rdf:li>pulmonary oxygen uptake</rdf:li>
<rdf:li>Guyton</rdf:li>
</rdf:Bag>
</rdf:value>
</dc:subject>
</bqs:reference>
</rdf:Description>
</rdf:RDF>
<!-- ============================================= Import the required units from the Units file ==================================================== -->
<import xlink:href="units.cellml">
<units name="minute" units_ref="minute"/>
<units name="per_minute" units_ref="per_minute"/>
<units name="beats_per_minute" units_ref="beats_per_minute"/>
<units name="beats_per_minute_per_mmHg" units_ref="beats_per_minute_per_mmHg"/>
<units name="minute_per_L" units_ref="minute_per_L"/>
<units name="mmHg" units_ref="mmHg"/>
<units name="per_mmHg" units_ref="per_mmHg"/>
<units name="mmHg_per_mL" units_ref="mmHg_per_mL"/>
<units name="mmHg_L" units_ref="mmHg_L"/>
<units name="per_mmHg2" units_ref="per_mmHg2"/>
<units name="mmHg3" units_ref="mmHg3"/>
<units name="monovalent_mEq" units_ref="monovalent_mEq"/>
<units name="monovalent_mEq_per_minute" units_ref="monovalent_mEq_per_minute"/>
<units name="monovalent_mEq_per_litre" units_ref="monovalent_mEq_per_litre"/>
<units name="mOsm" units_ref="mOsm"/>
<units name="mOsm_per_litre" units_ref="mOsm_per_litre"/>
<units name="mOsm_per_minute" units_ref="mOsm_per_minute"/>
<units name="monovalent_mEq_per_litre_per_minute" units_ref="monovalent_mEq_per_litre_per_minute"/>
<units name="litre2_per_monovalent_mEq_per_minute" units_ref="litre2_per_monovalent_mEq_per_minute"/>
<units name="L_per_minute" units_ref="L_per_minute"/>
<units name="per_mmHg_per_minute" units_ref="per_mmHg_per_minute"/>
<units name="mL" units_ref="mL"/>
<units name="gram_per_L" units_ref="gram_per_L"/>
<units name="L_mmHg_per_gram" units_ref="L_mmHg_per_gram"/>
<units name="L2_mmHg_per_gram2" units_ref="L2_mmHg_per_gram2"/>
<units name="mmHg_minute_per_L" units_ref="mmHg_minute_per_L"/>
<units name="mmHg_L_per_minute" units_ref="mmHg_L_per_minute"/>
<units name="gram_per_minute" units_ref="gram_per_minute"/>
<units name="mL_per_L" units_ref="mL_per_L"/>
<units name="mL_per_L_per_mmHg" units_ref="mL_per_L_per_mmHg"/>
<units name="mL_per_L_per_minute" units_ref="mL_per_L_per_minute"/>
<units name="mL_per_minute_per_mmHg" units_ref="mL_per_minute_per_mmHg"/>
<units name="L_mL_per_minute_per_mmHg" units_ref="L_mL_per_minute_per_mmHg"/>
<units name="L_per_mL" units_ref="L_per_mL"/>
<units name="L_per_mmHg" units_ref="L_per_mmHg"/>
<units name="mL_per_minute" units_ref="mL_per_minute"/>
<units name="L_per_minute_per_mmHg" units_ref="L_per_minute_per_mmHg"/>
<units name="L_per_minute_per_mmHg2" units_ref="L_per_minute_per_mmHg2"/>
</import>
<!-- ===================================== Import all Parameters and State Variables from the Parameter file ============================================== -->
<import xlink:href="parameters.cellml">
<component component_ref="parameter_values" name="parameter_values"/>
<component component_ref="state_variables" name="state_variables"/>
</import>
<!-- ============================================ Import Environment Component from the Environment file ============================================== -->
<import xlink:href="environment.cellml">
<component component_ref="environment" name="environment"/>
</import>
<!-- ============================================ Import all the separate model files and their components ============================================== -->
<import xlink:href="pulmonary_O2.cellml">
<component component_ref="pulmonary_O2_uptake" name="pulmonary_O2_uptake"/>
</import>
<!-- ======================================== INPUT VALUES ============================================= -->
<component name="input_values"
cmeta:id="input_values">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#input_values">
<rdf:value>
Component to set all input values to 1.0 or a prescribed value.
</rdf:value>
</rdf:Description>
</rdf:RDF>
<variable name="VPF" initial_value="0.0123238" units="litre" private_interface="none" public_interface="out"/>
<variable name="DOB" initial_value="163.508" units="mL_per_minute" private_interface="none" public_interface="out"/>
<variable name="RMO" initial_value="56.8057" units="mL_per_minute" private_interface="none" public_interface="out"/>
<variable name="QRO" initial_value="4.97838" units="L_per_minute" private_interface="none" public_interface="out"/>
<variable name="HM" initial_value="40.0381" units="dimensionless" private_interface="none" public_interface="out"/>
</component>
<!-- PULMONARY OXYGEN UPTAKE INPUT CONNECTIONS -->
<connection>
<map_components component_1="pulmonary_O2_uptake" component_2="input_values"/>
<map_variables variable_1="VPF" variable_2="VPF"/>
<map_variables variable_1="DOB" variable_2="DOB"/>
<map_variables variable_1="RMO" variable_2="RMO"/>
<map_variables variable_1="HM" variable_2="HM"/>
<map_variables variable_1="QRO" variable_2="QRO"/>
</connection>
<connection>
<map_components component_1="pulmonary_O2_uptake" component_2="environment"/>
<map_variables variable_1="time" variable_2="time"/>
</connection>
</model>