Chaste Commit::1fd4e48e3990e67db148bc1bc4cf6991a0049d0c
BiasedBernoulliTrialCellCycleModel Class Reference

#include <BiasedBernoulliTrialCellCycleModel.hpp>

+ Inheritance diagram for BiasedBernoulliTrialCellCycleModel:
+ Collaboration diagram for BiasedBernoulliTrialCellCycleModel:

Public Member Functions

 BiasedBernoulliTrialCellCycleModel ()
 
virtual bool ReadyToDivide ()
 
AbstractCellCycleModelCreateCellCycleModel ()
 
void SetMaxDivisionProbability (double maxDivisionProbability)
 
double GetMaxDivisionProbability ()
 
void SetMinimumDivisionAge (double minimumDivisionAge)
 
double GetMinimumDivisionAge ()
 
double GetAverageTransitCellCycleTime ()
 
double GetAverageStemCellCycleTime ()
 
virtual void OutputCellCycleModelParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from AbstractCellCycleModel
 AbstractCellCycleModel ()
 
virtual ~AbstractCellCycleModel ()
 
void SetCell (CellPtr pCell)
 
virtual void Initialise ()
 
virtual void InitialiseDaughterCell ()
 
CellPtr GetCell ()
 
virtual void SetBirthTime (double birthTime)
 
void SetDimension (unsigned dimension)
 
unsigned GetDimension () const
 
double GetBirthTime () const
 
double GetAge ()
 
virtual void ResetForDivision ()
 
virtual bool CanCellTerminallyDifferentiate ()
 
void OutputCellCycleModelInfo (out_stream &rParamsFile)
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 

Protected Member Functions

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

Protected Attributes

double mMaxDivisionProbability
 
double mMinimumDivisionAge
 
- 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
 

Detailed Description

Simple cell-cycle model where mature non-differentiated cells have a probability of dividing per hour that is biased so that it varies linearly across an axis of the population through its centre, from zero up to a specified upper value.

The class includes two parameters: the first, mMaxDivisionProbability, defines the maximum probability of dividing per hour; the second, mMinimumDivisionAge, defines a minimum age at which cells may divide. The axis along which cell division probability is biased must be specified in the separate class DivisionBiasTrackingModifier.

Definition at line 52 of file BiasedBernoulliTrialCellCycleModel.hpp.

Constructor & Destructor Documentation

◆ BiasedBernoulliTrialCellCycleModel() [1/2]

