Location: Guyton, Non, Muscle, Blood, Flow, Control, 2008 @ 4f21269fb5b8 / NM_blood_flow.cellml

Author:
Tommy Yu <tommy.yu@auckland.ac.nz>
Date:
2010-08-25 18:19:02+12:00
Desc:
xml:base fix
Permanent Source URI:
https://models.cellml.org/workspace/guyton_non_muscle_blood_flow_control_2008/rawfile/4f21269fb5b8c77be785697481784b1fbdddf654/NM_blood_flow.cellml

<?xml version="1.0" encoding="utf-8"?>
<model 
	name="non_muscle_autoregulatory_local_blood_flow_control_model"
	cmeta:id="non_muscle_autoregulatory_local_blood_flow_control_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="#non_muscle_autoregulatory_local_blood_flow_control_model">
			<rdf:value>
				The circulatory system is divided into three separate parts for blood flow control:  
				(1) the kidneys which are presented in an entirely separate section of this model; 
				(2) non-muscle local blood flow control; and (3) muscle local blood flow control.

				Non-muscle Autoregulatory Local Blood Flow Control
				This portion of the circulation has three separate parallel autoregulatory processes, 
				one of which occurs in a matter of minutes, another over a period of tens of minutes, 
				and a third over a period of weeks.  All of these are considered to respond to changes 
				in tissue oxygen level.  The first two are rapid metabolic feedback effects, one almost 
				instantaneous and the other occurring over a period of tens of minutes to an hour or so.  
				The third is considered to be structural changes that result over a period of weeks and 
				may be a consequence of the vasodilation or vasoconstriction that occurs during the two 
				short-term metabolic stages.
			</rdf:value>
		</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>


<!-- ========================================	NON-MUSCLE AUTOREGULATORY LOCAL BLOOD FLOW CONTROL TOP-LEVEL COMPONENT	============================================= -->
	<component 	name="non_muscle_autoregulatory_local_blood_flow_control" 
				cmeta:id="non_muscle_autoregulatory_local_blood_flow_control">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#non_muscle_autoregulatory_local_blood_flow_control">
				<rdf:value>
				Encapsulation grouping component containing all the components in the Non-Muscle Autoregulatory Local Blood 
				Flow Control Model. The inputs and outputs of the Non-Muscle Autoregulatory Local Blood Flow Control Model 
				must be passed by this component.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>

		<variable name="time"	units="minute"	private_interface="out" public_interface="in"/>

<!-- Inputs from components in other models -->
		<variable name="POT"	units="mmHg" private_interface="out" public_interface="in"/>

<!-- Outputs to components in other models -->
		<variable name="ARM" 	units="dimensionless" private_interface="in" public_interface="out"/>

	</component>

<!-- OUTPUT CONNECTIONS -->
	<connection>
		<map_components component_1="non_muscle_autoregulatory_local_blood_flow_control" component_2="global_NM_blood_flow_autoregulation_output"/>
		<map_variables variable_1="ARM" variable_2="ARM"/>
	</connection>

<!-- ========================================	AUTOREGULATORY DRIVING FORCE	============================================= -->
	<component 	name="NM_autoregulatory_driving_force" 
				cmeta:id="NM_autoregulatory_driving_force">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_autoregulatory_driving_force">
				<rdf:value>
				ARN1:  
				The driving force that causes an autoregulatory response in non-muscle 
				tissues (POD) is equal to the pressure of the oxygen in tissues (POT) minus 
				the set-point for the autoregulatory response (POR).
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN1">
				<rdf:value>
				ARN1:  
				The driving force that causes an autoregulatory response in non-muscle 
				tissues (POD) is equal to the pressure of the oxygen in tissues (POT) minus 
				the set-point for the autoregulatory response (POR).
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="POT"	units="mmHg" private_interface="none" public_interface="in"/>

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

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

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="ARN1">
				<eq/>
				<ci>POD</ci>
				<apply>
					<minus/>
					<ci>POT</ci>
					<ci>POR</ci>
				</apply>
			</apply>
		</math>
	</component>

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

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

