AbstractVertexBasedDivisionRule< SPACE_DIM > Class Template Reference

#include <AbstractVertexBasedDivisionRule.hpp>

Inherits Identifiable.

Inherited by DiagonalVertexBasedDivisionRule< SPACE_DIM >, RandomDirectionVertexBasedDivisionRule< SPACE_DIM >, and ShortAxisVertexBasedDivisionRule< SPACE_DIM >.

Collaboration diagram for AbstractVertexBasedDivisionRule< SPACE_DIM >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 AbstractVertexBasedDivisionRule ()
virtual ~AbstractVertexBasedDivisionRule ()
virtual c_vector< double,
SPACE_DIM > 
CalculateCellDivisionVector (CellPtr pParentCell, VertexBasedCellPopulation< SPACE_DIM > &rCellPopulation)=0
void OutputCellVertexBasedDivisionRuleInfo (out_stream &rParamsFile)

Protected Member Functions

virtual void OutputCellVertexBasedDivisionRuleParameters (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 AbstractVertexBasedDivisionRule< SPACE_DIM >

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

The purpose of this class is to return a vector parallel to the new boundary between the daughter cells.

NOTE: When this is used in 3D we will want to return the vector perpendicular to the new boundary plane. This will be the opposite to the current behaviour in 2D.

Definition at line 58 of file AbstractVertexBasedDivisionRule.hpp.


Constructor & Destructor Documentation

template<unsigned SPACE_DIM>
AbstractVertexBasedDivisionRule< SPACE_DIM >::AbstractVertexBasedDivisionRule (  )  [inline]

Default constructor.

Definition at line 39 of file AbstractVertexBasedDivisionRule.cpp.

template<unsigned SPACE_DIM>
AbstractVertexBasedDivisionRule< SPACE_DIM >::~AbstractVertexBasedDivisionRule (  )  [inline, virtual]

Empty destructor.

Definition at line 44 of file AbstractVertexBasedDivisionRule.cpp.


Member Function Documentation

template<unsigned SPACE_DIM>
virtual c_vector<double, SPACE_DIM> AbstractVertexBasedDivisionRule< SPACE_DIM >::CalculateCellDivisionVector ( CellPtr  pParentCell,
VertexBasedCellPopulation< SPACE_DIM > &  rCellPopulation 
) [pure virtual]

Return the vector that will divide the two halves of the existing cell to form the boundary between parent and daughter cell.

Parameters:
pParentCell The cell to divide
rCellPopulation The vertex-based cell population
Returns:
the division vector.

Implemented in DiagonalVertexBasedDivisionRule< SPACE_DIM >, RandomDirectionVertexBasedDivisionRule< SPACE_DIM >, and ShortAxisVertexBasedDivisionRule< SPACE_DIM >.

template<unsigned SPACE_DIM>
void AbstractVertexBasedDivisionRule< SPACE_DIM >::OutputCellVertexBasedDivisionRuleInfo ( out_stream &  rParamsFile  )  [inline]

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

Parameters:
rParamsFile The stream of the parameter file

Definition at line 49 of file AbstractVertexBasedDivisionRule.cpp.

References Identifiable::GetIdentifier(), and AbstractVertexBasedDivisionRule< SPACE_DIM >::OutputCellVertexBasedDivisionRuleParameters().

template<unsigned SPACE_DIM>
void AbstractVertexBasedDivisionRule< SPACE_DIM >::OutputCellVertexBasedDivisionRuleParameters ( out_stream &  rParamsFile  )  [inline, protected, virtual]

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:
rParamsFile The stream of the parameter file

Definition at line 59 of file AbstractVertexBasedDivisionRule.cpp.

Referenced by AbstractVertexBasedDivisionRule< SPACE_DIM >::OutputCellVertexBasedDivisionRuleInfo().

template<unsigned SPACE_DIM>
template<class Archive >
void AbstractVertexBasedDivisionRule< SPACE_DIM >::serialize ( Archive &  archive,
const unsigned int  version 
) [inline, private]

Serialize the object and its member variables.

Parameters:
archive the archive
version the current version of this class

Reimplemented in DiagonalVertexBasedDivisionRule< SPACE_DIM >, RandomDirectionVertexBasedDivisionRule< SPACE_DIM >, and ShortAxisVertexBasedDivisionRule< SPACE_DIM >.

Definition at line 70 of file AbstractVertexBasedDivisionRule.hpp.


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

Generated by  doxygen 1.6.2