AbstractOdeBasedCellCycleModel Class Reference

#include <AbstractOdeBasedCellCycleModel.hpp>

Inherits AbstractCellCycleModel, and CellCycleModelOdeHandler.

Inherited by AbstractWntOdeBasedCellCycleModel, Alarcon2004OxygenBasedCellCycleModel, and TysonNovakCellCycleModel.

Collaboration diagram for AbstractOdeBasedCellCycleModel:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 AbstractOdeBasedCellCycleModel (double lastTime=SimulationTime::Instance()->GetTime(), boost::shared_ptr< AbstractCellCycleModelOdeSolver > pOdeSolver=boost::shared_ptr< AbstractCellCycleModelOdeSolver >())
virtual ~AbstractOdeBasedCellCycleModel ()
virtual void UpdateCellCyclePhase ()
double GetOdeStopTime ()
void SetBirthTime (double birthTime)
std::vector< doubleGetProteinConcentrations () const
void SetProteinConcentrationsForTestsOnly (double lastTime, std::vector< double > proteinConcentrations)
virtual void ResetForDivision ()
void SetFinishedRunningOdes (bool finishedRunningOdes)
void SetDivideTime (double divideTime)
void SetG2PhaseStartTime (double g2PhaseStartTime)
virtual void OutputCellCycleModelParameters (out_stream &rParamsFile)

Protected Attributes

double mDivideTime
bool mFinishedRunningOdes
double mG2PhaseStartTime

Private Member Functions

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

Friends

class boost::serialization::access

Detailed Description

This class contains all the functionality shared by 'ODE-based' cell-cycle models, where the duration of one or more cell cycle phases are evaluated 'on the fly' as the cell ages, according to a system of ordinary differential equations (ODEs) governing (for example) the concentrations of key intracellular proteins. To determine when cell division should occur, one or more stopping conditions for this ODE system may be specified.

This class of cell-cycle models is distinct from 'simple' cell-cycle models, where the duration of each cell cycle phase is determined when the cell-cycle model is created.

Definition at line 61 of file AbstractOdeBasedCellCycleModel.hpp.


Constructor & Destructor Documentation

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

Creates an AbstractOdeBasedCellCycleModel, calls SetBirthTime on the AbstractCellCycleModel to make sure that can be set 'back in time' for cells which did not divide at the current time.

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 41 of file AbstractOdeBasedCellCycleModel.cpp.

References SetBirthTime().

AbstractOdeBasedCellCycleModel::~AbstractOdeBasedCellCycleModel (  )  [virtual]

Destructor.

Definition at line 51 of file AbstractOdeBasedCellCycleModel.cpp.


Member Function Documentation

double AbstractOdeBasedCellCycleModel::GetOdeStopTime (  ) 

Get the time at which the ODE stopping event occurred. Only called in those subclasses for which stopping events are defined.

Returns:
the time at which the ODE system reached its stopping event

Definition at line 158 of file AbstractOdeBasedCellCycleModel.cpp.

References DOUBLE_UNSET, and CellCycleModelOdeHandler::mpOdeSolver.

Referenced by AbstractWntOdeBasedCellCycleModel::UpdateCellCyclePhase(), and UpdateCellCyclePhase().

std::vector< double > AbstractOdeBasedCellCycleModel::GetProteinConcentrations (  )  const
Returns:
the protein concentrations at the current time (useful for tests)

NB: Will copy the vector - you can't use this to modify the concentrations.

Definition at line 62 of file AbstractOdeBasedCellCycleModel.cpp.

References CellCycleModelOdeHandler::mpOdeSystem, and AbstractParameterisedSystem< VECTOR >::rGetStateVariables().

Referenced by CellCycleModelProteinConcentrationsWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell().

void AbstractOdeBasedCellCycleModel::OutputCellCycleModelParameters ( out_stream &  rParamsFile  )  [virtual]
void AbstractOdeBasedCellCycleModel::ResetForDivision (  )  [virtual]

For a naturally cycling model this does not need to be overridden in the subclasses. But most models should override this function and then call AbstractOdeBasedCellCycleModel::ResetForDivision() from inside their version.

Reimplemented from AbstractCellCycleModel.

Reimplemented in Alarcon2004OxygenBasedCellCycleModel, TysonNovakCellCycleModel, AbstractWntOdeBasedCellCycleModel, and StochasticWntCellCycleModel.

Definition at line 147 of file AbstractOdeBasedCellCycleModel.cpp.

References AbstractCellCycleModel::mBirthTime, mDivideTime, mFinishedRunningOdes, AbstractCellCycleModel::mG1Duration, and CellCycleModelOdeHandler::mLastTime.

template<class Archive >
void AbstractOdeBasedCellCycleModel::serialize ( Archive &  archive,
const unsigned int  version 
) [inline, private]
void AbstractOdeBasedCellCycleModel::SetBirthTime ( double  birthTime  )  [virtual]
void AbstractOdeBasedCellCycleModel::SetDivideTime ( double  divideTime  ) 
void AbstractOdeBasedCellCycleModel::SetFinishedRunningOdes ( bool  finishedRunningOdes  ) 
void AbstractOdeBasedCellCycleModel::SetG2PhaseStartTime ( double  g2PhaseStartTime  ) 
void AbstractOdeBasedCellCycleModel::SetProteinConcentrationsForTestsOnly ( double  lastTime,
std::vector< double proteinConcentrations 
)

Sets the protein concentrations and time when the model was last evaluated - should only be called by tests

Parameters:
lastTime the SimulationTime at which the protein concentrations apply
proteinConcentrations a standard vector of doubles of protein concentrations

Definition at line 68 of file AbstractOdeBasedCellCycleModel.cpp.

References CellCycleModelOdeHandler::mLastTime, CellCycleModelOdeHandler::mpOdeSystem, AbstractParameterisedSystem< VECTOR >::rGetStateVariables(), and AbstractParameterisedSystem< VECTOR >::SetStateVariables().

void AbstractOdeBasedCellCycleModel::UpdateCellCyclePhase (  )  [virtual]

Friends And Related Function Documentation

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

Member Data Documentation


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

Generated by  doxygen 1.6.2