Chaste Commit::1fd4e48e3990e67db148bc1bc4cf6991a0049d0c
WntCellCycleModel Class Reference

#include <WntCellCycleModel.hpp>

+ Inheritance diagram for WntCellCycleModel:
+ Collaboration diagram for WntCellCycleModel:

Public Member Functions

 WntCellCycleModel (boost::shared_ptr< AbstractCellCycleModelOdeSolver > pOdeSolver=boost::shared_ptr< AbstractCellCycleModelOdeSolver >())
 
 ~WntCellCycleModel ()
 
AbstractCellCycleModelCreateCellCycleModel ()
 
void Initialise ()
 
virtual void OutputCellCycleModelParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from AbstractWntOdeBasedCellCycleModel
 AbstractWntOdeBasedCellCycleModel (boost::shared_ptr< AbstractCellCycleModelOdeSolver > pOdeSolver=boost::shared_ptr< AbstractCellCycleModelOdeSolver >())
 
virtual ~AbstractWntOdeBasedCellCycleModel ()
 
void ResetForDivision ()
 
void UpdateCellProliferativeType ()
 
double GetAverageTransitCellCycleTime ()
 
double GetAverageStemCellCycleTime ()
 
virtual bool CanCellTerminallyDifferentiate ()
 
- Public Member Functions inherited from AbstractOdeBasedPhaseBasedCellCycleModel
 AbstractOdeBasedPhaseBasedCellCycleModel (double lastTime=SimulationTime::Instance() ->GetTime(), boost::shared_ptr< AbstractCellCycleModelOdeSolver > pOdeSolver=boost::shared_ptr< AbstractCellCycleModelOdeSolver >())
 
virtual ~AbstractOdeBasedPhaseBasedCellCycleModel ()
 
double GetOdeStopTime ()
 
void SetBirthTime (double birthTime)
 
- Public Member Functions inherited from AbstractPhaseBasedCellCycleModel
 AbstractPhaseBasedCellCycleModel ()
 
virtual ~AbstractPhaseBasedCellCycleModel ()
 
virtual bool ReadyToDivide ()
 
CellCyclePhase GetCurrentCellCyclePhase () const
 
virtual double GetG1Duration () const
 
double GetStemCellG1Duration () const
 
double GetTransitCellG1Duration () const
 
double GetSG2MDuration () const
 
virtual double GetSDuration () const
 
virtual double GetG2Duration () const
 
virtual double GetMDuration () const
 
virtual void SetStemCellG1Duration (double stemCellG1Duration)
 
virtual void SetTransitCellG1Duration (double transitCellG1Duration)
 
void SetSDuration (double sDuration)
 
void SetG2Duration (double g2Duration)
 
void SetMDuration (double mDuration)
 
double GetMinimumGapDuration () const
 
void SetMinimumGapDuration (double minimumGapDuration)
 
- Public Member Functions inherited from AbstractCellCycleModel
 AbstractCellCycleModel ()
 
virtual ~AbstractCellCycleModel ()
 
void SetCell (CellPtr pCell)
 
virtual void InitialiseDaughterCell ()
 
CellPtr GetCell ()
 
void SetDimension (unsigned dimension)
 
unsigned GetDimension () const
 
double GetBirthTime () const
 
double GetAge ()
 
void OutputCellCycleModelInfo (out_stream &rParamsFile)
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 
- Public Member Functions inherited from CellCycleModelOdeHandler
 CellCycleModelOdeHandler (double lastTime=SimulationTime::Instance() ->GetTime(), boost::shared_ptr< AbstractCellCycleModelOdeSolver > pOdeSolver=boost::shared_ptr< AbstractCellCycleModelOdeSolver >())
 
virtual ~CellCycleModelOdeHandler ()
 
AbstractOdeSystemGetOdeSystem () const
 
void SetOdeSystem (AbstractOdeSystem *pOdeSystem)
 
const boost::shared_ptr< AbstractCellCycleModelOdeSolverGetOdeSolver () const
 
void SetLastTime (double lastTime)
 
double GetDt ()
 
void SetDt (double timeStep)
 
void SetStateVariables (const std::vector< double > &rStateVariables)
 
std::vector< doubleGetProteinConcentrations () const
 
void SetProteinConcentrationsForTestsOnly (double lastTime, std::vector< double > proteinConcentrations)
 

Protected Member Functions

 WntCellCycleModel (const WntCellCycleModel &rModel)
 
- Protected Member Functions inherited from AbstractWntOdeBasedCellCycleModel
double GetWntLevel () const
 
void UpdateCellCyclePhase ()
 
 AbstractWntOdeBasedCellCycleModel (const AbstractWntOdeBasedCellCycleModel &rModel)
 
- Protected Member Functions inherited from AbstractOdeBasedPhaseBasedCellCycleModel
 AbstractOdeBasedPhaseBasedCellCycleModel (const AbstractOdeBasedPhaseBasedCellCycleModel &rModel)
 
- Protected Member Functions inherited from AbstractPhaseBasedCellCycleModel
 AbstractPhaseBasedCellCycleModel (const AbstractPhaseBasedCellCycleModel &rModel)
 
- Protected Member Functions inherited from AbstractCellCycleModel
 AbstractCellCycleModel (const AbstractCellCycleModel &rModel)
 
- Protected Member Functions inherited from CellCycleModelOdeHandler
 CellCycleModelOdeHandler (const CellCycleModelOdeHandler &rHandler)
 
bool SolveOdeToTime (double currentTime)
 

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)
 
