#include <PropagationPropertiesCalculator.hpp>
Calculate physiological properties at given global mesh indices
Definition at line 53 of file PropagationPropertiesCalculator.hpp.
PropagationPropertiesCalculator::PropagationPropertiesCalculator | ( | Hdf5DataReader * | pDataReader, | |
const std::string | voltageName = "V" | |||
) |
Constructor.
pDataReader | Pointer to the data reader containing the simulation. | |
voltageName | Optionally the name of the variable representing the membrane potential. Defaults to "V". |
Definition at line 43 of file PropagationPropertiesCalculator.cpp.
PropagationPropertiesCalculator::~PropagationPropertiesCalculator | ( | ) | [virtual] |
Destructor
Definition at line 51 of file PropagationPropertiesCalculator.cpp.
unsigned PropagationPropertiesCalculator::CalculateAboveThresholdDepolarisationsForLastAp | ( | unsigned | globalNodeIndex, | |
double | threshold | |||
) |
globalNodeIndex | the cell at which to calculate | |
threshold | the threshold above which the depolarisations are counted |
Definition at line 300 of file PropagationPropertiesCalculator.cpp.
References CellProperties::GetNumberOfAboveThresholdDepolarisationsForLastAp(), mTimes, and rGetCachedVoltages().
double PropagationPropertiesCalculator::CalculateActionPotentialDuration | ( | const double | percentage, | |
unsigned | globalNodeIndex | |||
) |
percentage | The percentage of the amplitude to calculate for. | |
globalNodeIndex | The cell at which to calculate. |
Definition at line 77 of file PropagationPropertiesCalculator.cpp.
References EXCEPTION, CellProperties::GetLastActionPotentialDuration(), mTimes, and rGetCachedVoltages().
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
std::vector< unsigned > PropagationPropertiesCalculator::CalculateAllAboveThresholdDepolarisations | ( | unsigned | globalNodeIndex, | |
double | threshold | |||
) |
globalNodeIndex | the cell at which to calculate | |
threshold | the threshold above which the depolarisations are counted |
Definition at line 292 of file PropagationPropertiesCalculator.cpp.
References CellProperties::GetNumberOfAboveThresholdDepolarisationsForAllAps(), mTimes, and rGetCachedVoltages().
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteAboveThresholdDepolarisationFile().
std::vector< double > PropagationPropertiesCalculator::CalculateAllActionPotentialDurations | ( | const double | percentage, | |
unsigned | globalNodeIndex, | |||
double | threshold | |||
) |
percentage | The percentage of the amplitude to calculate for. | |
globalNodeIndex | The cell at which to calculate. | |
threshold | The voltage threshold for APD calculation (we count this as the start of an AP) |
Definition at line 89 of file PropagationPropertiesCalculator.cpp.
References CellProperties::GetAllActionPotentialDurations(), mTimes, and rGetCachedVoltages().
std::vector< std::vector< double > > PropagationPropertiesCalculator::CalculateAllActionPotentialDurationsForNodeRange | ( | const double | percentage, | |
unsigned | lowerNodeIndex, | |||
unsigned | upperNodeIndex, | |||
double | threshold | |||
) |
percentage | The percentage of the amplitude to calculate for. | |
lowerNodeIndex | First cell at which to calculate. | |
upperNodeIndex | One past the last cell at which to calculate. | |
threshold | The voltage threshold for APD calculation (we count this as the start of an AP) |
Definition at line 98 of file PropagationPropertiesCalculator.cpp.
References CellProperties::GetAllActionPotentialDurations(), Exception::GetShortMessage(), Hdf5DataReader::GetVariableOverTimeOverMultipleNodes(), mpDataReader, mTimes, and mVoltageName.
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteApdMapFile().
std::vector< double > PropagationPropertiesCalculator::CalculateAllConductionVelocities | ( | unsigned | globalNearNodeIndex, | |
unsigned | globalFarNodeIndex, | |||
const double | euclideanDistance | |||
) |
globalNearNodeIndex | The cell to measure from. | |
globalFarNodeIndex | The cell to measure to. | |
euclideanDistance | The distance the AP travels between the cells, along the tissue. |
Definition at line 227 of file PropagationPropertiesCalculator.cpp.
References CellProperties::GetTimesAtMaxUpstrokeVelocity(), Hdf5DataReader::GetVariableOverTime(), mpDataReader, mTimes, mVoltageName, and rGetCachedVoltages().
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteConductionVelocityMap().
std::vector< double > PropagationPropertiesCalculator::CalculateAllMaximumUpstrokeVelocities | ( | unsigned | globalNodeIndex, | |
double | threshold | |||
) |
globalNodeIndex | The cell at which to calculate. | |
threshold | The voltage threshold (we use this for marking the end of an AP) |
Definition at line 63 of file PropagationPropertiesCalculator.cpp.
References CellProperties::GetMaxUpstrokeVelocities(), mTimes, and rGetCachedVoltages().
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteAboveThresholdDepolarisationFile(), and PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteMaxUpstrokeVelocityMap().
double PropagationPropertiesCalculator::CalculateConductionVelocity | ( | unsigned | globalNearNodeIndex, | |
unsigned | globalFarNodeIndex, | |||
const double | euclideanDistance | |||
) |
globalNearNodeIndex | The cell to measure from. | |
globalFarNodeIndex | The cell to measure to. | |
euclideanDistance | The distance the AP travels between the cells, along the tissue. |
Definition at line 171 of file PropagationPropertiesCalculator.cpp.
References CellProperties::GetMaxUpstrokeVelocities(), CellProperties::GetTimeAtLastMaxUpstrokeVelocity(), CellProperties::GetTimesAtMaxUpstrokeVelocity(), Hdf5DataReader::GetVariableOverTime(), mpDataReader, mTimes, mVoltageName, and rGetCachedVoltages().
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
double PropagationPropertiesCalculator::CalculateMaximumUpstrokeVelocity | ( | unsigned | globalNodeIndex | ) |
globalNodeIndex | The cell at which to calculate. |
Definition at line 56 of file PropagationPropertiesCalculator.cpp.
References CellProperties::GetLastMaxUpstrokeVelocity(), mTimes, and rGetCachedVoltages().
globalNodeIndex | The cell at which to calculate. |
Definition at line 157 of file PropagationPropertiesCalculator.cpp.
References rGetCachedVoltages().
std::vector< double > PropagationPropertiesCalculator::CalculateUpstrokeTimes | ( | unsigned | globalNodeIndex, | |
double | threshold | |||
) |
globalNodeIndex | The cell at which to calculate. | |
threshold | The voltage threshold for APD calculation (we count this as the start of an AP) |
Definition at line 70 of file PropagationPropertiesCalculator.cpp.
References CellProperties::GetTimesAtMaxUpstrokeVelocity(), mTimes, and rGetCachedVoltages().
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteUpstrokeTimeMap().
std::vector< double > & PropagationPropertiesCalculator::rGetCachedVoltages | ( | unsigned | globalNodeIndex | ) | [protected] |
Note: will only cache the last node index used.
globalNodeIndex | the index of the node to cache voltages for |
Definition at line 308 of file PropagationPropertiesCalculator.cpp.
References Hdf5DataReader::GetVariableOverTime(), mCachedNodeGlobalIndex, mCachedVoltages, mpDataReader, and mVoltageName.
Referenced by CalculateAboveThresholdDepolarisationsForLastAp(), CalculateActionPotentialDuration(), CalculateAllAboveThresholdDepolarisations(), CalculateAllActionPotentialDurations(), CalculateAllConductionVelocities(), CalculateAllMaximumUpstrokeVelocities(), CalculateConductionVelocity(), CalculateMaximumUpstrokeVelocity(), CalculatePeakMembranePotential(), and CalculateUpstrokeTimes().
void PropagationPropertiesCalculator::SetHdf5DataReader | ( | Hdf5DataReader * | pDataReader | ) |
Provide a new pointer to an HDF5 data reader
pDataReader | An HDF5 data reader to use (needed if the existing one is deleted and a new one opened) |
Definition at line 318 of file PropagationPropertiesCalculator.cpp.
References mpDataReader.
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles().
Which node voltages have been cached for, if any
Definition at line 63 of file PropagationPropertiesCalculator.hpp.
Referenced by rGetCachedVoltages().
std::vector<double> PropagationPropertiesCalculator::mCachedVoltages [private] |
The cached voltages vector
Definition at line 65 of file PropagationPropertiesCalculator.hpp.
Referenced by rGetCachedVoltages().
Reader to get the data from which we use to calculate properties.
Definition at line 57 of file PropagationPropertiesCalculator.hpp.
Referenced by CalculateAllActionPotentialDurationsForNodeRange(), CalculateAllConductionVelocities(), CalculateConductionVelocity(), rGetCachedVoltages(), and SetHdf5DataReader().
std::vector<double> PropagationPropertiesCalculator::mTimes [private] |
Time values
Definition at line 61 of file PropagationPropertiesCalculator.hpp.
Referenced by CalculateAboveThresholdDepolarisationsForLastAp(), CalculateActionPotentialDuration(), CalculateAllAboveThresholdDepolarisations(), CalculateAllActionPotentialDurations(), CalculateAllActionPotentialDurationsForNodeRange(), CalculateAllConductionVelocities(), CalculateAllMaximumUpstrokeVelocities(), CalculateConductionVelocity(), CalculateMaximumUpstrokeVelocity(), and CalculateUpstrokeTimes().
const std::string PropagationPropertiesCalculator::mVoltageName [private] |
Name of the variable representing the membrane potential.
Definition at line 59 of file PropagationPropertiesCalculator.hpp.
Referenced by CalculateAllActionPotentialDurationsForNodeRange(), CalculateAllConductionVelocities(), CalculateConductionVelocity(), and rGetCachedVoltages().