Chaste Commit::1fd4e48e3990e67db148bc1bc4cf6991a0049d0c
UniformCellCycleModel Class Reference

#include <UniformCellCycleModel.hpp>

+ Inheritance diagram for UniformCellCycleModel:
+ Collaboration diagram for UniformCellCycleModel:

Public Member Functions

 UniformCellCycleModel ()
 
void SetCellCycleDuration ()
 
AbstractCellCycleModelCreateCellCycleModel ()
 
double GetMinCellCycleDuration ()
 
void SetMinCellCycleDuration (double minCellCycleDuration)
 
double GetMaxCellCycleDuration ()
 
void SetMaxCellCycleDuration (double maxCellCycleDuration)
 
double GetAverageTransitCellCycleTime ()
 
double GetAverageStemCellCycleTime ()
 
virtual void OutputCellCycleModelParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from AbstractSimpleCellCycleModel
 AbstractSimpleCellCycleModel ()
 
virtual ~AbstractSimpleCellCycleModel ()
 
virtual bool ReadyToDivide ()
 
virtual void ResetForDivision ()
 
void InitialiseDaughterCell ()
 
virtual void Initialise ()
 
double GetCellCycleDuration () const
 
- Public Member Functions inherited from AbstractCellCycleModel
 AbstractCellCycleModel ()
 
virtual ~AbstractCellCycleModel ()
 
void SetCell (CellPtr pCell)
 
CellPtr GetCell ()
 
virtual void SetBirthTime (double birthTime)
 
void SetDimension (unsigned dimension)
 
unsigned GetDimension () const
 
double GetBirthTime () const
 
double GetAge ()
 
virtual bool CanCellTerminallyDifferentiate ()
 
void OutputCellCycleModelInfo (out_stream &rParamsFile)
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 

Protected Member Functions

 UniformCellCycleModel (const UniformCellCycleModel &rModel)
 
- Protected Member Functions inherited from AbstractSimpleCellCycleModel
 AbstractSimpleCellCycleModel (const AbstractSimpleCellCycleModel &rModel)
 
- Protected Member Functions inherited from AbstractCellCycleModel
 AbstractCellCycleModel (const AbstractCellCycleModel &rModel)
 

Private Member Functions

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

Private Attributes

double mMinCellCycleDuration
 
double mMaxCellCycleDuration
 

Friends

class TestSimpleCellCycleModels
 
class boost::serialization::access
 

Additional Inherited Members

- Protected Attributes inherited from AbstractSimpleCellCycleModel
double mCellCycleDuration
 
- Protected Attributes inherited from AbstractCellCycleModel
CellPtr mpCell
 
double mBirthTime
 
bool mReadyToDivide
 
unsigned mDimension
 

Detailed Description

A stochastic cell-cycle model where cells divide with a stochastic cell cycle duration with the length of the cell cycle drawn from a uniform distribution on [mMinCellCycleDuration, mMaxCellCycleDuration].

If the cell is differentiated, then the cell cycle duration is set to be infinite, so that the cell will never divide.

Definition at line 50 of file UniformCellCycleModel.hpp.

Constructor & Destructor Documentation

◆ UniformCellCycleModel() [1/2]