void ChangeCellProliferativeTypeDueToCurrentBetaCateninLevel ()
 
void AdjustOdeParameters (double currentTime)
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Protected Attributes inherited from AbstractOdeBasedPhaseBasedCellCycleModel
double mDivideTime
 
double mG2PhaseStartTime
 
- Protected Attributes inherited from AbstractPhaseBasedCellCycleModel
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
 
- Protected Attributes inherited from CellCycleModelOdeHandler
double mDt
 
AbstractOdeSystemmpOdeSystem
 
boost::shared_ptr< AbstractCellCycleModelOdeSolvermpOdeSolver
 
double mLastTime
 
bool mFinishedRunningOdes
 

Detailed Description

Wnt-dependent cell-cycle model. Needs to operate with a WntConcentration singleton object.

This model has a constant length M phase, runs ODEs to decide when to finish G1 phase then adds time for S and G2 phases. The CellProliferativeType is updated dependent on the concentration of beta-catenin (given by one of the ODEs).

Note that this class uses C++'s default copying semantics, and so doesn't implement a copy constructor or operator=.

Definition at line 60 of file WntCellCycleModel.hpp.

Constructor & Destructor Documentation

◆ WntCellCycleModel() [1/2]

WntCellCycleModel::WntCellCycleModel ( const WntCellCycleModel rModel)
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().

Parameters
rModelthe cell cycle model to copy.

Definition at line 61 of file WntCellCycleModel.cpp.

References CellCycleModelOdeHandler::GetOdeSystem(), AbstractWntOdeBasedCellCycleModel::GetWntLevel(), AbstractCellCycleModel::mpCell, AbstractParameterisedSystem< VECTOR >::rGetStateVariables(), CellCycleModelOdeHandler::SetOdeSystem(), and CellCycleModelOdeHandler::SetStateVariables().

◆ WntCellCycleModel() [2/2]

WntCellCycleModel::WntCellCycleModel ( boost::shared_ptr< AbstractCellCycleModelOdeSolver pOdeSolver = boost::shared_ptr<AbstractCellCycleModelOdeSolver>())

Default constructor.

Parameters
pOdeSolverAn optional pointer to a cell-cycle model ODE solver object (allows the use of different ODE solvers)

Definition at line 40 of file WntCellCycleModel.cpp.

References CellCycleModelOdeSolver< CELL_CYCLE_MODEL, ODE_SOLVER >::Instance(), and CellCycleModelOdeHandler::mpOdeSolver.

◆ ~WntCellCycleModel()

WntCellCycleModel::~WntCellCycleModel ( )

Empty virtual destructor so archiving works with static libraries.

Definition at line 58 of file WntCellCycleModel.cpp.

Member Function Documentation

◆ AdjustOdeParameters()

void WntCellCycleModel::AdjustOdeParameters ( double  currentTime)
privatevirtual

Adjust any ODE parameters needed before solving until currentTime.

Parameters
currentTimethe time up to which the system will be solved.

Reimplemented from CellCycleModelOdeHandler.

Definition at line 136 of file WntCellCycleModel.cpp.

References AbstractWntOdeBasedCellCycleModel::GetWntLevel(), AbstractCellCycleModel::mpCell, CellCycleModelOdeHandler::mpOdeSystem, and AbstractParameterisedSystem< VECTOR >::rGetStateVariables().

◆ ChangeCellProliferativeTypeDueToCurrentBetaCateninLevel()

void WntCellCycleModel::ChangeCellProliferativeTypeDueToCurrentBetaCateninLevel ( )
privatevirtual

Update the cell type according to the current beta catenin level as given by the WntCellCycleOdeSystem.

This method carries out the work for UpdateCellProliferativeType(), but does not check the current time, so can also be called by Initialise().

Implements AbstractWntOdeBasedCellCycleModel.

Definition at line 93 of file WntCellCycleModel.cpp.

References AbstractCellCycleModel::mpCell, CellCycleModelOdeHandler::mpOdeSystem, and AbstractParameterisedSystem< VECTOR >::rGetStateVariables().

Referenced by Initialise().

◆ CreateCellCycleModel()

AbstractCellCycleModel * WntCellCycleModel::CreateCellCycleModel ( )
virtual

Overridden builder method to create new copies of this cell-cycle model.

Returns
the new cell-cycle model

Implements AbstractCellCycleModel.

Definition at line 87 of file WntCellCycleModel.cpp.

◆ Initialise()

void WntCellCycleModel::Initialise ( )
virtual

◆ OutputCellCycleModelParameters()

void WntCellCycleModel::OutputCellCycleModelParameters ( out_stream &  rParamsFile)
virtual

Overridden OutputCellCycleModelParameters() method.

Parameters
rParamsFilethe file stream to which the parameters are output

Reimplemented from AbstractWntOdeBasedCellCycleModel.

Reimplemented in StochasticWntCellCycleModel.

Definition at line 147 of file WntCellCycleModel.cpp.

References AbstractWntOdeBasedCellCycleModel::OutputCellCycleModelParameters().

Referenced by StochasticWntCellCycleModel::OutputCellCycleModelParameters().

◆ serialize()

template<class Archive >
void WntCellCycleModel::serialize ( Archive &  archive,
const unsigned int  version 
)
inlineprivate

Archive the cell-cycle model and ODE system.

Parameters
archivethe archive
versionthe archive version

Definition at line 72 of file WntCellCycleModel.hpp.

Friends And Related Symbol Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 64 of file WntCellCycleModel.hpp.


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