Chaste  Release::2018.1
AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM > Class Template Referenceabstract

#include <AbstractCentreBasedCellPopulation.hpp>

+ Inheritance diagram for AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >:
+ Collaboration diagram for AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >:

Public Member Functions

 AbstractCentreBasedCellPopulation (AbstractMesh< ELEMENT_DIM, SPACE_DIM > &rMesh, std::vector< CellPtr > &rCells, const std::vector< unsigned > locationIndices=std::vector< unsigned >())
 
c_vector< double, SPACE_DIM > GetLocationOfCellCentre (CellPtr pCell)
 
Node< SPACE_DIM > * GetNodeCorrespondingToCell (CellPtr pCell)
 
virtual double GetCellDataItemAtPdeNode (unsigned pdeNodeIndex, std::string &rVariableName, bool dirichletBoundaryConditionApplies=false, double dirichletBoundaryValue=0.0)
 
CellPtr AddCell (CellPtr pNewCell, CellPtr pParentCell=CellPtr())
 
std::pair< CellPtr, CellPtr > CreateCellPair (CellPtr pCell1, CellPtr pCell2)
 
bool IsMarkedSpring (const std::pair< CellPtr, CellPtr > &rCellPair)
 
void MarkSpring (std::pair< CellPtr, CellPtr > &rCellPair)
 
void UnmarkSpring (std::pair< CellPtr, CellPtr > &rCellPair)
 
bool IsCellAssociatedWithADeletedLocation (CellPtr pCell)
 
virtual std::set< unsignedGetNeighbouringLocationIndices (CellPtr pCell)
 
virtual void CheckForStepSizeException (unsigned nodeIndex, c_vector< double, SPACE_DIM > &rDisplacement, double dt)
 
virtual double GetDampingConstant (unsigned nodeIndex)
 
virtual bool IsGhostNode (unsigned index)
 
virtual bool IsParticle (unsigned index)
 
virtual std::vector< std::pair
< Node< SPACE_DIM > *, Node
< SPACE_DIM > * > > & 
rGetNodePairs ()=0
 
double GetMeinekeDivisionSeparation ()
 
void SetMeinekeDivisionSeparation (double divisionSeparation)
 
boost::shared_ptr
< AbstractCentreBasedDivisionRule
< ELEMENT_DIM, SPACE_DIM > > 
GetCentreBasedDivisionRule ()
 
void SetCentreBasedDivisionRule (boost::shared_ptr< AbstractCentreBasedDivisionRule< ELEMENT_DIM, SPACE_DIM > > pCentreBasedDivisionRule)
 
virtual void OutputCellPopulationParameters (out_stream &rParamsFile)
 
virtual double GetDefaultTimeStep ()
 
- Public Member Functions inherited from AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >
 AbstractOffLatticeCellPopulation (AbstractMesh< ELEMENT_DIM, SPACE_DIM > &rMesh, std::vector< CellPtr > &rCells, const std::vector< unsigned > locationIndices=std::vector< unsigned >())
 
virtual unsigned AddNode (Node< SPACE_DIM > *pNewNode)=0
 
virtual void SetNode (unsigned nodeIndex, ChastePoint< SPACE_DIM > &rNewLocation)=0
 
virtual void UpdateNodeLocations (double dt)
 
void SetDampingConstantNormal (double dampingConstantNormal)
 
void SetDampingConstantMutant (double dampingConstantMutant)
 
void SetAbsoluteMovementThreshold (double absoluteMovementThreshold)
 
double GetAbsoluteMovementThreshold ()
 
double GetDampingConstantNormal ()
 
double GetDampingConstantMutant ()
 
- Public Member Functions inherited from AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >
 AbstractCellPopulation (AbstractMesh< ELEMENT_DIM, SPACE_DIM > &rMesh, std::vector< CellPtr > &rCells, const std::vector< unsigned > locationIndices=std::vector< unsigned >())
 
virtual ~AbstractCellPopulation ()
 
void InitialiseCells ()
 
void SetDataOnAllCells (const std::string &rDataName, double dataValue)
 
AbstractMesh< ELEMENT_DIM,
SPACE_DIM > & 
rGetMesh ()
 
virtual TetrahedralMesh
< ELEMENT_DIM, SPACE_DIM > * 
GetTetrahedralMeshForPdeModifier ()=0
 
virtual bool IsPdeNodeAssociatedWithNonApoptoticCell (unsigned pdeNodeIndex)
 