<!-- ========================================	NON-MUSCLE SHORT-TERM AUTOREGULATION		============================================= -->
	<component 	name="NM_short_term_autoregulation" 
				cmeta:id="NM_short_term_autoregulation">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_short_term_autoregulation">
				<rdf:value>
				Containment grouping component for "ST_sensitivity_control" and 
				"ST_time_delay_and_damping".
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
	</component>
	
<!-- ========================================	NON-MUSCLE SHORT_TERM SENSITIVITY CONTROL	============================================= -->
	<component 	name="NM_ST_sensitivity_control" 
				cmeta:id="NM_ST_sensitivity_control">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_ST_sensitivity_control">
				<rdf:value>
				ARN2 and ARN3:  
				Sensitivity control for short-term autoregulation, with the sensitivity 
				controlled by the variable POK and the output of these two blocks equal 
				to the variable POB.
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN2_and_ARN3">
				<rdf:value>
				ARN2 and ARN3:  
				Sensitivity control for short-term autoregulation, with the sensitivity 
				controlled by the variable POK and the output of these two blocks equal 
				to the variable POB.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="POD"	units="mmHg" private_interface="none" public_interface="in"/>

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

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

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="ARN2_and_ARN3">
				<eq/>
				<ci>POB</ci>
				<apply>
					<plus/>
					<apply>
						<times/>
						<ci>POD</ci>
						<ci>POK</ci>
					</apply>
					<cn cellml:units="mmHg">1</cn>
				</apply>
			</apply>
		</math>
	</component>

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

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

<!-- ========================================	NON-MUSCLE SHORT-TERM TIME-DELAY AND DAMPING	============================================= -->
	<component 	name="NM_ST_time_delay_and_damping" 
				cmeta:id="NM_ST_time_delay_and_damping">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_ST_time_delay_and_damping">
				<rdf:value>
				ARN5, ARN6, and ARN7:  
				An integrative time delay system which allows the output from Block ARN7 (AR1) 
				to approach the value POB with a time constant of (A1K).

				ARN7A:  
				Damping of output from Block ARN7 to prevent oscillation when the iteration 
				interval for computer solution of the model is long.
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN5_to_ARN7">
				<rdf:value>
				ARN5, ARN6, and ARN7:  
				An integrative time delay system which allows the output from Block ARN7 (AR1) 
				to approach the value POB with a time constant of (A1K).
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN7A">
				<rdf:value>
				ARN7A:  
				Damping of output from Block ARN7 to prevent oscillation when the iteration 
				interval for computer solution of the model is long.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="POB"	units="mmHg" private_interface="none" public_interface="in"/>
		<variable name="AR1T_init"	units="dimensionless" private_interface="none" public_interface="in"/>
		<variable name="time"	units="minute" private_interface="none" public_interface="in"/>

<!-- Outputs to other components -->
		<variable	cmeta:id="NM_ST_time_delay_and_damping_AR1"
					name="AR1" 	units="dimensionless" private_interface="none" public_interface="out"/>

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

<!-- Internal variables -->
		<variable name="AR1T"	initial_value="AR1T_init"	units="dimensionless" private_interface="none" public_interface="none"/>

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="ARN5_to_ARN7">
				<eq/>
				<apply>
					<diff/>
					<bvar>
						<ci>time</ci>
					</bvar>
					<ci>AR1T</ci>
				</apply>
				<apply>
					<divide/>
					<apply>
						<minus/>
						<apply>
							<times/>
							<ci>POB</ci>
							<cn cellml:units="per_mmHg">1</cn>
						</apply>	
						<ci>AR1T</ci>
					</apply>
					<ci>A1K</ci>
				</apply>
			</apply>
			<apply id="ARN7A">
				<eq/>
				<ci>AR1</ci>
				<piecewise>
					<piece>
						<cn cellml:units="dimensionless">0.5</cn>
						<apply>
							<lt/>
							<ci>AR1T</ci>
							<cn cellml:units="dimensionless">0.5</cn>
						</apply>
					</piece>
					<otherwise>
						<ci>AR1T</ci>
					</otherwise>
				</piecewise>
			</apply>
		</math>
	</component>

