Method Index (AutoDoc)
CirculatorySystemModels.CRCirculatorySystemModels.CRLCirculatorySystemModels.CapacitorCirculatorySystemModels.ConstantFlowCirculatorySystemModels.ConstantPressureCirculatorySystemModels.DHChamberCirculatorySystemModels.DrivenFlowCirculatorySystemModels.DrivenPressureCirculatorySystemModels.InductanceCirculatorySystemModels.MynardValve_AtrioventricularCirculatorySystemModels.MynardValve_SemiLunarCirculatorySystemModels.OrificeValveCirculatorySystemModels.PoiseuilleResistorCirculatorySystemModels.QResistorCirculatorySystemModels.RRCRCirculatorySystemModels.ResistorCirculatorySystemModels.ResistorDiodeCirculatorySystemModels.ShiAtriumCirculatorySystemModels.ShiChamberCirculatorySystemModels.ShiHeartCirculatorySystemModels.ShiPulmonaryLoopCirculatorySystemModels.ShiSystemicLoopCirculatorySystemModels.WK3CirculatorySystemModels.WK3ECirculatorySystemModels.WK4_PCirculatorySystemModels.WK4_PECirculatorySystemModels.WK4_SCirculatorySystemModels.WK4_SECirculatorySystemModels.ComplianceCirculatorySystemModels.DHdelastanceCirculatorySystemModels.DHelastanceCirculatorySystemModels.DShiElastanceCirculatorySystemModels.ElastanceCirculatorySystemModels.ShiElastanceCirculatorySystemModels.ShiValveCirculatorySystemModels.VariableElastance
CirculatorySystemModels.CR — ConstantCR(;name, R=1.0, C=1.0)
Implements the compliance, resistor subsystem.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s).
Named parameters:
R: Component resistance in mmHg*s/ml
C: Component compliance in ml/mmHg
CirculatorySystemModels.CRL — ConstantCRL(;name, C=1.0, R=1.0, L=1.0)
Implements the compliance, resistor, inductance subsystem.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s).
Named parameters:
C: Component compliance in ml/mmHg
R: Component resistance in mmHg*s/ml
L: Component blood inertia in mmHg*s^2/ml
CirculatorySystemModels.Capacitor — ConstantCapacitor(;name, C=1.0)
Implements a capacitor to represent vessel capacitance.
Parameters are in the cm, g, s system. Pressures in mmHg. Δp is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
C: capacitance of the vessel in ml/mmHg
CirculatorySystemModels.ConstantFlow — ConstantConstantFlow(;name, Q=1.0)
Implements a constant flow source to a system.
Parameters are in the cm, g, s system. Pressure in mmHg. Δp is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
Q: Constant flow in cm^3/s (ml/s)
CirculatorySystemModels.ConstantPressure — ConstantConstantPressure(;name, P=1.0)
Implements a constant pressure source to a system.
Parameters are in the cm, g, s system. Pressure in mmHg. Δp is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
P: Constant pressure in mmHg
CirculatorySystemModels.DHChamber — ConstantDHChamber(;name, V₀, Eₘᵢₙ, n₁, n₂, τ, τ₁, τ₂, k, Eshift=0.0, inP=false)
The Double Hill chamber/ventricle model is defined based on the vessel element, but has a time varying elastance function modelling the contraction of muscle fibres
The time varying elastance is calculated using the Double Hill model.
This model uses external helper functions elastance and delastance which describe the elastance function and the first derivative of it.
It calculates the elastance as:
E(t) = (Eₘₐₓ - Eₘᵢₙ) * e(t) + Eₘᵢₙ
where e(t) is the Double-Hill function.
Named parameters:
V₀: stress-free volume (zero pressure volume)
p₀ pressure offset (defaults to zero) this is present in some papers (e.g. Shi), so is provided here for conformity. Defaults to 0.0
Eₘᵢₙ: minimum elastance
Eₘₐₓ: maximum elastance
n₁: rise coefficient
n₂: fall coefficient
τ: pulse length [s]
τ₁: rise timing parameter[s]
τ₂: fall timimg paramter [s]
k: elastance factor*
Eshift: time shift of contraction (for atria)
inP: (Bool) formulate in dp/dt (default: false)
*Note: k is not an independent parameter, it is a scaling factor that corresponds to 1/max(e(t)), which ensures that e(t) varies between zero and 1.0, such that E(t) varies between Eₘᵢₙ and Eₘₐₓ.
CirculatorySystemModels.DrivenFlow — ConstantDrivenFlow(; name, fun, Q=1.0)
Implements a driven flow source to a system.
Parameters are in the cm, g, s system. Pressure in mmHg. Δp is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
Q: Constant flow in cm^3/s (ml/s).
τ Length of cardiac cycle is s
fun: Function which modulates the input
CirculatorySystemModels.DrivenPressure — ConstantDrivenPressure(; name, fun, P=1.0)
Implements a driven pressure source to a system modulated by a function provided.
Parameters are in the cm, g, s system. Pressure in mmHg. Δp is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
P: Constant pressure in mmHg
fun: Function which modulates the input
CirculatorySystemModels.Inductance — ConstantInductance(;name, L=1.0)
Implements the inductance to represent blood inertance.
Parameters are in the cm, g, s system. Pressures in mmHg. Δp is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
L: Inertia of the fluid in mmHg*s^2/ml
CirculatorySystemModels.MynardValve_Atrioventricular — ConstantMynardValve_Atrioventricular(; name, ρ, Mrg, Mst, Ann, Kvc, Kvo)
Implements the Mynard description for flow across the atrioventricular valves, full description in [Mynard]. This valve description corresponds to the atrioventricular valves where interia is not considered.
Note: The minimum level of regurgitation has to be set to machine precision eps()
Parameters are in the cm, g, s system. Pressure in mmHg. Flow in cm^3/s (ml/s) p is scaled to ensure units are consistent throughout.
Named parameters:
name name of the element ρ Blood density in g/cm^3 Mrg Level of regurgitation exhibited by a valve in DN Mst Level of stenosis exhibited by a valve in DN Ann Annulus area in cm^2 Kvc Valve closing rate coefficent in cm^2/(dyness) Kvo Valve opening rate coefficent in cm^2/(dyness)
p is calculated in mmHg q is calculated in cm^3/s (ml/s)
CirculatorySystemModels.MynardValve_SemiLunar — ConstantMynardValve_SemiLunar(; name, ρ, Leff, Mrg, Mst, Ann, Kvc, Kvo)
Implements the Mynard description for flow across the semilunar valves, full description in [Mynard]. This valve description corresponds to the semilunar valves where interia is an effect we consider.
Note: The minimum level of regurgitation has to be set to machine precision eps()
Parameters are in the cm, g, s system. Pressure in mmHg. Flow in cm^3/s (ml/s) p is scaled to ensure units are consistent throughout.
Named parameters:
name name of the element ρ Blood density in g/cm^3 Leff An effective length in cm Mrg Level of regurgitation exhibited by a valve in DN Mst Level of stenosis exhibited by a valve in DN Ann Annulus area in cm^2 Kvc Valve closing rate coefficent in cm^2/(dyness) Kvo Valve opening rate coefficent in cm^2/(dyness)
p is calculated in mmHg q is calculated in cm^3/s (ml/s)
CirculatorySystemModels.OrificeValve — ConstantOrificeValve(;name, CQ=1.0)
Implements the square-root pressure-flow relationship across a valve.
Parameters are in the cm, g, s system. Pressure in mmHg. Flow in cm^3/s (ml/s)
Named parameters:
CQ Flow coefficent in ml/(s*mmHg^0.5)
CirculatorySystemModels.PoiseuilleResistor — ConstantPoiseuilleResistor(;name, μ=3e-2, r=0.5, L=5)
Implements the resistance following the Poiseuille law.
Parameters are in the cm, g, s system. Pressures in mmHg. Δp is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
μ: viscosity of fluid in dyne s / cm^2
r: radius of vessel segmenty in cm
L: length of vessel segment in cm
CirculatorySystemModels.QResistor — ConstantQResistor(;name, K=1.0)
Implements the quadratic resistor to represent a vessels non-linear resistance to blood flow.
Parameters are in the cm, g, s system. Pressures in mmHg. Δp is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
K: non-linear resistance of the vessel to the fluid in mmHg*s^2/ml^2
CirculatorySystemModels.RRCR — ConstantRRCR(;name, R1=1.0, R2=1.0, R3=1.0, C=1.0)
Implements the resistor, resistor, compliance, resistor subsystem.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s).
Named parameters:
R1: Component resistance in mmHg*s/ml
R2: Component resistance in mmHg*s/ml
C: Component compliance in ml/mmHg
R3: Component resistance in mmHg*s/ml
CirculatorySystemModels.Resistor — ConstantResistor(;name, R=1.0)
Implements the resistor using Ohm's law to represent a vessels linear resistance to blood flow.
Parameter is in the cm, g, s system. Pressure in mmHg. Δp is calculated in mmHg q calculated in cm^3/s (ml/s)
Named parameters:
R: Resistance of the vessel to the fluid in mmHg*s/ml
CirculatorySystemModels.ResistorDiode — ConstantResistorDiode(;name, R=1e-3)
Implements the resistance across a valve following Ohm's law exhibiting diode like behaviour.
Parameters are in the cm, g, s system. Pressure in mmHg. Flow in cm^3/s (ml/s)
Named parameters:
R Resistance across the valve in mmHg*s/ml
CirculatorySystemModels.ShiAtrium — ConstantShiAtrium(;name, V₀, p₀, Eₘᵢₙ, Eₘₐₓ, τ, τpwb, τpww, inP = false)
Implementation of the Atrium following Shi/Korakianitis.
Named parameters:
name name of the element
V₀ Unstressed chamber volume in ml
p₀ Unstressed chamber pressure in mmHg
Eₘᵢₙ Minimum elastance (diastole) in mmHg/ml
Eₘₐₓ Maximum elastance (systole) in mmHg/ml
τ Length of cardiac cycle in s
τpwb Atrial contraction time in s
τpww Atrial offset time in s
CirculatorySystemModels.ShiChamber — ConstantShiChamber(;name, V₀, p₀=0.0, Eₘᵢₙ, Eₘₐₓ, τ, τₑₛ, τₑₚ, Eshift=0.0)
Implemention of a ventricle following Shi/Korakianitis.
This model uses external helper function shiElastance which describes the elastance function.
Named parameters:
V₀ stress-free volume (zero pressure volume)
p₀ pressure offset (defaults to zero) this is present in the original paper, so is provided here for conformity. Defaults to 0.0
Eₘᵢₙ minimum elastance
τ pulse length
τₑₛ end systolic time (end of rising cosine)
τₑₚ end pulse time (end of falling cosine)
Eshift: time shift of contraction (for atria), set to 0 for ventricle
inP: (Bool) formulate in dp/dt (default: false)
CirculatorySystemModels.ShiHeart — ConstantShiHeart(; name, τ, LV.V₀, LV.p0, LV.Emin, LV.Emax, LV.τes, LV.τed, LV.Eshift, RV.V₀, RV.p0, RV.Eₘᵢₙ, RV.Eₘₐₓ, RV.τes, RV.τed, RV.Eshift, LA.V₀, LA_p0, LA.Emin, LA.Emax, LA.τes, LA.τed, LA.Eshift, RA.V₀, RA.p0, RA.Emin, RA.Emax, RA.τes, RA.τed, RA.Eshift, AV.CQ, AV.Kp, AV.Kf, AV.Kb, AV.Kv, AV.θmax, AV.θmin, PV.CQ, PV.Kp, PV.Kf, PV.Kb, PV.Kv, PV.θmax, PV.θmin, MV.CQ, MV.Kp, MV.Kf, MV.Kb, MV.Kv, MV.θmax, MV.θmin, TV.CQ, TV.Kp, TV.Kf, TV.Kb, TV.Kv, TV.θmax, TV.θmin)
Models a whole heart, made up of 2 ventricles (Left & Right Ventricle) and 2 atria (Left & Right atrium) created from the ShiChamber element. Includes the 4 corresponding valves (Aortic, Mitral, Pulmonary and Tricuspid valve) created using the ShiValve element.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s). Maximum and Minimum angles given in rad, to convert from degrees multiply angle by pi/180.
Named parameters:
τ Length of the cardiac cycle in s
LV_V₀ Unstressed left ventricular volume in ml
LV_p0 Unstressed left ventricular pressure in mmHg
LV_Emin Minimum left ventricular elastance (diastole) in mmHg/ml
LV_Emax Maximum left ventricular elastance (systole) in mmHg/ml
LV_τes Left ventricular end systolic time in s
LV_τed Left ventricular end distolic time in s
LV_Eshift Shift time of contraction - 0 for left ventricle
RV_V₀ Unstressed right ventricular volume in ml
RV_p0 Unstressed right ventricular pressure in mmHg
RV_Emin Minimum right ventricular elastance (diastole) in mmHg/ml
RV_Emax Maximum right ventricular elastance (systole) in mmHg/ml
RV_τes Right ventricular end systolic time in s
RV_τed Right ventricular end distolic time in s
RV_Eshift Shift time of contraction - 0 for right ventricle
LA_V₀ Unstressed left atrial volume in ml
LA_p0 Unstressed left atrial pressure in mmHg
LA_Emin Minimum left atrial elastance (diastole) in mmHg/ml
LA_Emax Maximum left atrial elastance (systole) in mmHg/ml
LA_τes Left atrial end systolic time in s
LA_τed Left atrial end distolic time in s
LA_Eshift Shift time of contraction in s
RA_V₀ Unstressed right atrial volume in ml
RA_p0 Unstressed right atrial pressure in mmHg
RA_Emin Minimum right atrial elastance (diastole) in mmHg/ml
RA_Emax Maximum right atrial elastance (systole) in mmHg/ml
RA_τes Right atrial end systolic time in s
RA_τed Right atrial end distolic time in s
RA_Eshift Shift time of contraction in s
AV_CQ Aortic valve flow coefficent in ml/(s*mmHg^0.5)
AV_Kp Pressure effect on the aortic valve in rad/(s^2*mmHg)
AV_Kf Frictional effect on the aortic valve in 1/s
AV_Kb Fluid velocity effect on the aortic valve in rad/(s*m)
AV_Kv Vortex effect on the aortic valve in rad/(s*m)
AV_θmax Aortic valve maximum opening angle in rad
AV_θmin Aortic valve minimum opening angle in rad
MV_CQ Mitral valve flow coefficent in ml/(s*mmHg^0.5)
MV_Kp Pressure effect on the mitral valve in rad/(s^2*mmHg)
MV_Kf Frictional effect on the mitral valve in 1/s
MV_Kb Fluid velocity effect on the mitral valve in rad/(s*m)
MV_Kv Vortex effect on the mitral valve in rad/(s*m)
MV_θmax Mitral valve maximum opening angle in rad
MV_θmin Mitral valve minimum opening angle in rad
PV_CQ Pulmonary valve flow coefficent in ml/(s*mmHg^0.5)
PV_Kp Pressure effect on the pulmonary valve in rad/(s^2*mmHg)
PV_Kf Frictional effect on the pulmonary valve in 1/s
PV_Kb Fluid velocity effect on the pulmonary valve in rad/(s*m)
PV_Kv Vortex effect on the pulmonary valve in rad/(s*m)
PV_θmax Pulmonary valve maximum opening angle in rad
PV_θmin Pulmonary valve minimum opening angle in rad
TV_CQ Tricuspid valve flow coefficent in ml/(s*mmHg^0.5)
TV_Kp Pressure effect on the tricuspid valve in rad/(s^2*mmHg)
TV_Kf Frictional effect on the tricuspid valve in 1/s
TV_Kb Fluid velocity effect on the tricuspid valve in rad/(s*m)
TV_Kv Vortex effect on the pulmonary valve in rad/(s*m)
TV_θmax Tricuspid valve maximum opening angle in rad
TV_θmin Tricuspid valve minimum opening angle in rad
CirculatorySystemModels.ShiPulmonaryLoop — ConstantShiPulmonaryLoop(; name, PAS.C, PAS.R, PAS.L, PAT.C, PAT.R, PAT.L, PAR.R, PCP.R, PVN.C, PVN.R)
Implements systemic loop as written by Shi in [Shi].
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s).
Named parameters:
PAS__C: Artery sinus compliance in ml/mmHg
PAS__R: Artery sinus resistance in mmHg*s/ml
PAS__L: Artery sinus Inductance in mmHg*s^2/ml
PAT__C: Artery compliance in ml/mmHg
PAT__R: Artery resistance in mmHg*s/ml
PAT__L: Artery Inductance in mmHg*s^2/ml
PAR__R: Arteriole resistance in mmHg*s/ml
PCP__R: Capillary resistance in mmHg*s/ml
PVN__C: Vein compliance in ml/mmHg
PVN__R: Vein resistance in mmHg*s/ml
CirculatorySystemModels.ShiSystemicLoop — ConstantShiSystemicLoop(; name, SAS.C, SAS.R, SAS.L, SAT.C, SAT.R, SAT.L, SAR.R, SCP.R, SVN.C, SVN.R)
Implements systemic loop as written by Shi in [Shi].
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s).
Named parameters:
SAS_C: Aortic sinus compliance in ml/mmHg
SAS_R: Aortic sinus resistance in mmHg*s/ml
SAS_L: Aortic sinus inductance in mmHg*s^2/ml
SAT_C: Artery compliance in ml/mmHg
SAT_R: Artery resistance in mmHg*s/ml
SAT_L: Artery inductance in mmHg*s^2/ml
SAR_R: Arteriole resistance in mmHg*s/ml
SCP_R: Capillary resistance in mmHg*s/ml
SVN_C: Vein compliance in ml/mmHg
SVN_R: Vein resistance in mmHg*s/ml
CirculatorySystemModels.WK3 — ConstantWK3(;name, Rc=1.0, Rp=1.0, C=1.0)
Implements the 3 element windkessel model.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s)
Named parameters:
Rc: Characteristic impedance in mmHg*s/ml
Rp: Peripheral resistance in mmHg*s/ml
C: Arterial compliance in ml/mmHg
CirculatorySystemModels.WK3E — ConstantWK3E(;name, Rc=1.0, Rp=1.0, E=1.0)
Implements the 3 element windkessel model. With a vessel elastance instead of a capacitor.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s)
Named parameters:
Rc: Characteristic impedance in mmHg*s/ml
Rp: Peripheral resistance in mmHg*s/ml
E: Arterial elastance in mmHg/ml
CirculatorySystemModels.WK4_P — ConstantWK4_P(;name, Rc=1.0, L=1.0, Rp=1.0, C=1.0)
Implements the 4 element windkessel model with parallel inertance.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s)
Named parameters:
Rc: Characteristic impedance in mmHg*s/ml
L: Inertance/Inductance in mmHgs^2ml^-1
Rp: Peripheral resistance in mmHg*s/ml
C: Arterial compliance in ml/mmHg
CirculatorySystemModels.WK4_PE — ConstantWK4_PE(;name, Rc=1.0, L=1.0, Rp=1.0, E=1.0)
Implements the 4 element windkessel model with parallel inertance. With a vessel elastance instead of a capacitor.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s)
Named parameters:
Rc: Characteristic impedance in mmHg*s/ml
L: Inertance/Inductance in mmHgs^2ml^-1
Rp: Peripheral resistance in mmHg*s/ml
E: Arterial elastance in mmHg/ml
CirculatorySystemModels.WK4_S — ConstantWK4_S(;name, Rc=1.0, L=1.0, Rp=1.0, C=1.0)
Implements the 4 element windkessel model with serial inertance.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s)
Named parameters:
Rc: Characteristic impedance in mmHg*s/ml
L: Inertance/Inductance in mmHgs^2ml^-1
Rp: Peripheral resistance in mmHg*s/ml
C: Arterial compliance in ml/mmHg
CirculatorySystemModels.WK4_SE — ConstantWK4_SE(;name, Rc=1.0, L=1.0, Rp=1.0, E=1.0)
Implements the 4 element windkessel model with serial inertance. With a vessel elastance instead of a capacitor.
Parameters are in the cm, g, s system. Pressure in mmHg. Volume in ml. Flow in cm^3/s (ml/s)
Named parameters:
Rc: Characteristic impedance in mmHg*s/ml
L: Inertance/Inductance in mmHgs^2ml^-1
Rp: Peripheral resistance in mmHg*s/ml
E: Arterial elastance in mmHg/ml
CirculatorySystemModels.Compliance — MethodCompliance(; name, V₀=0.0, C=1.0, inP=false, has_ep=false, has_variable_ep=false, p₀=0.0)
Implements the compliance of a vessel.
Parameters are in the cm, g, s system. Pressure in mmHg. p is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
V₀: Unstressed volume ml
C: Vessel compliance in ml/mmHg
inP: (Bool) formulate in dp/dt (default: false)
has_ep: (Bool) if true, add a parameter p₀ for pressure offset e.g., for thoracic pressure (default: false)
p₀: External pressure in mmHg (e.g., thorax pressure, default: 0.0) Note: if this argument is set, it will be used, even if `hasepisfalse.haseponly controls ifp₀` will be exposed as a parameter!
hasvariableep: (Bool) expose pin for variable external pressure (default: false) This pin can be connected to another pin or function providing external pressure. _Note: ifhasvariableepis set totruethis pin is created, independent ofhasep`!
CirculatorySystemModels.DHdelastance — MethodDHdelastance(t, Eₘᵢₙ, Eₘₐₓ, n₁, n₂, τ, τ₁, τ₂, Eshift, k)
Helper function for DHChamber
CirculatorySystemModels.DHelastance — MethodDHelastance(t, Eₘᵢₙ, Eₘₐₓ, n₁, n₂, τ, τ₁, τ₂, Eshift, k)
Helper function for DHChamber
CirculatorySystemModels.DShiElastance — MethodDShiElastance(t, Eₘᵢₙ, Eₘₐₓ, τ, τₑₛ, τₑₚ, Eshift)
Helper function for ShiChamber
Derivative of the elastance function E(t) for ventricle simulation based on Shi's double cosine function.
Parameters:
Eₘᵢₙ: minimum elastance (diastole)
Eₘₐₓ: maximum elastance (systole)
τₑₛ: end systolic time (end of rising cosine)
τₑₚ: end of pulse time (end of falling cosine)
Eshift: time shift of contraction (for atria), set to 0 for ventricle
CirculatorySystemModels.Elastance — MethodElastance(; name, V₀=0.0, E=1.0, inP=false, has_ep=false, has_variable_ep=false, p₀=0.0)
Implements the elastance of a vessel. Elastance more commonly used to describe the heart.
Parameters are in the cm, g, s system. Pressure in mmHg. p is calculated in mmHg, q is calculated in cm^3/s (ml/s).
Named parameters:
V₀: Unstressed volume ml
E: Vessel elastance in ml/mmHg. Equivalent to compliance as E=1/C
inP: (Bool) formulate in dp/dt (default: false)
has_ep: (Bool) if true, add a parameter p₀ for pressure offset e.g., for thoracic pressure (default: false)
p₀: External pressure in mmHg (e.g., thorax pressure, default: 0.0) Note: if this argument is set, it will be used, even if `hasepisfalse.haseponly controls ifp₀` will be exposed as a parameter!
hasvariableep: (Bool) expose pin for variable external pressure (default: false) This pin can be connected to another pin or function providing external pressure. _Note: ifhasvariableepis set totruethis pin is created, independent ofhasep`!
CirculatorySystemModels.ShiElastance — MethodShiElastance(t, Eₘᵢₙ, Eₘₐₓ, τ, τₑₛ, τₑₚ, Eshift)
Elastance function E(t) for ventricle simulation based on Shi's double cosine function.
Parameters:
Eₘᵢₙ: minimum elastance (diastole)
Eₘₐₓ: maximum elastance (systole)
τₑₛ: end systolic time (end of rising cosine)
τₑₚ: end of pulse time (end of falling cosine)
Eshift: time shift of contraction (for atria), set to 0 for ventricle
CirculatorySystemModels.ShiValve — MethodShiValve(; name, CQ, Kp, Kf, Kb, Kv, θmax, θmin)
Implements the Shi description for valve opening and closing, full description in [Shi].
Parameters are in the cm, g, s system. Pressure in mmHg. Flow in cm^3/s (ml/s) Maximum and Minimum angles given in rad, to convert from degrees multiply angle by pi/180.
Named parameters:
CQ Flow coefficent in ml/(s*mmHg^0.5)
Kp Pressure effect on the valve in rad/(s^2*mmHg)
Kf Frictional effect on the valve in 1/s
Kb Fluid velocity effect on the valve in rad/(s*m)
Kv Vortex effect on the valve in rad/(s*m)
θmax Valve maximum opening angle in rad
θmin Valve minimum opening angle in rad
CirculatorySystemModels.VariableElastance — MethodVariableElastance(; name, V₀=0.0, C=1.0, Escale=1.0, fun, inP=false, has_ep=false, has_variable_ep=false, p₀=0.0)
VariableElastance is defined based on the Elastance element, but has a time varying elastance function modelling the contraction of muscle fibres.
Named parameters:
V₀: stress-free volume (zero pressure volume)
Escale: scaling factor (elastance factor)
fun: function object for elastance (must be fun(t))
inP: (Bool) formulate in dp/dt (default: false)
has_ep: (Bool) if true, add a parameter p₀ for pressure offset e.g., for thoracic pressure (default: false)
p₀: External pressure in mmHg (e.g., thorax pressure, default: 0.0) Note: if this argument is set, it will be used, even if `hasepisfalse.haseponly controls ifp₀` will be exposed as a parameter!
hasvariableep: (Bool) expose pin for variable external pressure (default: false) This pin can be connected to another pin or function providing external pressure. _Note: ifhasvariableepis set totruethis pin is created, independent ofhasep`!