CellCycleModelOdeHandler Class Reference

#include <CellCycleModelOdeHandler.hpp>

Inheritance diagram for CellCycleModelOdeHandler:

Inheritance graph
[legend]
Collaboration diagram for CellCycleModelOdeHandler:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 CellCycleModelOdeHandler (double lastTime=SimulationTime::Instance()->GetTime(), boost::shared_ptr< AbstractCellCycleModelOdeSolver > pOdeSolver=boost::shared_ptr< AbstractCellCycleModelOdeSolver >())
virtual ~CellCycleModelOdeHandler ()
AbstractOdeSystemGetOdeSystem () const
void SetOdeSystem (AbstractOdeSystem *pOdeSystem)
const boost::shared_ptr
< AbstractCellCycleModelOdeSolver
GetOdeSolver () const
void SetLastTime (double lastTime)
double GetDt ()
void SetDt (double timeStep)
void SetStateVariables (const std::vector< double > &rStateVariables)

Protected Member Functions

bool SolveOdeToTime (double currentTime)
virtual void AdjustOdeParameters (double currentTime)

Protected Attributes

double mDt
AbstractOdeSystemmpOdeSystem
boost::shared_ptr
< AbstractCellCycleModelOdeSolver
mpOdeSolver
double mLastTime

Private Member Functions

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

Friends

class boost::serialization::access


Detailed Description

This class contains the functionality for running ODEs as part of a cell cycle model. It is designed to be used as an additional base class for models which require this functionality.

Definition at line 43 of file CellCycleModelOdeHandler.hpp.


Constructor & Destructor Documentation

CellCycleModelOdeHandler::CellCycleModelOdeHandler ( double  lastTime = SimulationTime::Instance()->GetTime(),
boost::shared_ptr< AbstractCellCycleModelOdeSolver pOdeSolver = boost::shared_ptr<AbstractCellCycleModelOdeSolver>() 
)

Constructor.

Parameters:
lastTime The birth time of the cell / last time model was evaluated (defaults to the current SimulationTime)
pOdeSolver An optional pointer to a cell-cycle model ODE solver object (allows the use of different ODE solvers)

Definition at line 31 of file CellCycleModelOdeHandler.cpp.

CellCycleModelOdeHandler::~CellCycleModelOdeHandler (  )  [virtual]

Destructor.

Definition at line 40 of file CellCycleModelOdeHandler.cpp.

References mpOdeSystem.


Member Function Documentation

template<class Archive>
void CellCycleModelOdeHandler::serialize ( Archive &  archive,
const unsigned int  version 
) [inline, private]

bool CellCycleModelOdeHandler::SolveOdeToTime ( double  currentTime  )  [protected]

Solves the ODE system to a given time.

Parameters:
currentTime the current time
Returns:
whether a stopping event occurred.

Definition at line 84 of file CellCycleModelOdeHandler.cpp.

References AdjustOdeParameters(), GetDt(), mLastTime, mpOdeSolver, and mpOdeSystem.

Referenced by SingleOdeWntCellCycleModel::UpdateCellCyclePhase(), and AbstractOdeBasedCellCycleModel::UpdateCellCyclePhase().

void CellCycleModelOdeHandler::AdjustOdeParameters ( double  currentTime  )  [protected, virtual]

Adjust any ODE parameters needed before solving until currentTime. Defaults to do nothing.

Parameters:
currentTime the time up to which the system will be solved.

Reimplemented in Alarcon2004OxygenBasedCellCycleModel, AbstractVanLeeuwen2009WntSwatCellCycleModel, SingleOdeWntCellCycleModel, and WntCellCycleModel.

Definition at line 106 of file CellCycleModelOdeHandler.cpp.

Referenced by SolveOdeToTime().

AbstractOdeSystem * CellCycleModelOdeHandler::GetOdeSystem (  )  const

Get mpOdeSystem.

Definition at line 53 of file CellCycleModelOdeHandler.cpp.

References mpOdeSystem.

void CellCycleModelOdeHandler::SetOdeSystem ( AbstractOdeSystem pOdeSystem  ) 

const boost::shared_ptr< AbstractCellCycleModelOdeSolver > CellCycleModelOdeHandler::GetOdeSolver (  )  const

Returns:
mpOdeSolver

