Chaste
Release::3.4
|
#include <TysonNovakCellCycleModel.hpp>
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
Friends | |
class | TestOdeBasedCellCycleModels |
class | boost::serialization::access |
Additional Inherited Members | |
Protected Member Functions inherited from CellCycleModelOdeHandler | |
bool | SolveOdeToTime (double currentTime) |
virtual void | AdjustOdeParameters (double currentTime) |
Protected Attributes inherited from AbstractOdeBasedCellCycleModel | |
double | mDivideTime |
bool | mFinishedRunningOdes |
double | mG2PhaseStartTime |
Protected Attributes inherited from AbstractCellCycleModel | |
CellPtr | mpCell |
double | mBirthTime |
CellCyclePhase | mCurrentCellCyclePhase |
double | mG1Duration |
bool | mReadyToDivide |
unsigned | mDimension |
double | mMinimumGapDuration |
double | mStemCellG1Duration |
double | mTransitCellG1Duration |
double | mSDuration |
double | mG2Duration |
double | mMDuration |
Protected Attributes inherited from CellCycleModelOdeHandler | |
double | mDt |
AbstractOdeSystem * | mpOdeSystem |
boost::shared_ptr < AbstractCellCycleModelOdeSolver > | mpOdeSolver |
double | mLastTime |
Tyson-Novak 2001 cell-cycle model, taken from the version at doi:10.1006/jtbi.2001.2293
Note that this is not a model for murine or human colonic-cell cycling, but is included in chaste as one of the most commonly known ODE based cell-cycle models.
Time taken to progress through the cycle is deterministic and given by an ODE system independent of external factors.
Definition at line 55 of file TysonNovakCellCycleModel.hpp.
TysonNovakCellCycleModel::TysonNovakCellCycleModel | ( | boost::shared_ptr< AbstractCellCycleModelOdeSolver > | pOdeSolver = boost::shared_ptr<AbstractCellCycleModelOdeSolver>() | ) |
Default constructor.
pOdeSolver | An optional pointer to a cell-cycle model ODE solver object (allows the use of different ODE solvers) |
Definition at line 40 of file TysonNovakCellCycleModel.cpp.
References CellCycleModelOdeSolver< CELL_CYCLE_MODEL, ODE_SOLVER >::Instance(), CellCycleModelOdeHandler::mpOdeSolver, and CellCycleModelOdeHandler::SetDt().
Referenced by CreateCellCycleModel().
|
virtual |
Overridden CanCellTerminallyDifferentiate() method.
Reimplemented from AbstractCellCycleModel.
Definition at line 199 of file TysonNovakCellCycleModel.cpp.
|
virtual |
Overridden builder method to create new copies of this cell-cycle model.
Implements AbstractCellCycleModel.
Definition at line 114 of file TysonNovakCellCycleModel.cpp.
References AbstractCellCycleModel::mBirthTime, AbstractOdeBasedCellCycleModel::mDivideTime, AbstractOdeBasedCellCycleModel::mFinishedRunningOdes, AbstractCellCycleModel::mG2Duration, AbstractOdeBasedCellCycleModel::mG2PhaseStartTime, CellCycleModelOdeHandler::mLastTime, AbstractCellCycleModel::mMDuration, AbstractCellCycleModel::mMinimumGapDuration, CellCycleModelOdeHandler::mpOdeSolver, CellCycleModelOdeHandler::mpOdeSystem, AbstractCellCycleModel::mSDuration, AbstractCellCycleModel::mStemCellG1Duration, AbstractCellCycleModel::mTransitCellG1Duration, AbstractParameterisedSystem< VECTOR >::rGetStateVariables(), AbstractOdeBasedCellCycleModel::SetBirthTime(), AbstractOdeBasedCellCycleModel::SetDivideTime(), AbstractOdeBasedCellCycleModel::SetFinishedRunningOdes(), AbstractCellCycleModel::SetG2Duration(), AbstractOdeBasedCellCycleModel::SetG2PhaseStartTime(), CellCycleModelOdeHandler::SetLastTime(), AbstractCellCycleModel::SetMDuration(), AbstractCellCycleModel::SetMinimumGapDuration(), CellCycleModelOdeHandler::SetOdeSystem(), AbstractCellCycleModel::SetSDuration(), CellCycleModelOdeHandler::SetStateVariables(), AbstractCellCycleModel::SetStemCellG1Duration(), AbstractCellCycleModel::SetTransitCellG1Duration(), and TysonNovakCellCycleModel().
|
virtual |
Overridden GetAverageStemCellCycleTime() method.
Reimplemented from AbstractCellCycleModel.
Definition at line 194 of file TysonNovakCellCycleModel.cpp.
|
virtual |
Overridden GetAverageTransitCellCycleTime() method.
Reimplemented from AbstractCellCycleModel.
Definition at line 189 of file TysonNovakCellCycleModel.cpp.
|
virtual |
Tyson & Novak pretends it is running ODEs in just G1, but they really represent the whole cell cycle so we set the other phases to zero.
Reimplemented from AbstractCellCycleModel.
Definition at line 169 of file TysonNovakCellCycleModel.cpp.
|
virtual |
Tyson & Novak pretends it is running ODEs in just G1, but they really represent the whole cell cycle so we set the other phases to zero.
Reimplemented from AbstractCellCycleModel.
Definition at line 179 of file TysonNovakCellCycleModel.cpp.
|
virtual |
Tyson & Novak pretends it is running ODEs in just G1, but they really represent the whole cell cycle, so we set the other phases to zero.
Reimplemented from AbstractCellCycleModel.
Definition at line 159 of file TysonNovakCellCycleModel.cpp.
|
virtual |
Initialise the cell-cycle model at the start of a simulation.
This method will be called precisely once per cell set up in the initial cell population. It is not called on cell division; use ResetForDivision(), CreateCellCycleModel() and InitialiseDaughterCell() for that.
By the time this is called, a CellPopulation will have been set up, so the model can know where its cell is located in space. If relevant to the simulation, any singletons will also have been initialised.
Reimplemented from AbstractCellCycleModel.
Definition at line 61 of file TysonNovakCellCycleModel.cpp.
References AbstractParameterisedSystem< VECTOR >::GetInitialConditions(), AbstractCellCycleModel::Initialise(), CellCycleModelOdeHandler::mpOdeSystem, and AbstractParameterisedSystem< VECTOR >::SetStateVariables().
|
virtual |
If the daughter cell type is stem, change it to transit.
Reimplemented from AbstractCellCycleModel.
Definition at line 95 of file TysonNovakCellCycleModel.cpp.
References AbstractCellCycleModel::mpCell.
|
virtual |
Outputs cell cycle model parameters to file.
rParamsFile | the file stream to which the parameters are output |
Reimplemented from AbstractOdeBasedCellCycleModel.
Definition at line 204 of file TysonNovakCellCycleModel.cpp.
References AbstractOdeBasedCellCycleModel::OutputCellCycleModelParameters().
|
virtual |
Reset cell-cycle model by calling AbstractOdeBasedCellCycleModelWithStoppingEvent::ResetForDivision() and setting initial conditions for protein concentrations.
This model needs the protein concentrations and phase resetting to G0/G1.
In theory, the solution to the Tyson-Novak equations should exhibit stable oscillations, and we only need to halve the mass of the cell each period.
However, the backward Euler solver used to solve the equations currently returns a solution that diverges after long times, so we must reset the initial conditions each period.
When running with CVODE however we can use the halving the mass of the cell method.
Reimplemented from AbstractOdeBasedCellCycleModel.
Definition at line 70 of file TysonNovakCellCycleModel.cpp.
References AbstractParameterisedSystem< VECTOR >::GetInitialConditions(), CellCycleModelOdeHandler::mpOdeSystem, AbstractOdeBasedCellCycleModel::ResetForDivision(), AbstractParameterisedSystem< VECTOR >::rGetStateVariables(), and AbstractParameterisedSystem< VECTOR >::SetStateVariables().
|
inlineprivate |
Archive the cell-cycle model, never used directly - boost uses this.
archive | the archive |
version | the current version of this class |
Definition at line 70 of file TysonNovakCellCycleModel.hpp.
|
friend |
Needed for serialization.
Definition at line 62 of file TysonNovakCellCycleModel.hpp.