![]() |
Chaste
Release::3.4
|
#include <AbstractOffLatticeCellPopulation.hpp>
Inheritance diagram for AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >:
Collaboration diagram for AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >:Public Member Functions | |
| 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)=0 |
| virtual double | GetDampingConstant (unsigned nodeIndex)=0 |
| void | SetDampingConstantNormal (double dampingConstantNormal) |
| void | SetDampingConstantMutant (double dampingConstantMutant) |
| void | SetAbsoluteMovementThreshold (double absoluteMovementThreshold) |
| double | GetAbsoluteMovementThreshold () |
| double | GetDampingConstantNormal () |
| double | GetDampingConstantMutant () |
| virtual void | OutputCellPopulationParameters (out_stream &rParamsFile) |
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 () |
| std::list< CellPtr > & | rGetCells () |
| virtual unsigned | GetNumNodes ()=0 |
| virtual c_vector< double, SPACE_DIM > | GetLocationOfCellCentre (CellPtr pCell)=0 |
| virtual Node< SPACE_DIM > * | GetNode (unsigned index)=0 |
| virtual bool | IsCellAssociatedWithADeletedLocation (CellPtr pCell)=0 |
| virtual CellPtr | AddCell (CellPtr pNewCell, const c_vector< double, SPACE_DIM > &rCellDivisionVector, CellPtr pParentCell=CellPtr())=0 |
| virtual unsigned | RemoveDeadCells ()=0 |
| virtual void | Update (bool hasHadBirthsOrDeaths=true)=0 |
| std::vector< unsigned > | GetCellMutationStateCount () |
| std::vector< unsigned > | GetCellProliferativeTypeCount () |
| std::vector< unsigned > | GetCellCyclePhaseCount () |
| unsigned | GetNumRealCells () |
| unsigned | GetNumAllCells () |
| void | SetCellAncestorsToLocationIndices () |
| std::set< unsigned > | GetCellAncestors () |
| virtual CellPtr | GetCellUsingLocationIndex (unsigned index) |
| std::set< CellPtr > | GetCellsUsingLocationIndex (unsigned index) |
| 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< unsigned > | GetNeighbouringNodeIndices (unsigned index)=0 |
| virtual std::set< unsigned > | GetNeighbouringLocationIndices (CellPtr pCell)=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) |
| 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, unsigned > | CreateOrderedPair (unsigned index1, unsigned index2) |
| Iterator | Begin () |
| Iterator | End () |
Public Member Functions inherited from Identifiable | |
| virtual | ~Identifiable () |
| std::string | GetIdentifier () const |
Protected Member Functions | |
| AbstractOffLatticeCellPopulation (AbstractMesh< ELEMENT_DIM, SPACE_DIM > &rMesh) | |
Protected Member Functions inherited from AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > | |
| virtual void | Validate ()=0 |
| virtual void | WriteVtkResultsToFile (const std::string &rDirectory)=0 |
| AbstractCellPopulation (AbstractMesh< ELEMENT_DIM, SPACE_DIM > &rMesh) | |
| virtual void | AcceptCellWritersAcrossPopulation () |
Protected Attributes | |
| 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 *, unsigned > | mCellLocationMap |
| 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 | boost::serialization::access |
An abstract facade class encapsulating an off-lattice (centre- or vertex-based) cell population.
Definition at line 46 of file AbstractOffLatticeCellPopulation.hpp.
|
protected |
Constructor that just takes in a mesh.
| rMesh | the mesh for the cell population. |
Definition at line 50 of file AbstractOffLatticeCellPopulation.cpp.
| AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >::AbstractOffLatticeCellPopulation | ( | AbstractMesh< ELEMENT_DIM, SPACE_DIM > & | rMesh, |
| std::vector< CellPtr > & | rCells, | ||
| const std::vector< unsigned > | locationIndices = std::vector<unsigned>() |
||
| ) |
Default constructor.
| rMesh | a refernce to the mesh underlying the cell population |
| rCells | a vector of cells |
| locationIndices | an optional vector of location indices that correspond to real cells |
Definition at line 39 of file AbstractOffLatticeCellPopulation.cpp.
|
pure virtual |
Add a new node to the cell population.
As this method is pure virtual, it must be overridden in subclasses.
| pNewNode | pointer to the new node |
Implemented in MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >.
| double AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetAbsoluteMovementThreshold | ( | ) |
Definition at line 88 of file AbstractOffLatticeCellPopulation.cpp.
|
pure virtual |
Get the damping constant for this node - ie d in drdt = F/d.
As this method is pure virtual, it must be overridden in subclasses.
| nodeIndex | the global index of this node |
Implemented in MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >, MeshBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >, AbstractCentreBasedCellPopulation< DIM >, and VertexBasedCellPopulation< SPACE_DIM >.
| double AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetDampingConstantMutant | ( | ) |
Definition at line 82 of file AbstractOffLatticeCellPopulation.cpp.
| double AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetDampingConstantNormal | ( | ) |
Definition at line 76 of file AbstractOffLatticeCellPopulation.cpp.
|
virtual |
Overridden OutputCellPopulationParameters() method.
| rParamsFile | the file stream to which the parameters are output |
Implements AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >.
Reimplemented in MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >, MeshBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, VertexBasedCellPopulation< SPACE_DIM >, NodeBasedCellPopulation< DIM >, AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >, AbstractCentreBasedCellPopulation< DIM >, MeshBasedCellPopulationWithGhostNodes< DIM >, NodeBasedCellPopulationWithParticles< DIM >, and NodeBasedCellPopulationWithBuskeUpdate< DIM >.
Definition at line 94 of file AbstractOffLatticeCellPopulation.cpp.
References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::OutputCellPopulationParameters().
Referenced by AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::OutputCellPopulationParameters(), and VertexBasedCellPopulation< SPACE_DIM >::OutputCellPopulationParameters().
|
inlineprivate |
Serialize the object and its member variables.
| archive | the archive |
| version | the current version of this class |
Definition at line 59 of file AbstractOffLatticeCellPopulation.hpp.
| void AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >::SetAbsoluteMovementThreshold | ( | double | absoluteMovementThreshold | ) |
Set mAbsoluteMovementThreshold.
| absoluteMovementThreshold | the new value of mAbsoluteMovementThreshold |
Definition at line 70 of file AbstractOffLatticeCellPopulation.cpp.
| void AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >::SetDampingConstantMutant | ( | double | dampingConstantMutant | ) |
Set mDampingConstantMutant.
| dampingConstantMutant | the new value of mDampingConstantMutant |
Definition at line 63 of file AbstractOffLatticeCellPopulation.cpp.
| void AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >::SetDampingConstantNormal | ( | double | dampingConstantNormal | ) |
Set mDampingConstantNormal.
| dampingConstantNormal | the new value of mDampingConstantNormal |
Definition at line 56 of file AbstractOffLatticeCellPopulation.cpp.
|
pure virtual |
Move the node with a given index to a new point in space.
As this method is pure virtual, it must be overridden in subclasses.
| nodeIndex | the index of the node to be moved |
| rNewLocation | the new target location of the node |
Implements AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >.
Implemented in MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >.
|
pure virtual |
Update the location of each node in the cell population given a vector of forces on nodes and a time step over which to integrate the equations of motion.
As this method is pure virtual, it must be overridden in subclasses.
| dt | time step |
Implemented in VertexBasedCellPopulation< SPACE_DIM >, AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >, AbstractCentreBasedCellPopulation< DIM >, MeshBasedCellPopulationWithGhostNodes< DIM >, NodeBasedCellPopulationWithParticles< DIM >, and NodeBasedCellPopulationWithBuskeUpdate< DIM >.
Referenced by OffLatticeSimulation< ELEMENT_DIM, SPACE_DIM >::UpdateNodePositions().
|
friend |
Needed for serialization.
Definition at line 51 of file AbstractOffLatticeCellPopulation.hpp.
|
protected |
The absolute distance which a cell is permitted to move in one time-step. Movement beyond this threshold will trigger UpdateNodeLocations to throw an exception
Definition at line 86 of file AbstractOffLatticeCellPopulation.hpp.
Referenced by AbstractOffLatticeCellPopulation< DIM >::serialize().
|
protected |
Damping constant for mutant cells has units of kg s^-1.
Definition at line 79 of file AbstractOffLatticeCellPopulation.hpp.
Referenced by AbstractOffLatticeCellPopulation< DIM >::serialize().
|
protected |
Damping constant for normal cells has units of kg s^-1 Represented by the parameter eta in the model by Meineke et al (2001) in their off-lattice model of the intestinal crypt (doi:10.1046/j.0960-7722.2001.00216.x).
Definition at line 74 of file AbstractOffLatticeCellPopulation.hpp.
Referenced by AbstractOffLatticeCellPopulation< DIM >::serialize().