Chaste  Release::2018.1
CML_noble_varghese_kohl_noble_1998_basic_with_sac Class Reference

#include <NobleVargheseKohlNoble1998WithSac.hpp>

+ Inheritance diagram for CML_noble_varghese_kohl_noble_1998_basic_with_sac:
+ Collaboration diagram for CML_noble_varghese_kohl_noble_1998_basic_with_sac:

Public Member Functions

 CML_noble_varghese_kohl_noble_1998_basic_with_sac (boost::shared_ptr< AbstractIvpOdeSolver > pSolver, boost::shared_ptr< AbstractStimulusFunction > pIntracellularStimulus)
 
 ~CML_noble_varghese_kohl_noble_1998_basic_with_sac ()
 
double GetIIonic (const std::vector< double > *pStateVariables=NULL)
 
void EvaluateYDerivatives (double var_environment__time, const std::vector< double > &rY, std::vector< double > &rDY)
 
void SetStretch (double stretch)
 
double GetStretch ()
 
double GetIntracellularCalciumConcentration ()
 
- Public Member Functions inherited from AbstractCardiacCell
 AbstractCardiacCell (boost::shared_ptr< AbstractIvpOdeSolver > pOdeSolver, unsigned numberOfStateVariables, unsigned voltageIndex, boost::shared_ptr< AbstractStimulusFunction > pIntracellularStimulus)
 
virtual ~AbstractCardiacCell ()
 
void Init ()
 
void SetTimestep (double dt)
 
virtual void SolveAndUpdateState (double tStart, double tEnd)
 
virtual OdeSolution Compute (double tStart, double tEnd, double tSamp=0.0)
 
virtual void ComputeExceptVoltage (double tStart, double tEnd)
 
void SetVoltage (double voltage)
 
double GetVoltage ()
 
unsigned GetNumberOfStateVariables () const
 
unsigned GetNumberOfParameters () const
 
std::vector< doubleGetStdVecStateVariables ()
 
const std::vector< std::string > & rGetStateVariableNames () const
 
void SetStateVariables (const std::vector< double > &rVariables)
 
void SetStateVariable (unsigned index, double newValue)
 
void SetStateVariable (const std::string &rName, double newValue)
 
double GetAnyVariable (const std::string &rName, double time=0.0)
 
double GetParameter (const std::string &rParameterName)
 
double GetParameter (unsigned parameterIndex)
 
void SetParameter (const std::string &rParameterName, double value)
 
virtual void SetState (CellModelState state)
 
virtual void SetSlowValues (const std::vector< double > &rSlowValues)
 
virtual void GetSlowValues (std::vector< double > &rSlowValues)
 
virtual bool IsFastOnly ()
 
virtual void AdjustOutOfRangeSlowValues (std::vector< double > &rSlowValues)
 
virtual unsigned GetNumSlowValues ()
 
- Public Member Functions inherited from AbstractCardiacCellInterface
 AbstractCardiacCellInterface (boost::shared_ptr< AbstractIvpOdeSolver > pOdeSolver, unsigned voltageIndex, boost::shared_ptr< AbstractStimulusFunction > pIntracellularStimulus)
 
virtual ~AbstractCardiacCellInterface ()
 
unsigned GetVoltageIndex ()
 
void SetStimulusFunction (boost::shared_ptr< AbstractStimulusFunction > pStimulus)
 
double GetStimulus (double time)
 
void SetIntracellularStimulusFunction (boost::shared_ptr< AbstractStimulusFunction > pStimulus)
 
double GetIntracellularStimulus (double time)
 
double GetIntracellularAreaStimulus (double time)
 
void SetUsedInTissueSimulation (bool tissue=true)
 
virtual boost::shared_ptr
< RegularStimulus
UseCellMLDefaultStimulus ()
 
bool HasCellMLDefaultStimulus ()
 
virtual
AbstractLookupTableCollection
GetLookupTableCollection ()
 
boost::shared_ptr
< AbstractStimulusFunction
GetStimulusFunction ()
 
const boost::shared_ptr
< AbstractStimulusFunction
GetStimulusFunction () const
 
const boost::shared_ptr
< AbstractIvpOdeSolver
GetSolver () const
 
void SetSolver (boost::shared_ptr< AbstractIvpOdeSolver > pSolver)
 
virtual void SetVoltageDerivativeToZero (bool clamp=true)
 
void SetFixedVoltage (double voltage)
 
- Public Member Functions inherited from AbstractOdeSystem
 AbstractOdeSystem (unsigned numberOfStateVariables)
 
virtual ~AbstractOdeSystem ()
 
virtual bool CalculateStoppingEvent (double time, const std::vector< double > &rY)
 
virtual double CalculateRootFunction (double time, const std::vector< double > &rY)
 
bool GetUseAnalyticJacobian ()
 
const std::vector< double > & rGetConstStateVariables () const
 
- Public Member Functions inherited from AbstractParameterisedSystem< std::vector< double > >
 AbstractParameterisedSystem (unsigned numberOfStateVariables)
 
std::vector< double > & rGetStateVariables ()
 
std::vector< doubleGetStateVariables ()
 
void SetStateVariables (const std::vector< double > &rStateVariables)
 
double GetStateVariable (unsigned index) const
 
double GetStateVariable (const std::string &rName) const
 
void SetStateVariable (unsigned index, double newValue)
 
void SetStateVariable (const std::string &rName, double newValue)
 
virtual void VerifyStateVariables ()
 
void SetDefaultInitialConditions (const std::vector< double > &rInitialConditions)
 
void SetDefaultInitialCondition (unsigned index, double initialCondition)
 
std::vector< doubleGetInitialConditions () const
 
void ResetToInitialConditions ()
 
double GetParameter (unsigned index) const
 
double GetParameter (const std::string &rName) const
 
void SetParameter (const std::string &rName, double value)
 
void SetParameter (unsigned index, double value)
 
double GetAnyVariable (unsigned index, double time=0.0, std::vector< double > *pDerivedQuantities=NULL)
 
double GetAnyVariable (const std::string &rName, double time=0.0, std::vector< double > *pDerivedQuantities=NULL)
 
void SetAnyVariable (unsigned index, double value)
 
void SetAnyVariable (const std::string &rName, double value)
 
virtual std::vector< doubleComputeDerivedQuantities (double time, const std::vector< double > &rState)
 
std::vector< doubleComputeDerivedQuantitiesFromCurrentState (double time)
 
- Public Member Functions inherited from AbstractUntemplatedParameterisedSystem
 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
 

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)
 

Private Attributes

double mStretch
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Protected Member Functions inherited from AbstractParameterisedSystem< std::vector< double > >
std::string DumpState (const std::string &rMessage)
 
std::string DumpState (const std::string &rMessage, std::vector< double >Y)
 
std::string DumpState (const std::string &rMessage, std::vector< double >Y, double time)
 
void CheckParametersOnLoad (const std::vector< double > &rParameters, const std::vector< std::string > &rParameterNames)
 
- Protected Attributes inherited from AbstractCardiacCell
double mDt
 
- Protected Attributes inherited from AbstractCardiacCellInterface
unsigned mVoltageIndex
 
boost::shared_ptr
< AbstractIvpOdeSolver
mpOdeSolver
 
boost::shared_ptr
< AbstractStimulusFunction
mpIntracellularStimulus
 
bool mSetVoltageDerivativeToZero
 
bool mIsUsedInTissue
 
bool mHasDefaultStimulusFromCellML
 
double mFixedVoltage
 
- Protected Attributes inherited from AbstractOdeSystem
bool mUseAnalyticJacobian
 
- Protected Attributes inherited from AbstractParameterisedSystem< std::vector< double > >
std::vector< doublemStateVariables
 
std::vector< doublemParameters
 
- Protected Attributes inherited from AbstractUntemplatedParameterisedSystem
unsigned mNumberOfStateVariables
 
boost::shared_ptr
< AbstractOdeSystemInformation
mpSystemInfo
 

Detailed Description

The Noble98 'Basic' model, but hand-altered to add a stretch activation channel ionic current, which is dependent on the stretch the cell is under (an additional member variable which can be set be the user/mechanics solver

Definition at line 55 of file NobleVargheseKohlNoble1998WithSac.hpp.

Constructor & Destructor Documentation

CML_noble_varghese_kohl_noble_1998_basic_with_sac::CML_noble_varghese_kohl_noble_1998_basic_with_sac ( boost::shared_ptr< AbstractIvpOdeSolver pSolver,
boost::shared_ptr< AbstractStimulusFunction pIntracellularStimulus 
)

Constructor.

Parameters
pSolverODE solver to use
pIntracellularStimulusintracellular stimulus to apply

Definition at line 39 of file NobleVargheseKohlNoble1998WithSac.cpp.

References AbstractCardiacCell::Init(), OdeSystemInformation< ODE_SYSTEM >::Instance(), AbstractUntemplatedParameterisedSystem::mpSystemInfo, and mStretch.

CML_noble_varghese_kohl_noble_1998_basic_with_sac::~CML_noble_varghese_kohl_noble_1998_basic_with_sac ( void  )

Destructor.

Definition at line 52 of file NobleVargheseKohlNoble1998WithSac.cpp.

Member Function Documentation

void CML_noble_varghese_kohl_noble_1998_basic_with_sac::EvaluateYDerivatives ( double  var_environment__time,
const std::vector< double > &  rY,
std::vector< double > &  rDY 
)
virtual

Evaluate the RHS of this cell's ODE system.

Parameters
var_environment__timecurrent simulation time
rYstate variable vector
rDYwill be filled in with the derivatives

Implements AbstractOdeSystem.

Definition at line 251 of file NobleVargheseKohlNoble1998WithSac.cpp.

References AbstractCardiacCellInterface::GetStimulus(), AbstractCardiacCellInterface::mSetVoltageDerivativeToZero, and mStretch.

double CML_noble_varghese_kohl_noble_1998_basic_with_sac::GetIIonic ( const std::vector< double > *  pStateVariables = NULL)
virtual
Returns
the total ionic current
Parameters
pStateVariablesstate variable vector; if not given, use cell's internal state

Implements AbstractCardiacCellInterface.

Definition at line 56 of file NobleVargheseKohlNoble1998WithSac.cpp.

References HeartConfig::GetCapacitance(), HeartConfig::Instance(), mStretch, and AbstractParameterisedSystem< std::vector< double > >::rGetStateVariables().

double CML_noble_varghese_kohl_noble_1998_basic_with_sac::GetIntracellularCalciumConcentration ( )
inlinevirtual

Get the intracellular calcium concentration

Returns
the intracellular calcium concentration

Reimplemented from AbstractCardiacCellInterface.

Definition at line 124 of file NobleVargheseKohlNoble1998WithSac.hpp.

References AbstractParameterisedSystem< std::vector< double > >::mStateVariables.

double CML_noble_varghese_kohl_noble_1998_basic_with_sac::GetStretch ( )
inline
Returns
the stretch

Definition at line 114 of file NobleVargheseKohlNoble1998WithSac.hpp.

References mStretch.

template<class Archive >
void CML_noble_varghese_kohl_noble_1998_basic_with_sac::serialize ( Archive &  archive,
const unsigned int  version 
)
inlineprivate

Checkpointing.

Parameters
archive
version

Definition at line 64 of file NobleVargheseKohlNoble1998WithSac.hpp.

References mStretch.

void CML_noble_varghese_kohl_noble_1998_basic_with_sac::SetStretch ( double  stretch)
inlinevirtual

Set the stretch (overloaded)

Parameters
stretchstretch

Reimplemented from AbstractCardiacCellInterface.

Definition at line 105 of file NobleVargheseKohlNoble1998WithSac.hpp.

References mStretch.

Member Data Documentation

double CML_noble_varghese_kohl_noble_1998_basic_with_sac::mStretch
private

The stretch the cell is under - affects the stretch-activated-channel ionic current

Definition at line 72 of file NobleVargheseKohlNoble1998WithSac.hpp.

Referenced by CML_noble_varghese_kohl_noble_1998_basic_with_sac(), EvaluateYDerivatives(), GetIIonic(), GetStretch(), serialize(), and SetStretch().


The documentation for this class was generated from the following files: