Chaste
Release::2017.1
|
#include <AbstractPhaseBasedCellCycleModel.hpp>
Protected Member Functions | |
AbstractPhaseBasedCellCycleModel (const AbstractPhaseBasedCellCycleModel &rModel) | |
Protected Member Functions inherited from AbstractCellCycleModel | |
AbstractCellCycleModel (const AbstractCellCycleModel &rModel) | |
Protected Attributes | |
CellCyclePhase | mCurrentCellCyclePhase |
double | mG1Duration |
double | mMinimumGapDuration |
double | mStemCellG1Duration |
double | mTransitCellG1Duration |
double | mSDuration |
double | mG2Duration |
double | mMDuration |
Protected Attributes inherited from AbstractCellCycleModel | |
CellPtr | mpCell |
double | mBirthTime |
bool | mReadyToDivide |
unsigned | mDimension |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
Friends | |
class | boost::serialization::access |
The AbstractPhaseBasedCellCycleModel contains basic information to all phase based cell-cycle models. It handles assignment of aspects of cell cycle phase.
Definition at line 56 of file AbstractPhaseBasedCellCycleModel.hpp.
|
protected |
Protected copy-constructor for use by CreateCellCycleModel. The only way for external code to create a copy of a cell cycle model is by calling that method, to ensure that a model of the correct subclass is created. This copy-constructor helps subclasses to ensure that all member variables are correctly copied when this happens.
This method is called by child classes to set member variables for a daughter cell upon cell division. Note that the parent cell cycle model will have had ResetForDivision() called just before CreateCellCycleModel() is called, so performing an exact copy of the parent is suitable behaviour. Any daughter-cell-specific initialisation can be done in InitialiseDaughterCell().
rModel | the cell cycle model to copy. |
Definition at line 56 of file AbstractPhaseBasedCellCycleModel.cpp.
AbstractPhaseBasedCellCycleModel::AbstractPhaseBasedCellCycleModel | ( | ) |
Default constructor - creates an AbstractPhaseBasedCellCycleModel.
Definition at line 38 of file AbstractPhaseBasedCellCycleModel.cpp.
|
virtual |
Destructor.
Definition at line 52 of file AbstractPhaseBasedCellCycleModel.cpp.
|
virtual |
Implements AbstractCellCycleModel.
Reimplemented in AbstractWntOdeBasedCellCycleModel.
Definition at line 142 of file AbstractPhaseBasedCellCycleModel.cpp.
References GetSG2MDuration(), and mStemCellG1Duration.
|
virtual |
Implements AbstractCellCycleModel.
Reimplemented in AbstractWntOdeBasedCellCycleModel.
Definition at line 137 of file AbstractPhaseBasedCellCycleModel.cpp.
References GetSG2MDuration(), and mTransitCellG1Duration.
CellCyclePhase AbstractPhaseBasedCellCycleModel::GetCurrentCellCyclePhase | ( | ) | const |
Definition at line 132 of file AbstractPhaseBasedCellCycleModel.cpp.
References mCurrentCellCyclePhase.
|
virtual |
Definition at line 97 of file AbstractPhaseBasedCellCycleModel.cpp.
References mG1Duration.
Referenced by ReadyToDivide(), SimpleTargetAreaModifier< DIM >::UpdateTargetAreaOfCell(), and TargetAreaLinearGrowthModifier< DIM >::UpdateTargetAreaOfCell().
|
virtual |
Reimplemented in StochasticWntCellCycleModel, and StochasticOxygenBasedCellCycleModel.
Definition at line 122 of file AbstractPhaseBasedCellCycleModel.cpp.
References mG2Duration.
Referenced by StochasticOxygenBasedCellCycleModel::GenerateStochasticG2Duration(), StochasticWntCellCycleModel::GenerateStochasticG2Duration(), ReadyToDivide(), AbstractSimplePhaseBasedCellCycleModel::UpdateCellCyclePhase(), ContactInhibitionCellCycleModel::UpdateCellCyclePhase(), AbstractOdeBasedPhaseBasedCellCycleModel::UpdateCellCyclePhase(), and TargetAreaLinearGrowthModifier< DIM >::UpdateTargetAreaOfCell().
|
virtual |
Definition at line 127 of file AbstractPhaseBasedCellCycleModel.cpp.
References mMDuration.
Referenced by ReadyToDivide(), AbstractSimplePhaseBasedCellCycleModel::UpdateCellCyclePhase(), ContactInhibitionCellCycleModel::UpdateCellCyclePhase(), AbstractOdeBasedPhaseBasedCellCycleModel::UpdateCellCyclePhase(), and TargetAreaLinearGrowthModifier< DIM >::UpdateTargetAreaOfCell().
double AbstractPhaseBasedCellCycleModel::GetMinimumGapDuration | ( | ) | const |
Definition at line 147 of file AbstractPhaseBasedCellCycleModel.cpp.
References mMinimumGapDuration.
|
virtual |
Definition at line 117 of file AbstractPhaseBasedCellCycleModel.cpp.
References mSDuration.
Referenced by ReadyToDivide(), AbstractSimplePhaseBasedCellCycleModel::UpdateCellCyclePhase(), ContactInhibitionCellCycleModel::UpdateCellCyclePhase(), AbstractOdeBasedPhaseBasedCellCycleModel::UpdateCellCyclePhase(), and TargetAreaLinearGrowthModifier< DIM >::UpdateTargetAreaOfCell().
double AbstractPhaseBasedCellCycleModel::GetSG2MDuration | ( | ) | const |
Definition at line 112 of file AbstractPhaseBasedCellCycleModel.cpp.
References mG2Duration, mMDuration, and mSDuration.
Referenced by GetAverageStemCellCycleTime(), and GetAverageTransitCellCycleTime().
double AbstractPhaseBasedCellCycleModel::GetStemCellG1Duration | ( | ) | const |
Definition at line 102 of file AbstractPhaseBasedCellCycleModel.cpp.
References mStemCellG1Duration.
Referenced by AbstractSimplePhaseBasedCellCycleModel::SetG1Duration(), UniformG1GenerationalCellCycleModel::SetG1Duration(), and SimpleWntCellCycleModel::SetG1Duration().
double AbstractPhaseBasedCellCycleModel::GetTransitCellG1Duration | ( | ) | const |
Definition at line 107 of file AbstractPhaseBasedCellCycleModel.cpp.
References mTransitCellG1Duration.
Referenced by AbstractSimplePhaseBasedCellCycleModel::SetG1Duration(), UniformG1GenerationalCellCycleModel::SetG1Duration(), SimpleWntCellCycleModel::SetG1Duration(), and SimpleTargetAreaModifier< DIM >::UpdateTargetAreaOfCell().
|
pure virtual |
Outputs cell cycle model parameters to file.
As this method is pure virtual, it must be overridden in subclasses.
rParamsFile | the file stream to which the parameters are output |
Implements AbstractCellCycleModel.
Implemented in SimpleWntCellCycleModel, SimpleOxygenBasedCellCycleModel, ContactInhibitionCellCycleModel, SingleOdeWntCellCycleModel, ExponentialG1GenerationalCellCycleModel, FixedSequenceCellCycleModel, AbstractWntOdeBasedCellCycleModel, AbstractOdeBasedPhaseBasedCellCycleModel, StochasticWntCellCycleModel, AbstractVanLeeuwen2009WntSwatCellCycleModel, AbstractSimpleGenerationalCellCycleModel, WntCellCycleModel, GammaG1CellCycleModel, StochasticOxygenBasedCellCycleModel, AbstractSimplePhaseBasedCellCycleModel, Alarcon2004OxygenBasedCellCycleModel, UniformG1GenerationalCellCycleModel, VanLeeuwen2009WntSwatCellCycleModelHypothesisTwo, VanLeeuwen2009WntSwatCellCycleModelHypothesisOne, and FixedG1GenerationalCellCycleModel.
Definition at line 188 of file AbstractPhaseBasedCellCycleModel.cpp.
References mG2Duration, mMDuration, mSDuration, mStemCellG1Duration, mTransitCellG1Duration, and AbstractCellCycleModel::OutputCellCycleModelParameters().
Referenced by AbstractSimplePhaseBasedCellCycleModel::OutputCellCycleModelParameters(), and AbstractOdeBasedPhaseBasedCellCycleModel::OutputCellCycleModelParameters().
|
virtual |
See AbstractCellCycleModel::ResetForDivision()
Implements AbstractCellCycleModel.
Definition at line 81 of file AbstractPhaseBasedCellCycleModel.cpp.
References AbstractCellCycleModel::GetAge(), GetG1Duration(), GetG2Duration(), GetMDuration(), GetSDuration(), mCurrentCellCyclePhase, AbstractCellCycleModel::mpCell, AbstractCellCycleModel::mReadyToDivide, and UpdateCellCyclePhase().
|
virtual |
See AbstractCellCycleModel::ResetForDivision()
Reimplemented from AbstractCellCycleModel.
Reimplemented in AbstractOdeBasedPhaseBasedCellCycleModel, StochasticWntCellCycleModel, AbstractWntOdeBasedCellCycleModel, StochasticOxygenBasedCellCycleModel, AbstractSimplePhaseBasedCellCycleModel, AbstractSimpleGenerationalCellCycleModel, and Alarcon2004OxygenBasedCellCycleModel.
Definition at line 75 of file AbstractPhaseBasedCellCycleModel.cpp.
References mCurrentCellCyclePhase, and AbstractCellCycleModel::ResetForDivision().
Referenced by AbstractSimplePhaseBasedCellCycleModel::ResetForDivision(), and AbstractOdeBasedPhaseBasedCellCycleModel::ResetForDivision().
|
inlineprivate |
Archive the object and its member variables.
archive | the archive |
version | the current version of this class |
Definition at line 69 of file AbstractPhaseBasedCellCycleModel.hpp.
References mCurrentCellCyclePhase, mG1Duration, mG2Duration, mMDuration, mMinimumGapDuration, mSDuration, mStemCellG1Duration, and mTransitCellG1Duration.
void AbstractPhaseBasedCellCycleModel::SetG2Duration | ( | double | g2Duration | ) |
Set mG2Duration.
g2Duration | the new value of mG2Duration |
Definition at line 170 of file AbstractPhaseBasedCellCycleModel.cpp.
References mG2Duration.
void AbstractPhaseBasedCellCycleModel::SetMDuration | ( | double | mDuration | ) |
Set mMDuration.
mDuration | the new value of mMDuration |
Definition at line 176 of file AbstractPhaseBasedCellCycleModel.cpp.
References mMDuration.
void AbstractPhaseBasedCellCycleModel::SetMinimumGapDuration | ( | double | minimumGapDuration | ) |
Set mMinimumGapDuration
minimumGapDuration | the new value of mMinimumGapDuration |
Definition at line 182 of file AbstractPhaseBasedCellCycleModel.cpp.
References mMinimumGapDuration.
void AbstractPhaseBasedCellCycleModel::SetSDuration | ( | double | sDuration | ) |
Set mSDuration.
sDuration | the new value of mSDuration |
Definition at line 164 of file AbstractPhaseBasedCellCycleModel.cpp.
References mSDuration.
|
virtual |
Set mStemCellG1Duration.
stemCellG1Duration | the new value of mStemCellG1Duration |
Reimplemented in ExponentialG1GenerationalCellCycleModel, and FixedSequenceCellCycleModel.
Definition at line 152 of file AbstractPhaseBasedCellCycleModel.cpp.
References mStemCellG1Duration.
|
virtual |
Set mTransitCellG1Duration.
transitCellG1Duration | the new value of mTransitCellG1Duration |
Reimplemented in ExponentialG1GenerationalCellCycleModel, and FixedSequenceCellCycleModel.
Definition at line 158 of file AbstractPhaseBasedCellCycleModel.cpp.
References mTransitCellG1Duration.
|
pure virtual |
Set the phase the cell-cycle model is currently in. This method is called from ReadyToDivide() just prior to deciding whether to divide the cell, based on how far through the cell cycle it is, i.e. whether it has completed M, G1, S and G2 phases.
As this method is pure virtual, it must be overridden in subclasses.
Implemented in SimpleWntCellCycleModel, SingleOdeWntCellCycleModel, SimpleOxygenBasedCellCycleModel, AbstractOdeBasedPhaseBasedCellCycleModel, ContactInhibitionCellCycleModel, AbstractSimplePhaseBasedCellCycleModel, and AbstractWntOdeBasedCellCycleModel.
Referenced by ReadyToDivide().
|
friend |
Needed for serialization.
Definition at line 61 of file AbstractPhaseBasedCellCycleModel.hpp.
|
protected |
The phase of the cell cycle that this model is in (specified in CellCyclePhases.hpp)
Definition at line 85 of file AbstractPhaseBasedCellCycleModel.hpp.
Referenced by GetCurrentCellCyclePhase(), ReadyToDivide(), ResetForDivision(), serialize(), AbstractSimplePhaseBasedCellCycleModel::UpdateCellCyclePhase(), ContactInhibitionCellCycleModel::UpdateCellCyclePhase(), AbstractOdeBasedPhaseBasedCellCycleModel::UpdateCellCyclePhase(), and SimpleOxygenBasedCellCycleModel::UpdateCellCyclePhase().
|
protected |
How long the G1 phase lasts for. Not necessarily a fixed value.
Definition at line 91 of file AbstractPhaseBasedCellCycleModel.hpp.
Referenced by GetG1Duration(), AbstractOdeBasedPhaseBasedCellCycleModel::ResetForDivision(), serialize(), AbstractSimplePhaseBasedCellCycleModel::SetG1Duration(), UniformG1GenerationalCellCycleModel::SetG1Duration(), ExponentialG1GenerationalCellCycleModel::SetG1Duration(), FixedSequenceCellCycleModel::SetG1Duration(), GammaG1CellCycleModel::SetG1Duration(), SimpleWntCellCycleModel::SetG1Duration(), AbstractSimplePhaseBasedCellCycleModel::UpdateCellCyclePhase(), ContactInhibitionCellCycleModel::UpdateCellCyclePhase(), AbstractOdeBasedPhaseBasedCellCycleModel::UpdateCellCyclePhase(), and SimpleOxygenBasedCellCycleModel::UpdateCellCyclePhase().
|
protected |
Duration of G2 phase for all cell types.
Definition at line 123 of file AbstractPhaseBasedCellCycleModel.hpp.
Referenced by GetG2Duration(), GetSG2MDuration(), OutputCellCycleModelParameters(), serialize(), and SetG2Duration().
|
protected |
Duration of M phase for all cell types.
Definition at line 128 of file AbstractPhaseBasedCellCycleModel.hpp.
Referenced by GetMDuration(), GetSG2MDuration(), OutputCellCycleModelParameters(), serialize(), and SetMDuration().
|
protected |
Minimum possible duration of either of the gap phases (G1 or G2). Has units of hours.
Used to guarantee a strictly positive duration in cell-cycle models that use normal random deviates for G1 or G2 phases.
Definition at line 100 of file AbstractPhaseBasedCellCycleModel.hpp.
Referenced by StochasticOxygenBasedCellCycleModel::GenerateStochasticG2Duration(), StochasticWntCellCycleModel::GenerateStochasticG2Duration(), GetMinimumGapDuration(), serialize(), SimpleWntCellCycleModel::SetG1Duration(), and SetMinimumGapDuration().
|
protected |
Duration of S phase for all cell types.
Definition at line 118 of file AbstractPhaseBasedCellCycleModel.hpp.
Referenced by GetSDuration(), GetSG2MDuration(), OutputCellCycleModelParameters(), serialize(), and SetSDuration().
|
protected |
Duration of G1 phase for stem cells. May be used as a mean duration for stochastic cell-cycle models.
Definition at line 107 of file AbstractPhaseBasedCellCycleModel.hpp.
Referenced by FixedSequenceCellCycleModel::FixedSequenceCellCycleModel(), GetAverageStemCellCycleTime(), GetStemCellG1Duration(), OutputCellCycleModelParameters(), serialize(), FixedSequenceCellCycleModel::SetRate(), ExponentialG1GenerationalCellCycleModel::SetStemCellG1Duration(), and SetStemCellG1Duration().
|
protected |
Duration of G1 phase for transit cells. May be used as a mean duration for stochastic cell-cycle models.
Definition at line 113 of file AbstractPhaseBasedCellCycleModel.hpp.
Referenced by FixedSequenceCellCycleModel::FixedSequenceCellCycleModel(), GetAverageTransitCellCycleTime(), GetTransitCellG1Duration(), OutputCellCycleModelParameters(), serialize(), FixedSequenceCellCycleModel::SetRate(), ExponentialG1GenerationalCellCycleModel::SetTransitCellG1Duration(), and SetTransitCellG1Duration().