<!-- STATE VARIABLES INITIAL VALUE -->
	<connection>
		<map_components component_1="NM_ST_time_delay_and_damping" component_2="state_variables"/>
		<map_variables variable_1="AR1T_init" variable_2="AR1T_init"/>
	</connection>

<!-- INPUT CONNECTIONS -->
	<connection>
		<map_components component_1="NM_ST_time_delay_and_damping" component_2="NM_ST_sensitivity_control"/>
		<map_variables variable_1="POB" variable_2="POB"/>
	</connection>
	<connection>
		<map_components component_1="NM_ST_time_delay_and_damping" component_2="non_muscle_autoregulatory_local_blood_flow_control"/>
		<map_variables variable_1="time" variable_2="time"/>
	</connection>

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

<!-- ========================================	NON-MUSCLE INTERMEDIATE AUTOREGULATION		============================================= -->
	<component 	name="NM_intermediate_autoregulation" 
				cmeta:id="NM_intermediate_autoregulation">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_intermediate_autoregulation">
				<rdf:value>
				Containment grouping component for "NM_I_sensitivity_control" and 
				"NM_I_time_delay_and_limit".
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
	</component>
	
<!-- ========================================	NON-MUSCLE INTERMEDIATE SENSITIVITY CONTROL	============================================= -->
	<component 	name="NM_I_sensitivity_control" 
				cmeta:id="NM_I_sensitivity_control">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_I_sensitivity_control">
				<rdf:value>
				ARN8 and ARN9:  
				Sensitivity control for the intermediate time autoregulation controlled by 
				variable (PON).  The input is POD, and the output is POA.
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN8_and_ARN9">
				<rdf:value>
				ARN8 and ARN9:  
				Sensitivity control for the intermediate time autoregulation controlled by 
				variable (PON).  The input is POD, and the output is POA.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="POD"	units="mmHg" private_interface="none" public_interface="in"/>

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

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

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="ARN8_and_ARN9">
				<eq/>
				<ci>POA</ci>
				<apply>
					<plus/>
					<apply>
						<times/>
						<ci>PON</ci>
						<ci>POD</ci>
					</apply>
					<cn cellml:units="mmHg">1</cn>
				</apply>
			</apply>
		</math>
	</component>

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

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

<!-- ========================================	NON-MUSCLE INTERMEDIATE TIME-DELAY AND LIMIT	============================================= -->
	<component 	name="NM_I_time_delay_and_limit" 
				cmeta:id="NM_I_time_delay_and_limit">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_I_time_delay_and_limit">
				<rdf:value>
				ARN11, ARN12, and ARN13:  
				A time delay mechanism for the intermediate autoregulation which allows the 
				output of Block ARN13 (AR2) to approach (POA) with a time constant of A2K.

				ARN13A:  
				This sets a lower limit for AR2.
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN11_to_ARN13">
				<rdf:value>
				ARN11, ARN12, and ARN13:  
				A time delay mechanism for the intermediate autoregulation which allows the 
				output of Block ARN13 (AR2) to approach (POA) with a time constant of A2K.
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN13A">
				<rdf:value>
				ARN13A:  
				This sets a lower limit for AR2.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="POA"	units="mmHg" private_interface="none" public_interface="in"/>
		<variable name="AR2T_init"	units="dimensionless" private_interface="none" public_interface="in"/>
		<variable name="time"	units="minute" private_interface="none" public_interface="in"/>

<!-- Outputs to other components -->
		<variable	cmeta:id="NM_I_time_delay_and_limit_AR2"
					name="AR2" 	units="dimensionless" private_interface="none" public_interface="out"/>

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

