AbstractWntOdeBasedCellCycleModel Class Reference

#include <AbstractWntOdeBasedCellCycleModel.hpp>

Inherits AbstractOdeBasedCellCycleModelWithStoppingEvent.

Inherited by AbstractVanLeeuwen2009WntSwatCellCycleModel, and WntCellCycleModel.

Collaboration diagram for AbstractWntOdeBasedCellCycleModel:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 AbstractWntOdeBasedCellCycleModel ()
 AbstractWntOdeBasedCellCycleModel (const AbstractWntOdeBasedCellCycleModel &rOtherModel)
void ResetForDivision ()
void UpdateCellProliferativeType ()
virtual void ChangeCellProliferativeTypeDueToCurrentBetaCateninLevel ()=0
double GetAverageTransitCellCycleTime ()
double GetAverageStemCellCycleTime ()
virtual bool CanCellTerminallyDifferentiate ()

Protected Member Functions

virtual double GetOdeStopTime ()
double GetWntLevel ()

Static Protected Attributes

static RungeKutta4IvpOdeSolver msSolver

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 the Wnt cell cycle ODE based models, the resetting method and updating of cell types etc.

The concrete models all need to operate with a WntConcentration singleton object.

These models have a constant length M phase, run ODEs to decide when to finish G1 phase, then add time for S and G2 phases (in some classes, random periods of time). The CellProliferativeType is updated dependent on the concentration of beta-catenin (given by one of the ODEs).

Definition at line 52 of file AbstractWntOdeBasedCellCycleModel.hpp.


Constructor & Destructor Documentation

AbstractWntOdeBasedCellCycleModel::AbstractWntOdeBasedCellCycleModel (  ) 

Default constructor

Definition at line 36 of file AbstractWntOdeBasedCellCycleModel.cpp.

References msSolver.

AbstractWntOdeBasedCellCycleModel::AbstractWntOdeBasedCellCycleModel ( const AbstractWntOdeBasedCellCycleModel rOtherModel  ) 

Copy constructor.

This is needed because we store and manage a pointer to an ODE system. Note that this class doesn't actually copy the ODE system, because each subclass will use a different type. Hence subclasses *must* copy their own ODE system in their copy constructor.

Parameters:
rOtherModel the cell cycle model being copied.

Definition at line 46 of file AbstractWntOdeBasedCellCycleModel.cpp.

References AbstractCellCycleModel::mDimension.


Member Function Documentation

bool AbstractWntOdeBasedCellCycleModel::CanCellTerminallyDifferentiate (  )  [virtual]

Overridden CanCellTerminallyDifferentiate() method.

Reimplemented from AbstractCellCycleModel.

Definition at line 127 of file AbstractWntOdeBasedCellCycleModel.cpp.

virtual void AbstractWntOdeBasedCellCycleModel::ChangeCellProliferativeTypeDueToCurrentBetaCateninLevel (  )  [pure virtual]

This must be implemented by subclasses to change cell type to reflect current levels of beta-catenin.

Implemented in AbstractVanLeeuwen2009WntSwatCellCycleModel, and WntCellCycleModel.

Referenced by UpdateCellProliferativeType().

double AbstractWntOdeBasedCellCycleModel::GetAverageStemCellCycleTime (  )  [virtual]

Overridden GetAverageStemCellCycleTime() method.

Reimplemented from AbstractCellCycleModel.

Definition at line 122 of file AbstractWntOdeBasedCellCycleModel.cpp.

double AbstractWntOdeBasedCellCycleModel::GetAverageTransitCellCycleTime (  )  [virtual]

Overridden GetAverageTransitCellCycleTime() method.

Reimplemented from AbstractCellCycleModel.

Definition at line 117 of file AbstractWntOdeBasedCellCycleModel.cpp.

double AbstractWntOdeBasedCellCycleModel::GetOdeStopTime (  )  [protected, virtual]
Returns:
time when the ODEs reached their stopping condition.

Implements AbstractOdeBasedCellCycleModel.

Definition at line 52 of file AbstractWntOdeBasedCellCycleModel.cpp.

References AbstractIvpOdeSolver::GetStoppingTime(), msSolver, and AbstractIvpOdeSolver::StoppingEventOccurred().

double AbstractWntOdeBasedCellCycleModel::GetWntLevel (  )  [protected]
void AbstractWntOdeBasedCellCycleModel::ResetForDivision (  )  [virtual]

Resets the Wnt Model to the start of the cell cycle (this model does not cycle naturally) Cells are given a new birth time and cell cycle proteins are reset. Note that the Wnt pathway proteins maintain their current values.

Should only be called by the TissueCell::Divide() method.

Reimplemented from AbstractOdeBasedCellCycleModel.

Reimplemented in StochasticWntCellCycleModel.

Definition at line 89 of file AbstractWntOdeBasedCellCycleModel.cpp.

References AbstractOdeSystem::GetInitialConditions(), AbstractOdeBasedCellCycleModel::mpOdeSystem, and AbstractOdeSystem::rGetStateVariables().

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

Archive the cell cycle model, never used directly - boost uses this.

Parameters:
archive the archive
version the current version of this class

Reimplemented from AbstractOdeBasedCellCycleModelWithStoppingEvent.

Reimplemented in StochasticWntCellCycleModel, VanLeeuwen2009WntSwatCellCycleModelHypothesisOne, and VanLeeuwen2009WntSwatCellCycleModelHypothesisTwo.

Definition at line 65 of file AbstractWntOdeBasedCellCycleModel.hpp.

void AbstractWntOdeBasedCellCycleModel::UpdateCellProliferativeType (  ) 

Updates the current cell type to reflect whether the beta-catenin level has dropped low enough to make it stop dividing. This should only be called when the cell cycle model has been evaluated to the current time, or it may give misleading results.

Definition at line 105 of file AbstractWntOdeBasedCellCycleModel.cpp.

References ChangeCellProliferativeTypeDueToCurrentBetaCateninLevel(), SimulationTime::Instance(), AbstractOdeBasedCellCycleModel::mLastTime, AbstractCellCycleModel::mpCell, and AbstractOdeBasedCellCycleModel::mpOdeSystem.

Referenced by WntCellCycleModel::SolveOdeToTime(), and AbstractVanLeeuwen2009WntSwatCellCycleModel::SolveOdeToTime().


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