Chaste
Release::3.4
|
#include <PropagationPropertiesCalculator.hpp>
Protected Member Functions | |
std::vector< double > & | rGetCachedVoltages (unsigned globalNodeIndex) |
Private Attributes | |
Hdf5DataReader * | mpDataReader |
const std::string | mVoltageName |
std::vector< double > | mTimes |
unsigned | mCachedNodeGlobalIndex |
std::vector< double > | mCachedVoltages |
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.
|
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().
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.
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().
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().
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().
|
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.
|
private |
Which node voltages have been cached for, if any
Definition at line 63 of file PropagationPropertiesCalculator.hpp.
Referenced by rGetCachedVoltages().
|
private |
The cached voltages vector
Definition at line 65 of file PropagationPropertiesCalculator.hpp.
Referenced by rGetCachedVoltages().
|
private |
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().
|
private |
Time values
Definition at line 61 of file PropagationPropertiesCalculator.hpp.
Referenced by CalculateAboveThresholdDepolarisationsForLastAp(), CalculateActionPotentialDuration(), CalculateAllAboveThresholdDepolarisations(), CalculateAllActionPotentialDurations(), CalculateAllActionPotentialDurationsForNodeRange(), CalculateAllConductionVelocities(), CalculateAllMaximumUpstrokeVelocities(), CalculateConductionVelocity(), CalculateMaximumUpstrokeVelocity(), and CalculateUpstrokeTimes().
|
private |
Name of the variable representing the membrane potential.
Definition at line 59 of file PropagationPropertiesCalculator.hpp.
Referenced by CalculateAllActionPotentialDurationsForNodeRange(), CalculateAllConductionVelocities(), CalculateConductionVelocity(), and rGetCachedVoltages().