UniformCellCycleModel::UniformCellCycleModel ( const UniformCellCycleModel 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 46 of file UniformCellCycleModel.cpp.

◆ UniformCellCycleModel() [2/2]

UniformCellCycleModel::UniformCellCycleModel ( )

Constructor - just a default, mBirthTime is set in the AbstractCellCycleModel class.

Definition at line 39 of file UniformCellCycleModel.cpp.

Referenced by CreateCellCycleModel().

Member Function Documentation

◆ CreateCellCycleModel()

AbstractCellCycleModel * UniformCellCycleModel::CreateCellCycleModel ( )
virtual

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

Returns
new cell-cycle model

Implements AbstractCellCycleModel.

Definition at line 65 of file UniformCellCycleModel.cpp.

References UniformCellCycleModel().

◆ GetAverageStemCellCycleTime()

double UniformCellCycleModel::GetAverageStemCellCycleTime ( )
virtual

Overridden GetAverageStemCellCycleTime() method.

Returns
the average of mMinCellCycleDuration and mMaxCellCycleDuration

Implements AbstractCellCycleModel.

Definition at line 109 of file UniformCellCycleModel.cpp.

References mMaxCellCycleDuration, and mMinCellCycleDuration.

◆ GetAverageTransitCellCycleTime()

double UniformCellCycleModel::GetAverageTransitCellCycleTime ( )
virtual

Overridden GetAverageTransitCellCycleTime() method.

Returns
the average of mMinCellCycleDuration and mMaxCellCycleDuration

Implements AbstractCellCycleModel.

Definition at line 104 of file UniformCellCycleModel.cpp.

References mMaxCellCycleDuration, and mMinCellCycleDuration.

◆ GetMaxCellCycleDuration()

double UniformCellCycleModel::GetMaxCellCycleDuration ( )
Returns
mMaxCellCycleDuration

Definition at line 94 of file UniformCellCycleModel.cpp.

References mMaxCellCycleDuration.

◆ GetMinCellCycleDuration()

double UniformCellCycleModel::GetMinCellCycleDuration ( )
Returns
mMinCellCycleDuration

Definition at line 84 of file UniformCellCycleModel.cpp.

References mMinCellCycleDuration.

◆ OutputCellCycleModelParameters()

void UniformCellCycleModel::OutputCellCycleModelParameters ( out_stream &  rParamsFile)
virtual

Overridden OutputCellCycleModelParameters() method.

Parameters
rParamsFilethe file stream to which the parameters are output

Implements AbstractSimpleCellCycleModel.

Definition at line 114 of file UniformCellCycleModel.cpp.

References mMaxCellCycleDuration, mMinCellCycleDuration, and AbstractSimpleCellCycleModel::OutputCellCycleModelParameters().

◆ serialize()

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

Archive the cell-cycle model and random number generator, never used directly - boost uses this.

Parameters
archivethe archive
versionthe current version of this class

Definition at line 77 of file UniformCellCycleModel.hpp.

References SerializableSingleton< SINGLETON_CLASS >::GetSerializationWrapper(), RandomNumberGenerator::Instance(), mMaxCellCycleDuration, and mMinCellCycleDuration.

◆ SetCellCycleDuration()

void UniformCellCycleModel::SetCellCycleDuration ( )
virtual

◆ SetMaxCellCycleDuration()

void UniformCellCycleModel::SetMaxCellCycleDuration ( double  maxCellCycleDuration)

Set mMaxCellCycleDuration.

Parameters
maxCellCycleDuration

Definition at line 99 of file UniformCellCycleModel.cpp.

References mMaxCellCycleDuration.

◆ SetMinCellCycleDuration()

void UniformCellCycleModel::SetMinCellCycleDuration ( double  minCellCycleDuration)

Set mMinCellCycleDuration.

Parameters
minCellCycleDuration

Definition at line 89 of file UniformCellCycleModel.cpp.

References mMinCellCycleDuration.

Friends And Related Symbol Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 69 of file UniformCellCycleModel.hpp.

◆ TestSimpleCellCycleModels

friend class TestSimpleCellCycleModels
friend

Definition at line 52 of file UniformCellCycleModel.hpp.

Member Data Documentation

◆ mMaxCellCycleDuration

double UniformCellCycleModel::mMaxCellCycleDuration
private

The maximum cell cycle duration. Used to define the uniform distribution. Defaults to 14 hours.

Definition at line 66 of file UniformCellCycleModel.hpp.

Referenced by GetAverageStemCellCycleTime(), GetAverageTransitCellCycleTime(), GetMaxCellCycleDuration(), OutputCellCycleModelParameters(), serialize(), SetCellCycleDuration(), and SetMaxCellCycleDuration().

◆ mMinCellCycleDuration

double UniformCellCycleModel::mMinCellCycleDuration
private

The minimum cell cycle duration. Used to define the uniform distribution. Defaults to 12 hours.

Definition at line 60 of file UniformCellCycleModel.hpp.

Referenced by GetAverageStemCellCycleTime(), GetAverageTransitCellCycleTime(), GetMinCellCycleDuration(), OutputCellCycleModelParameters(), serialize(), SetCellCycleDuration(), and SetMinCellCycleDuration().


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