/* * Guyton Model: Electrolytes * * Model Status * * 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. * * Model Structure * * 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. * * 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. * * 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. * * This particular CellML model describes the extracellular and * intracellular fluid electrolytes and volumes. * * model diagram * * [[Image file: full_model.png]] * * A systems analysis diagram for the full Guyton model describing * circulation regulation. * * model diagram * * [[Image file: electrolytes.png]] * * A schematic diagram of the components and processes described * in the current CellML model. * * There are several publications referring to the Guyton model. * One of these papers is cited below: * * Circulation: Overall Regulation, A.C. Guyton, T.G. Coleman, * and H.J. Granger, 1972, Annual Review of Physiology , 34, 13-44. * PubMed ID: 4334846 */ import nsrunit; unit conversion on; unit minute=60 second^1; unit monovalent_mEq=.001 mole^1; unit monovalent_mEq_per_minute=1.6666667E-5 second^(-1)*mole^1; unit monovalent_mEq_per_litre=1 meter^(-3)*mole^1; unit monovalent_mEq_per_litre_per_minute=.01666667 meter^(-3)*second^(-1)*mole^1; unit litre2_per_monovalent_mEq_per_minute=1.6666667E-5 meter^6*second^(-1)*mole^(-1); unit L_per_minute=1.6666667E-5 meter^3*second^(-1); math main { realDomain time minute; time.min=0; extern time.max; extern time.delta; real AMK dimensionless; AMK=1.037; real TVD L_per_minute; TVD=0.000980838; real NOD monovalent_mEq_per_minute; NOD=0.0959449; real STH dimensionless; STH=0.977181; real KOD monovalent_mEq_per_minute; KOD=0.0804374; real VUD L_per_minute; VUD=0.000989; real VEC(time) litre; real CNA(time) monovalent_mEq_per_litre; real NID monovalent_mEq_per_minute; NID=0.1; real TRPL L_per_minute; TRPL=0; real NED monovalent_mEq_per_minute; real NAE(time) monovalent_mEq; when(time=time.min) NAE=2109.91; real AMK1 dimensionless; real ALCLK dimensionless; ALCLK=0.3; real CKE(time) monovalent_mEq_per_litre; real KE(time) monovalent_mEq; real KTOT(time) monovalent_mEq; when(time=time.min) KTOT=3622.54; real KID monovalent_mEq_per_minute; KID=0.08; real KTOTD monovalent_mEq_per_minute; real VIC(time) litre; when(time=time.min) VIC=25.0404; real CKI(time) monovalent_mEq_per_litre; real KI(time) monovalent_mEq; real VID(time) L_per_minute; real VIDML litre2_per_monovalent_mEq_per_minute; VIDML=0.01; real CCD(time) monovalent_mEq_per_litre; real VTW(time) litre; when(time=time.min) VTW=39.8952; // // // NED=(NID*STH-NOD+TRPL*(142 monovalent_mEq_per_litre)); NAE:time=NED; CNA=(NAE/VEC); // AMK1=((AMK-1)*ALCLK+1); // KTOTD=(KID-KOD); KTOT:time=KTOTD; KE=((KTOT-(3E3 monovalent_mEq))/(AMK1*9.3333)); CKE=(KE/VEC); // KI=(KTOT-KE); CKI=(KI/VIC); // CCD=(CKI-CNA); VID=(CCD*VIDML); VIC:time=VID; // VTW:time=(TVD-VUD); // VEC=(VTW-VIC); // }