The nervous class holds models of the peripheral and central nervous system. Currently, on the baroreceptor reflex is modeled. More...
#include <Nervous.h>

Static Public Member Functions | |
static size_t | TypeHash () |
static constexpr char const *const | TypeTag () |
![]() | |
static size_t | TypeHash () |
static constexpr char const *const | TypeTag () |
![]() | |
static const SEScalar * | GetScalar (const char *name, std::vector< SESystem * > *systems) |
static const SEScalar * | GetScalar (const std::string &name, std::vector< SESystem * > *systems) |
Protected Member Functions | |
Nervous (BioGears &bg) | |
virtual void | Unload (CDM::BioGearsNervousSystemData &data) const |
void | SetUp () override |
Initializes the nervous specific quantities. More... | |
void | BaroreceptorFeedback () |
Calculates the baroreceptor feedback and sets the scaling parameters in the CDM. More... | |
void | CheckPainStimulus () |
Calculates the patient pain response due to stimulus, susceptibility and drugs. More... | |
void | CheckNervousStatus () |
Checks metrics in the nervous system to determine events to be thrown. Currently includes brain status and presence of fasciculation. More... | |
void | ChemoreceptorFeedback () |
Calculates the chemoreceptor feedback and sets the scaling parameters in the CDM. More... | |
void | SetPupilEffects () |
Sets pupil size and reactivity modifiers based on drug and TBI effects. More... | |
void | CalculateSleepEffects () |
Cacluates the cumulative sleep debt burden on the patient. More... | |
void | UpdateSleepState () |
Update global nervous sleep state. More... | |
void | AfferentResponse () |
void | CentralSignalProcess () |
void | EfferentResponse () |
void | LocalAutoregulation () |
Calculates the cerebral autoregulation and local autoregulation of muscle and myocardium. More... | |
![]() | |
void | Unload (CDM::NervousSystemData &data) const |
![]() | |
void | Unload (CDM::SystemData &data) const |
![]() | |
virtual void | Debug (const char *msg, const char *origin="") const |
virtual void | Debug (const std::string &msg, const std::string &origin=empty) const |
virtual void | Debug (std::ostream &msg, const std::string &origin=empty) const |
virtual void | Info (const char *msg, const char *origin="") const |
virtual void | Info (const std::string &msg, const std::string &origin=empty) const |
virtual void | Info (std::ostream &msg, const std::string &origin=empty) const |
virtual void | Warning (const char *msg, const char *origin="") const |
virtual void | Warning (const std::string &msg, const std::string &origin=empty) const |
virtual void | Warning (std::ostream &msg, const std::string &origin=empty) const |
virtual void | Error (const char *msg, const char *origin="") const |
virtual void | Error (const std::string msg, const std::string origin=empty) const |
virtual void | Error (std::ostream &msg, const std::string &origin=empty) const |
virtual void | Fatal (const char *msg, const char *origin="") const |
virtual void | Fatal (const std::string &msg, const std::string &origin=empty) const |
virtual void | Fatal (std::ostream &msg, const std::string &origin=empty) const |
![]() | |
virtual void | LoadState () |
Static Protected Member Functions | |
static auto | make_unique (BioGears &bg) -> std::unique_ptr< Nervous > |
Friends | |
class | BioGears |
class | BioGearsEngineTest |
Additional Inherited Members | |
![]() | |
static const std::string | empty |
static const char * | empty_cStr |
Detailed Description
The nervous class holds models of the peripheral and central nervous system. Currently, on the baroreceptor reflex is modeled.
Constructor & Destructor Documentation
|
protected |
|
overridevirtual |
Member Function Documentation
|
protected |
|
overridevirtual |
Notify systems that steady state has been achieved.
Reimplemented from biogears::BioGearsSystem.
|
protected |
Calculates the baroreceptor feedback and sets the scaling parameters in the CDM.
The baroreceptor feedback function uses the current mean arterial pressure relative to the mean arterial pressure set-point in order to calculate the sympathetic and parasympathetic response fractions. These fractions are used to update the scaling parameters of heart rate, heart elastance, resistance and compliance for each time step.
- Todo:
- Add decompensation. Perhaps a reduction in the effect that is a function of blood volume below a threshold... and maybe time.
SEScalar & biogears::Nervous::CalculateCentralNervousSOFA | ( | ) |
bool biogears::Nervous::CalculatePsychomotorVigilanceTask | ( | SEPsychomotorVigilanceTask & | pvt | ) |
Sets data on the PVT object.
Uses information from calculatesleepeffects routine (see nervous-assessments)
|
protected |
Cacluates the cumulative sleep debt burden on the patient.
Models for metabolic changes, vigilance and awareness changes are computed here. These models effect physiology data requests and the tissue system
|
protected |
|
protected |
Checks metrics in the nervous system to determine events to be thrown. Currently includes brain status and presence of fasciculation.
Intracranial pressure is checked to determine if the patient has Intracranial Hyper/hypotension Fasciculation can occur as a result of calcium/magnesium deficiency (or other electrolyte imbalances),succinylcholine, nerve agents, ALS Currently, only fasciculations due to the nerve agent Sarin are active. Other causes are a subject of model improvement
- Event:
- Patient: Intracranial Hypertension. The intracranial pressure has risen above 25 mmHg.
- Event:
- Patient: End Intracranial Hypertension. The intracranial pressure has fallen below 24 mmHg.
- Event:
- Patient: Intracranial Hypotension. The intracranial pressure has fallen below 7 mmHg.
- Event:
- Patient: End Intracranial Hypotension. The intracranial pressure has risen above 7.5 mmHg.
[nambda1971cholinesterase]
|
protected |
Calculates the patient pain response due to stimulus, susceptibility and drugs.
A patient reacts to a noxious stimulus in a certain way. Generally this is reported as a VAS scale value. This value is generally reported by the patient after the nervous system has already parsed the stimulus. For a robotic manikin trainer we need to determine the nervous system and systemic responses related to that stimulus
|
protected |
Calculates the chemoreceptor feedback and sets the scaling parameters in the CDM.
The chemoreceptor feedback function uses the current arterial partial pressure of oxygen and carbon dioxide relative to the partial pressure set-points in order to calculate response signal. The affected systems identify the signal and adjust accordingly. Note that chemoreception is currently built into the respiratory driver; therefore, the chemoreceptor feedback only sets CV modifiers.
|
inlineoverridevirtual |
Reimplemented from biogears::SENervousSystem.
|
overridevirtual |
Reimplemented from biogears::SENervousSystem.
|
protected |
|
inlineoverridevirtual |
Reimplemented from biogears::SENervousSystem.
|
overridevirtual |
Initializes system properties to valid homeostatic values.
Reimplemented from biogears::BioGearsSystem.
|
virtual |
|
protected |
Calculates the cerebral autoregulation and local autoregulation of muscle and myocardium.
|
overridevirtual |
Nervous PostProcess Step.
Currently no nervous postprocess methods.
Implements biogears::BioGearsSystem.
|
overridevirtual |
Preprocess methods for the nervous system.
Computes nervous system regulation of the body. Baroreceptor and chemoreceptor feedback is computed and modifiers set in preparation for systems processing.
Implements biogears::BioGearsSystem.
|
overridevirtual |
Nervous Process Step.
The only current Process-specific function checks the brain status to set events.
Implements biogears::BioGearsSystem.
|
protected |
Sets pupil size and reactivity modifiers based on drug and TBI effects.
Modifiers are on a scale between -1 (for reduction in size/reactivity) and 1 (for increase) TBI effects are applied to the eye on the same side of the injury if localized or both if diffuse Drug and TBI pupil effects are simply summed together
|
overrideprotectedvirtual |
Initializes the nervous specific quantities.
Initializes the nervous system.
Implements biogears::BioGearsSystem.
|
inlinestatic |
|
inlinestatic |
|
overridevirtual |
Reimplemented from biogears::SENervousSystem.
|
protectedvirtual |
|
protected |
Update global nervous sleep state.
Update sleep state when action is used.
Friends And Related Function Documentation
|
friend |
|
friend |
Member Data Documentation
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |