Location: Guyton, Heart, Rate, And, Stroke, Volume, 2008 @ a67d842d2bcb / guyton_heart_rate_and_stroke_volume_2008.cellml

Author:
pmr2.import <nobody@models.cellml.org>
Date:
2008-04-03 02:33:16+13:00
Desc:
committing version01 of guyton_heart_rate_and_stroke_volume_2008
Permanent Source URI:
https://models.physiomeproject.org/workspace/guyton_heart_rate_and_stroke_volume_2008/rawfile/a67d842d2bcbf9d841756ee04bf3429cc3fd3705/guyton_heart_rate_and_stroke_volume_2008.cellml

<?xml version='1.0' encoding='utf-8'?>
<model xmlns="http://www.cellml.org/cellml/1.0#" xmlns:cellml="http://www.cellml.org/cellml/1.0#" xmlns:cmeta="http://www.cellml.org/metadata/1.0#" xmlns:xlink="http://www.w3.org/1999/xlink" name="heart_rate_and_stroke_volume_CellML1_0_model" cmeta:id="heart_rate_and_stroke_volume_CellML1_0_model">

<!-- ===================================================		DOCUMENTATION		=================================================================== -->

<documentation xmlns="http://cellml.org/tmp-documentation">
<article>
  <articleinfo>
  <title>Guyton Model: Heart Rate and Stroke Volume</title>
  <author>
    <firstname>Catherine</firstname>
          <surname>Lloyd</surname>
    <affiliation>
      <shortaffil>Bioengineering Institute, University of Auckland</shortaffil>
    </affiliation>
  </author>
</articleinfo>
  <section id="sec_status">
    <title>Model Status</title>
    <para>
        This CellML model has not been validated. The equations in this file may contain errors and the output from the model may not conform to the results from the MODSIM program. 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). Work is underway to fix these omissions and validate the CellML model. We also anticipate that many of these problems will be fixed when the CellML 1.0 models are combined in a CellML 1.1 format.
          </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 heart rate (HR) and stroke volume output (SVO) which are controlled by autonomic stimulation (AUR), by a direct effect of right atrial pressure (PRA)on the sinus rhythm of the heart, and by an effect of any degree of deterioration of the heart (HMD) on heart rate control.
</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="heart_rate_and_stroke_volume_diagram">
<mediaobject>
  <imageobject>
    <objectinfo>
      <title>model diagram</title>
    </objectinfo>
    <imagedata fileref="hr_and_sv3.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>
<ulink url="http://arjournals.annualreviews.org/doi/abs/10.1146/annurev.ph.34.030172.000305">Circulation: Overall Regulation</ulink>,  A.C. Guyton, T.G. Coleman, and H.J. Granger, 1972, <ulink url="http://www.biophysj.org/">
            <emphasis>Annual Review of Physiology</emphasis>
          </ulink>, 34, 13-44.  (A <ulink url="http://arjournals.annualreviews.org/doi/pdf/10.1146/annurev.ph.34.030172.000305?cookieSet=1">PDF</ulink> version of the article are available to journal subscribers on the <emphasis>Annual Review of Physiology</emphasis> website.)  <ulink url="http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?db=pubmed&amp;cmd=Retrieve&amp;dopt=AbstractPlus&amp;list_uids=4334846&amp;query_hl=1&amp;itool=pubmed_docsum">PubMed ID: 4334846</ulink>
</para>

</sect1>
</article>
</documentation> 

<!-- ===================================================================================================================================================== -->


	<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
		<rdf:Description rdf:about="#heart_rate_and_stroke_volume_CellML1_0_model">
			<rdf:value>
			The heart rate (HR) and stroke volume output (SVO) are controlled by 
			autonomic stimulation (AUR), by a direct effect of right atrial pressure (PRA) 
			on the sinus rhythm of the heart, and by an effect of any degree of deterioration 
			of the heart (HMD) on heart rate control.
			</rdf:value>
		</rdf:Description>
	</rdf:RDF>

