Chaste  Release::2017.1
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 ()
 
void SuppressOutput (bool suppress=true)
 
unsigned GetNumEvaluations ()
 
void SetMaxNumPaces (unsigned numPaces)
 

Protected Member Functions

virtual void RunToSteadyStateImplementation ()=0
 

Protected Attributes

boost::shared_ptr< AbstractCvodeCellmpModel
 
unsigned mNumEvaluations
 
unsigned mMaxNumPaces
 
bool mSuppressOutput
 

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 96 of file AbstractSteadyStateRunner.hpp.

References GetNumEvaluations(), RunToSteadyState(), SetMaxNumPaces(), and SuppressOutput().

Member Function Documentation

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

Definition at line 82 of file AbstractSteadyStateRunner.cpp.

References mNumEvaluations.

Referenced by RunToSteadyState(), and ~AbstractSteadyStateRunner().

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 48 of file AbstractSteadyStateRunner.cpp.

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

Referenced by ~AbstractSteadyStateRunner().

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 87 of file AbstractSteadyStateRunner.cpp.

References EXCEPTION, and mMaxNumPaces.

Referenced by ~AbstractSteadyStateRunner().

void AbstractSteadyStateRunner::SuppressOutput ( bool  suppress = true)

Stop class, and subclasses printing output to std::cout

Parameters
suppresswhether to suppress output.

Definition at line 77 of file AbstractSteadyStateRunner.cpp.

References mSuppressOutput.

Referenced by ~AbstractSteadyStateRunner().

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().

bool AbstractSteadyStateRunner::mSuppressOutput
protected

Whether to suppress output from this class (defaults to false)

Definition at line 71 of file AbstractSteadyStateRunner.hpp.

Referenced by RunToSteadyState(), and SuppressOutput().


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