std::list< CellPtr > & rGetCells ()
 
virtual unsigned GetNumNodes ()=0
 
virtual Node< SPACE_DIM > * GetNode (unsigned index)=0
 
virtual void WriteDataToVisualizerSetupFile (out_stream &pVizSetupFile)
 
virtual unsigned RemoveDeadCells ()=0
 
virtual void Update (bool hasHadBirthsOrDeaths=true)=0
 
std::vector< unsignedGetCellMutationStateCount ()
 
std::vector< unsignedGetCellProliferativeTypeCount ()
 
std::vector< unsignedGetCellCyclePhaseCount ()
 
unsigned GetNumRealCells ()
 
unsigned GetNumAllCells ()
 
void SetCellAncestorsToLocationIndices ()
 
std::set< unsignedGetCellAncestors ()
 
virtual CellPtr GetCellUsingLocationIndex (unsigned index)
 
std::set< CellPtr > GetCellsUsingLocationIndex (unsigned index)
 
virtual bool IsCellAttachedToLocationIndex (unsigned index)
 
void SetCellUsingLocationIndex (unsigned index, CellPtr pCell)
 
virtual void AddCellUsingLocationIndex (unsigned index, CellPtr pCell)
 
virtual void RemoveCellUsingLocationIndex (unsigned index, CellPtr pCell)
 
void MoveCellInLocationMap (CellPtr pCell, unsigned old_index, unsigned new_index)
 
unsigned GetLocationIndexUsingCell (CellPtr pCell)
 
boost::shared_ptr
< CellPropertyRegistry
GetCellPropertyRegistry ()
 
void SetDefaultCellMutationStateAndProliferativeTypeOrdering ()
 
virtual double GetWidth (const unsigned &rDimension)=0
 
virtual double GetVolumeOfCell (CellPtr pCell)=0
 
virtual std::set< unsignedGetNeighbouringNodeIndices (unsigned index)=0
 
c_vector< double, SPACE_DIM > GetCentroidOfCellPopulation ()
 
virtual void UpdateCellProcessLocation ()
 
virtual void OpenWritersFiles (OutputFileHandler &rOutputFileHandler)
 
void CloseWritersFiles ()
 
virtual void WriteResultsToFiles (const std::string &rDirectory)
 
virtual void AcceptPopulationWriter (boost::shared_ptr< AbstractCellPopulationWriter< ELEMENT_DIM, SPACE_DIM > > pPopulationWriter)=0
 
virtual void AcceptPopulationCountWriter (boost::shared_ptr< AbstractCellPopulationCountWriter< ELEMENT_DIM, SPACE_DIM > > pPopulationCountWriter)=0
 
virtual void AcceptCellWriter (boost::shared_ptr< AbstractCellWriter< ELEMENT_DIM, SPACE_DIM > > pCellWriter, CellPtr pCell)=0
 
void OutputCellPopulationInfo (out_stream &rParamsFile)
 
virtual void SimulationSetupHook (AbstractCellBasedSimulation< ELEMENT_DIM, SPACE_DIM > *pSimulation)
 
bool GetOutputResultsForChasteVisualizer ()
 
template<template< unsigned, unsigned > class T>
void AddPopulationWriter ()
 
template<template< unsigned, unsigned > class T>
void AddCellWriter ()
 
template<template< unsigned, unsigned > class T>
void AddCellPopulationCountWriter ()
 
void AddPopulationWriter (boost::shared_ptr< AbstractCellPopulationWriter< ELEMENT_DIM, SPACE_DIM > > pPopulationWriter)
 
void AddCellWriter (boost::shared_ptr< AbstractCellWriter< ELEMENT_DIM, SPACE_DIM > > pCellWriter)
 
void AddCellPopulationCountWriter (boost::shared_ptr< AbstractCellPopulationCountWriter< ELEMENT_DIM, SPACE_DIM > > pCellPopulationCountWriter)
 
template<template< unsigned, unsigned > class T>
bool HasWriter () const
 
void SetOutputResultsForChasteVisualizer (bool outputResultsForChasteVisualizer)
 
c_vector< double, SPACE_DIM > GetSizeOfCellPopulation ()
 
virtual bool IsRoomToDivide (CellPtr pCell)
 
std::pair< unsigned, unsignedCreateOrderedPair (unsigned index1, unsigned index2)
 
Iterator Begin ()
 
Iterator End ()
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 

Protected Member Functions

 AbstractCentreBasedCellPopulation (AbstractMesh< ELEMENT_DIM, SPACE_DIM > &rMesh)
 