<!-- Internal variables -->
		<variable name="AR2T"	initial_value="AR2T_init"	units="dimensionless" private_interface="none" public_interface="none"/>

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="ARN11_to_ARN13">
				<eq/>
				<apply>
					<diff/>
					<bvar>
						<ci>time</ci>
					</bvar>
					<ci>AR2T</ci>
				</apply>
				<apply>
					<divide/>
					<apply>
						<minus/>
						<apply>
							<times/>
							<ci>POA</ci>
							<cn cellml:units="per_mmHg">1</cn>
						</apply>	
						<ci>AR2T</ci>
					</apply>
					<ci>A2K</ci>
				</apply>
			</apply>
			<apply id="ARN13A">
				<eq/>
				<ci>AR2</ci>
				<piecewise>
					<piece>
						<cn cellml:units="dimensionless">0.5</cn>
						<apply>
							<lt/>
							<ci>AR2T</ci>
							<cn cellml:units="dimensionless">0.5</cn>
						</apply>
					</piece>
					<otherwise>
						<ci>AR2T</ci>
					</otherwise>
				</piecewise>
			</apply>
		</math>
	</component>

<!-- STATE VARIABLES INITIAL VALUE -->
	<connection>
		<map_components component_1="NM_I_time_delay_and_limit" component_2="state_variables"/>
		<map_variables variable_1="AR2T_init" variable_2="AR2T_init"/>
	</connection>

<!-- INPUT CONNECTIONS -->
	<connection>
		<map_components component_1="NM_I_time_delay_and_limit" component_2="NM_I_sensitivity_control"/>
		<map_variables variable_1="POA" variable_2="POA"/>
	</connection>
	<connection>
		<map_components component_1="NM_I_time_delay_and_limit" component_2="non_muscle_autoregulatory_local_blood_flow_control"/>
		<map_variables variable_1="time" variable_2="time"/>
	</connection>

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

