Chaste Release::3.1
|
#include <AbstractUntemplatedParameterisedSystem.hpp>
Public Member Functions | |
AbstractUntemplatedParameterisedSystem (unsigned numberOfStateVariables) | |
virtual | ~AbstractUntemplatedParameterisedSystem () |
boost::shared_ptr< const AbstractOdeSystemInformation > | GetSystemInformation () const |
std::string | GetSystemName () const |
unsigned | GetNumberOfAttributes () const |
bool | HasAttribute (const std::string &rName) const |
double | GetAttribute (const std::string &rName) const |
unsigned | GetNumberOfStateVariables () const |
const std::vector< std::string > & | rGetStateVariableNames () const |
const std::vector< std::string > & | rGetStateVariableUnits () const |
unsigned | GetStateVariableIndex (const std::string &rName) const |
bool | HasStateVariable (const std::string &rName) const |
std::string | GetStateVariableUnits (unsigned index) const |
unsigned | GetNumberOfParameters () const |
const std::vector< std::string > & | rGetParameterNames () const |
const std::vector< std::string > & | rGetParameterUnits () const |
unsigned | GetParameterIndex (const std::string &rName) const |
bool | HasParameter (const std::string &rName) const |
std::string | GetParameterUnits (unsigned index) const |
unsigned | GetNumberOfDerivedQuantities () const |
const std::vector< std::string > & | rGetDerivedQuantityNames () const |
const std::vector< std::string > & | rGetDerivedQuantityUnits () const |
unsigned | GetDerivedQuantityIndex (const std::string &rName) const |
bool | HasDerivedQuantity (const std::string &rName) const |
std::string | GetDerivedQuantityUnits (unsigned index) const |
unsigned | GetAnyVariableIndex (const std::string &rName) const |
bool | HasAnyVariable (const std::string &rName) const |
std::string | GetAnyVariableUnits (unsigned index) const |
std::string | GetAnyVariableUnits (const std::string &rName) const |
Protected Attributes | |
unsigned | mNumberOfStateVariables |
boost::shared_ptr < AbstractOdeSystemInformation > | mpSystemInfo |
This class is an untemplated base class for AbstractParameterisedSystem, containing those methods which don't require knowledge of the vector type, in order to make it easier to move between templated and generic parts of the codebase. In particular it holds the AbstractOdeSystemInformation pointer, and methods to access this object to provide information about the ODE system, such as state variable/parameter names and units.
Definition at line 53 of file AbstractUntemplatedParameterisedSystem.hpp.
AbstractUntemplatedParameterisedSystem::AbstractUntemplatedParameterisedSystem | ( | unsigned | numberOfStateVariables | ) |
Constructor.
numberOfStateVariables | the number of state variables in the ODE system |
Definition at line 43 of file AbstractUntemplatedParameterisedSystem.cpp.
AbstractUntemplatedParameterisedSystem::~AbstractUntemplatedParameterisedSystem | ( | ) | [virtual] |
Make this class polymorphic.
Definition at line 48 of file AbstractUntemplatedParameterisedSystem.cpp.
unsigned AbstractUntemplatedParameterisedSystem::GetAnyVariableIndex | ( | const std::string & | rName | ) | const |
Get the index of a variable, whether a state variable, parameter, or derived quantity, with the given name. The returned index is suitable for use with GetAnyVariableUnits, GetAnyVariable, etc.
rName | the name of a variable |
Definition at line 136 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
Referenced by GetAnyVariableUnits().
std::string AbstractUntemplatedParameterisedSystem::GetAnyVariableUnits | ( | unsigned | index | ) | const |
Get the units of a variable, whether a state variable, parameter, or derived quantity, given its index as returned by GetAnyVariableIndex.
index | an index from GetAnyVariableIndex. |
Definition at line 146 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
Referenced by GetAnyVariableUnits().
std::string AbstractUntemplatedParameterisedSystem::GetAnyVariableUnits | ( | const std::string & | rName | ) | const |
Get the units of a variable, whether a state variable, parameter, or derived quantity, given its index as returned by GetAnyVariableIndex.
rName | the name of any variable in the model. |
Definition at line 151 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetAnyVariableIndex(), and GetAnyVariableUnits().
double AbstractUntemplatedParameterisedSystem::GetAttribute | ( | const std::string & | rName | ) | const |
Get the value of a named attribute.
rName | the attribute name. |
Definition at line 201 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
unsigned AbstractUntemplatedParameterisedSystem::GetDerivedQuantityIndex | ( | const std::string & | rName | ) | const |
Get the index of a derived quantity, given its name.
rName | the name of a derived quantity. |
Definition at line 175 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
std::string AbstractUntemplatedParameterisedSystem::GetDerivedQuantityUnits | ( | unsigned | index | ) | const |
Get the units of a derived quantity.
index | an index from GetDerivedQuantityIndex. |
Definition at line 185 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
unsigned AbstractUntemplatedParameterisedSystem::GetNumberOfAttributes | ( | ) | const |
Return the number of named attributes that this system has.
Definition at line 191 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
unsigned AbstractUntemplatedParameterisedSystem::GetNumberOfDerivedQuantities | ( | ) | const |
Get the number of derived quantities.
Definition at line 160 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
Referenced by OdeSolution::rGetDerivedQuantities().
unsigned AbstractUntemplatedParameterisedSystem::GetNumberOfParameters | ( | ) | const |
Get the number of parameters.
Reimplemented in AbstractCardiacCell, and AbstractCvodeCell.
Definition at line 102 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
Referenced by OdeSolution::rGetParameters().
unsigned AbstractUntemplatedParameterisedSystem::GetNumberOfStateVariables | ( | ) | const |
Get the number of state variables in the ODE system.
Reimplemented in AbstractCardiacCell, and AbstractCvodeCell.
Definition at line 68 of file AbstractUntemplatedParameterisedSystem.cpp.
References mNumberOfStateVariables.
Referenced by RungeKuttaFehlbergIvpOdeSolver::CalculateNextYValue(), RungeKutta4IvpOdeSolver::CalculateNextYValue(), RungeKutta2IvpOdeSolver::CalculateNextYValue(), HeunIvpOdeSolver::CalculateNextYValue(), EulerIvpOdeSolver::CalculateNextYValue(), BackwardEulerIvpOdeSolver::CalculateNextYValue(), RungeKuttaFehlbergIvpOdeSolver::InternalSolve(), AbstractCvodeSystem::RecordStoppingPoint(), CvodeAdaptor::SetupCvode(), AbstractCvodeSystem::SetupCvode(), RungeKuttaFehlbergIvpOdeSolver::Solve(), AbstractOneStepIvpOdeSolver::Solve(), AbstractIvpOdeSolver::SolveAndUpdateStateVariable(), and AbstractOdeBasedCellCycleModel::UpdateCellCyclePhase().
unsigned AbstractUntemplatedParameterisedSystem::GetParameterIndex | ( | const std::string & | rName | ) | const |
This method is used to establish a parameter's position within the vector of parameters of an ODE system. This number can then be used with the methods GetParameterUnits and GetParameter.
rName | the name of a parameter |
Definition at line 117 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
std::string AbstractUntemplatedParameterisedSystem::GetParameterUnits | ( | unsigned | index | ) | const |
Get the units of a parameter given its index in the ODE system.
index | a state variable's position within the vector of state variables associated with the ODE system. |
Definition at line 127 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
unsigned AbstractUntemplatedParameterisedSystem::GetStateVariableIndex | ( | const std::string & | rName | ) | const |
This method is used to establish a state variable's position within the vector of state variables of an ODE system. This number can then be used with the methods GetStateVariable and GetStateVariableUnits.
rName | the name of a state variable. |
Definition at line 83 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
std::string AbstractUntemplatedParameterisedSystem::GetStateVariableUnits | ( | unsigned | index | ) | const |
Get the units of a state variable given its index in the ODE system.
index | a state variable's position within the vector of state variables associated with the ODE system. |
Definition at line 93 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
boost::shared_ptr< const AbstractOdeSystemInformation > AbstractUntemplatedParameterisedSystem::GetSystemInformation | ( | ) | const |
Get the object which provides information about this ODE system.
Definition at line 52 of file AbstractUntemplatedParameterisedSystem.cpp.
References mpSystemInfo.
Referenced by OdeSolution::CalculateDerivedQuantitiesAndParameters(), GetAnyVariableIndex(), GetAnyVariableUnits(), GetAttribute(), GetDerivedQuantityIndex(), GetDerivedQuantityUnits(), GetNumberOfAttributes(), GetNumberOfDerivedQuantities(), GetNumberOfParameters(), GetParameterIndex(), GetParameterUnits(), GetStateVariableIndex(), GetStateVariableUnits(), GetSystemName(), HasAnyVariable(), HasAttribute(), HasDerivedQuantity(), HasParameter(), HasStateVariable(), rGetDerivedQuantityNames(), rGetDerivedQuantityUnits(), rGetParameterNames(), rGetParameterUnits(), rGetStateVariableNames(), rGetStateVariableUnits(), CvodeAdaptor::Solve(), and AbstractOneStepIvpOdeSolver::Solve().
std::string AbstractUntemplatedParameterisedSystem::GetSystemName | ( | ) | const |
Get the name of this system.
Definition at line 59 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
bool AbstractUntemplatedParameterisedSystem::HasAnyVariable | ( | const std::string & | rName | ) | const |
This method is used to establish whether a variable is in an ODE system's state vars, parameters or derived quantitites. You can then safely call GetAnyVariableIndex without a try...catch statement.
rName | the name of a variable |
Definition at line 141 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
bool AbstractUntemplatedParameterisedSystem::HasAttribute | ( | const std::string & | rName | ) | const |
Test whether this system has a particular named attribute.
rName | the attribute name. |
Definition at line 196 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
bool AbstractUntemplatedParameterisedSystem::HasDerivedQuantity | ( | const std::string & | rName | ) | const |
This method is used to establish whether a derived quantity is in an ODE system. You can then safely call GetDerivedQuantityIndex without a try...catch statement.
rName | the name of a derived quantity |
Definition at line 180 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
bool AbstractUntemplatedParameterisedSystem::HasParameter | ( | const std::string & | rName | ) | const |
This method is used to establish whether a parameter is in an ODE system. You can then safely call GetParameterIndex without a try...catch statement.
rName | the name of a parameter |
Definition at line 122 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
bool AbstractUntemplatedParameterisedSystem::HasStateVariable | ( | const std::string & | rName | ) | const |
This method is used to establish whether a state variable is in an ODE system. You can then safely call GetStateVariableIndex without a try...catch statement.
rName | the name of a state variable |
Definition at line 88 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
const std::vector< std::string > & AbstractUntemplatedParameterisedSystem::rGetDerivedQuantityNames | ( | ) | const |
Get the vector of derived quantity names.
Definition at line 165 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
const std::vector< std::string > & AbstractUntemplatedParameterisedSystem::rGetDerivedQuantityUnits | ( | ) | const |
Get the vector of derived quantity units.
Definition at line 170 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
const std::vector< std::string > & AbstractUntemplatedParameterisedSystem::rGetParameterNames | ( | ) | const |
Get the names of the parameters in the ODE system.
Definition at line 107 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
Referenced by AbstractCardiacCell::CheckForArchiveFix(), AbstractCvodeSystem::Init(), AbstractCardiacCell::Init(), AbstractOdeSystem::save(), AbstractCvodeSystem::save(), and AbstractCardiacCell::serialize().
const std::vector< std::string > & AbstractUntemplatedParameterisedSystem::rGetParameterUnits | ( | ) | const |
Get the units of the parameters in the ODE system.
Definition at line 112 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
const std::vector< std::string > & AbstractUntemplatedParameterisedSystem::rGetStateVariableNames | ( | ) | const |
Get the names of the state variables in the ODE system.
Reimplemented in AbstractCardiacCell, and AbstractCvodeCell.
Definition at line 73 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
const std::vector< std::string > & AbstractUntemplatedParameterisedSystem::rGetStateVariableUnits | ( | ) | const |
Get the units of the state variables in the ODE system.
Definition at line 78 of file AbstractUntemplatedParameterisedSystem.cpp.
References GetSystemInformation().
The number of state variables in the system.
Definition at line 288 of file AbstractUntemplatedParameterisedSystem.hpp.
Referenced by AbstractCardiacCell::AbstractCardiacCell(), CombinedOdeSystem::CombinedOdeSystem(), AbstractRushLarsenCardiacCell::Compute(), AbstractRushLarsenCardiacCell::ComputeExceptVoltage(), GetNumberOfStateVariables(), AbstractOdeSystem::load(), AbstractCvodeSystem::load(), AbstractOdeSystem::save(), AbstractCvodeSystem::save(), FakeBathCell::serialize(), and AbstractRushLarsenCardiacCell::SolveAndUpdateState().
boost::shared_ptr<AbstractOdeSystemInformation> AbstractUntemplatedParameterisedSystem::mpSystemInfo [protected] |
Information about the concrete ODE system class.
Subclasses need to set this in their constructor to point to an instance of a suitable class. See for example the OdeSystemInformation class.
Definition at line 296 of file AbstractUntemplatedParameterisedSystem.hpp.
Referenced by Alarcon2004OxygenBasedCellCycleOdeSystem::Alarcon2004OxygenBasedCellCycleOdeSystem(), CML_noble_varghese_kohl_noble_1998_basic_with_sac::CML_noble_varghese_kohl_noble_1998_basic_with_sac(), CombinedOdeSystem::CombinedOdeSystem(), AbstractRushLarsenCardiacCell::Compute(), CorriasBuistICCModified::CorriasBuistICCModified(), CorriasBuistSMCModified::CorriasBuistSMCModified(), DeltaNotchOdeSystem::DeltaNotchOdeSystem(), FakeBathCell::FakeBathCell(), FitzHughNagumo1961OdeSystem::FitzHughNagumo1961OdeSystem(), GetSystemInformation(), Kerchoffs2003ContractionModel::Kerchoffs2003ContractionModel(), Mirams2010WntOdeSystem::Mirams2010WntOdeSystem(), Nash2004ContractionModel::Nash2004ContractionModel(), NhsContractionModel::NhsContractionModel(), OdeSystemForCoupledHeatEquation::OdeSystemForCoupledHeatEquation(), OdeSystemForCoupledHeatEquationWithSource::OdeSystemForCoupledHeatEquationWithSource(), AbstractCvodeSystem::Solve(), TysonNovak2001OdeSystem::TysonNovak2001OdeSystem(), VanLeeuwen2009WntSwatCellCycleOdeSystem::VanLeeuwen2009WntSwatCellCycleOdeSystem(), and WntCellCycleOdeSystem::WntCellCycleOdeSystem().