Chaste Commit::baa90ac2819b962188b7562f2326be23c47859a7
AbstractCaBasedDivisionRule< SPACE_DIM > Class Template Referenceabstract

#include <AbstractCaBasedDivisionRule.hpp>

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

Public Member Functions

 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
 

Protected Member Functions

virtual void OutputCellCaBasedDivisionRuleParameters (out_stream &rParamsFile)
 

Private Member Functions

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

Friends

class boost::serialization::access
 

Detailed Description

template<unsigned SPACE_DIM>
class AbstractCaBasedDivisionRule< SPACE_DIM >

An abstract cell division rule for use in CA-based simulations.

The purpose of this class is to define how cells are added to the mesh

i.e it allows you to move cells out of the way if necessary

Definition at line 55 of file AbstractCaBasedDivisionRule.hpp.

Constructor & Destructor Documentation

◆ AbstractCaBasedDivisionRule()

Default constructor.

Definition at line 39 of file AbstractCaBasedDivisionRule.cpp.

◆ ~AbstractCaBasedDivisionRule()

template<unsigned SPACE_DIM>
AbstractCaBasedDivisionRule< SPACE_DIM >::~AbstractCaBasedDivisionRule ( )
virtual

Empty destructor.

Definition at line 44 of file AbstractCaBasedDivisionRule.cpp.

Member Function Documentation

◆ CalculateDaughterNodeIndex()

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

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

As this method is pure virtual, it must be overridden in subclasses.

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

Implemented in ExclusionCaBasedDivisionRule< SPACE_DIM >, and ShovingCaBasedDivisionRule< SPACE_DIM >.

◆ IsRoomToDivide()

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

Return whether there is room to divide at all.

As this method is pure virtual, it must be overridden in subclasses.

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

Implemented in ExclusionCaBasedDivisionRule< SPACE_DIM >, and ShovingCaBasedDivisionRule< SPACE_DIM >.

◆ OutputCellCaBasedDivisionRuleInfo()

template<unsigned SPACE_DIM>
void AbstractCaBasedDivisionRule< SPACE_DIM >::OutputCellCaBasedDivisionRuleInfo ( out_stream &  rParamsFile)

Output the name of the concrete class and call OutputCellCaBasedDivisionRuleParameters().

Parameters
rParamsFileThe stream of the parameter file

Definition at line 49 of file AbstractCaBasedDivisionRule.cpp.

◆ OutputCellCaBasedDivisionRuleParameters()

template<unsigned SPACE_DIM>
void AbstractCaBasedDivisionRule< SPACE_DIM >::OutputCellCaBasedDivisionRuleParameters ( out_stream &  rParamsFile)
protectedvirtual

Output any parameters associated with the division rule. Currently empty since this class has no member variables. Should be overridden by any child classes that have parameters.

Parameters
rParamsFileThe stream of the parameter file

Definition at line 59 of file AbstractCaBasedDivisionRule.cpp.

◆ serialize()

template<unsigned SPACE_DIM>
template<class Archive >
void AbstractCaBasedDivisionRule< 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 67 of file AbstractCaBasedDivisionRule.hpp.

Friends And Related Symbol Documentation

◆ boost::serialization::access

template<unsigned SPACE_DIM>
friend class boost::serialization::access
friend

Definition at line 59 of file AbstractCaBasedDivisionRule.hpp.


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