AbstractOdeBasedCellCycleModel Class Reference

#include <AbstractOdeBasedCellCycleModel.hpp>

Inheritance diagram for AbstractOdeBasedCellCycleModel:

Inheritance graph
[legend]
Collaboration diagram for AbstractOdeBasedCellCycleModel:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 AbstractOdeBasedCellCycleModel (double lastTime=SimulationTime::Instance()->GetTime())
virtual ~AbstractOdeBasedCellCycleModel ()
virtual void UpdateCellCyclePhase ()
virtual bool SolveOdeToTime (double currentTime)=0
virtual double GetOdeStopTime ()=0
void SetBirthTime (double birthTime)
std::vector< double > GetProteinConcentrations () const
void SetProteinConcentrationsForTestsOnly (double lastTime, std::vector< double > proteinConcentrations)
virtual void ResetForDivision ()

Protected Attributes

AbstractOdeSystemmpOdeSystem
double mLastTime
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 things common to standard cell cycle ODE models for intracellular protein concentrations (along the lines of Tyson & Novak), such as solving the ODEs until a stopping condition is met.

Definition at line 47 of file AbstractOdeBasedCellCycleModel.hpp.


Constructor & Destructor Documentation

AbstractOdeBasedCellCycleModel::AbstractOdeBasedCellCycleModel ( double  lastTime = SimulationTime::Instance()->GetTime()  ) 

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)

Definition at line 31 of file AbstractOdeBasedCellCycleModel.cpp.

References AbstractCellCycleModel::SetBirthTime().

AbstractOdeBasedCellCycleModel::~AbstractOdeBasedCellCycleModel (  )  [virtual]

This destructor deletes the mpOdeSystem.

Definition at line 42 of file AbstractOdeBasedCellCycleModel.cpp.

References mpOdeSystem.


Member Function Documentation

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

void AbstractOdeBasedCellCycleModel::UpdateCellCyclePhase (  )  [virtual]

virtual bool AbstractOdeBasedCellCycleModel::SolveOdeToTime ( double  currentTime  )  [pure virtual]

This method must be implemented by each subclass - solves the ODEs to a given time and

Parameters:
currentTime 
Returns:
Whether a stopping event occurred.

Implemented in IngeWntSwatCellCycleModel, TysonNovakCellCycleModel, and WntCellCycleModel.

Referenced by UpdateCellCyclePhase().

virtual double AbstractOdeBasedCellCycleModel::GetOdeStopTime (  )  [pure virtual]

This method must be implemented by each subclass

When the ODEs have reached a stopping event it returns the time at which the ODEs stopped running so a delay can be added in for S-G2-M phases if necessary.

Returns:
The time at which the ODE reached its stopping event.

Implemented in AbstractWntOdeBasedCellCycleModel, and TysonNovakCellCycleModel.

Referenced by UpdateCellCyclePhase().

void AbstractOdeBasedCellCycleModel::SetBirthTime ( double  birthTime  )  [virtual]

This overrides the AbstractCellCycleModel::SetBirthTime(double birthTime) because an ODE based cell cycle model has more to reset...

Parameters:
birthTime the simulation time when the cell was born

Reimplemented from AbstractCellCycleModel.

Definition at line 51 of file AbstractOdeBasedCellCycleModel.cpp.

References mDivideTime, mLastTime, and AbstractCellCycleModel::SetBirthTime().

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

References mpOdeSystem, and AbstractOdeSystem::rGetStateVariables().

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

References mLastTime, mpOdeSystem, AbstractOdeSystem::rGetStateVariables(), and AbstractOdeSystem::SetStateVariables().

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 AbstractWntOdeBasedCellCycleModel, StochasticWntCellCycleModel, and TysonNovakCellCycleModel.

Definition at line 147 of file AbstractOdeBasedCellCycleModel.cpp.

References AbstractCellCycleModel::mBirthTime, mDivideTime, mFinishedRunningOdes, AbstractCellCycleModel::mG1Duration, mLastTime, and AbstractCellCycleModel::ResetForDivision().

Referenced by TysonNovakCellCycleModel::ResetForDivision(), and AbstractWntOdeBasedCellCycleModel::ResetForDivision().


Friends And Related Function Documentation

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


Member Data Documentation

The start time for the G2 phase

Definition at line 86 of file AbstractOdeBasedCellCycleModel.hpp.

Referenced by serialize(), and UpdateCellCyclePhase().


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

Generated on Wed Mar 18 12:52:08 2009 for Chaste by  doxygen 1.5.5