<!-- ========================================	HEART RATE AND STROKE VOLUME TOP-LEVEL COMPONENT	============================================= -->
	<component name="heart_rate_and_stroke_volume" cmeta:id="heart_rate_and_stroke_volume">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#heart_rate_and_stroke_volume">
				<rdf:value>
				Encapsulation grouping component containing all the components in the Heart Rate and Stroke Volume Model. 
				The inputs and outputs of the Heart Rate and Stroke Volume Model must be passed by this component.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>

<!-- Inputs from components in other models -->
		<variable name="QLO" initial_value="4.9943" units="dimensionless" private_interface="out" public_interface="none"/>
		<variable name="AUR" initial_value="1.30" units="dimensionless" private_interface="out" public_interface="none"/>
		<variable name="PRA" initial_value="0.00852183" units="dimensionless" private_interface="out" public_interface="none"/>
		<variable name="HMD" initial_value="1.0" units="dimensionless" private_interface="out" public_interface="none"/>
	</component>

<!-- ========================================	EFFECT OF AUTONOMIC STIMULATION ON HEART RATE	============================================= -->
	<component name="effect_of_autonomic_stimulation_on_HR" cmeta:id="effect_of_autonomic_stimulation_on_HR">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#effect_of_autonomic_stimulation_on_HR">
				<rdf:value>
				HR1:  
				Calculation of the portion of the heart rate that is controlled by 
				autonomic stimulation.  Autonomic input is the variable (AUR).
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="AUR" units="dimensionless" private_interface="none" public_interface="in"/>

<!-- Outputs to other components -->
		<variable name="AUHR" units="dimensionless" private_interface="none" public_interface="out"/>

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="HR1">
				<eq/>
				<ci>AUHR</ci>
				<apply>
					<times/>
					<cn cellml:units="dimensionless">72</cn>
					<ci>AUR</ci>
				</apply>
			</apply>
		</math>
	</component>

<!-- INPUT CONNECTIONS -->
	<connection>
		<map_components component_1="effect_of_autonomic_stimulation_on_HR" component_2="heart_rate_and_stroke_volume"/>
		<map_variables variable_1="AUR" variable_2="AUR"/>
	</connection>

<!-- ========================================	EFFECT OF PRESSURE (PRA) ON HEART RATE	============================================= -->
<!-- ========================================	CHECK THIS! - NO EQUATION HR1B!!! INPUT PR1LL NOT PRA or PR1!!!	============================================= -->
	<component name="effect_of_PRA_on_HR" cmeta:id="effect_of_PRA_on_HR">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#effect_of_PRA_on_HR">
				<rdf:value>
				HR1A, HR1B, and HR2:  
				Calculation of the portion of the heart rate that is controlled by direct 
				effect of changes in right atrial pressure (PRA) on the sinus nodal rhythm.  
				Block HR1B limits the effect to positive atrial pressure (PRA) values.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
<!--		<variable name=""	units="dimensionless" private_interface="none" public_interface="in"/> -->

<!-- Outputs to other components -->
		<variable name="PRHR" units="dimensionless" private_interface="none" public_interface="out"/>

<!-- Parameters from parameter_file -->
		<variable name="PR1LL" units="dimensionless" private_interface="none" public_interface="in"/>

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="AU1A_and_AU2">
				<eq/>
				<ci>PRHR</ci>
				<apply>
					<times/>
					<apply>
						<power/>
						<ci>PR1LL</ci>
						<cn cellml:units="dimensionless">0.5</cn>
					</apply>
					<cn cellml:units="dimensionless">5</cn>
				</apply>
			</apply>
		</math>
	</component>

<!-- INPUT CONNECTIONS -->
<!--	<connection>
		<map_components component_1="effect_of_PRA_on_HR" component_2=""/>
		<map_variables variable_1="" variable_2=""/>
	</connection> -->

<!-- PARAMETER CONNECTIONS -->
	<connection>
		<map_components component_1="effect_of_PRA_on_HR" component_2="parameter_values"/>
		<map_variables variable_1="PR1LL" variable_2="PR1LL"/>
	</connection>

