6#include "engine/common/system/Model.h"
7#include "engine/common/system/Systems.h"
24 class PULSE_DECL MechanicalVentilatorModel :
public MechanicalVentilatorSystem,
public Model
29 MechanicalVentilatorModel(Data& pc);
30 virtual ~MechanicalVentilatorModel();
32 void Clear()
override;
35 void Initialize()
override;
37 void SetUp()
override;
39 void StateChange()
override;
41 void AtSteadyState()
override {}
42 void PreProcess()
override;
43 void Process(
bool solve_and_transport =
true)
override;
44 void PostProcess(
bool solve_and_transport =
true)
override;
48 void ComputeExposedModelParameters()
override;
50 void UpdateAirwayMode();
52 void CheckInspirationTriggers();
53 void CalculateInspiration();
54 void CalculatePause();
55 void CalculateExpiration();
56 void SetVentilatorDriver();
57 void CycleMode(
bool patientTriggered);
61 void CalculateRespiratoryParameters();
62 void CalculateInspiratoryRespiratoryParameters();
63 void CalculatePauseRespiratoryParameters();
64 void CalculateExpiratoryRespiratoryParameters();
65 void SetResistances();
68 void CheckReliefValve();
71 double m_CurrentPeriodTime_s;
72 double m_DriverPressure_cmH2O;
73 double m_PreviousDriverFlow_L_Per_s;
74 double m_PreviousDriverPressure_cmH2O;
75 double m_DriverFlow_L_Per_s;
76 double m_CurrentVentilatorVolume_L;
77 double m_CurrentRespiratoryVolume_L;
78 double m_InspirationTime_s;
79 double m_InspiratoryFlow_L_Per_s;
80 double m_PreviousYPieceToConnectionFlow_L_Per_s;
81 double m_PreviousConnectionPressure_cmH2O;
83 eBreathState m_CurrentBreathState;
86 double m_PositiveEndExpiratoryPressure_cmH2O;
87 double m_PeakExpiratoryFlow_L_Per_s;
88 double m_PeakInspiratoryFlow_L_Per_s;
89 double m_EndTidalCarbonDioxideFraction;
90 double m_EndTidalCarbonDioxidePressure_cmH2O;
91 double m_EndTidalOxygenFraction;
92 double m_EndTidalOxygenPressure_cmH2O;
120 double m_MachineClosedResistance_cmH2O_s_Per_L;
121 double m_MachineOpenResistance_cmH2O_s_Per_L;
123 std::vector<std::pair<double, double>> m_leakPoints;
Definition: SEEquipmentActionCollection.h:47
Definition: SEFluidCircuitNode.h:10
Definition: SEFluidCircuitPath.h:9
Definition: SEGasCompartment.h:14
Definition: SEGasSubstanceQuantity.h:10
Definition: SELiquidCompartment.h:11
Definition: SERunningAverage.h:8