36 #include "SimpleWntCellCycleModel.hpp"
38 #include "StemCellProliferativeType.hpp"
39 #include "TransitCellProliferativeType.hpp"
40 #include "DifferentiatedCellProliferativeType.hpp"
43 : mUseCellProliferativeTypeDependentG1Duration(false),
44 mWntStemThreshold(0.8),
45 mWntTransitThreshold(0.65),
46 mWntLabelledThreshold(0.65)
135 const unsigned DIM = 1;
141 const unsigned DIM = 2;
147 const unsigned DIM = 3;
159 WntConcentrationType wnt_type;
164 const unsigned DIM = 1;
170 const unsigned DIM = 2;
176 const unsigned DIM = 3;
189 double wnt_division_threshold = DBL_MAX;
209 wnt_division_threshold = 0.0;
225 if (wnt_level >= wnt_division_threshold)
239 boost::shared_ptr<AbstractCellProperty> p_stem_type =
241 mpCell->SetCellProliferativeType(p_stem_type);
245 boost::shared_ptr<AbstractCellProperty> p_transit_type =
247 mpCell->SetCellProliferativeType(p_transit_type);
253 boost::shared_ptr<AbstractCellProperty> p_diff_type =
255 mpCell->SetCellProliferativeType(p_diff_type);
264 if (wnt_type == RADIAL)
266 boost::shared_ptr<AbstractCellProperty> p_transit_type =
268 mpCell->SetCellProliferativeType(p_transit_type);
286 assert(wntStemThreshold <= 1.0);
287 assert(wntStemThreshold >= 0.0);
318 *rParamsFile <<
"\t\t\t<WntStemThreshold>" <<
mWntStemThreshold <<
"</WntStemThreshold>\n";
319 *rParamsFile <<
"\t\t\t<WntTransitThreshold>" <<
mWntTransitThreshold <<
"</WntTransitThreshold>\n";
320 *rParamsFile <<
"\t\t\t<WntLabelledThreshold>" <<
mWntLabelledThreshold <<
"</WntLabelledThreshold>\n";
double mWntLabelledThreshold
virtual void OutputCellCycleModelParameters(out_stream &rParamsFile)
virtual void SetBirthTime(double birthTime)
virtual void SetStemCellG1Duration(double stemCellG1Duration)
void SetMinimumGapDuration(double minimumGapDuration)
virtual void OutputCellCycleModelParameters(out_stream &rParamsFile)
double GetWntLevel(double height)
void SetMDuration(double mDuration)
virtual void UpdateCellCyclePhase()
WntConcentrationType GetWntType()
void SetG2Duration(double g2Duration)
double GetWntLabelledThreshold()
virtual AbstractCellCycleModel * CreateCellCycleModel()
double NormalRandomDeviate(double mean, double stdDev)
double mStemCellG1Duration
WntConcentrationType GetType()
double mWntTransitThreshold
double GetStemCellG1Duration()
void SetDimension(unsigned dimension)
double GetTransitCellG1Duration()
void SetUseCellProliferativeTypeDependentG1Duration(bool useCellProliferativeTypeDependentG1Duration=true)
virtual bool CanCellTerminallyDifferentiate()
static WntConcentration * Instance()
void SetWntTransitThreshold(double wntTransitThreshold)
static RandomNumberGenerator * Instance()
double mTransitCellG1Duration
SimpleWntCellCycleModel()
void SetWntLabelledThreshold(double wntLabelledThreshold)
bool mUseCellProliferativeTypeDependentG1Duration
virtual void SetTransitCellG1Duration(double transitCellG1Duration)
double GetWntStemThreshold()
double mMinimumGapDuration
virtual void InitialiseDaughterCell()
#define CHASTE_CLASS_EXPORT(T)
void SetWntStemThreshold(double wntStemThreshold)
virtual void UpdateCellCyclePhase()
void InitialiseDaughterCell()
double GetWntTransitThreshold()
void SetSDuration(double sDuration)