<!-- ========================================	NON-MUSCLE LONG-TERM AUTOREGULATION	============================================= -->
	<component 	name="NM_long_term_autoregulation" 
				cmeta:id="NM_long_term_autoregulation">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_long_term_autoregulation">
				<rdf:value>
				Containment grouping component for "NM_LT_sensitivity_control" and 
				"NM_LT_time_delay_and_limit".`	
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
	</component>

<!-- ========================================	NON-MUSCLE LONG-TERM SENSITIVITY CONTROL	============================================= -->
	<component 	name="NM_LT_sensitivity_control" 
				cmeta:id="NM_LT_sensitivity_control">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_LT_sensitivity_control">
				<rdf:value>
				ARN14:  
				Calculation of the relationship between the driving force for overall 
				autoregulatory control (POD) and that for long-term autoregulatory control (POC).  
				The sensitivity control is variable (POZ).
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN14">
				<rdf:value>
				ARN14:  
				Calculation of the relationship between the driving force for overall 
				autoregulatory control (POD) and that for long-term autoregulatory control (POC).  
				The sensitivity control is variable (POZ).
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="POD"	units="mmHg" private_interface="none" public_interface="in"/>

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

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

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="ARN14">
				<eq/>
				<ci>POC</ci>
				<apply>
					<plus/>
					<apply>
						<times/>
						<ci>POZ</ci>
						<ci>POD</ci>
					</apply>
					<cn cellml:units="mmHg">1</cn>
				</apply>
			</apply>
		</math>
	</component>

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

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

<!-- ========================================	NON-MUSCLE LONG-TERM TIME DELAY AND LOWER LIMIT	============================================= -->
	<component 	name="NM_LT_time_delay_and_limit" 
				cmeta:id="NM_LT_time_delay_and_limit">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#NM_LT_time_delay_and_limit">
				<rdf:value>
				ARN15, ARN16, and ARN17:  
				Time delay system that allows the output of Block ARN17 (AR3) to approach POC 
				with a time constant equal to the variable (A3K).

				ARN17A:  
				This sets the lower limit for AR3.
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN15_to_ARN17">
				<rdf:value>
				ARN15, ARN16, and ARN17:  
				Time delay system that allows the output of Block ARN17 (AR3) to approach POC 
				with a time constant equal to the variable (A3K).
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN17A">
				<rdf:value>
				ARN17A:  
				This sets the lower limit for AR3.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="POC"	units="mmHg" private_interface="none" public_interface="in"/>
		<variable name="AR3T_init"	units="dimensionless" private_interface="none" public_interface="in"/>
		<variable name="time"	units="minute" private_interface="none" public_interface="in"/>

<!-- Outputs to other components -->
		<variable	cmeta:id="NM_LT_time_delay_and_limit_AR3"
					name="AR3" 	units="dimensionless" private_interface="none" public_interface="out"/>

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

<!-- Internal variables -->
		<variable name="AR3T"	initial_value="AR3T_init"	units="dimensionless" private_interface="none" public_interface="none"/>

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="ARN15_to_ARN17">
				<eq/>
				<apply>
					<diff/>
					<bvar>
						<ci>time</ci>
					</bvar>
					<ci>AR3T</ci>
				</apply>
				<apply>
					<divide/>
					<apply>
						<minus/>
						<apply>
							<times/>
							<ci>POC</ci>
							<cn cellml:units="per_mmHg">1</cn>
						</apply>	
						<ci>AR3T</ci>
					</apply>
					<ci>A3K</ci>
				</apply>
			</apply>
			<apply id="ARN17A">
				<eq/>
				<ci>AR3</ci>
				<piecewise>
					<piece>
						<cn cellml:units="dimensionless">0.3</cn>
						<apply>
							<lt/>
							<ci>AR3T</ci>
							<cn cellml:units="dimensionless">0.3</cn>
						</apply>
					</piece>
					<otherwise>
						<ci>AR3T</ci>
					</otherwise>
				</piecewise>
			</apply>
		</math>
	</component>

<!-- STATE VARIABLES INITIAL VALUE -->
	<connection>
		<map_components component_1="NM_LT_time_delay_and_limit" component_2="state_variables"/>
		<map_variables variable_1="AR3T_init" variable_2="AR3T_init"/> 
	</connection>

<!-- INPUT CONNECTIONS -->
	<connection>
		<map_components component_1="NM_LT_time_delay_and_limit" component_2="NM_LT_sensitivity_control"/>
		<map_variables variable_1="POC" variable_2="POC"/>
	</connection>
	<connection>
		<map_components component_1="NM_LT_time_delay_and_limit" component_2="non_muscle_autoregulatory_local_blood_flow_control"/>
		<map_variables variable_1="time" variable_2="time"/>
	</connection>

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

<!-- ========================================	TOTAL NON-MUSCLE AUTOREGULATION	============================================= -->
	<component 	name="total_NM_autoregulation" 
				cmeta:id="total_NM_autoregulation">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#total_NM_autoregulation">
				<rdf:value>
				ARN18:  
				Multiplication of the outputs of the three different autoregulation mechanisms 
				by multiplying AR3, AR2, and AR1 times each other, giving a total output of the 
				non-muscle autoregulatory system equal to the variable (ARM1).
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN18">
				<rdf:value>
				ARN18:  
				Multiplication of the outputs of the three different autoregulation mechanisms 
				by multiplying AR3, AR2, and AR1 times each other, giving a total output of the 
				non-muscle autoregulatory system equal to the variable (ARM1).
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="AR1"	units="dimensionless" private_interface="none" public_interface="in"/>
		<variable name="AR2"	units="dimensionless" private_interface="none" public_interface="in"/>
		<variable name="AR3"	units="dimensionless" private_interface="none" public_interface="in"/>

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

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="ARN18">
				<eq/>
				<ci>ARM1</ci>
				<apply>
					<times/>
					<ci>AR1</ci>
					<ci>AR2</ci>
					<ci>AR3</ci>
				</apply>
			</apply>
		</math>
	</component>

<!-- INPUT CONNECTIONS -->
	<connection>
		<map_components component_1="total_NM_autoregulation" component_2="NM_ST_time_delay_and_damping"/>
		<map_variables variable_1="AR1" variable_2="AR1"/>
	</connection>
	<connection>
		<map_components component_1="total_NM_autoregulation" component_2="NM_I_time_delay_and_limit"/>
		<map_variables variable_1="AR2" variable_2="AR2"/>
	</connection>
	<connection>
		<map_components component_1="total_NM_autoregulation" component_2="NM_LT_time_delay_and_limit"/>
		<map_variables variable_1="AR3" variable_2="AR3"/>
	</connection>

<!-- ========================================	GLOBAL NON-MUSCLE BLOOD FLOW AUTOREGULATION OUTPUT	============================================= -->
	<component 	name="global_NM_blood_flow_autoregulation_output" 
				cmeta:id="global_NM_blood_flow_autoregulation_output">
		<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
			<rdf:Description rdf:about="#global_NM_blood_flow_autoregulation_output">
				<rdf:value>
				ARN19, ARN20, and ARN21:  
				Sensitivity control for the total autoregulatory output for non-muscle, non-renal 
				tissues.  The input is ARM1, the sensitivity control is AUTOSN, and the final output 
				is a non-muscle autoregulatory multiplier factor (ARM) that controls non-muscle vascular 
				resistance.
				</rdf:value>
			</rdf:Description>
			<rdf:Description rdf:about="#ARN19_to_ARN21">
				<rdf:value>
				ARN19, ARN20, and ARN21:  
				Sensitivity control for the total autoregulatory output for non-muscle, non-renal 
				tissues.  The input is ARM1, the sensitivity control is AUTOSN, and the final output 
				is a non-muscle autoregulatory multiplier factor (ARM) that controls non-muscle vascular 
				resistance.
				</rdf:value>
			</rdf:Description>
		</rdf:RDF>
		
<!-- Inputs from other components -->
		<variable name="ARM1"	units="dimensionless" private_interface="none" public_interface="in"/>

<!-- Outputs to other components -->
		<variable	cmeta:id="global_NM_blood_flow_autoregulation_output_ARM"
					name="ARM" 	units="dimensionless" private_interface="none" public_interface="out"/>

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

		<math xmlns="http://www.w3.org/1998/Math/MathML">
			<apply id="ARN19_to_ARN21">
         		<eq/>
				<ci>ARM</ci>
				<apply>
					<plus/>
					<apply>
						<times/>
						<apply>
							<minus/>
							<ci>ARM1</ci>
							<cn cellml:units="dimensionless">1</cn>
						</apply>
						<ci>AUTOSN</ci>
					</apply>
					<cn cellml:units="dimensionless">1</cn>
				</apply>
			</apply>
		</math>
	</component>

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

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

	
<!-- ============================================================		GROUPING		=============================================================== -->
	<group>
		<relationship_ref relationship="containment"/>
		<component_ref component="non_muscle_autoregulatory_local_blood_flow_control">
			<component_ref component="NM_autoregulatory_driving_force"/>
			<component_ref component="NM_short_term_autoregulation">
				<component_ref component="NM_ST_sensitivity_control"/>
				<component_ref component="NM_ST_time_delay_and_damping"/>
			</component_ref>
			<component_ref component="NM_intermediate_autoregulation">
				<component_ref component="NM_I_sensitivity_control"/>
				<component_ref component="NM_I_time_delay_and_limit"/>
			</component_ref>
			<component_ref component="NM_long_term_autoregulation">
				<component_ref component="NM_LT_sensitivity_control"/>
				<component_ref component="NM_LT_time_delay_and_limit"/>
			</component_ref>
			<component_ref component="total_NM_autoregulation"/>
			<component_ref component="global_NM_blood_flow_autoregulation_output"/>
		</component_ref>
	</group>

   <group>
      <relationship_ref relationship="encapsulation"/>
		<component_ref component="non_muscle_autoregulatory_local_blood_flow_control">
			<component_ref component="parameter_values"/>
			<component_ref component="state_variables"/>
			<component_ref component="NM_autoregulatory_driving_force"/>
			<component_ref component="NM_short_term_autoregulation"/>
			<component_ref component="NM_ST_sensitivity_control"/>
			<component_ref component="NM_ST_time_delay_and_damping"/>
			<component_ref component="NM_intermediate_autoregulation"/>
			<component_ref component="NM_I_sensitivity_control"/>
			<component_ref component="NM_I_time_delay_and_limit"/>
			<component_ref component="NM_long_term_autoregulation"/>
			<component_ref component="NM_LT_sensitivity_control"/>
			<component_ref component="NM_LT_time_delay_and_limit"/>
			<component_ref component="total_NM_autoregulation"/>
			<component_ref component="global_NM_blood_flow_autoregulation_output"/>
		</component_ref>
   </group>

   
</model>