void StochasticDurationCellCycleModel::SetG1Duration() { RandomNumberGenerator* p_gen = RandomNumberGenerator::Instance(); if (mpCell->GetCellProliferativeType()->IsType<StemCellProliferativeType>()) { mG1Duration = GetStemCellG1Duration() + 2*p_gen->ranf(); // U[0,2] } else if (mpCell->GetCellProliferativeType()->IsType<TransitCellProliferativeType>()) { mG1Duration = GetTransitCellG1Duration() + 2*p_gen->ranf(); // U[0,2] } else if (mpCell->GetCellProliferativeType()->IsType<DifferentiatedCellProliferativeType>()) { mG1Duration = DBL_MAX; } else { NEVER_REACHED; } }
void StochasticDurationGenerationBasedCellCycleModel::SetG1Duration() { RandomNumberGenerator* p_gen = RandomNumberGenerator::Instance(); assert(mpCell != NULL); if (mpCell->GetCellProliferativeType()->IsType<StemCellProliferativeType>()) { mG1Duration = GetStemCellG1Duration() + 4*p_gen->ranf(); // U[14,18] for default parameters (mStemCellG1Duration) according to Meineke } else if (mpCell->GetCellProliferativeType()->IsType<TransitCellProliferativeType>()) { mG1Duration = GetTransitCellG1Duration() + 2*p_gen->ranf(); // U[4,6] for default parameters (mTransitG1CellDuration) according to Meineke } else if (mpCell->GetCellProliferativeType()->IsType<DifferentiatedCellProliferativeType>()) { mG1Duration = DBL_MAX; } else { NEVER_REACHED; } }