/* * Guyton Model: Aldosterone * * Model Status * * This CellML model has been validated. 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). This may effect the transient behaviour * of the model, however the steady-state behaviour would remain * the same. The equations in this file and the steady-state output * from the model conform to the results from the MODSIM program. * * 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 how aldosterone and its * feedback control functions to modify the circulation. Two inputs * are used for controlling aldosterone secretion, the potassium * concentration in the extracellular fluids (CKE) and the effect * of angiotensin (ANM) on aldosterone secretion. In turn, multiplier * effects for aldosterone control of potassium (AMK) and sodium * (AMNA) transport through cell membranes, especially through * the kidney tubule membranes are calculated. * * model diagram * * [[Image file: full_model.png]] * * A systems analysis diagram for the full Guyton model describing * circulation regulation. * * model diagram * * [[Image file: aldosterone.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 ANM dimensionless; ANM=0.987545; real CKE monovalent_mEq_per_litre; CKE=4.44092; real ANMAL dimensionless; real ANMALD dimensionless; ANMALD=2.5; real OSMAL dimensionless; real AMR1 dimensionless; real AMKMUL dimensionless; AMKMUL=12; real ALDINF dimensionless; ALDINF=0; real ALDKNS dimensionless; ALDKNS=0; real AMRBSC dimensionless; real AMRT dimensionless; real AMR dimensionless; real AMC(time) dimensionless; when(time=time.min) AMC=1.0; real AMT minute; AMT=60; real AM(time) dimensionless; real AM1UL dimensionless; AM1UL=5; real AM1LL dimensionless; AM1LL=0; real AMCSNS dimensionless; AMCSNS=0.65; real ALDMM dimensionless; ALDMM=2.5; real AM1(time) dimensionless; real AMK(time) dimensionless; real AMKM dimensionless; AMKM=0.5; real AMKT(time) dimensionless; real AMNA(time) dimensionless; real AMNAM dimensionless; AMNAM=0.8; real AMNAUL dimensionless; AMNAUL=15; real AMNALL dimensionless; AMNALL=0.04; real AMNAT(time) dimensionless; // // // ANMAL=((ANM-1)*ANMALD+1); // OSMAL=((CKE-(3.3 monovalent_mEq_per_litre))/(1 monovalent_mEq_per_litre)); // AMRBSC=(ANMAL*.909*OSMAL); AMRT=((AMRBSC-1)*AMKMUL+1); AMR=(if (AMRT<0) 0 else AMRT); AMR1=(if (ALDKNS>0) ALDKNS else AMR+ALDINF); // AMC:time=((AMR1-AMC)/AMT); // AM1=(AM1UL-(AM1UL-1)/((AM1LL-1)/(AM1LL-AM1UL)*(AMC-1)*AMCSNS+1)); AM=((AM1-1)*ALDMM+1); // AMKT=((AM-1)*AMKM+1); AMK=(if (AMKT<.2) .2 else AMKT); // AMNAT=((AM-1)*AMNAM+1); AMNA=(if (AMNATAMNAUL) AMNAUL else AMNAT); // }