Commit 6ba4ab2e authored by Rachel Clipp's avatar Rachel Clipp
Browse files

Cleaned up the internal hemorrhage functionality and removed the internal...

Cleaned up the internal hemorrhage functionality and removed the internal hemorrhage lists. These do not need to be book kept (bookkeeped?) seperately. Added an internal severity hemorrhage scenario.
parent fd2668a7
{
"Name": "HemorrhageClass2InternalSpleen",
"Description": "25% Blood loss from spleen",
"PatientConfiguration": { "PatientFile": "StandardMale.json" },
"DataRequestManager":
{
"DataRequest":
[
{ "DecimalFormat": { "Precision": 1 }, "PropertyName": "Weight", "Unit": "kg" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "HeartRate", "Unit": "1/min" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "Physiology", "PropertyName": "HeartStrokeVolume", "Unit": "mL" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "BloodVolume", "Unit": "L" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "Physiology", "PropertyName": "ExtravascularFluidVolume", "Unit": "L" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "Physiology", "PropertyName": "ArterialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "Physiology", "PropertyName": "MeanArterialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { }, "Category": "Physiology", "PropertyName": "SystolicArterialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "Physiology", "PropertyName": "DiastolicArterialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "CardiacOutput", "Unit": "L/min" },
{ "DecimalFormat": { }, "Category": "Physiology", "PropertyName": "HemoglobinContent", "Unit": "g" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "CentralVenousPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "PulmonaryCapillariesWedgePressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 3 }, "Category": "Physiology", "PropertyName": "TidalVolume", "Unit": "mL" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "TotalLungVolume", "Unit": "L" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "RespirationRate", "Unit": "1/min" },
{ "DecimalFormat": { "Precision": 3 }, "Category": "Physiology", "PropertyName": "OxygenSaturation", "Unit": "unitless" },
{ "DecimalFormat": { "Precision": 3 }, "Category": "Physiology", "PropertyName": "CarbonDioxideSaturation", "Unit": "unitless" },
{ "DecimalFormat": { "Precision": 4 }, "Category": "Physiology", "PropertyName": "EndTidalCarbonDioxideFraction", "Unit": "unitless" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "TotalAlveolarVentilation", "Unit": "L/min" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "TranspulmonaryPressure", "Unit": "cmH2O" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "Physiology", "PropertyName": "CoreTemperature", "Unit": "degC" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "Physiology", "PropertyName": "SkinTemperature", "Unit": "degC" },
{ "DecimalFormat": { "Precision": 3 }, "Category": "Physiology", "PropertyName": "RespiratoryExchangeRatio", "Unit": "unitless" },
{ "DecimalFormat": { }, "Category": "Physiology", "PropertyName": "OxygenConsumptionRate", "Unit": "mL/min" },
{ "DecimalFormat": { }, "Category": "Physiology", "PropertyName": "CarbonDioxideProductionRate", "Unit": "mL/min" },
{ "DecimalFormat": { }, "Category": "Physiology", "PropertyName": "GlomerularFiltrationRate", "Unit": "mL/min" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Physiology", "PropertyName": "RenalBloodFlow", "Unit": "L/min" },
{ "DecimalFormat": { "Precision": 3 }, "Category": "Physiology", "PropertyName": "UrineProductionRate", "Unit": "mL/min" },
{ "DecimalFormat": { "Precision": 4 }, "Category": "Physiology", "PropertyName": "LeftAfferentArterioleResistance", "Unit": "mmHg min/mL" },
{ "DecimalFormat": { "Precision": 4 }, "Category": "Physiology", "PropertyName": "RightAfferentArterioleResistance", "Unit": "mmHg min/mL" },
{ "DecimalFormat": { }, "Category": "GasCompartment", "CompartmentName": "LeftAlveoli", "PropertyName": "Pressure", "Unit": "cmH2O" },
{ "DecimalFormat": { }, "Category": "GasCompartment", "CompartmentName": "RightAlveoli", "PropertyName": "Pressure", "Unit": "cmH2O" },
{ "DecimalFormat": { }, "Category": "GasCompartment", "CompartmentName": "LeftAlveoli", "SubstanceName": "Oxygen", "PropertyName": "PartialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "GasCompartment", "CompartmentName": "LeftAlveoli", "SubstanceName": "CarbonDioxide", "PropertyName": "PartialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { }, "Category": "GasCompartment", "CompartmentName": "RightAlveoli", "SubstanceName": "Oxygen", "PropertyName": "PartialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "GasCompartment", "CompartmentName": "RightAlveoli", "SubstanceName": "CarbonDioxide", "PropertyName": "PartialPressure", "Unit": "mmHg"},
{ "DecimalFormat": { }, "Category": "GasCompartment", "CompartmentName": "Carina", "SubstanceName": "Oxygen", "PropertyName": "PartialPressure", "Unit": "cmH2O" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "GasCompartment", "CompartmentName": "Carina", "SubstanceName": "CarbonDioxide", "PropertyName": "PartialPressure", "Unit": "cmH2O" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "LiquidCompartment", "CompartmentName": "Aorta", "SubstanceName": "Oxygen", "PropertyName": "PartialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "LiquidCompartment", "CompartmentName": "Aorta", "SubstanceName": "CarbonDioxide", "PropertyName": "PartialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "LiquidCompartment", "CompartmentName": "VenaCava", "SubstanceName": "Oxygen", "PropertyName": "PartialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 1 }, "Category": "LiquidCompartment", "CompartmentName": "VenaCava", "SubstanceName": "CarbonDioxide", "PropertyName": "PartialPressure", "Unit": "mmHg" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "LiquidCompartment", "CompartmentName": "RightTubules", "SubstanceName": "Sodium", "PropertyName": "Concentration", "Unit": "g/L" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "LiquidCompartment", "CompartmentName": "LeftTubules", "SubstanceName": "Sodium", "PropertyName": "Concentration", "Unit": "g/L" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Substance", "SubstanceName": "Oxygen", "PropertyName": "AlveolarTransfer", "Unit": "mL/s" },
{ "DecimalFormat": { "Precision": 2 }, "Category": "Substance", "SubstanceName": "CarbonDioxide", "PropertyName": "AlveolarTransfer", "Unit": "mL/s" },
{ "DecimalFormat": { "Precision": 6 }, "Category": "Substance", "SubstanceName": "Epinephrine", "PropertyName": "BloodConcentration", "Unit": "ug/L" },
{ "DecimalFormat": { "Precision": 8 }, "Category": "Substance", "SubstanceName": "Epinephrine", "PropertyName": "SystemicMassCleared", "Unit": "ug" },
{ "DecimalFormat": { "Precision": 3 }, "Category": "Physiology", "PropertyName": "SystemicVascularResistance", "Unit": "mmHg s/mL"}
]
},
"AnyAction": [{
"AdvanceTime": {
"Time": {
"ScalarTime": {
"Value": 30.0,
"Unit": "s"
}
}
}
}, {
"PatientAction": {
"Hemorrhage": {
"Compartment": "SpleenVasculature",
"Severity": {
"Scalar0To1": {
"Value": 0.5
}
},
"Type": "Internal"
}
}
}, {
"AdvanceTime": {
"Time": {
"ScalarTime": {
"Value": 1230.0,
"Unit": "s"
}
}
}
}, {
"PatientAction": {
"Hemorrhage": {
"Compartment": "SpleenVasculature",
"Severity": {
"Scalar0To1": {
"Value": 0.0
}
},
"Type": "Internal"
}
}
}, {
"AdvanceTime": {
"Time": {
"ScalarTime": {
"Value": 400.0,
"Unit": "s"
}
}
}
}]
}
......@@ -122,23 +122,6 @@ void PBPulsePhysiology::Serialize(const PULSE_BIND::CardiovascularData& src, Car
}
if (!dst.m_HemorrhagePaths.empty())
dst.m_data.GetCircuits().GetCardiovascularCircuit().StateChange();
// Only associating references here, as these are a subset of the hemorrhage links/paths we just processed
for (auto name : src.internalhemorrhagelinks())
{
SELiquidCompartmentLink* hLink = dst.m_data.GetCompartments().GetCardiovascularGraph().GetLink(name);
if (hLink == nullptr)
dst.Fatal("Unable to find Internal Hemorrhage Link " + name);
else
dst.m_InternalHemorrhageLinks.push_back(hLink);
}
for (auto name : src.internalhemorrhagepaths())
{
SEFluidCircuitPath* hPath = dst.m_data.GetCircuits().GetCardiovascularCircuit().GetPath(name);
if (hPath == nullptr)
dst.Fatal("Unable to find Internal Hemorrhage path " + name);
else
dst.m_InternalHemorrhagePaths.push_back(hPath);
}
}
PULSE_BIND::CardiovascularData* PBPulsePhysiology::Unload(const Cardiovascular& src)
{
......@@ -189,10 +172,6 @@ void PBPulsePhysiology::Serialize(const Cardiovascular& src, PULSE_BIND::Cardiov
for (auto* p : src.m_HemorrhagePaths)
dst.add_hemorrhagepaths(p->GetName());
for (auto* l : src.m_InternalHemorrhageLinks)
dst.add_internalhemorrhagelinks(l->GetName());
for (auto* p : src.m_InternalHemorrhagePaths)
dst.add_internalhemorrhagepaths(p->GetName());
}
void PBPulsePhysiology::Load(const PULSE_BIND::DrugData& src, Drugs& dst)
......
This diff is collapsed.
......@@ -108,9 +108,7 @@ protected:
double m_CompressionPeriod_s;
//Hemorrhage
std::vector<SEFluidCircuitPath*> m_HemorrhagePaths;
std::vector<SEFluidCircuitPath*> m_InternalHemorrhagePaths;
std::vector<SELiquidCompartmentLink*> m_HemorrhageLinks;
std::vector<SELiquidCompartmentLink*> m_InternalHemorrhageLinks;
// Vitals and Averages
double m_CurrentCardiacCycleTime_s;
double m_CardiacCycleDiastolicVolume_mL; // Maximum left heart volume for the current cardiac cycle
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment