Chaste  Release::3.4
AbstractSteadyStateRunner Class Referenceabstract

#include <AbstractSteadyStateRunner.hpp>

+ Inheritance diagram for AbstractSteadyStateRunner:
+ Collaboration diagram for AbstractSteadyStateRunner:

Public Member Functions

 AbstractSteadyStateRunner (boost::shared_ptr< AbstractCvodeCell > pModel)
 
virtual ~AbstractSteadyStateRunner ()
 
bool RunToSteadyState ()
 
unsigned GetNumEvaluations ()
 
void SetMaxNumPaces (unsigned numPaces)
 

Protected Member Functions

virtual void RunToSteadyStateImplementation ()=0
 

Protected Attributes

boost::shared_ptr
< AbstractCvodeCell
mpModel
 
unsigned mNumEvaluations
 
unsigned mMaxNumPaces
 

Private Member Functions

 AbstractSteadyStateRunner ()
 

Detailed Description

This class is abstract to investigate different ways of getting a cell model to steady state.

A simple concrete example is SteadyStateRunner.

Definition at line 52 of file AbstractSteadyStateRunner.hpp.

Constructor & Destructor Documentation

AbstractSteadyStateRunner::AbstractSteadyStateRunner ( )
inlineprivate

Default constructor is private to ensure it is never used.

Definition at line 58 of file AbstractSteadyStateRunner.hpp.

AbstractSteadyStateRunner::AbstractSteadyStateRunner ( boost::shared_ptr< AbstractCvodeCell pModel)

Constructor

Parameters
pModelThe cell model to run to steady state.

Definition at line 40 of file AbstractSteadyStateRunner.cpp.

virtual AbstractSteadyStateRunner::~AbstractSteadyStateRunner ( )
inlinevirtual

Destructor (empty)

Definition at line 93 of file AbstractSteadyStateRunner.hpp.

Member Function Documentation

unsigned AbstractSteadyStateRunner::GetNumEvaluations ( )
Returns
The number of cell model 'paces/beats' that had to be evaluated.

Definition at line 71 of file AbstractSteadyStateRunner.cpp.

References mNumEvaluations.

Referenced by RunToSteadyState().

bool AbstractSteadyStateRunner::RunToSteadyState ( )

Run the cell model to steady state (defined by a small change in state variables between beats)

Requires a method called RunToSteadyStateImplementation which must be overridden in subclasses for different approximations.

Returns
whether the model reached steady state within the maximum number of evaluations

Definition at line 47 of file AbstractSteadyStateRunner.cpp.

References EXCEPTION, GetNumEvaluations(), mMaxNumPaces, mNumEvaluations, mpModel, and RunToSteadyStateImplementation().

virtual void AbstractSteadyStateRunner::RunToSteadyStateImplementation ( )
protectedpure virtual

Run the cell model to steady state (defined by a small change in state variables between beats)

Must be overridden in subclasses for different approximations.

Subclasses must check they don't do more than mMaxNumPaces and should increment mNumEvaluations to reflect how many paces were simulated

Implemented in SteadyStateRunner.

Referenced by RunToSteadyState().

void AbstractSteadyStateRunner::SetMaxNumPaces ( unsigned  numPaces)
Parameters
numPacesThe maximum number of paces to do on the way to steady state

Definition at line 77 of file AbstractSteadyStateRunner.cpp.

References EXCEPTION, and mMaxNumPaces.

Member Data Documentation

unsigned AbstractSteadyStateRunner::mMaxNumPaces
protected

The maximum number of paces that are allowed

Definition at line 68 of file AbstractSteadyStateRunner.hpp.

Referenced by RunToSteadyState(), SteadyStateRunner::RunToSteadyStateImplementation(), and SetMaxNumPaces().

unsigned AbstractSteadyStateRunner::mNumEvaluations
protected

The number of evaluations that it took

Definition at line 65 of file AbstractSteadyStateRunner.hpp.

Referenced by GetNumEvaluations(), RunToSteadyState(), and SteadyStateRunner::RunToSteadyStateImplementation().

boost::shared_ptr<AbstractCvodeCell> AbstractSteadyStateRunner::mpModel
protected

The cell model to run to steady state

Definition at line 58 of file AbstractSteadyStateRunner.hpp.

Referenced by RunToSteadyState(), and SteadyStateRunner::RunToSteadyStateImplementation().


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