Pulse adds COVID-19 Simulation Support
×
Drugs.h
1 /* Distributed under the Apache License, Version 2.0.
2  See accompanying NOTICE file for details.*/
3 
4 #pragma once
5 #include "PulsePhysiologySystems.h"
6 #include "system/physiology/SEDrugSystem.h"
10 
18 class PULSE_DECL Drugs : public PulseDrugSystem
19 {
20  friend class PulseData;
21  friend class PBPulsePhysiology;//friend the serialization class
22  friend class PulseEngineTest;
23 protected:
24  Drugs(PulseData& data);
26 
27 public:
28  virtual ~Drugs();
29 
30  void Clear();
31 
32  // Set members to a stable homeostatic state
33  void Initialize();
34  // Set pointers and other member varialbes common to both homeostatic initialization and loading a state
35  void SetUp();
36 
37  void AtSteadyState();
38  void PreProcess();
39  void Process(bool solve_and_transport=true);
40  void PostProcess(bool solve_and_transport=true){}
41 
42 protected:
43  void ComputeExposedModelParameters() override;
44 
45  void AdministerSubstanceBolus();
46  void AdministerSubstanceInfusion();
47  void AdministerSubstanceCompoundInfusion();
48 
49  void CalculatePartitionCoefficients();
50  void CalculateSubstanceClearance();
51  void CalculatePlasmaSubstanceConcentration();
52  void CalculateDrugEffects();
53 
54  // Stateless member variable (Set in SetUp())
55  double m_dt_s;
63 };
virtual void Clear()
Definition: SEDrugSystem.cpp:34
SELiquidCompartment * m_muscleIntracellular
Definition: Drugs.h:58
Definition: SEFluidCircuitPath.h:8
Definition: Controller.h:64
double m_dt_s
Definition: Drugs.h:55
virtual void SetUp()=0
void PostProcess(bool solve_and_transport=true)
Definition: Drugs.h:40
virtual void Process(bool solve_and_transport=true)=0
SETissueCompartment * m_fatTissue
Definition: Drugs.h:62
SELiquidCompartment * m_venaCavaVascular
Definition: Drugs.h:57
SELiquidCompartment * m_aortaVascular
Definition: Drugs.h:56
Definition: PBPulsePhysiology.h:18
Definition: SELiquidCompartment.h:10
SETissueCompartment * m_liverTissue
Definition: Drugs.h:60
virtual void Initialize()
Default system values to their homeostatic values
Definition: System.h:13
Definition: SETissueCompartment.h:8
virtual void ComputeExposedModelParameters()=0
Definition: PulsePhysiologySystems.h:75
Definition: EngineTest.h:28
The drug system contains the physiologically based pharmacokinetic (PBPK) model and the pharmacodynam...
Definition: Drugs.h:18
SELiquidCompartment * m_liverVascular
Definition: Drugs.h:59
SEFluidCircuitPath * m_IVToVenaCava
Definition: Drugs.h:61
virtual void PreProcess()=0
PulseData & m_data
Definition: Drugs.h:25
virtual void AtSteadyState()=0
Notify systems that steady state has been achieved.

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.