virtual void WriteVtkResultsToFile (const std::string &rDirectory)=0
 
virtual void AcceptCellWritersAcrossPopulation ()
 
- Protected Member Functions inherited from AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >
 AbstractOffLatticeCellPopulation (AbstractMesh< ELEMENT_DIM, SPACE_DIM > &rMesh)
 
- Protected Member Functions inherited from AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >
virtual void Validate ()=0
 
 AbstractCellPopulation (AbstractMesh< ELEMENT_DIM, SPACE_DIM > &rMesh)
 

Protected Attributes

double mMeinekeDivisionSeparation
 
std::set< std::pair< CellPtr,
CellPtr > > 
mMarkedSprings
 
boost::shared_ptr
< AbstractCentreBasedDivisionRule
< ELEMENT_DIM, SPACE_DIM > > 
mpCentreBasedDivisionRule
 
- Protected Attributes inherited from AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >
double mDampingConstantNormal
 
double mDampingConstantMutant
 
double mAbsoluteMovementThreshold
 
- Protected Attributes inherited from AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >
std::map< unsigned, std::set
< CellPtr > > 
mLocationCellMap
 
std::map< Cell *, unsignedmCellLocationMap
 
AbstractMesh< ELEMENT_DIM,
SPACE_DIM > & 
mrMesh
 
std::list< CellPtr > mCells
 
c_vector< double, SPACE_DIM > mCentroid
 
out_stream mpVtkMetaFile
 
boost::shared_ptr
< CellPropertyRegistry
mpCellPropertyRegistry
 
bool mOutputResultsForChasteVisualizer
 
std::vector< boost::shared_ptr
< AbstractCellWriter
< ELEMENT_DIM, SPACE_DIM > > > 
mCellWriters
 
std::vector< boost::shared_ptr
< AbstractCellPopulationWriter
< ELEMENT_DIM, SPACE_DIM > > > 
mCellPopulationWriters
 
std::vector< boost::shared_ptr
< AbstractCellPopulationCountWriter
< ELEMENT_DIM, SPACE_DIM > > > 
mCellPopulationCountWriters
 

Private Member Functions

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

Friends

class TestCentreBasedDivisionRules
 
class boost::serialization::access
 

Detailed Description

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
class AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >

An abstract facade class encapsulating a centre-based cell population, in which each cell corresponds to a Node.

Definition at line 49 of file AbstractCentreBasedCellPopulation.hpp.

Constructor & Destructor Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::AbstractCentreBasedCellPopulation ( AbstractMesh< ELEMENT_DIM, SPACE_DIM > &  rMesh)
protected

Constructor that just takes in a mesh.

Parameters
rMeshthe mesh for the cell population.

Definition at line 63 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::AbstractCentreBasedCellPopulation ( AbstractMesh< ELEMENT_DIM, SPACE_DIM > &  rMesh,
std::vector< CellPtr > &  rCells,
const std::vector< unsigned locationIndices = std::vector<unsigned>() 
)

Default constructor.

Parameters
rMesha reference to the mesh underlying the cell population
rCellsa vector of cells
locationIndicesan optional vector of location indices that correspond to real cells

Definition at line 43 of file AbstractCentreBasedCellPopulation.cpp.

