35#include "AbstractCardiacCell.hpp"
40#include "HeartConfig.hpp"
44 unsigned numberOfStateVariables,
45 unsigned voltageIndex,
46 boost::shared_ptr<AbstractStimulusFunction> pIntracellularStimulus)
173#include "LuoRudy1991.hpp"
174#include "LuoRudy1991BackwardEuler.hpp"
177 if (
dynamic_cast<CellLuoRudy1991FromCellML*
>(
this) ||
dynamic_cast<CellLuoRudy1991FromCellMLBackwardEuler*
>(
this))
206 EXCEPTION(
"Non fast-slow cell model being used in a fast-slow problem.");
211 EXCEPTION(
"Non fast-slow cell model being used in a fast-slow problem.");
216 EXCEPTION(
"Non fast-slow cell model being used in a fast-slow problem.");
221 EXCEPTION(
"Non fast-slow cell model being used in a fast-slow problem.");
226 EXCEPTION(
"Non fast-slow cell model being used in a fast-slow problem.");
231 EXCEPTION(
"Non fast-slow cell model being used in a fast-slow problem.");
#define EXCEPTION(message)
void SetFixedVoltage(double voltage)
virtual void SetVoltageDerivativeToZero(bool clamp=true)
boost::shared_ptr< AbstractIvpOdeSolver > mpOdeSolver
virtual void SolveAndUpdateState(double tStart, double tEnd)
double GetParameter(const std::string &rParameterName)
virtual bool IsFastOnly()
virtual OdeSolution Compute(double tStart, double tEnd, double tSamp=0.0)
void SetTimestep(double dt)
virtual void AdjustOutOfRangeSlowValues(std::vector< double > &rSlowValues)
virtual void SetState(CellModelState state)
virtual void GetSlowValues(std::vector< double > &rSlowValues)
void SetVoltage(double voltage)
virtual void SetSlowValues(const std::vector< double > &rSlowValues)
virtual ~AbstractCardiacCell()
void CheckForArchiveFix()
void SetParameter(const std::string &rParameterName, double value)
const std::vector< std::string > & rGetStateVariableNames() const
AbstractCardiacCell(boost::shared_ptr< AbstractIvpOdeSolver > pOdeSolver, unsigned numberOfStateVariables, unsigned voltageIndex, boost::shared_ptr< AbstractStimulusFunction > pIntracellularStimulus)
std::vector< double > GetStdVecStateVariables()
double GetAnyVariable(const std::string &rName, double time=0.0)
unsigned GetNumberOfStateVariables() const
void SetStateVariables(const std::vector< double > &rVariables)
virtual unsigned GetNumSlowValues()
virtual void ComputeExceptVoltage(double tStart, double tEnd)
unsigned GetNumberOfParameters() const
void SetStateVariable(unsigned index, double newValue)
void SetStateVariables(const std::vector< double > &rStateVariables)
double GetAnyVariable(unsigned index, double time=0.0, std::vector< double > *pDerivedQuantities=NULL)
std::vector< double > GetStateVariables()
double GetParameter(unsigned index) const
void SetStateVariable(unsigned index, double newValue)
void SetAnyVariable(unsigned index, double value)
void ResetToInitialConditions()
std::vector< double > mParameters
void SetParameter(const std::string &rName, double value)
virtual void VerifyStateVariables()
std::vector< double > & rGetStateVariables()
unsigned mNumberOfStateVariables
const std::vector< std::string > & rGetParameterNames() const
const std::vector< std::string > & rGetStateVariableNames() const
unsigned GetNumberOfParameters() const
unsigned GetNumberOfStateVariables() const