- Author:
- Tommy Yu <tommy.yu@auckland.ac.nz>
- Date:
- 2010-08-25 18:19:05+12:00
- Desc:
- xml:base fix
- Permanent Source URI:
- https://models.physiomeproject.org/workspace/guyton_pulmonary_fluid_dynamics_2008/rawfile/1a8f675f318d96a3785d24b4dc8b2287f5358373/pulmonary_fluid.cellml
<?xml version="1.0" encoding="utf-8"?>
<model
name="pulmonary_fluid_dynamics_model"
cmeta:id="pulmonary_fluid_dynamics_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_fluid_dynamics_model">
<rdf:value>
This is a highly simplified analysis of pulmonary fluid dynamics. In general, the gel
portion of the pulmonary fluid is ignored, so that the pulmonary fluid volume (VPF) is
in reality an approximation of the amount of fluid that is relatively freely mobile.
Though this fluid is called "interstitial fluid," it includes fluid in the respiratory
passages. Likewise, the pressure-volume curve of the pulmonary interstitium is highly
simplified, as well as the control of lymph flow. Nevertheless, for many purposes, this
simplified analysis serves quite well.
</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>
<!-- ======================================== PULMONARY FLUID DYNAMICS TOP-LEVEL COMPONENT ============================================= -->
<component name="pulmonary_fluid_dynamics"
cmeta:id="pulmonary_fluid_dynamics">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#pulmonary_fluid_dynamics">
<rdf:value>
Encapsulation grouping component containing all the components in the Pulmonary Fluid Dynamics Model.
The inputs and outputs of the Pulmonary Fluid Dynamics 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="PPC" units="mmHg" private_interface="out" public_interface="in"/>
<variable name="PPA" units="mmHg" private_interface="out" public_interface="in"/>
<variable name="PLA" units="mmHg" private_interface="out" public_interface="in"/>
<variable name="CPP" units="gram_per_L" private_interface="out" public_interface="in"/>
<variable name="RPV" units="mmHg_minute_per_L" private_interface="out" public_interface="in"/>
<variable name="RPA" units="mmHg_minute_per_L" private_interface="out" public_interface="in"/>
<!-- Outputs to components in other models -->
<variable name="DFP" units="L_per_minute" private_interface="in" public_interface="out"/>
<variable name="VPF" units="litre" private_interface="in" public_interface="out"/>
<variable name="PPD" units="gram_per_minute" private_interface="in" public_interface="out"/>
</component>
<!-- OUTPUT CONNECTIONS -->
<!-- <connection>
<map_components component_1="pulmonary_fluid_dynamics" component_2="pulmonary_interstitial_free_fluid_volume"/>
<map_variables variable_1="DFP" variable_2="DFP"/>
<map_variables variable_1="VPF" variable_2="VPF"/>
</connection> -->
<!-- <connection>
<map_components component_1="pulmonary_fluid_dynamics" component_2="concentration_of_protein_in_pulmonary_interstitium"/>
<map_variables variable_1="PPD" variable_2="PPD"/>
</connection> -->
<!-- ======================================== PULMONARY CAPILLARY PRESSURE ============================================= -->
<component name="pulmonary_capillary_pressure"
cmeta:id="pulmonary_capillary_pressure">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#pulmonary_capillary_pressure">
<rdf:value>
PD1, PD2, PD2A, and PD3:
Calculation of pulmonary capillary pressure (PCP) from the pulmonary arterial
pressure (PPA) and left atrial pressure (PLA), and also from the vascular
resistances in the arterial (RPA) and venous (RPV) sides of the pulmonary
capillaries. The arterial resistance is set to be 1.6 times the venous
resistance.
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD1_to_PD3">
<rdf:value>
PD1, PD2, PD2A, and PD3:
Calculation of pulmonary capillary pressure (PCP) from the pulmonary arterial
pressure (PPA) and left atrial pressure (PLA), and also from the vascular
resistances in the arterial (RPA) and venous (RPV) sides of the pulmonary
capillaries. The arterial resistance is set to be 1.6 times the venous
resistance.
</rdf:value>
</rdf:Description>
</rdf:RDF>
<!-- Inputs from other components -->
<variable name="PPA" units="mmHg" private_interface="none" public_interface="in"/>
<variable name="PLA" units="mmHg" private_interface="none" public_interface="in"/>
<variable name="RPV" units="mmHg_minute_per_L" private_interface="none" public_interface="in"/>
<variable name="RPA" units="mmHg_minute_per_L" private_interface="none" public_interface="in"/>
<!-- Outputs to other components -->
<variable name="PCP" units="mmHg" private_interface="none" public_interface="out"/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply id="PD1_to_PD3">
<eq/>
<ci>PCP</ci>
<apply>
<plus/>
<apply>
<divide/>
<apply>
<times/>
<apply>
<minus/>
<ci>PPA</ci>
<ci>PLA</ci>
</apply>
<ci>RPV</ci>
</apply>
<apply>
<plus/>
<ci>RPV</ci>
<ci>RPA</ci>
</apply>
</apply>
<ci>PLA</ci>
</apply>
</apply>
</math>
</component>
<!-- INPUT CONNECTIONS -->
<connection>
<map_components component_1="pulmonary_capillary_pressure" component_2="pulmonary_fluid_dynamics"/>
<map_variables variable_1="PPA" variable_2="PPA"/>
<map_variables variable_1="PLA" variable_2="PLA"/>
<map_variables variable_1="RPV" variable_2="RPV"/>
<map_variables variable_1="RPA" variable_2="RPA"/>
</connection>
<!-- ======================================== FLUID FILTRATION INTO PULMONARY INTERSTITIUM ============================================= -->
<component name="fluid_filtration_into_pulmonary_interstitium"
cmeta:id="fluid_filtration_into_pulmonary_interstitium">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#fluid_filtration_into_pulmonary_interstitium">
<rdf:value>
PD4:
The pressure gradient across the pulmonary capillary membrane (PGRPCM) is equal
to the pulmonary capillary pressure (PCP), plus the colloid osmotic pressure of
the pulmonary interstitial fluid (POS), minus the pulmonary interstitial fluid
pressure (PPI), minus the plasma colloid osmotic pressure (PPC).
PD5:
Rate of filtration of fluid outward through the pulmonary capillary membranes
into the interstitium (PFI) is equal to the pressure gradient across the
pulmonary capillary membrane (PGRPCM) times the pulmonary capillary filtration
coefficient (CPF).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD4_and_PD5">
<rdf:value>
PD4:
The pressure gradient across the pulmonary capillary membrane (PGRPCM) is equal
to the pulmonary capillary pressure (PCP), plus the colloid osmotic pressure of
the pulmonary interstitial fluid (POS), minus the pulmonary interstitial fluid
pressure (PPI), minus the plasma colloid osmotic pressure (PPC).
PD5:
Rate of filtration of fluid outward through the pulmonary capillary membranes
into the interstitium (PFI) is equal to the pressure gradient across the
pulmonary capillary membrane (PGRPCM) times the pulmonary capillary filtration
coefficient (CPF).
</rdf:value>
</rdf:Description>
</rdf:RDF>
<!-- Inputs from other components -->
<variable name="PCP" units="mmHg" private_interface="none" public_interface="in"/>
<variable name="PPC" units="mmHg" private_interface="none" public_interface="in"/>
<variable name="POS" units="mmHg" private_interface="none" public_interface="in"/>
<variable name="PPI" units="mmHg" private_interface="none" public_interface="in"/>
<!-- Outputs to other components -->
<variable name="PFI" units="L_per_minute" private_interface="none" public_interface="out"/>
<!-- Parameters from parameter_file -->
<variable name="CPF" units="L_per_minute_per_mmHg" private_interface="none" public_interface="in"/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply id="PD4_and_PD5">
<eq/>
<ci>PFI</ci>
<apply>
<times/>
<apply>
<minus/>
<apply>
<plus/>
<apply>
<minus/>
<ci>PCP</ci>
<ci>PPI</ci>
</apply>
<ci>POS</ci>
</apply>
<ci>PPC</ci>
</apply>
<ci>CPF</ci>
</apply>
</apply>
</math>
</component>
<!-- INPUT CONNECTIONS -->
<connection>
<map_components component_1="fluid_filtration_into_pulmonary_interstitium" component_2="pulmonary_capillary_pressure"/>
<map_variables variable_1="PCP" variable_2="PCP"/>
</connection>
<connection>
<map_components component_1="fluid_filtration_into_pulmonary_interstitium" component_2="pulmonary_fluid_dynamics"/>
<map_variables variable_1="PPC" variable_2="PPC"/>
</connection>
<connection>
<map_components component_1="fluid_filtration_into_pulmonary_interstitium" component_2="colloid_osmotic_pressure_of_pulmonary_interstitium"/>
<map_variables variable_1="POS" variable_2="POS"/>
</connection>
<connection>
<map_components component_1="fluid_filtration_into_pulmonary_interstitium" component_2="pulmonary_interstitial_fluid_pressure"/>
<map_variables variable_1="PPI" variable_2="PPI"/>
</connection>
<!-- PARAMETER CONNECTIONS -->
<connection>
<map_components component_1="fluid_filtration_into_pulmonary_interstitium" component_2="parameter_values"/>
<map_variables variable_1="CPF" variable_2="CPF"/>
</connection>
<!-- ======================================== PULMONARY INTERSTITIAL FREE FLUID VOLUME ============================================= -->
<component name="pulmonary_interstitial_free_fluid_volume"
cmeta:id="pulmonary_interstitial_free_fluid_volume">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#pulmonary_interstitial_free_fluid_volume">
<rdf:value>
PD5A, PD5B, and PD5C:
The rate of change of the fluid volume in the lungs (DFP) is equal to the rate
of filtration of fluid out of the pulmonary capillary membranes (PFI), minus the
rate of return of fluid to the circulation from the pulmonary interstitium by way
of the pulmonary lymphatics (PLF). Blocks 5B and 5C are computational blocks for
preventing oscillation and for preventing overshoot of the iteration. The damping
factor (Z) is used at multiple points in the model.
PD6:
Calculation of the volume of free fluid in the pulmonary interstitium (and
respiratory passageways) (VPF) by integrating the rate of change of the free fluid
in the lungs (DFP).
NB: - Damping in PD5B has been removed so that DFP = DFZ.
- PD5C has been rearranged so that "if" statement is dependent on VPF which may alter
the DFP output. (DFP IMPORTED INTO CP10 - Capillary Dynamics! CHECK THIS!!!).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD5A">
<rdf:value>
PD5A, PD5B, and PD5C:
The rate of change of the fluid volume in the lungs (DFP) is equal to the rate
of filtration of fluid out of the pulmonary capillary membranes (PFI), minus the
rate of return of fluid to the circulation from the pulmonary interstitium by way
of the pulmonary lymphatics (PLF). Blocks 5B and 5C are computational blocks for
preventing oscillation and for preventing overshoot of the iteration. The damping
factor (Z) is used at multiple points in the model.
NB: - Damping in PD5B has been removed so that DFP = DFZ.
- PD5C has been rearranged so that "if" statement is dependent on VPF which may alter
the DFP output. (DFP IMPORTED INTO CP10 - Capillary Dynamics! CHECK THIS!!!).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD5B">
<rdf:value>
PD5A, PD5B, and PD5C:
The rate of change of the fluid volume in the lungs (DFP) is equal to the rate
of filtration of fluid out of the pulmonary capillary membranes (PFI), minus the
rate of return of fluid to the circulation from the pulmonary interstitium by way
of the pulmonary lymphatics (PLF). Blocks 5B and 5C are computational blocks for
preventing oscillation and for preventing overshoot of the iteration. The damping
factor (Z) is used at multiple points in the model.
NB: - Damping in PD5B has been removed so that DFP = DFZ.
- PD5C has been rearranged so that "if" statement is dependent on VPF which may alter
the DFP output. (DFP IMPORTED INTO CP10 - Capillary Dynamics! CHECK THIS!!!).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD5C">
<rdf:value>
PD5A, PD5B, and PD5C:
The rate of change of the fluid volume in the lungs (DFP) is equal to the rate
of filtration of fluid out of the pulmonary capillary membranes (PFI), minus the
rate of return of fluid to the circulation from the pulmonary interstitium by way
of the pulmonary lymphatics (PLF). Blocks 5B and 5C are computational blocks for
preventing oscillation and for preventing overshoot of the iteration. The damping
factor (Z) is used at multiple points in the model.
NB: - Damping in PD5B has been removed so that DFP = DFZ.
- PD5C has been rearranged so that "if" statement is dependent on VPF which may alter
the DFP output. (DFP IMPORTED INTO CP10 - Capillary Dynamics! CHECK THIS!!!).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD6">
<rdf:value>
PD6:
Calculation of the volume of free fluid in the pulmonary interstitium (and
respiratory passageways) (VPF) by integrating the rate of change of the free fluid
in the lungs (DFP).
</rdf:value>
</rdf:Description>
</rdf:RDF>
<!-- Inputs from other components -->
<variable name="PFI" units="L_per_minute" private_interface="none" public_interface="in"/>
<variable name="PLF" units="L_per_minute" private_interface="none" public_interface="in"/>
<variable name="VPF1_init" units="litre" private_interface="none" public_interface="in"/>
<variable name="time" units="minute" private_interface="none" public_interface="in"/>
<!-- Outputs to other components -->
<variable cmeta:id="pulmonary_interstitial_free_fluid_volume_DFP"
name="DFP" units="L_per_minute" private_interface="none" public_interface="out"/>
<variable cmeta:id="pulmonary_interstitial_free_fluid_volume_VPF"
name="VPF" units="litre" private_interface="none" public_interface="out"/>
<!-- Internal variables -->
<variable name="DFZ" units="L_per_minute" private_interface="none" public_interface="none"/>
<variable name="VPF1" initial_value="VPF1_init" units="litre" private_interface="none" public_interface="none"/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply id="PD5A">
<eq/>
<ci>DFZ</ci>
<apply>
<minus/>
<ci>PFI</ci>
<ci>PLF</ci>
</apply>
</apply>
<apply id="PD5B">
<eq/>
<ci>DFP</ci>
<ci>DFZ</ci>
</apply>
<apply id="PD6">
<eq/>
<apply>
<diff/>
<bvar>
<ci>time</ci>
</bvar>
<ci>VPF1</ci>
</apply>
<ci>DFP</ci>
</apply>
<apply id="PD5C">
<eq/>
<ci>VPF</ci>
<piecewise>
<piece>
<cn cellml:units="litre">0.001</cn>
<apply>
<lt/>
<ci>VPF1</ci>
<cn cellml:units="litre">0.001</cn>
</apply>
</piece>
<otherwise>
<ci>VPF1</ci>
</otherwise>
</piecewise>
</apply>
</math>
</component>
<!-- STATE VARIABLES INITIAL VALUE -->
<connection>
<map_components component_1="pulmonary_interstitial_free_fluid_volume" component_2="state_variables"/>
<map_variables variable_1="VPF1_init" variable_2="VPF1_init"/>
</connection>
<!-- INPUT CONNECTIONS -->
<connection>
<map_components component_1="pulmonary_interstitial_free_fluid_volume" component_2="fluid_filtration_into_pulmonary_interstitium"/>
<map_variables variable_1="PFI" variable_2="PFI"/>
</connection>
<connection>
<map_components component_1="pulmonary_interstitial_free_fluid_volume" component_2="lung_lymphatic_protein_flow"/>
<map_variables variable_1="PLF" variable_2="PLF"/>
</connection>
<connection>
<map_components component_1="pulmonary_interstitial_free_fluid_volume" component_2="pulmonary_fluid_dynamics"/>
<map_variables variable_1="DFP" variable_2="DFP"/>
<map_variables variable_1="VPF" variable_2="VPF"/>
<map_variables variable_1="time" variable_2="time"/>
</connection>
<!-- ======================================== PULMONARY INTERSTITIAL FLUID PRESSURE ============================================= -->
<component name="pulmonary_interstitial_fluid_pressure"
cmeta:id="pulmonary_interstitial_fluid_pressure">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#pulmonary_interstitial_fluid_pressure">
<rdf:value>
PD10 and PD11:
Curve-fitting blocks to calculate the pulmonary interstitial fluid pressure (PPI)
from the pulmonary interstitial fluid volume (VPF).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD10_and_PD11">
<rdf:value>
PD10 and PD11:
Curve-fitting blocks to calculate the pulmonary interstitial fluid pressure (PPI)
from the pulmonary interstitial fluid volume (VPF).
</rdf:value>
</rdf:Description>
</rdf:RDF>
<!-- Inputs from other components -->
<variable name="VPF" units="litre" private_interface="none" public_interface="in"/>
<!-- Outputs to other components -->
<variable name="PPI" units="mmHg" private_interface="none" public_interface="out"/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply id="PD10_and_PD11">
<eq/>
<ci>PPI</ci>
<apply>
<minus/>
<cn cellml:units="mmHg">2</cn>
<apply>
<divide/>
<cn cellml:units="mmHg_L">0.15</cn>
<ci>VPF</ci>
</apply>
</apply>
</apply>
</math>
</component>
<!-- INPUT CONNECTIONS -->
<connection>
<map_components component_1="pulmonary_interstitial_fluid_pressure" component_2="pulmonary_interstitial_free_fluid_volume"/>
<map_variables variable_1="VPF" variable_2="VPF"/>
</connection>
<!-- ======================================== CONCENTRATION OF PROTEIN IN PULMONARY INTERSTITIUM ============================================= -->
<component name="concentration_of_protein_in_pulmonary_interstitium"
cmeta:id="concentration_of_protein_in_pulmonary_interstitium">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#concentration_of_protein_in_pulmonary_interstitium">
<rdf:value>
PD15, PD15A, and PD15B:
The rate of change of the total quantity of protein in the pulmonary interstitium (PPD)
is equal to the rate of influx of protein into the interstitium as a result of protein
leakage through the pulmonary capillary membrane (PPN) minus the rate of return of protein
to the circulation from the interstitium by way of the lymphatics (PPO). Blocks 15A and
15B are computational blocks for the purpose of preventing overshoot of an iteration and
for preventing oscillation. The factor (Z) is a damping factor that is used widely
throughout the model.
NB: - Damping in PF15A has been removed so that PPD = PPZ.
- PD15B has been rearranged so that "if" statement is dependent on PPR which may alter
the PPD output. (PPD IMPORTED INTO CP33 - Capillary Dynamics! CHECK THIS!!!).
PD16:
The total quantity of protein in the pulmonary interstital free fluid (PPR) is calculated
by integrating with respect to time the rate of change of protein in the pulmonary
interstitium (PPD).
PD17:
The concentration of protein in the pulmonary interstitium (CPN) is equal to the total
quantity of protein in the interstitium (PPR) divided by the volume of interstitial
fluid (VPF).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD15">
<rdf:value>
PD15, PD15A, and PD15B:
The rate of change of the total quantity of protein in the pulmonary interstitium (PPD)
is equal to the rate of influx of protein into the interstitium as a result of protein
leakage through the pulmonary capillary membrane (PPN) minus the rate of return of protein
to the circulation from the interstitium by way of the lymphatics (PPO). Blocks 15A and
15B are computational blocks for the purpose of preventing overshoot of an iteration and
for preventing oscillation. The factor (Z) is a damping factor that is used widely
throughout the model.
NB: - Damping in PF15A has been removed so that PPD = PPZ.
- PD15B has been rearranged so that "if" statement is dependent on PPR which may alter
the PPD output. (PPD IMPORTED INTO CP33 - Capillary Dynamics! CHECK THIS!!!).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD15A">
<rdf:value>
PD15, PD15A, and PD15B:
The rate of change of the total quantity of protein in the pulmonary interstitium (PPD)
is equal to the rate of influx of protein into the interstitium as a result of protein
leakage through the pulmonary capillary membrane (PPN) minus the rate of return of protein
to the circulation from the interstitium by way of the lymphatics (PPO). Blocks 15A and
15B are computational blocks for the purpose of preventing overshoot of an iteration and
for preventing oscillation. The factor (Z) is a damping factor that is used widely
throughout the model.
NB: - Damping in PF15A has been removed so that PPD = PPZ.
- PD15B has been rearranged so that "if" statement is dependent on PPR which may alter
the PPD output. (PPD IMPORTED INTO CP33 - Capillary Dynamics! CHECK THIS!!!).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD15B">
<rdf:value>
PD15, PD15A, and PD15B:
The rate of change of the total quantity of protein in the pulmonary interstitium (PPD)
is equal to the rate of influx of protein into the interstitium as a result of protein
leakage through the pulmonary capillary membrane (PPN) minus the rate of return of protein
to the circulation from the interstitium by way of the lymphatics (PPO). Blocks 15A and
15B are computational blocks for the purpose of preventing overshoot of an iteration and
for preventing oscillation. The factor (Z) is a damping factor that is used widely
throughout the model.
NB: - Damping in PF15A has been removed so that PPD = PPZ.
- PD15B has been rearranged so that "if" statement is dependent on PPR which may alter
the PPD output. (PPD IMPORTED INTO CP33 - Capillary Dynamics! CHECK THIS!!!).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD16">
<rdf:value>
PD16:
The total quantity of protein in the pulmonary interstital free fluid (PPR) is calculated
by integrating with respect to time the rate of change of protein in the pulmonary
interstitium (PPD).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD17">
<rdf:value>
PD17:
The concentration of protein in the pulmonary interstitium (CPN) is equal to the total
quantity of protein in the interstitium (PPR) divided by the volume of interstitial
fluid (VPF).
</rdf:value>
</rdf:Description>
</rdf:RDF>
<!-- Inputs from other components -->
<variable name="PPO" units="gram_per_minute" private_interface="none" public_interface="in"/>
<variable name="PPN" units="gram_per_minute" private_interface="none" public_interface="in"/>
<variable name="VPF" units="litre" private_interface="none" public_interface="in"/>
<variable name="PPR1_init" units="gram" private_interface="none" public_interface="in"/>
<variable name="time" units="minute" private_interface="none" public_interface="in"/>
<!-- Outputs to other components -->
<variable cmeta:id="concentration_of_protein_in_pulmonary_interstitium_PPD"
name="PPD" units="gram_per_minute" private_interface="none" public_interface="out"/>
<variable name="CPN" units="gram_per_L" private_interface="none" public_interface="out"/>
<!-- Internal variables -->
<variable name="PPZ" units="gram_per_minute" private_interface="none" public_interface="none"/>
<variable name="PPR1" initial_value="PPR1_init" units="gram" private_interface="none" public_interface="none"/>
<variable name="PPR" units="gram" private_interface="none" public_interface="none"/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply id="PD15">
<eq/>
<ci>PPZ</ci>
<apply>
<minus/>
<ci>PPN</ci>
<ci>PPO</ci>
</apply>
</apply>
<apply id="PD15A">
<eq/>
<ci>PPD</ci>
<ci>PPZ</ci>
</apply>
<apply id="PD16">
<eq/>
<apply>
<diff/>
<bvar>
<ci>time</ci>
</bvar>
<ci>PPR1</ci>
</apply>
<ci>PPD</ci>
</apply>
<apply id="PD15B">
<eq/>
<ci>PPR</ci>
<piecewise>
<piece>
<cn cellml:units="gram">0.025</cn>
<apply>
<lt/>
<ci>PPR1</ci>
<cn cellml:units="gram">0.025</cn>
</apply>
</piece>
<otherwise>
<ci>PPR1</ci>
</otherwise>
</piecewise>
</apply>
<apply id="PD17">
<eq/>
<ci>CPN</ci>
<apply>
<divide/>
<ci>PPR</ci>
<ci>VPF</ci>
</apply>
</apply>
</math>
</component>
<!-- STATE VARIABLES INITIAL VALUE -->
<connection>
<map_components component_1="concentration_of_protein_in_pulmonary_interstitium" component_2="state_variables"/>
<map_variables variable_1="PPR1_init" variable_2="PPR1_init"/>
</connection>
<!-- INPUT CONNECTIONS -->
<connection>
<map_components component_1="concentration_of_protein_in_pulmonary_interstitium" component_2="pulmonary_interstitial_free_fluid_volume"/>
<map_variables variable_1="VPF" variable_2="VPF"/>
</connection>
<connection>
<map_components component_1="concentration_of_protein_in_pulmonary_interstitium" component_2="pulmonary_fluid_dynamics"/>
<map_variables variable_1="PPD" variable_2="PPD"/>
<map_variables variable_1="time" variable_2="time"/>
</connection>
<!-- ======================================== COLLOID OSMOTIC PRESSURE OF PULMONARY INTERSTITIUM ============================================= -->
<component name="colloid_osmotic_pressure_of_pulmonary_interstitium"
cmeta:id="colloid_osmotic_pressure_of_pulmonary_interstitium">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#colloid_osmotic_pressure_of_pulmonary_interstitium">
<rdf:value>
PD18:
The colloid osmotic pressure of the pulmonary interstitial fluid (POS) is equal to
the concentration of protein in the pulmonary interstitium (CPN) times a constant.
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD18">
<rdf:value>
PD18:
The colloid osmotic pressure of the pulmonary interstitial fluid (POS) is equal to
the concentration of protein in the pulmonary interstitium (CPN) times a constant.
</rdf:value>
</rdf:Description>
</rdf:RDF>
<!-- Inputs from other components -->
<variable name="CPN" units="gram_per_L" private_interface="none" public_interface="in"/>
<!-- Outputs to other components -->
<variable name="POS" units="mmHg" private_interface="none" public_interface="out"/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply id="PD18">
<eq/>
<ci>POS</ci>
<apply>
<times/>
<ci>CPN</ci>
<cn cellml:units="L_mmHg_per_gram">0.4</cn>
</apply>
</apply>
</math>
</component>
<!-- INPUT CONNECTIONS -->
<connection>
<map_components component_1="colloid_osmotic_pressure_of_pulmonary_interstitium" component_2="concentration_of_protein_in_pulmonary_interstitium"/>
<map_variables variable_1="CPN" variable_2="CPN"/>
</connection>
<!-- ======================================== PROTEIN LEAKAGE INTO PULMONARY INTERSTITIUM ============================================= -->
<component name="protein_leakage_into_pulmonary_interstitium"
cmeta:id="protein_leakage_into_pulmonary_interstitium">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#protein_leakage_into_pulmonary_interstitium">
<rdf:value>
PD19 and PD20:
The rate of leakage of protein through the pulmonary capillary membrane into the pulmonary
interstitium (PPN) is equal to the concentration of protein in the plasma (CPP), minus the
concentration of protein in the pulmonary interstitium (CPN) times a constant.
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD19_and_PD20">
<rdf:value>
PD19 and PD20:
The rate of leakage of protein through the pulmonary capillary membrane into the pulmonary
interstitium (PPN) is equal to the concentration of protein in the plasma (CPP), minus the
concentration of protein in the pulmonary interstitium (CPN) times a constant.
</rdf:value>
</rdf:Description>
</rdf:RDF>
<!-- Inputs from other components -->
<variable name="CPP" units="gram_per_L" private_interface="none" public_interface="in"/>
<variable name="CPN" units="gram_per_L" private_interface="none" public_interface="in"/>
<!-- Outputs to other components -->
<variable name="PPN" units="gram_per_minute" private_interface="none" public_interface="out"/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply id="PD19_and_PD20">
<eq/>
<ci>PPN</ci>
<apply>
<times/>
<apply>
<minus/>
<ci>CPP</ci>
<ci>CPN</ci>
</apply>
<cn cellml:units="L_per_minute">0.000225</cn>
</apply>
</apply>
</math>
</component>
<!-- INPUT CONNECTIONS -->
<connection>
<map_components component_1="protein_leakage_into_pulmonary_interstitium" component_2="pulmonary_fluid_dynamics"/>
<map_variables variable_1="CPP" variable_2="CPP"/>
</connection>
<connection>
<map_components component_1="protein_leakage_into_pulmonary_interstitium" component_2="concentration_of_protein_in_pulmonary_interstitium"/>
<map_variables variable_1="CPN" variable_2="CPN"/>
<map_variables variable_1="PPN" variable_2="PPN"/>
</connection>
<!-- ======================================== LUNG LYMPHATIC PROTEIN FLOW ============================================= -->
<component name="lung_lymphatic_protein_flow"
cmeta:id="lung_lymphatic_protein_flow">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="#lung_lymphatic_protein_flow">
<rdf:value>
PD12 and PD13:
Curve-fitting blocks to calculate the rate of pulmonary lymph flow (PLF) from the
pulmonary interstitial fluid pressure (PPI).
PD14:
Rate of return of protein from the pulmonary interstitium to the circulation in
the pulmonary lymph (PPO) is equal to the concentration of protein in the
pulmonary interstitial fluid (CPN) times the rate of pulmonary lymph flow (PLF).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD12_and_PD13">
<rdf:value>
PD12 and PD13:
Curve-fitting blocks to calculate the rate of pulmonary lymph flow (PLF) from the
pulmonary interstitial fluid pressure (PPI).
</rdf:value>
</rdf:Description>
<rdf:Description rdf:about="#PD14">
<rdf:value>
PD14:
Rate of return of protein from the pulmonary interstitium to the circulation in
the pulmonary lymph (PPO) is equal to the concentration of protein in the
pulmonary interstitial fluid (CPN) times the rate of pulmonary lymph flow (PLF).
</rdf:value>
</rdf:Description>
</rdf:RDF>
<!-- Inputs from other components -->
<variable name="PPI" units="mmHg" private_interface="none" public_interface="in"/>
<variable name="CPN" units="gram_per_L" private_interface="none" public_interface="in"/>
<!-- Outputs to other components -->
<variable name="PLF" units="L_per_minute" private_interface="none" public_interface="out"/>
<variable name="PPO" units="gram_per_minute" private_interface="none" public_interface="out"/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply id="PD12_and_PD13">
<eq/>
<ci>PLF</ci>
<apply>
<times/>
<apply>
<plus/>
<ci>PPI</ci>
<cn cellml:units="mmHg">11</cn>
</apply>
<cn cellml:units="L_per_minute_per_mmHg">0.0003</cn>
</apply>
</apply>
<apply id="PD14">
<eq/>
<ci>PPO</ci>
<apply>
<times/>
<ci>PLF</ci>
<ci>CPN</ci>
</apply>
</apply>
</math>
</component>
<!-- INPUT CONNECTIONS -->
<connection>
<map_components component_1="lung_lymphatic_protein_flow" component_2="pulmonary_interstitial_fluid_pressure"/>
<map_variables variable_1="PPI" variable_2="PPI"/>
</connection>
<connection>
<map_components component_1="lung_lymphatic_protein_flow" component_2="concentration_of_protein_in_pulmonary_interstitium"/>
<map_variables variable_1="CPN" variable_2="CPN"/>
<map_variables variable_1="PPO" variable_2="PPO"/>
</connection>
<!-- ============================================================ GROUPING =============================================================== -->
<group>
<relationship_ref relationship="containment"/>
<component_ref component="pulmonary_fluid_dynamics">
<component_ref component="pulmonary_capillary_pressure"/>
<component_ref component="fluid_filtration_into_pulmonary_interstitium"/>
<component_ref component="pulmonary_interstitial_free_fluid_volume"/>
<component_ref component="pulmonary_interstitial_fluid_pressure"/>
<component_ref component="concentration_of_protein_in_pulmonary_interstitium"/>
<component_ref component="colloid_osmotic_pressure_of_pulmonary_interstitium"/>
<component_ref component="protein_leakage_into_pulmonary_interstitium"/>
<component_ref component="lung_lymphatic_protein_flow"/>
</component_ref>
</group>
<group>
<relationship_ref relationship="encapsulation"/>
<component_ref component="pulmonary_fluid_dynamics">
<component_ref component="parameter_values"/>
<component_ref component="state_variables"/>
<component_ref component="pulmonary_capillary_pressure"/>
<component_ref component="fluid_filtration_into_pulmonary_interstitium"/>
<component_ref component="pulmonary_interstitial_free_fluid_volume"/>
<component_ref component="pulmonary_interstitial_fluid_pressure"/>
<component_ref component="concentration_of_protein_in_pulmonary_interstitium"/>
<component_ref component="colloid_osmotic_pressure_of_pulmonary_interstitium"/>
<component_ref component="protein_leakage_into_pulmonary_interstitium"/>
<component_ref component="lung_lymphatic_protein_flow"/>
</component_ref>
</group>
</model>