<!-- ========================================	EFFECT OF HEART DETERIORATION ON HEART RATE	============================================= -->
	<component name="effect_of_heart_deterioration_on_HR" cmeta:id="effect_of_heart_deterioration_on_HR">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#effect_of_heart_deterioration_on_HR">
				<rdf:value>
				HR4, HR5, and HR6:  
				Sensitivity control for the effect of any deterioration of heart function (HMD) 
				on heart rate.  The sensitivity factor is the side input to Block HR5.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="HMD" units="dimensionless" private_interface="none" public_interface="in"/>

<!-- Outputs to other components -->
		<variable name="HDHR" units="dimensionless" private_interface="none" public_interface="out"/>

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="HR4_to_HR6">
				<eq/>
				<ci>HDHR</ci>
				<apply>
					<plus/>
					<apply>
						<times/>
						<apply>
							<minus/>
							<ci>HMD</ci>
							<cn cellml:units="dimensionless">1</cn>
						</apply>
						<cn cellml:units="dimensionless">0.5</cn>
					</apply>
					<cn cellml:units="dimensionless">1</cn>
				</apply>
			</apply>
		</math>
	</component>

<!-- INPUT CONNECTIONS -->
	<connection>
		<map_components component_1="effect_of_heart_deterioration_on_HR" component_2="heart_rate_and_stroke_volume"/>
		<map_variables variable_1="HMD" variable_2="HMD"/>
	</connection>

<!-- ========================================	HEART RATE	============================================= -->
	<component name="heart_rate" cmeta:id="heart_rate">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#heart_rate">
				<rdf:value>
				HR3:  
				Calculation of a temporary value for heart rate based on the control effects 
				of autonomic stimulation and right atrial pressure.

				HR7:  Calculation of heart rate (HR) by multiplying the heart deterioration 
				multiplier effect (output from Block HR6) times the temporary basic heart rate 
				calculated from Block HR3.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="AUHR" units="dimensionless" private_interface="none" public_interface="in"/>
		<variable name="PRHR" units="dimensionless" private_interface="none" public_interface="in"/>
		<variable name="HDHR" units="dimensionless" private_interface="none" public_interface="in"/>

<!-- Outputs to other components -->
		<variable name="HR" units="dimensionless" private_interface="none" public_interface="out"/>

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="HR3_and_HR7">
				<eq/>
				<ci>HR</ci>
				<apply>
					<times/>
					<apply>
						<plus/>
						<ci>AUHR</ci>
						<ci>PRHR</ci>
					</apply>
					<ci>HDHR</ci>
				</apply>
			</apply>
		</math>
	</component>

<!-- INPUT CONNECTIONS -->
	<connection>
		<map_components component_1="heart_rate" component_2="effect_of_autonomic_stimulation_on_HR"/>
		<map_variables variable_1="AUHR" variable_2="AUHR"/>
	</connection>
	<connection>
		<map_components component_1="heart_rate" component_2="effect_of_PRA_on_HR"/>
		<map_variables variable_1="PRHR" variable_2="PRHR"/>
	</connection>
	<connection>
		<map_components component_1="heart_rate" component_2="effect_of_heart_deterioration_on_HR"/>
		<map_variables variable_1="HDHR" variable_2="HDHR"/>
	</connection>

<!-- ========================================	STROKE VOLUME OUTPUT	============================================= -->
	<component name="stroke_volume_output" cmeta:id="stroke_volume_output">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#stroke_volume_output">
				<rdf:value>
				HR8:  
				Calculation of stroke volume output (SVO) by dividing minute left ventricular output (QLO) 
				by heart rate (HR).
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="QLO" units="dimensionless" private_interface="none" public_interface="in"/>
		<variable name="HR" units="dimensionless" private_interface="none" public_interface="in"/>

<!-- Outputs to other components -->
		<variable name="SVO" units="dimensionless" private_interface="none" public_interface="out"/>

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="HR8">
				<eq/>
				<ci>SVO</ci>
				<apply>
					<divide/>
					<ci>QLO</ci>
					<ci>HR</ci>
				</apply>
			</apply>
		</math>
	</component>

<!-- INPUT CONNECTIONS -->
	<connection>
		<map_components component_1="stroke_volume_output" component_2="heart_rate_and_stroke_volume"/>
		<map_variables variable_1="QLO" variable_2="QLO"/>
	</connection>
	<connection>
		<map_components component_1="stroke_volume_output" component_2="heart_rate"/>
		<map_variables variable_1="HR" variable_2="HR"/>
	</connection>