BiasedBernoulliTrialCellCycleModel::BiasedBernoulliTrialCellCycleModel ( const BiasedBernoulliTrialCellCycleModel 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 BiasedBernoulliTrialCellCycleModel.cpp.

◆ BiasedBernoulliTrialCellCycleModel() [2/2]

BiasedBernoulliTrialCellCycleModel::BiasedBernoulliTrialCellCycleModel ( )

Constructor.

Definition at line 39 of file BiasedBernoulliTrialCellCycleModel.cpp.

Referenced by CreateCellCycleModel().

Member Function Documentation

◆ CreateCellCycleModel()

AbstractCellCycleModel * BiasedBernoulliTrialCellCycleModel::CreateCellCycleModel ( )
virtual

Overridden builder method to create new instances of the cell-cycle model.

Returns
new cell-cycle model

Implements AbstractCellCycleModel.

Definition at line 83 of file BiasedBernoulliTrialCellCycleModel.cpp.

References BiasedBernoulliTrialCellCycleModel().

◆ GetAverageStemCellCycleTime()

double BiasedBernoulliTrialCellCycleModel::GetAverageStemCellCycleTime ( )
virtual

Overridden GetAverageStemCellCycleTime() method.

Returns
the average cell cycle time for cells of stem proliferative type

Implements AbstractCellCycleModel.

Definition at line 115 of file BiasedBernoulliTrialCellCycleModel.cpp.

References mMaxDivisionProbability.

◆ GetAverageTransitCellCycleTime()

double BiasedBernoulliTrialCellCycleModel::GetAverageTransitCellCycleTime ( )
virtual

Overridden GetAverageTransitCellCycleTime() method.

Returns
the average cell cycle time for cells of transit proliferative type

Implements AbstractCellCycleModel.

Definition at line 110 of file BiasedBernoulliTrialCellCycleModel.cpp.

References mMaxDivisionProbability.

◆ GetMaxDivisionProbability()

double BiasedBernoulliTrialCellCycleModel::GetMaxDivisionProbability ( )

Get mMaxDivisionProbability.

Returns
mMaxDivisionProbability

Definition at line 94 of file BiasedBernoulliTrialCellCycleModel.cpp.

References mMaxDivisionProbability.

◆ GetMinimumDivisionAge()

double BiasedBernoulliTrialCellCycleModel::GetMinimumDivisionAge ( )

Get mMinimumDivisionAge.

Returns
mMinimumDivisionAge

Definition at line 105 of file BiasedBernoulliTrialCellCycleModel.cpp.

References mMinimumDivisionAge.

◆ OutputCellCycleModelParameters()

void BiasedBernoulliTrialCellCycleModel::OutputCellCycleModelParameters ( out_stream &  rParamsFile)
virtual

Overridden OutputCellCycleModelParameters() method.

Parameters
rParamsFilethe file stream to which the parameters are output

Implements AbstractCellCycleModel.

Definition at line 120 of file BiasedBernoulliTrialCellCycleModel.cpp.

References mMaxDivisionProbability, mMinimumDivisionAge, and AbstractCellCycleModel::OutputCellCycleModelParameters().

◆ ReadyToDivide()

bool BiasedBernoulliTrialCellCycleModel::ReadyToDivide ( )
virtual

Overridden ReadyToDivide() method.

If the cell's age is greater than mMinimumDivisionAge, then we draw a uniform random number r ~ U[0,1]. If r < p*dt, where p varies linearly from zero up to mMaxDivisionProbability dependent on the cell's location within the population, and dt is the simulation time step, then the cell is ready to divide and we return true. Otherwise, the cell is not yet ready to divide and we return false.

Returns
whether the cell is ready to divide.

Implements AbstractCellCycleModel.

Definition at line 59 of file BiasedBernoulliTrialCellCycleModel.cpp.

References AbstractCellCycleModel::GetAge(), SimulationTime::GetTimeStep(), SimulationTime::Instance(), RandomNumberGenerator::Instance(), mMaxDivisionProbability, mMinimumDivisionAge, AbstractCellCycleModel::mpCell, AbstractCellCycleModel::mReadyToDivide, and RandomNumberGenerator::ranf().

◆ serialize()

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

Boost Serialization method for archiving/checkpointing

Parameters
archiveThe boost archive.
versionThe current version of this class.

Definition at line 64 of file BiasedBernoulliTrialCellCycleModel.hpp.

References SerializableSingleton< SINGLETON_CLASS >::GetSerializationWrapper(), RandomNumberGenerator::Instance(), mMaxDivisionProbability, and mMinimumDivisionAge.

◆ SetMaxDivisionProbability()

void BiasedBernoulliTrialCellCycleModel::SetMaxDivisionProbability ( double  maxDivisionProbability)

Set the value of mMaxDivisionProbability.

Parameters
maxDivisionProbabilitythe new value of mMaxDivisionProbability

Definition at line 88 of file BiasedBernoulliTrialCellCycleModel.cpp.

References mMaxDivisionProbability.

◆ SetMinimumDivisionAge()

void BiasedBernoulliTrialCellCycleModel::SetMinimumDivisionAge ( double  minimumDivisionAge)

Set the value of mMinimumDivisionAge.

Parameters
minimumDivisionAgethe new value of mMinimumDivisionAge

Definition at line 99 of file BiasedBernoulliTrialCellCycleModel.cpp.

References mMinimumDivisionAge.

Friends And Related Symbol Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 56 of file BiasedBernoulliTrialCellCycleModel.hpp.

Member Data Documentation

◆ mMaxDivisionProbability

double BiasedBernoulliTrialCellCycleModel::mMaxDivisionProbability
protected

◆ mMinimumDivisionAge

double BiasedBernoulliTrialCellCycleModel::mMinimumDivisionAge
protected

Minimum age of a cell at which it may divide. Defaults to 1 hour.

Definition at line 88 of file BiasedBernoulliTrialCellCycleModel.hpp.

Referenced by GetMinimumDivisionAge(), OutputCellCycleModelParameters(), ReadyToDivide(), serialize(), and SetMinimumDivisionAge().


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