Chaste  Release::2017.1
ExclusionCaBasedDivisionRule< SPACE_DIM > Class Template Reference

#include <ExclusionCaBasedDivisionRule.hpp>

+ Inheritance diagram for ExclusionCaBasedDivisionRule< SPACE_DIM >:
+ Collaboration diagram for ExclusionCaBasedDivisionRule< SPACE_DIM >:

Public Member Functions

 ExclusionCaBasedDivisionRule ()
 
virtual ~ExclusionCaBasedDivisionRule ()
 
virtual bool IsRoomToDivide (CellPtr pParentCell, CaBasedCellPopulation< SPACE_DIM > &rCellPopulation)
 
virtual unsigned CalculateDaughterNodeIndex (CellPtr pNewCell, CellPtr pParentCell, CaBasedCellPopulation< SPACE_DIM > &rCellPopulation)
 
- Public Member Functions inherited from AbstractCaBasedDivisionRule< SPACE_DIM >
 AbstractCaBasedDivisionRule ()
 
virtual ~AbstractCaBasedDivisionRule ()
 
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< SPACE_DIM >
virtual void OutputCellCaBasedDivisionRuleParameters (out_stream &rParamsFile)
 

Detailed Description

template<unsigned SPACE_DIM>
class ExclusionCaBasedDivisionRule< SPACE_DIM >

A division rule for CA-based cell populations to divide randomly into the available neighbours. If there are no spaces then the move is aborted.

Definition at line 53 of file ExclusionCaBasedDivisionRule.hpp.

Constructor & Destructor Documentation

template<unsigned SPACE_DIM>
ExclusionCaBasedDivisionRule< SPACE_DIM >::ExclusionCaBasedDivisionRule ( )
inline

Default constructor.

Definition at line 75 of file ExclusionCaBasedDivisionRule.hpp.

Member Function Documentation

template<unsigned SPACE_DIM>
unsigned ExclusionCaBasedDivisionRule< SPACE_DIM >::CalculateDaughterNodeIndex ( CellPtr  pNewCell,
CellPtr  pParentCell,
CaBasedCellPopulation< SPACE_DIM > &  rCellPopulation 
)
virtual

Return the index for the Daughter node. This method can be used to move cells out of the way as necessary.

Parameters
pNewCellThe cell to new cell
pParentCellThe parent cell
rCellPopulationThe CA-based cell population
Returns
the node index for the daughter cell.

Implements AbstractCaBasedDivisionRule< SPACE_DIM >.

Definition at line 66 of file ExclusionCaBasedDivisionRule.cpp.

References CaBasedCellPopulation< DIM >::EvaluateDivisionPropensity(), EXCEPTION, EXPORT_TEMPLATE_CLASS_SAME_DIMS, AbstractCellPopulation< DIM >::GetLocationIndexUsingCell(), PottsMesh< DIM >::GetMooreNeighbouringNodeIndices(), RandomNumberGenerator::Instance(), CaBasedCellPopulation< DIM >::IsSiteAvailable(), RandomNumberGenerator::ranf(), CaBasedCellPopulation< DIM >::rGetMesh(), and UNSIGNED_UNSET.

Referenced by ExclusionCaBasedDivisionRule< SPACE_DIM >::~ExclusionCaBasedDivisionRule().

template<unsigned SPACE_DIM>
bool ExclusionCaBasedDivisionRule< SPACE_DIM >::IsRoomToDivide ( CellPtr  pParentCell,
CaBasedCellPopulation< SPACE_DIM > &  rCellPopulation 
)
virtual

Return whether there is room to divide at all.

Parameters
pParentCellThe cell to divide
rCellPopulationThe CA-based cell population
Returns
if the site is available.

Implements AbstractCaBasedDivisionRule< SPACE_DIM >.

Definition at line 40 of file ExclusionCaBasedDivisionRule.cpp.

References AbstractCellPopulation< DIM >::GetLocationIndexUsingCell(), PottsMesh< DIM >::GetMooreNeighbouringNodeIndices(), CaBasedCellPopulation< DIM >::IsSiteAvailable(), and CaBasedCellPopulation< DIM >::rGetMesh().

Referenced by ExclusionCaBasedDivisionRule< SPACE_DIM >::~ExclusionCaBasedDivisionRule().

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

Serialize the object and its member variables.

Parameters
archivethe archive
versionthe current version of this class

Definition at line 65 of file ExclusionCaBasedDivisionRule.hpp.


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