Chaste Commit::1fd4e48e3990e67db148bc1bc4cf6991a0049d0c
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< CellPropertyRegistryGetCellPropertyRegistry ()
 
void SetDefaultCellMutationStateAndProliferativeTypeOrdering ()
 
virtual double GetWidth (const unsigned &rDimension)=0
 
virtual double GetVolumeOfCell (CellPtr pCell)=0
 
virtual std::set< unsignedGetNeighbouringNodeIndices (unsigned index)=0
 
virtual std::set< std::pair< unsigned, unsigned > > GetNeighbouringEdgeIndices (CellPtr pCell, unsigned pEdgeIndex)
 
c_vector< double, SPACE_DIM > GetCentroidOfCellPopulation ()
 
virtual void UpdateCellProcessLocation ()
 
virtual void OpenWritersFiles (OutputFileHandler &rOutputFileHandler)
 
virtual 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 AcceptPopulationEventWriter (boost::shared_ptr< AbstractCellPopulationEventWriter< ELEMENT_DIM, SPACE_DIM > > pPopulationEventWriter)=0
 
virtual void AcceptCellWriter (boost::shared_ptr< AbstractCellWriter< ELEMENT_DIM, SPACE_DIM > > pCellWriter, CellPtr pCell)=0
 
std::vector< std::string > GetDivisionsInformation ()
 
void AddDivisionInformation (std::string divisionInformation)
 
void ClearDivisionsInformation ()
 
std::vector< std::string > GetRemovalsInformation ()
 
void AddRemovalInformation (std::string removalInformation)
 
void ClearRemovalsInformation ()
 
void GenerateRemovalInformation (CellPtr pCell, std::string killerInfo)
 
void KillCell (CellPtr pCell, std::string killerInfo)
 
void StartApoptosisOnCell (CellPtr pCell, std::string killerInfo)
 
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 ()
 
template<template< unsigned, unsigned > class T>
void AddCellPopulationEventWriter ()
 
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)
 
void AddCellPopulationEventWriter (boost::shared_ptr< AbstractCellPopulationEventWriter< ELEMENT_DIM, SPACE_DIM > > pCellPopulationEventWriter)
 
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< CellPropertyRegistrympCellPropertyRegistry
 
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
 
std::vector< boost::shared_ptr< AbstractCellPopulationEventWriter< ELEMENT_DIM, SPACE_DIM > > > mCellPopulationEventWriters
 
std::vector< std::string > mDivisionsInformation
 
std::vector< std::string > mRemovalsInformation
 

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>
class AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >

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

Template Parameters
ELEMENT_DIMDimension of the elements.
SPACE_DIMDimension of the space. If not specified, it defaults to ELEMENT_DIM.

Definition at line 56 of file AbstractCentreBasedCellPopulation.hpp.

Constructor & Destructor Documentation

◆ AbstractCentreBasedCellPopulation() [1/2]

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 64 of file AbstractCentreBasedCellPopulation.cpp.

◆ AbstractCentreBasedCellPopulation() [2/2]

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 44 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

◆ AcceptCellWritersAcrossPopulation()

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 261 of file AbstractCentreBasedCellPopulation.cpp.

◆ AddCell()

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
CellPtr AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::AddCell ( CellPtr  pNewCell,
CellPtr  pParentCell = CellPtr() 
)
virtual

◆ CheckForStepSizeException()

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 196 of file AbstractCentreBasedCellPopulation.cpp.

◆ CreateCellPair()

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 135 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CryptProjectionForce::CalculateForceBetweenNodes().

◆ GetCellDataItemAtPdeNode()

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 84 of file AbstractCentreBasedCellPopulation.cpp.

◆ GetCentreBasedDivisionRule()

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 278 of file AbstractCentreBasedCellPopulation.cpp.

◆ GetDampingConstant()

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< 1 >, MeshBasedCellPopulation< 2 >, and MeshBasedCellPopulation< DIM >.

Definition at line 214 of file AbstractCentreBasedCellPopulation.cpp.

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

◆ GetDefaultTimeStep()

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 304 of file AbstractCentreBasedCellPopulation.cpp.

◆ GetLocationOfCellCentre()

◆ GetMeinekeDivisionSeparation()

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

◆ GetNeighbouringLocationIndices()

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 189 of file AbstractCentreBasedCellPopulation.cpp.

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

◆ GetNodeCorrespondingToCell()

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 77 of file AbstractCentreBasedCellPopulation.cpp.

◆ IsCellAssociatedWithADeletedLocation()

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 183 of file AbstractCentreBasedCellPopulation.cpp.

◆ IsGhostNode()

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 235 of file AbstractCentreBasedCellPopulation.cpp.

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

◆ IsMarkedSpring()

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 156 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CryptProjectionForce::CalculateForceBetweenNodes().

◆ IsParticle()

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 241 of file AbstractCentreBasedCellPopulation.cpp.

◆ MarkSpring()

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 165 of file AbstractCentreBasedCellPopulation.cpp.

◆ OutputCellPopulationParameters()

◆ rGetNodePairs()

template<unsigned ELEMENT_DIM, unsigned SPACE_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< 1 >, MeshBasedCellPopulation< 2 >, MeshBasedCellPopulation< DIM >, and NodeBasedCellPopulation< DIM >.

◆ serialize()

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

◆ SetCentreBasedDivisionRule()

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 284 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CryptSimulation1d::CryptSimulation1d().

◆ SetMeinekeDivisionSeparation()

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 253 of file AbstractCentreBasedCellPopulation.cpp.

◆ UnmarkSpring()

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 174 of file AbstractCentreBasedCellPopulation.cpp.

Referenced by CryptProjectionForce::CalculateForceBetweenNodes().

◆ WriteVtkResultsToFile()

template<unsigned ELEMENT_DIM, unsigned SPACE_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< 1 >, MeshBasedCellPopulation< 2 >, MeshBasedCellPopulation< DIM >, MeshBasedCellPopulationWithGhostNodes< DIM >, NodeBasedCellPopulation< DIM >, and NodeBasedCellPopulationWithParticles< DIM >.

Friends And Related Symbol Documentation

◆ boost::serialization::access

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

Needed for serialization.

Definition at line 65 of file AbstractCentreBasedCellPopulation.hpp.

◆ TestCentreBasedDivisionRules

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

This test uses the private constructor to simplify testing.

Definition at line 62 of file AbstractCentreBasedCellPopulation.hpp.

Member Data Documentation

◆ mMarkedSprings

template<unsigned ELEMENT_DIM, unsigned SPACE_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 93 of file AbstractCentreBasedCellPopulation.hpp.

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

◆ mMeinekeDivisionSeparation

template<unsigned ELEMENT_DIM, unsigned SPACE_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 86 of file AbstractCentreBasedCellPopulation.hpp.

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

◆ mpCentreBasedDivisionRule

template<unsigned ELEMENT_DIM, unsigned SPACE_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 98 of file AbstractCentreBasedCellPopulation.hpp.

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


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