- Author:
- Soroush Safaei <ssaf006@aucklanduni.ac.nz>
- Date:
- 2018-08-05 17:06:12+12:00
- Desc:
- remove
- Permanent Source URI:
- https://models.physiomeproject.org/workspace/3a4/rawfile/4498cddbc93aeaa3ec165de7fb6ff0221958b651/lung_mechanics.cellml
<?xml version='1.0'?>
<model name="lung_mechanics" xmlns="http://www.cellml.org/cellml/1.1#" xmlns:cellml="http://www.cellml.org/cellml/1.1#" xmlns:xlink="http://www.w3.org/1999/xlink">
<import xlink:href="Units.cellml">
<units name="m3" units_ref="m3"/>
<units name="mM" units_ref="mM"/>
<units name="m3_per_s" units_ref="m3_per_s"/>
<units name="m6_per_J" units_ref="m6_per_J"/>
<units name="m3_per_J" units_ref="m3_per_J"/>
<units name="per_m" units_ref="per_m"/>
<units name="J_per_m3" units_ref="J_per_m3"/>
<units name="J_s_per_m6" units_ref="J_s_per_m6"/>
<units name="J_s2_per_m6" units_ref="J_s2_per_m6"/>
<units name="J_s2_per_m5" units_ref="J_s2_per_m5"/>
<units name="J_per_s" units_ref="J_per_s"/>
<units name="J_per_m6" units_ref="J_per_m6"/>
<units name="J_s_per_m3" units_ref="J_s_per_m3"/>
</import>
<component name="lung_mechanics">
<variable name="t" public_interface="in" units="second"/>
<variable name="time" public_interface="out" units="second"/>
<!-- air pressure-->
<variable initial_value="0.0" name="u_ao" units="J_per_m3"/>
<variable initial_value="0.0" name="u_l" units="J_per_m3"/>
<variable name="u_tr" units="J_per_m3"/>
<variable name="u_b" units="J_per_m3"/>
<variable name="u_A" units="J_per_m3"/>
<variable name="u_pl" units="J_per_m3"/>
<variable initial_value="0.0" name="u_cw" units="J_per_m3"/>
<variable name="u_mus" units="J_per_m3"/>
<variable initial_value="0.0" name="u_trpl" units="J_per_m3"/>
<variable initial_value="0.0" name="u_bpl" units="J_per_m3"/>
<variable initial_value="0.0" name="u_Apl" units="J_per_m3"/>
<!-- air flow-->
<variable name="v_in" public_interface="out" units="m3_per_s"/>
<variable name="v_lt" public_interface="out" units="m3_per_s"/>
<variable name="v_l" public_interface="out" units="m3_per_s"/>
<variable name="v_tb" public_interface="out" units="m3_per_s"/>
<variable name="v_A" public_interface="out" units="m3_per_s"/>
<variable name="v_tr" public_interface="out" units="m3_per_s"/>
<variable name="v_b" public_interface="out" units="m3_per_s"/>
<variable name="v_cw" public_interface="out" units="m3_per_s"/>
<!-- unstressed volume-->
<variable initial_value="34.4e-6" name="q_l" public_interface="out" units="m3"/>
<variable initial_value="6.63e-6" name="q_tr" public_interface="out" units="m3"/>
<variable initial_value="18.7e-6" name="q_b" public_interface="out" units="m3"/>
<variable initial_value="1.263e-6" name="q_A" public_interface="out" units="m3"/>
<variable name="q_dead" public_interface="out" units="m3"/>
<variable name="q_lung" public_interface="out" units="m3"/>
<!-- resistance-->
<variable initial_value="100125.9" name="R_ml" units="J_s_per_m6"/>
<variable initial_value="33038.604" name="R_lt" units="J_s_per_m6"/>
<variable initial_value="30037.769" name="R_tb" units="J_s_per_m6"/>
<variable initial_value="8012.033" name="R_bA" units="J_s_per_m6"/>
<!-- compliance-->
<variable initial_value="0.00000001295" name="C_l" units="m6_per_J"/>
<variable initial_value="0.000000024269246" name="C_tr" units="m6_per_J"/>
<variable initial_value="0.000000133582824" name="C_b" units="m6_per_J"/>
<variable initial_value="0.0000020239432426" name="C_A" units="m6_per_J"/>
<variable initial_value="0.000002493206141" name="C_cw" units="m6_per_J"/>
<!-- parameters-->
<variable initial_value="0.6" name="IE_ratio" units="dimensionless"/>
<variable initial_value="12" name="RR" units="dimensionless"/>
<variable initial_value="-490.333" name="u_mus_min" units="J_per_m3"/>
<variable name="tau" units="second"/>
<variable name="T" units="second"/>
<variable name="T_E" units="second"/>
<variable name="T_l" units="second"/>
<!-- respiratory muscle-->
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply>
<eq/>
<ci>time</ci>
<apply>
<minus/>
<ci>t</ci>
<apply>
<times/>
<apply>
<floor/>
<apply>
<divide/>
<ci>t</ci>
<ci>T</ci>
</apply>
</apply>
<ci>T</ci>
</apply>
</apply>
</apply>
<apply>
<eq/>
<ci>T</ci>
<apply>
<divide/>
<cn cellml:units="second">60</cn>
<ci>RR</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>T_l</ci>
<apply>
<times/>
<ci>T_E</ci>
<ci>IE_ratio</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>T</ci>
<apply>
<plus/>
<ci>T_E</ci>
<ci>T_l</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>tau</ci>
<apply>
<divide/>
<ci>T_E</ci>
<cn cellml:units="dimensionless">5</cn>
</apply>
</apply>
<apply>
<eq/>
<ci>u_mus</ci>
<piecewise>
<piece>
<apply>
<divide/>
<apply>
<plus/>
<apply>
<times/>
<apply>
<minus/>
<ci>u_mus_min</ci>
</apply>
<ci>time</ci>
<ci>time</ci>
</apply>
<apply>
<times/>
<ci>u_mus_min</ci>
<ci>T</ci>
<ci>time</ci>
</apply>
</apply>
<apply>
<times/>
<ci>T_l</ci>
<ci>T_E</ci>
</apply>
</apply>
<apply>
<and/>
<apply>
<geq/>
<ci>time</ci>
<cn cellml:units="second">0</cn>
</apply>
<apply>
<leq/>
<ci>time</ci>
<ci>T_l</ci>
</apply>
</apply>
</piece>
<piece>
<apply>
<times/>
<apply>
<divide/>
<ci>u_mus_min</ci>
<apply>
<minus/>
<cn cellml:units="dimensionless">1</cn>
<apply>
<exp/>
<apply>
<divide/>
<apply>
<minus/>
<ci>T_E</ci>
</apply>
<ci>tau</ci>
</apply>
</apply>
</apply>
</apply>
<apply>
<minus/>
<apply>
<exp/>
<apply>
<divide/>
<apply>
<minus/>
<apply>
<minus/>
<ci>time</ci>
<ci>T_l</ci>
</apply>
</apply>
<ci>tau</ci>
</apply>
</apply>
<apply>
<exp/>
<apply>
<divide/>
<apply>
<minus/>
<ci>T_E</ci>
</apply>
<ci>tau</ci>
</apply>
</apply>
</apply>
</apply>
<apply>
<and/>
<apply>
<gt/>
<ci>time</ci>
<ci>T_l</ci>
</apply>
<apply>
<leq/>
<ci>time</ci>
<ci>T</ci>
</apply>
</apply>
</piece>
</piecewise>
</apply>
<!-- larynx-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>u_l</ci>
</apply>
<apply>
<divide/>
<ci>v_l</ci>
<ci>C_l</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>v_in</ci>
<apply>
<divide/>
<apply>
<minus/>
<ci>u_ao</ci>
<ci>u_l</ci>
</apply>
<ci>R_ml</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>v_lt</ci>
<apply>
<divide/>
<apply>
<minus/>
<ci>u_l</ci>
<ci>u_tr</ci>
</apply>
<ci>R_lt</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>v_l</ci>
<apply>
<minus/>
<ci>v_in</ci>
<ci>v_lt</ci>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>q_l</ci>
</apply>
<ci>v_l</ci>
</apply>
<!-- trachea-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>u_trpl</ci>
</apply>
<apply>
<divide/>
<ci>v_tr</ci>
<ci>C_tr</ci>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>q_tr</ci>
</apply>
<ci>v_tr</ci>
</apply>
<apply>
<eq/>
<ci>v_tr</ci>
<apply>
<minus/>
<ci>v_lt</ci>
<ci>v_tb</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>u_tr</ci>
<apply>
<plus/>
<ci>u_trpl</ci>
<ci>u_pl</ci>
</apply>
</apply>
<!-- bronchea-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>u_bpl</ci>
</apply>
<apply>
<divide/>
<ci>v_b</ci>
<ci>C_b</ci>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>q_b</ci>
</apply>
<ci>v_b</ci>
</apply>
<apply>
<eq/>
<ci>v_b</ci>
<apply>
<minus/>
<ci>v_tb</ci>
<ci>v_A</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>v_tb</ci>
<apply>
<divide/>
<apply>
<minus/>
<ci>u_tr</ci>
<ci>u_b</ci>
</apply>
<ci>R_tb</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>u_b</ci>
<apply>
<plus/>
<ci>u_bpl</ci>
<ci>u_pl</ci>
</apply>
</apply>
<!-- alveolar-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>u_Apl</ci>
</apply>
<apply>
<divide/>
<ci>v_A</ci>
<ci>C_A</ci>
</apply>
</apply>
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>q_A</ci>
</apply>
<ci>v_A</ci>
</apply>
<apply>
<eq/>
<ci>v_A</ci>
<apply>
<divide/>
<apply>
<minus/>
<ci>u_b</ci>
<ci>u_A</ci>
</apply>
<ci>R_bA</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>u_A</ci>
<apply>
<plus/>
<ci>u_Apl</ci>
<ci>u_pl</ci>
</apply>
</apply>
<!-- chest wall-->
<apply>
<eq/>
<apply>
<diff/>
<bvar>
<ci>t</ci>
</bvar>
<ci>u_cw</ci>
</apply>
<apply>
<divide/>
<ci>v_cw</ci>
<ci>C_cw</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>v_cw</ci>
<apply>
<plus/>
<ci>v_tr</ci>
<ci>v_b</ci>
<ci>v_A</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>u_pl</ci>
<apply>
<plus/>
<ci>u_cw</ci>
<ci>u_mus</ci>
</apply>
</apply>
<!-- -->
<apply>
<eq/>
<ci>q_dead</ci>
<apply>
<plus/>
<ci>q_l</ci>
<ci>q_tr</ci>
<ci>q_b</ci>
</apply>
</apply>
<apply>
<eq/>
<ci>q_lung</ci>
<apply>
<plus/>
<ci>q_dead</ci>
<ci>q_A</ci>
</apply>
</apply>
</math>
</component>
<component name="env">
<variable name="t" public_interface="out" units="second"/>
</component>
<connection>
<map_components component_1="env" component_2="lung_mechanics"/>
<map_variables variable_1="t" variable_2="t"/>
</connection>
</model>