<!-- ==========================================================	PARAMETER VALUES	================================================================ -->
	<component name="parameter_values" cmeta:id="parameter_values">
		<variable name="PR1LL" units="dimensionless" initial_value="0" private_interface="none" public_interface="out"/>	<!-- PR1 lower limit [P] -->
	</component>

<!-- ============================================================		GROUPING		=============================================================== -->
   <group>
		<relationship_ref relationship="containment"/>
		<component_ref component="heart_rate_and_stroke_volume">
			<component_ref component="effect_of_autonomic_stimulation_on_HR"/>
			<component_ref component="effect_of_PRA_on_HR"/>
			<component_ref component="effect_of_heart_deterioration_on_HR"/>
			<component_ref component="heart_rate"/>
			<component_ref component="stroke_volume_output"/>
		</component_ref>
   </group>
      
   <group>
		<relationship_ref relationship="encapsulation"/>
		<component_ref component="heart_rate_and_stroke_volume">
			<component_ref component="parameter_values"/>
			<component_ref component="effect_of_autonomic_stimulation_on_HR"/>
			<component_ref component="effect_of_PRA_on_HR"/>
			<component_ref component="effect_of_heart_deterioration_on_HR"/>
			<component_ref component="heart_rate"/>
			<component_ref component="stroke_volume_output"/>
		</component_ref>
   </group>

   

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
  <rdf:Description rdf:about="#effect_of_PRA_on_HR">
    <rdf:value>
				HR1A, HR1B, and HR2:  
				Calculation of the portion of the heart rate that is controlled by direct 
				effect of changes in right atrial pressure (PRA) on the sinus nodal rhythm.  
				Block HR1B limits the effect to positive atrial pressure (PRA) values.
				</rdf:value>
  </rdf:Description>
  <rdf:Description rdf:about="#heart_rate">
    <rdf:value>
				HR3:  
				Calculation of a temporary value for heart rate based on the control effects 
				of autonomic stimulation and right atrial pressure.

				HR7:  Calculation of heart rate (HR) by multiplying the heart deterioration 
				multiplier effect (output from Block HR6) times the temporary basic heart rate 
				calculated from Block HR3.
				</rdf:value>
  </rdf:Description>
  <rdf:Description rdf:about="#effect_of_autonomic_stimulation_on_HR">
    <rdf:value>
				HR1:  
				Calculation of the portion of the heart rate that is controlled by 
				autonomic stimulation.  Autonomic input is the variable (AUR).
				</rdf:value>
  </rdf:Description>
  <rdf:Description rdf:about="#stroke_volume_output">
    <rdf:value>
				HR8:  
				Calculation of stroke volume output (SVO) by dividing minute left ventricular output (QLO) 
				by heart rate (HR).
				</rdf:value>
  </rdf:Description>
  <rdf:Description rdf:about="#heart_rate_and_stroke_volume">
    <rdf:value>
				Encapsulation grouping component containing all the components in the Heart Rate and Stroke Volume Model. 
				The inputs and outputs of the Heart Rate and Stroke Volume Model must be passed by this component.
				</rdf:value>
  </rdf:Description>
  <rdf:Description rdf:about="#heart_rate_and_stroke_volume_CellML1_0_model">
    <rdf:value>
			The heart rate (HR) and stroke volume output (SVO) are controlled by 
			autonomic stimulation (AUR), by a direct effect of right atrial pressure (PRA) 
			on the sinus rhythm of the heart, and by an effect of any degree of deterioration 
			of the heart (HMD) on heart rate control.
			</rdf:value>
  </rdf:Description>
  <rdf:Description rdf:about="#effect_of_heart_deterioration_on_HR">
    <rdf:value>
				HR4, HR5, and HR6:  
				Sensitivity control for the effect of any deterioration of heart function (HMD) 
				on heart rate.  The sensitivity factor is the side input to Block HR5.
				</rdf:value>
  </rdf:Description>
</rdf:RDF>
</model>