Definition at line 58 of file CellCycleModelOdeHandler.cpp.

References mpOdeSolver.

void CellCycleModelOdeHandler::SetLastTime ( double  lastTime  ) 

double CellCycleModelOdeHandler::GetDt (  ) 

Get method for mDt, which sets it to a default value if it hasn't been set by calling SetDt.

Definition at line 68 of file CellCycleModelOdeHandler.cpp.

References DOUBLE_UNSET, SimulationTime::GetTimeStep(), SimulationTime::Instance(), mDt, and mpOdeSolver.

Referenced by SolveOdeToTime().

void CellCycleModelOdeHandler::SetDt ( double  timeStep  ) 

void CellCycleModelOdeHandler::SetStateVariables ( const std::vector< double > &  rStateVariables  ) 


Friends And Related Function Documentation

friend class boost::serialization::access [friend]


Member Data Documentation

double CellCycleModelOdeHandler::mDt [protected]

Timestep to use when solving the ODE system. For some adaptive solvers (e.g. CVODE) this is the maximum step to use.

Definition at line 70 of file CellCycleModelOdeHandler.hpp.

Referenced by GetDt(), serialize(), and SetDt().

A system of ODEs.

Definition at line 73 of file CellCycleModelOdeHandler.hpp.

Referenced by WntCellCycleModel::AdjustOdeParameters(), SingleOdeWntCellCycleModel::AdjustOdeParameters(), AbstractVanLeeuwen2009WntSwatCellCycleModel::AdjustOdeParameters(), Alarcon2004OxygenBasedCellCycleModel::AdjustOdeParameters(), WntCellCycleModel::ChangeCellProliferativeTypeDueToCurrentBetaCateninLevel(), SingleOdeWntCellCycleModel::ChangeCellProliferativeTypeDueToCurrentBetaCateninLevel(), AbstractVanLeeuwen2009WntSwatCellCycleModel::ChangeCellProliferativeTypeDueToCurrentBetaCateninLevel(), WntCellCycleModel::CreateCellCycleModel(), VanLeeuwen2009WntSwatCellCycleModelHypothesisTwo::CreateCellCycleModel(), VanLeeuwen2009WntSwatCellCycleModelHypothesisOne::CreateCellCycleModel(), StochasticWntCellCycleModel::CreateCellCycleModel(), SingleOdeWntCellCycleModel::CreateCellCycleModel(), TysonNovakCellCycleModel::CreateCellCycleModel(), Alarcon2004OxygenBasedCellCycleModel::CreateCellCycleModel(), SingleOdeWntCellCycleModel::GetBetaCateninConcentration(), AbstractVanLeeuwen2009WntSwatCellCycleModel::GetCytoplasmicBetaCateninLevel(), AbstractVanLeeuwen2009WntSwatCellCycleModel::GetMembraneBoundBetaCateninLevel(), AbstractVanLeeuwen2009WntSwatCellCycleModel::GetNuclearBetaCateninLevel(), GetOdeSystem(), AbstractOdeBasedCellCycleModel::GetProteinConcentrations(), WntCellCycleModel::Initialise(), SingleOdeWntCellCycleModel::Initialise(), AbstractVanLeeuwen2009WntSwatCellCycleModel::Initialise(), TysonNovakCellCycleModel::Initialise(), Alarcon2004OxygenBasedCellCycleModel::Initialise(), VanLeeuwen2009WntSwatCellCycleModelHypothesisTwo::InitialiseOdeSystem(), VanLeeuwen2009WntSwatCellCycleModelHypothesisOne::InitialiseOdeSystem(), AbstractWntOdeBasedCellCycleModel::ResetForDivision(), TysonNovakCellCycleModel::ResetForDivision(), Alarcon2004OxygenBasedCellCycleModel::ResetForDivision(), serialize(), SetOdeSystem(), AbstractOdeBasedCellCycleModel::SetProteinConcentrationsForTestsOnly(), SetStateVariables(), SolveOdeToTime(), AbstractOdeBasedCellCycleModel::UpdateCellCyclePhase(), AbstractWntOdeBasedCellCycleModel::UpdateCellProliferativeType(), and ~CellCycleModelOdeHandler().


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

Generated on Mon Apr 18 11:36:41 2011 for Chaste by  doxygen 1.5.5