Chaste
Release::2017.1
|
#include <CryptShovingCaBasedDivisionRule.hpp>
Public Member Functions | |
CryptShovingCaBasedDivisionRule () | |
virtual | ~CryptShovingCaBasedDivisionRule () |
bool | IsNodeOnBase (unsigned NodeIndex, PottsMesh< 2 > *pPottsMesh) |
virtual bool | IsRoomToDivide (CellPtr pParentCell, CaBasedCellPopulation< 2 > &rCellPopulation) |
virtual unsigned | CalculateDaughterNodeIndex (CellPtr pNewCell, CellPtr pParentCell, CaBasedCellPopulation< 2 > &rCellPopulation) |
Public Member Functions inherited from AbstractCaBasedDivisionRule< 2 > | |
AbstractCaBasedDivisionRule () | |
virtual | ~AbstractCaBasedDivisionRule () |
virtual bool | IsRoomToDivide (CellPtr pParentCell, CaBasedCellPopulation< SPACE_DIM > &rCellPopulation)=0 |
virtual unsigned | CalculateDaughterNodeIndex (CellPtr pNewCell, CellPtr pParentCell, CaBasedCellPopulation< SPACE_DIM > &rCellPopulation)=0 |
void | OutputCellCaBasedDivisionRuleInfo (out_stream &rParamsFile) |
Public Member Functions inherited from Identifiable | |
virtual | ~Identifiable () |
std::string | GetIdentifier () const |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
Friends | |
class | boost::serialization::access |
Additional Inherited Members | |
Protected Member Functions inherited from AbstractCaBasedDivisionRule< 2 > | |
virtual void | OutputCellCaBasedDivisionRuleParameters (out_stream &rParamsFile) |
A division rule for CA-based cell populations to say how cells divide. Here they can divide in a 'north-east' or 'west' direction, as in model 3 of the following paper:
Loeffler et al (1986). Intestinal cell proliferation. I. A comprehensive model of steady‐state proliferation in the crypt. Cell Proliferation 19(6):627-645.
Definition at line 57 of file CryptShovingCaBasedDivisionRule.hpp.
|
inline |
Default constructor.
Definition at line 79 of file CryptShovingCaBasedDivisionRule.hpp.
|
inlinevirtual |
Empty destructor.
Definition at line 84 of file CryptShovingCaBasedDivisionRule.hpp.
References CalculateDaughterNodeIndex(), CHASTE_CLASS_EXPORT, IsNodeOnBase(), and IsRoomToDivide().
|
virtual |
Return the index for the Daughter node. This method can be used to move cells out of the way as necessary.
Here cells divide East North or west and move the occupying cells North.
pNewCell | The cell to new cell |
pParentCell | The parent cell |
rCellPopulation | The CA-based cell population |
Definition at line 74 of file CryptShovingCaBasedDivisionRule.cpp.
References CHASTE_CLASS_EXPORT, AbstractCellPopulation< DIM >::GetCellUsingLocationIndex(), AbstractCellPopulation< DIM >::GetLocationIndexUsingCell(), PottsMesh< DIM >::GetVonNeumannNeighbouringNodeIndices(), RandomNumberGenerator::Instance(), IsNodeOnBase(), CaBasedCellPopulation< DIM >::IsSiteAvailable(), AbstractCellPopulation< DIM >::MoveCellInLocationMap(), RandomNumberGenerator::randMod(), and CaBasedCellPopulation< DIM >::rGetMesh().
Referenced by ~CryptShovingCaBasedDivisionRule().
bool CryptShovingCaBasedDivisionRule::IsNodeOnBase | ( | unsigned | NodeIndex, |
PottsMesh< 2 > * | pPottsMesh | ||
) |
Helper method to see if cells are on the base of the crypt or not Also throws exception if cells reach the top boundary of the crypt.
NodeIndex | The node of interest |
pPottsMesh | The mesh containing the nodes |
Definition at line 40 of file CryptShovingCaBasedDivisionRule.cpp.
References EXCEPTION, PottsMesh< DIM >::GetVonNeumannNeighbouringNodeIndices(), and NEVER_REACHED.
Referenced by CalculateDaughterNodeIndex(), and ~CryptShovingCaBasedDivisionRule().
|
virtual |
Return whether there is room to divide at all.
pParentCell | The cell to divide |
rCellPopulation | The CA-based cell population |
Definition at line 69 of file CryptShovingCaBasedDivisionRule.cpp.
Referenced by ~CryptShovingCaBasedDivisionRule().
|
inlineprivate |
Serialize the object and its member variables.
archive | the archive |
version | the current version of this class |
Definition at line 69 of file CryptShovingCaBasedDivisionRule.hpp.