#include <AbstractWntOdeBasedCellCycleModel.hpp>
Public Member Functions | |
AbstractWntOdeBasedCellCycleModel (unsigned dimension) | |
AbstractWntOdeBasedCellCycleModel (const AbstractWntOdeBasedCellCycleModel &rOtherModel) | |
void | ResetForDivision () |
void | UpdateCellType () |
virtual void | ChangeCellTypeDueToCurrentBetaCateninLevel ()=0 |
unsigned | GetDimension () |
Protected Member Functions | |
virtual double | GetOdeStopTime () |
double | GetWntLevel () |
Protected Attributes | |
unsigned | mDimension |
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 |
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 CellType is updated dependent on the concentration of beta-catenin (given by one of the ODEs).
Definition at line 55 of file AbstractWntOdeBasedCellCycleModel.hpp.
AbstractWntOdeBasedCellCycleModel::AbstractWntOdeBasedCellCycleModel | ( | unsigned | dimension | ) |
Default constructor
dimension | the spatial dimension (used by WntConcentration) |
Definition at line 38 of file AbstractWntOdeBasedCellCycleModel.cpp.
References mDimension, and 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.
rOtherModel | the cell cycle model being copied. |
Definition at line 50 of file AbstractWntOdeBasedCellCycleModel.cpp.
void AbstractWntOdeBasedCellCycleModel::serialize | ( | Archive & | archive, | |
const unsigned int | version | |||
) | [inline, private] |
Archive the cell cycle model, never used directly - boost uses this.
archive | the archive | |
version | the current version of this class |
Reimplemented from AbstractOdeBasedCellCycleModel.
Reimplemented in IngeWntSwatCellCycleModel, StochasticWntCellCycleModel, and WntCellCycleModel.
Definition at line 68 of file AbstractWntOdeBasedCellCycleModel.hpp.
References mDimension.
double AbstractWntOdeBasedCellCycleModel::GetOdeStopTime | ( | ) | [protected, virtual] |
Implements AbstractOdeBasedCellCycleModel.
Definition at line 63 of file AbstractWntOdeBasedCellCycleModel.cpp.
References AbstractIvpOdeSolver::GetStoppingTime(), msSolver, and AbstractIvpOdeSolver::StoppingEventOccurred().
double AbstractWntOdeBasedCellCycleModel::GetWntLevel | ( | ) | [protected] |
Get the Wnt level experienced by the cell.
Definition at line 70 of file AbstractWntOdeBasedCellCycleModel.cpp.
References WntConcentration< DIM >::GetWntLevel(), WntConcentration< DIM >::Instance(), mDimension, and AbstractCellCycleModel::mpCell.
Referenced by WntCellCycleModel::Initialise(), IngeWntSwatCellCycleModel::Initialise(), WntCellCycleModel::SolveOdeToTime(), and IngeWntSwatCellCycleModel::SolveOdeToTime().
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 102 of file AbstractWntOdeBasedCellCycleModel.cpp.
References AbstractOdeSystem::GetInitialConditions(), AbstractOdeBasedCellCycleModel::mpOdeSystem, AbstractOdeBasedCellCycleModel::ResetForDivision(), and AbstractOdeSystem::rGetStateVariables().
Referenced by StochasticWntCellCycleModel::ResetForDivision().
void AbstractWntOdeBasedCellCycleModel::UpdateCellType | ( | ) |
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 119 of file AbstractWntOdeBasedCellCycleModel.cpp.
References ChangeCellTypeDueToCurrentBetaCateninLevel(), SimulationTime::Instance(), AbstractOdeBasedCellCycleModel::mLastTime, AbstractCellCycleModel::mpCell, and AbstractOdeBasedCellCycleModel::mpOdeSystem.
Referenced by WntCellCycleModel::SolveOdeToTime(), and IngeWntSwatCellCycleModel::SolveOdeToTime().
virtual void AbstractWntOdeBasedCellCycleModel::ChangeCellTypeDueToCurrentBetaCateninLevel | ( | ) | [pure virtual] |
This must be implemented by subclasses to change cell type to reflect current levels of beta-catenin.
Implemented in IngeWntSwatCellCycleModel, and WntCellCycleModel.
Referenced by UpdateCellType().
unsigned AbstractWntOdeBasedCellCycleModel::GetDimension | ( | ) |
Get the spatial dimension.
Definition at line 57 of file AbstractWntOdeBasedCellCycleModel.cpp.
References mDimension.
friend class boost::serialization::access [friend] |
Needed for serialization.
Reimplemented from AbstractOdeBasedCellCycleModel.
Reimplemented in IngeWntSwatCellCycleModel, StochasticWntCellCycleModel, and WntCellCycleModel.
Definition at line 60 of file AbstractWntOdeBasedCellCycleModel.hpp.
RungeKutta4IvpOdeSolver AbstractWntOdeBasedCellCycleModel::msSolver [static, protected] |
The ODE solver.
Definition at line 81 of file AbstractWntOdeBasedCellCycleModel.hpp.
Referenced by AbstractWntOdeBasedCellCycleModel(), GetOdeStopTime(), WntCellCycleModel::SolveOdeToTime(), and IngeWntSwatCellCycleModel::SolveOdeToTime().
unsigned AbstractWntOdeBasedCellCycleModel::mDimension [protected] |
The spatial dimension (needed by the templated class WntConcentration).
Definition at line 87 of file AbstractWntOdeBasedCellCycleModel.hpp.
Referenced by AbstractWntOdeBasedCellCycleModel(), GetDimension(), GetWntLevel(), and serialize().