#include <AbstractCellsGenerator.hpp>
Public Member Functions | |
AbstractCellsGenerator () | |
virtual AbstractCellCycleModel * | CreateCellCycleModel ()=0 |
virtual double | GetTypicalTransitCellCycleTime ()=0 |
virtual double | GetTypicalStemCellCycleTime ()=0 |
virtual bool | CellsCanDifferentiate () |
virtual | ~AbstractCellsGenerator () |
virtual void | GenerateForCrypt (std::vector< TissueCell > &rCells, TetrahedralMesh< 2, 2 > &rMesh, const std::vector< unsigned > locationIndices, bool randomBirthTimes, double y0=0.3, double y1=2.0, double y2=3.0, double y3=4.0, bool initialiseCells=false) |
It is subclassed for different types of cell model.
Definition at line 42 of file AbstractCellsGenerator.hpp.
AbstractCellsGenerator< DIM >::AbstractCellsGenerator | ( | ) | [inline] |
Default constructor.
Definition at line 49 of file AbstractCellsGenerator.hpp.
virtual AbstractCellsGenerator< DIM >::~AbstractCellsGenerator | ( | ) | [inline, virtual] |
Destructor.
Definition at line 80 of file AbstractCellsGenerator.hpp.
virtual AbstractCellCycleModel* AbstractCellsGenerator< DIM >::CreateCellCycleModel | ( | ) | [pure virtual] |
Implemented in FixedDurationGenerationBasedCellCycleModelCellsGenerator< DIM >, IngeWntSwatCellCycleModelCellsGenerator< DIM >, SimpleWntCellCycleModelCellsGenerator< DIM >, StochasticDurationGenerationBasedCellCycleModelCellsGenerator< DIM >, StochasticWntCellCycleModelCellsGenerator< DIM >, TysonNovakCellCycleModelCellsGenerator< DIM >, and WntCellCycleModelCellsGenerator< DIM >.
Referenced by AbstractCellsGenerator< DIM >::GenerateForCrypt().
virtual double AbstractCellsGenerator< DIM >::GetTypicalTransitCellCycleTime | ( | ) | [pure virtual] |
Return the typical cell cycle duration for a transit cell, in hours. Used when giving cells random ages - the ages will follow a uniform distribution with this value as the upper limit.
Implemented in FixedDurationGenerationBasedCellCycleModelCellsGenerator< DIM >, IngeWntSwatCellCycleModelCellsGenerator< DIM >, SimpleWntCellCycleModelCellsGenerator< DIM >, StochasticDurationGenerationBasedCellCycleModelCellsGenerator< DIM >, StochasticWntCellCycleModelCellsGenerator< DIM >, TysonNovakCellCycleModelCellsGenerator< DIM >, and WntCellCycleModelCellsGenerator< DIM >.
Referenced by AbstractCellsGenerator< DIM >::GenerateForCrypt().
virtual double AbstractCellsGenerator< DIM >::GetTypicalStemCellCycleTime | ( | ) | [pure virtual] |
Return the typical cell cycle duration for a stem cell, in hours. Used when giving cells random ages - the ages will follow a uniform distribution with this value as the upper limit.
Implemented in FixedDurationGenerationBasedCellCycleModelCellsGenerator< DIM >, IngeWntSwatCellCycleModelCellsGenerator< DIM >, SimpleWntCellCycleModelCellsGenerator< DIM >, StochasticDurationGenerationBasedCellCycleModelCellsGenerator< DIM >, StochasticWntCellCycleModelCellsGenerator< DIM >, TysonNovakCellCycleModelCellsGenerator< DIM >, and WntCellCycleModelCellsGenerator< DIM >.
Referenced by AbstractCellsGenerator< DIM >::GenerateForCrypt().
bool AbstractCellsGenerator< DIM >::CellsCanDifferentiate | ( | ) | [inline, virtual] |
Whether cells are able to fully differentiate. Defaults to false unless overridden.
Reimplemented in FixedDurationGenerationBasedCellCycleModelCellsGenerator< DIM >, and StochasticDurationGenerationBasedCellCycleModelCellsGenerator< DIM >.
Definition at line 114 of file AbstractCellsGenerator.hpp.
Referenced by AbstractCellsGenerator< DIM >::GenerateForCrypt().
void AbstractCellsGenerator< DIM >::GenerateForCrypt | ( | std::vector< TissueCell > & | rCells, | |
TetrahedralMesh< 2, 2 > & | rMesh, | |||
const std::vector< unsigned > | locationIndices, | |||
bool | randomBirthTimes, | |||
double | y0 = 0.3 , |
|||
double | y1 = 2.0 , |
|||
double | y2 = 3.0 , |
|||
double | y3 = 4.0 , |
|||
bool | initialiseCells = false | |||
) | [inline, virtual] |
Generates cells of a specified cell cycle type under the correct crypt conditions and gives random ages if required, or gives them an age of 0.0 - creates least work for solver startup.
rCells | An empty cells vector for this function to fill up | |
rMesh | The crypt mesh (can be cylindrical) | |
locationIndices | the node indices corresponding to real cells | |
randomBirthTimes | Whether to assign the cells random birth times (this can be expensive computationally with ODE models) | |
y0 | below this line cells are generation 0 (defaults to 0.3) | |
y1 | below this line cells are generation 1 (defaults to 2.0) | |
y2 | below this line cells are generation 2 (defaults to 3.0) | |
y3 | below this line cells are generation 3 (defaults to 4.0) | |
initialiseCells | whether to initialise the cell cycle models as each cell is created |
Definition at line 120 of file AbstractCellsGenerator.hpp.
References AbstractCellsGenerator< DIM >::CellsCanDifferentiate(), AbstractCellsGenerator< DIM >::CreateCellCycleModel(), AbstractCellsGenerator< DIM >::GetTypicalStemCellCycleTime(), AbstractCellsGenerator< DIM >::GetTypicalTransitCellCycleTime(), TissueCell::InitialiseCellCycleModel(), and TissueCell::SetBirthTime().