References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::AddCellUsingLocationIndex(), AbstractMesh< ELEMENT_DIM, SPACE_DIM >::GetNodeIteratorBegin(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::mCells, and AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::mpCentreBasedDivisionRule.

Member Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::AcceptCellWritersAcrossPopulation ( )
protectedvirtual

Call AcceptCellWriter across the whole population, iterating in an appropriate way for this type of cell population.

Reimplemented from AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >.

Reimplemented in MeshBasedCellPopulationWithGhostNodes< DIM >, and NodeBasedCellPopulationWithParticles< DIM >.

Definition at line 260 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
CellPtr AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::AddCell ( CellPtr  pNewCell,
CellPtr  pParentCell = CellPtr() 
)
virtual
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::CheckForStepSizeException ( unsigned  nodeIndex,
c_vector< double, SPACE_DIM > &  rDisplacement,
double  dt 
)
virtual

Checks whether a given node displacement violates the movement threshold for this population. If so, a stepSizeException is generated that contains a warning/error message and a suggested smaller dt that should avoid the problem.

Parameters
nodeIndexIndex of the node in question (allows us to check whether this is a ghost or particle)
rDisplacementMovement vector of the node at this time step
dtCurrent time step size

Implements AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >.

Definition at line 195 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
std::pair< CellPtr, CellPtr > AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::CreateCellPair ( CellPtr  pCell1,
CellPtr  pCell2 
)
Returns
a an ordered pair of pointers to two given Cells. Used by the spring marking routines. Elements in the returned pair are ordered by cell ID number - the cell in the pair will have a smaller ID.
Parameters
pCell1a Cell
pCell2a Cell

Definition at line 134 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CryptProjectionForce::CalculateForceBetweenNodes(), and GeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::CalculateForceBetweenNodes().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetCellDataItemAtPdeNode ( unsigned  pdeNodeIndex,
std::string &  rVariableName,
bool  dirichletBoundaryConditionApplies = false,
double  dirichletBoundaryValue = 0.0 
)
virtual

Overridden GetCellDataItemAtPdeNode() method.

Parameters
pdeNodeIndexindex of a node in a tetrahedral mesh for use with a PDE modifier
rVariableNamethe name of the cell data item to get
dirichletBoundaryConditionApplieswhere a Dirichlet boundary condition is used (optional; defaults to false)
dirichletBoundaryValuethe value of the Dirichlet boundary condition, if used (optional; defaults to 0.0)
Returns
the value of a CellData item (interpolated if necessary) at a node, specified by its index in a tetrahedral mesh for use with a PDE modifier. This method can be called by PDE modifier classes.

Implements AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >.

Definition at line 83 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
boost::shared_ptr< AbstractCentreBasedDivisionRule< ELEMENT_DIM, SPACE_DIM > > AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetCentreBasedDivisionRule ( )
Returns
The division rule that is currently being used.

Definition at line 277 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetDampingConstant ( unsigned  nodeIndex)
virtual

Overridden GetDampingConstant() method.

Get the damping constant for the cell associated with this node, i.e. d in drdt = F/d.

If the cell is wild-type, then the normal damping constant is returned. If the cell has a mutation, then the mutant damping constant is returned.

Note that by default, the normal and mutant damping constants are the same. To alter the damping constant for mutant cells, call the method SetDampingConstantMutant() on the CellPopulation.

Parameters
nodeIndexthe global index of this node
Returns
the damping constant at the Cell associated with this node

Implements AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >.

Reimplemented in MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >, MeshBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, and MeshBasedCellPopulation< 2 >.

Definition at line 213 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetDampingConstant().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetDefaultTimeStep ( )
virtual

Overridden GetDefaultTimeStep() method.

Returns
a default value for the time step to use when simulating the cell population.

A hard-coded value of 1/120 is returned. However, note that the time step can be reset by calling SetDt() on the simulation object used to simulate the cell population.

Implements AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >.

Definition at line 303 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetMeinekeDivisionSeparation ( )
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
std::set< unsigned > AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringLocationIndices ( CellPtr  pCell)
virtual

Overridden GetNeighbouringLocationIndices() method.

Given a cell, returns the set of location indices corresponding to neighbouring cells.

Parameters
pCella cell
Returns
the set of neighbouring location indices.

Implements AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >.

Reimplemented in MeshBasedCellPopulationWithGhostNodes< DIM >.

Definition at line 188 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CellPopulationAdjacencyMatrixWriter< ELEMENT_DIM, SPACE_DIM >::Visit().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
Node< SPACE_DIM > * AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetNodeCorrespondingToCell ( CellPtr  pCell)

Get a pointer to the node corresponding to a given cell.

Parameters
pCellthe cell
Returns
address of the node

Definition at line 76 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::IsCellAssociatedWithADeletedLocation ( CellPtr  pCell)
virtual

Overridden IsCellAssociatedWithADeletedLocation() method.

Parameters
pCellthe cell
Returns
whether a given cell is associated with a deleted node.

Implements AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >.

Definition at line 182 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::IsGhostNode ( unsigned  index)
virtual

Find if a given node is a ghost node. The method always returns false but is overridden in MeshBasedCellPopulationWithGhostNodes.

Parameters
indexthe global index of a specified node
Returns
whether the node is a ghost node

Reimplemented in MeshBasedCellPopulationWithGhostNodes< DIM >.

Definition at line 234 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CellwiseDataGradient< DIM >::SetupGradients(), CellPopulationAreaWriter< ELEMENT_DIM, SPACE_DIM >::Visit(), NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit(), and HeterotypicBoundaryLengthWriter< ELEMENT_DIM, SPACE_DIM >::Visit().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::IsMarkedSpring ( const std::pair< CellPtr, CellPtr > &  rCellPair)
Parameters
rCellPaira set of pointers to Cells
Returns
whether the spring between two given cells is marked.

Definition at line 155 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CryptProjectionForce::CalculateForceBetweenNodes(), and GeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::CalculateForceBetweenNodes().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::IsParticle ( unsigned  index)
virtual

Find if a given node is a particle. The method always returns false but is overridden in NodeBasedCellPopulationWithParticles.

Parameters
indexthe global index of a specified node
Returns
whether the node is a particle

Reimplemented in NodeBasedCellPopulationWithParticles< DIM >.

Definition at line 240 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::MarkSpring ( std::pair< CellPtr, CellPtr > &  rCellPair)

Mark the spring between the given cells.

Parameters
rCellPaira set of pointers to Cells

Definition at line 164 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
virtual std::vector< std::pair<Node<SPACE_DIM>*, Node<SPACE_DIM>* > >& AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::rGetNodePairs ( )
pure virtual

Method to return the connected nodes in a centre based simulation.

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

Returns
Node pairs for force calculation.

Implemented in MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >, MeshBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, and NodeBasedCellPopulation< DIM >.

Referenced by AbstractTwoBodyInteractionForce< ELEMENT_DIM, SPACE_DIM >::AddForceContribution().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
template<class Archive >
void AbstractCentreBasedCellPopulation< ELEMENT_DIM, 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 66 of file AbstractCentreBasedCellPopulation.hpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::SetCentreBasedDivisionRule ( boost::shared_ptr< AbstractCentreBasedDivisionRule< ELEMENT_DIM, SPACE_DIM > >  pCentreBasedDivisionRule)

Set the division rule for this population.

Parameters
pCentreBasedDivisionRulepointer to the new division rule

Definition at line 283 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CryptSimulation1d::CryptSimulation1d().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::SetMeinekeDivisionSeparation ( double  divisionSeparation)

Set mMeinekeDivisionSeparation.

Parameters
divisionSeparationthe new value of mMeinekeDivisionSeparation

Definition at line 252 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::UnmarkSpring ( std::pair< CellPtr, CellPtr > &  rCellPair)

Stop marking the spring between the given cells.

Parameters
rCellPaira set of pointers to Cells

Definition at line 173 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CryptProjectionForce::CalculateForceBetweenNodes(), and GeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::CalculateForceBetweenNodes().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
virtual void AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::WriteVtkResultsToFile ( const std::string &  rDirectory)
protectedpure virtual

Write the current results to mpVtkMetaFile.

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

Parameters
rDirectorypathname of the output directory, relative to where Chaste output is stored

Implements AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >.

Implemented in MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >, MeshBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, MeshBasedCellPopulationWithGhostNodes< DIM >, NodeBasedCellPopulation< DIM >, and NodeBasedCellPopulationWithParticles< DIM >.

Friends And Related Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 58 of file AbstractCentreBasedCellPopulation.hpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
friend class TestCentreBasedDivisionRules
friend

This test uses the private constructor to simplify testing.

Definition at line 55 of file AbstractCentreBasedCellPopulation.hpp.

Member Data Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
std::set<std::pair<CellPtr,CellPtr> > AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::mMarkedSprings
protected

Special springs that we want to keep track of for some reason. Currently used to track cells in the process of dividing (which are represented as two cells joined by a shorter spring).

Definition at line 86 of file AbstractCentreBasedCellPopulation.hpp.

Referenced by MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::CheckCellPointers(), and AbstractCentreBasedCellPopulation< DIM >::serialize().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
double AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::mMeinekeDivisionSeparation
protected

Initial separation placement of mother/daughter cells at birth. Has units of cell size at equilibrium rest length

Definition at line 79 of file AbstractCentreBasedCellPopulation.hpp.

Referenced by AbstractCentreBasedCellPopulation< DIM >::serialize().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
boost::shared_ptr<AbstractCentreBasedDivisionRule<ELEMENT_DIM, SPACE_DIM> > AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::mpCentreBasedDivisionRule
protected

A pointer to a division rule that is used to generate the locations of daughter cells when a cell divides. This is a specialisation for centre-based models.

Definition at line 91 of file AbstractCentreBasedCellPopulation.hpp.

Referenced by AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::AbstractCentreBasedCellPopulation(), and AbstractCentreBasedCellPopulation< DIM >::serialize().


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