Chaste Commit::baa90ac2819b962188b7562f2326be23c47859a7
|
#include <CaBasedCellPopulation.hpp>
Public Member Functions | |
CaBasedCellPopulation (PottsMesh< DIM > &rMesh, std::vector< CellPtr > &rCells, const std::vector< unsigned > locationIndices, unsigned latticeCarryingCapacity=1u, bool deleteMesh=false, bool validate=false) | |
CaBasedCellPopulation (PottsMesh< DIM > &rMesh) | |
virtual | ~CaBasedCellPopulation () |
std::vector< unsigned > & | rGetAvailableSpaces () |
virtual bool | IsSiteAvailable (unsigned index, CellPtr pCell) |
PottsMesh< DIM > & | rGetMesh () |
const PottsMesh< DIM > & | rGetMesh () const |
virtual TetrahedralMesh< DIM, DIM > * | GetTetrahedralMeshForPdeModifier () |
Node< DIM > * | GetNode (unsigned index) |
unsigned | GetNumNodes () |
std::set< unsigned > | GetNeighbouringLocationIndices (CellPtr pCell) |
c_vector< double, DIM > | GetLocationOfCellCentre (CellPtr pCell) |
void | AddCellUsingLocationIndex (unsigned index, CellPtr pCell) |
void | RemoveCellUsingLocationIndex (unsigned index, CellPtr pCell) |
Node< DIM > * | GetNodeCorrespondingToCell (CellPtr pCell) |
CellPtr | AddCell (CellPtr pNewCell, CellPtr pParentCell=CellPtr()) |
virtual double | EvaluateDivisionPropensity (unsigned currentNodeIndex, unsigned targetNodeIndex, CellPtr pCell) |
unsigned | RemoveDeadCells () |
virtual void | OpenWritersFiles (OutputFileHandler &rOutputFileHandler) |
void | UpdateCellLocations (double dt) |
bool | IsCellAssociatedWithADeletedLocation (CellPtr pCell) |
void | Update (bool hasHadBirthsOrDeaths=true) |
virtual void | AcceptPopulationWriter (boost::shared_ptr< AbstractCellPopulationWriter< DIM, DIM > > pPopulationWriter) |
virtual void | AcceptPopulationCountWriter (boost::shared_ptr< AbstractCellPopulationCountWriter< DIM, DIM > > pPopulationCountWriter) |
virtual void | AcceptPopulationEventWriter (boost::shared_ptr< AbstractCellPopulationEventWriter< DIM, DIM > > pPopulationEventWriter) |
virtual void | AcceptCellWriter (boost::shared_ptr< AbstractCellWriter< DIM, DIM > > pCellWriter, CellPtr pCell) |
double | GetVolumeOfCell (CellPtr pCell) |
double | GetWidth (const unsigned &rDimension) |
void | RemoveAllUpdateRules () |
void | OutputCellPopulationParameters (out_stream &rParamsFile) |
bool | IsRoomToDivide (CellPtr pCell) |
boost::shared_ptr< AbstractCaBasedDivisionRule< DIM > > | GetCaBasedDivisionRule () |
void | SetCaBasedDivisionRule (boost::shared_ptr< AbstractCaBasedDivisionRule< DIM > > pCaBasedDivisionRule) |
virtual void | AddUpdateRule (boost::shared_ptr< AbstractUpdateRule< DIM > > pUpdateRule) |
virtual const std::vector< boost::shared_ptr< AbstractUpdateRule< DIM > > > | GetUpdateRuleCollection () const |
virtual double | GetCellDataItemAtPdeNode (unsigned pdeNodeIndex, std::string &rVariableName, bool dirichletBoundaryConditionApplies=false, double dirichletBoundaryValue=0.0) |
virtual bool | IsPdeNodeAssociatedWithNonApoptoticCell (unsigned pdeNodeIndex) |
Public Member Functions inherited from AbstractOnLatticeCellPopulation< DIM > | |
AbstractOnLatticeCellPopulation (AbstractMesh< DIM, DIM > &rMesh, std::vector< CellPtr > &rCells, const std::vector< unsigned > locationIndices=std::vector< unsigned >(), bool deleteMesh=false) | |
virtual | ~AbstractOnLatticeCellPopulation () |
bool | GetUpdateNodesInRandomOrder () |
void | SetUpdateNodesInRandomOrder (bool updateNodesInRandomOrder) |
void | SetIterateRandomlyOverUpdateRuleCollection (bool iterateRandomly) |
bool | GetIterateRandomlyOverUpdateRuleCollection () |
void | SetNode (unsigned index, ChastePoint< DIM > &rNewLocation) |
std::set< unsigned > | GetNeighbouringNodeIndices (unsigned index) |
virtual double | GetDefaultTimeStep () |
Public Member Functions inherited from AbstractCellPopulation< 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 void | SetNode (unsigned nodeIndex, ChastePoint< SPACE_DIM > &rNewLocation)=0 |
virtual void | WriteDataToVisualizerSetupFile (out_stream &pVizSetupFile) |
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) |
virtual bool | IsCellAttachedToLocationIndex (unsigned index) |
void | SetCellUsingLocationIndex (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 std::set< std::pair< unsigned, unsigned > > | GetNeighbouringEdgeIndices (CellPtr pCell, unsigned pEdgeIndex) |
c_vector< double, SPACE_DIM > | GetCentroidOfCellPopulation () |
virtual void | UpdateCellProcessLocation () |
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 () |
void | AddPopulationWriter () |
void | AddPopulationWriter (boost::shared_ptr< AbstractCellPopulationWriter< ELEMENT_DIM, SPACE_DIM > > pPopulationWriter) |
void | AddCellWriter () |
void | AddCellWriter (boost::shared_ptr< AbstractCellWriter< ELEMENT_DIM, SPACE_DIM > > pCellWriter) |
void | AddCellPopulationCountWriter () |
void | AddCellPopulationCountWriter (boost::shared_ptr< AbstractCellPopulationCountWriter< ELEMENT_DIM, SPACE_DIM > > pCellPopulationCountWriter) |
void | AddCellPopulationEventWriter () |
void | AddCellPopulationEventWriter (boost::shared_ptr< AbstractCellPopulationEventWriter< ELEMENT_DIM, SPACE_DIM > > pCellPopulationEventWriter) |
bool | HasWriter () const |
void | SetOutputResultsForChasteVisualizer (bool outputResultsForChasteVisualizer) |
c_vector< double, SPACE_DIM > | GetSizeOfCellPopulation () |
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 |
Private Member Functions | |
void | SetEmptySites (const std::set< unsigned > &rEmptySiteIndices) |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
void | Validate () |
virtual void | WriteVtkResultsToFile (const std::string &rDirectory) |
Private Attributes | |
unsigned | mLatticeCarryingCapacity |
std::vector< boost::shared_ptr< AbstractUpdateRule< DIM > > > | mSwitchingUpdateRuleCollection |
std::vector< unsigned > | mAvailableSpaces |
boost::shared_ptr< AbstractCaBasedDivisionRule< DIM > > | mpCaBasedDivisionRule |
Friends | |
class | TestCaBasedCellPopulation |
class | boost::serialization::access |
Additional Inherited Members | |
Protected Member Functions inherited from AbstractOnLatticeCellPopulation< DIM > | |
AbstractOnLatticeCellPopulation (AbstractMesh< DIM, DIM > &rMesh) | |
Protected Member Functions inherited from AbstractCellPopulation< DIM > | |
AbstractCellPopulation (AbstractMesh< ELEMENT_DIM, SPACE_DIM > &rMesh) | |
virtual void | AcceptCellWritersAcrossPopulation () |
Protected Attributes inherited from AbstractOnLatticeCellPopulation< DIM > | |
std::vector< boost::shared_ptr< AbstractUpdateRule< DIM > > > | mUpdateRuleCollection |
bool | mDeleteMesh |
bool | mUpdateNodesInRandomOrder |
bool | mIterateRandomlyOverUpdateRuleCollection |
Protected Attributes inherited from AbstractCellPopulation< 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 |
std::vector< boost::shared_ptr< AbstractCellPopulationEventWriter< ELEMENT_DIM, SPACE_DIM > > > | mCellPopulationEventWriters |
std::vector< std::string > | mDivisionsInformation |
std::vector< std::string > | mRemovalsInformation |
A facade class encapsulating a cell population under the Cellular Automaton (CA) framework.
Contains a group of cells and maintains the associations between CellPtrs and nodes in a specialised PottsMesh class.
When used here the PottsMesh has no elements as Cells are associated with nodes. The PottsMesh is used to define node connectivity.
Multiple cells can be associated at a single node.
Definition at line 64 of file CaBasedCellPopulation.hpp.
CaBasedCellPopulation< DIM >::CaBasedCellPopulation | ( | PottsMesh< DIM > & | rMesh, |
std::vector< CellPtr > & | rCells, | ||
const std::vector< unsigned > | locationIndices, | ||
unsigned | latticeCarryingCapacity = 1u , |
||
bool | deleteMesh = false , |
||
bool | validate = false |
||
) |
Create a new cell population facade from a mesh, a vector of location indices and a collection of cells.
There must be precisely one CellPtr for each entry of the locationIndices vector.
rMesh | reference to a PottsMesh |
rCells | reference to a vector of CellPtrs |
locationIndices | a vector of location indices that correspond to real cells |
latticeCarryingCapacity | an optional parameter to allow more than one cell per site |
deleteMesh | set to true if you want the cell population to free the mesh memory on destruction (defaults to false) |
validate | whether to validate the cell population when it is created (defaults to false as not used in CA simulations) |
Definition at line 60 of file CaBasedCellPopulation.cpp.
References EXCEPTION, CaBasedCellPopulation< DIM >::GetNumNodes(), CaBasedCellPopulation< DIM >::IsSiteAvailable(), CaBasedCellPopulation< DIM >::mAvailableSpaces, AbstractCellPopulation< DIM >::mCells, and CaBasedCellPopulation< DIM >::mpCaBasedDivisionRule.
CaBasedCellPopulation< DIM >::CaBasedCellPopulation | ( | PottsMesh< DIM > & | rMesh | ) |
Constructor for use by the de-serializer.
rMesh | a Ca mesh. |
Definition at line 101 of file CaBasedCellPopulation.cpp.
|
virtual |
Destructor, which frees any memory allocated by the constructor.
Definition at line 107 of file CaBasedCellPopulation.cpp.
|
virtual |
A virtual method to accept a cell writer so it can write data from this object to file.
pCellWriter | the population writer. |
pCell | the cell whose data are being written. |
Definition at line 523 of file CaBasedCellPopulation.cpp.
|
virtual |
A virtual method to accept a cell population count writer so it can write data from this object to file.
pPopulationCountWriter | the population count writer. |
Definition at line 511 of file CaBasedCellPopulation.cpp.
|
virtual |
A virtual method to accept a cell population event writer so it can write data from this object to file.
pPopulationEventWriter | the population event writer. |
Definition at line 517 of file CaBasedCellPopulation.cpp.
|
virtual |
A virtual method to accept a cell population writer so it can write data from this object to file.
pPopulationWriter | the population writer. |
Definition at line 505 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden AddCell() method.
Add a new cell to the cell population.
pNewCell | the cell to add |
pParentCell | pointer to a parent cell (if required) |
Implements AbstractCellPopulation< DIM >.
Definition at line 231 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden AddCellUsingLocationIndex method to add a cell to a given location index. Also updates mAvailableSpaces
index | the location index |
pCell | the cell. |
Reimplemented from AbstractCellPopulation< DIM >.
Definition at line 203 of file CaBasedCellPopulation.cpp.
References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::AddCellUsingLocationIndex(), and EXCEPTION.
|
virtual |
Overridden AddUpdateRule() method.
pUpdateRule | pointer to an update rule |
Implements AbstractOnLatticeCellPopulation< DIM >.
Definition at line 557 of file CaBasedCellPopulation.cpp.
|
virtual |
Calculate the propensity of a dividing into a given site. Overridden in child classes to define other division methods, e.g. directed division.
currentNodeIndex | The index of the current node/lattice site |
targetNodeIndex | The index of the target node/lattice site |
pCell | a pointer to the cell (needed if more than one cell per lattice site |
Definition at line 246 of file CaBasedCellPopulation.cpp.
Referenced by ExclusionCaBasedDivisionRule< SPACE_DIM >::CalculateDaughterNodeIndex(), and ShovingCaBasedDivisionRule< SPACE_DIM >::CalculateDaughterNodeIndex().
boost::shared_ptr< AbstractCaBasedDivisionRule< DIM > > CaBasedCellPopulation< DIM >::GetCaBasedDivisionRule | ( | ) |
Definition at line 601 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden GetCellDataItemAtPdeNode() method.
pdeNodeIndex | index of a node in a tetrahedral mesh for use with a PDE modifier |
rVariableName | the name of the cell data item to get |
dirichletBoundaryConditionApplies | where a Dirichlet boundary condition is used (optional; defaults to false) |
dirichletBoundaryValue | the value of the Dirichlet boundary condition, if used (optional; defaults to 0.0) |
Implements AbstractCellPopulation< DIM >.
Definition at line 791 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden GetLocationOfCellCentre() method. Find where a given cell is in space.
pCell | the cell |
Implements AbstractCellPopulation< DIM >.
Definition at line 191 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden GetNeighbouringLocationIndices() method.
Given a cell, returns the set of location indices corresponding to neighbouring cells.
Note: In keeping with other parts of the code in this class, we assume a Moore neighbourhood. Also, at present this method assumes a unit carrying capacity at each lattice site.
pCell | a cell |
Implements AbstractCellPopulation< DIM >.
Definition at line 171 of file CaBasedCellPopulation.cpp.
References PottsMesh< DIM >::GetMooreNeighbouringNodeIndices().
|
virtual |
Overridden GetNode() method.
index | global index of the specified node |
Implements AbstractCellPopulation< DIM >.
Definition at line 159 of file CaBasedCellPopulation.cpp.
Referenced by DiffusionCaUpdateRule< DIM >::EvaluateProbability().
Node< DIM > * CaBasedCellPopulation< DIM >::GetNodeCorrespondingToCell | ( | CellPtr | pCell | ) |
Get a pointer to the node corresponding to a given CellPtr.
pCell | the cell |
Definition at line 197 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden GetNumNodes() method.
Implements AbstractCellPopulation< DIM >.
Definition at line 165 of file CaBasedCellPopulation.cpp.
Referenced by CaBasedCellPopulation< DIM >::CaBasedCellPopulation().
|
virtual |
Overridden GetTetrahedralMeshForPdeModifier() method.
This method is called by AbstractGrowingDomainPdeModifier.
Implements AbstractCellPopulation< DIM >.
Definition at line 141 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden AddUpdateRule() method.
Get the collection of update rules to be used with this population. This vector is comprised of mUpdateRuleCollection and mSwitchingUpdateRuleCollection, one after the other.
Reimplemented from AbstractOnLatticeCellPopulation< DIM >.
Definition at line 584 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden GetVolumeOfCell() method.
pCell | boost shared pointer to a cell |
Implements AbstractCellPopulation< DIM >.
Definition at line 543 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden GetWidth() method.
Calculate the 'width' of any dimension of the cell population by calling GetWidth() on the mesh.
Note this returns the size of the underlying mesh not the population of cells so here it will be the same for all time.
rDimension | a dimension (0,1 or 2) |
Implements AbstractCellPopulation< DIM >.
Definition at line 550 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden IsCellAssociatedWithADeletedLocation() method.
pCell | the cell |
Implements AbstractCellPopulation< DIM >.
Definition at line 494 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden IsPdeNodeAssociatedWithNonApoptoticCell() method.
pdeNodeIndex | index of a node in a tetrahedral mesh for use with a PDE modifier |
Reimplemented from AbstractCellPopulation< DIM >.
Definition at line 811 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden IsRoomToDivide() method. Returns whether there are any available neighbouring sites to the one occupied by a given cell.
pCell | pointer to a cell |
Reimplemented from AbstractCellPopulation< DIM >.
Definition at line 225 of file CaBasedCellPopulation.cpp.
|
virtual |
Find if a given node has space available. Overridden in subclasses to implement different division regimes.
index | The global index of a specified node. |
pCell | The cell wanting to divide into the lattice site (defaults to NULL). |
Definition at line 122 of file CaBasedCellPopulation.cpp.
Referenced by CaBasedCellPopulation< DIM >::CaBasedCellPopulation(), CryptShovingCaBasedDivisionRule::CalculateDaughterNodeIndex(), ExclusionCaBasedDivisionRule< SPACE_DIM >::CalculateDaughterNodeIndex(), ShovingCaBasedDivisionRule< SPACE_DIM >::CalculateDaughterNodeIndex(), and ExclusionCaBasedDivisionRule< SPACE_DIM >::IsRoomToDivide().
|
virtual |
Overridden OpenWritersFiles() method.
Open all files in mCellPopulationWriters and mCellWriters for writing (not appending).
rOutputFileHandler | handler for the directory in which to open this file. |
Reimplemented from AbstractCellPopulation< DIM >.
Definition at line 529 of file CaBasedCellPopulation.cpp.
References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::OpenWritersFiles().
|
virtual |
Outputs CellPopulation parameters to file
As this method is pure virtual, it must be overridden in subclasses.
rParamsFile | the file stream to which the parameters are output |
Reimplemented from AbstractOnLatticeCellPopulation< DIM >.
Definition at line 613 of file CaBasedCellPopulation.cpp.
References AbstractOnLatticeCellPopulation< DIM >::OutputCellPopulationParameters().
|
virtual |
Overridden RemoveAllUpdateRules() method.
Remove any update rules previously passed to this population by clearing mUpdateRuleCollection and mSwitchingUpdateRuleCollection.
Reimplemented from AbstractOnLatticeCellPopulation< DIM >.
Definition at line 574 of file CaBasedCellPopulation.cpp.
References AbstractOnLatticeCellPopulation< DIM >::RemoveAllUpdateRules().
|
virtual |
Overridden AddCellUsingLocationIndex method to remove a cell from a given location index. Also updates mAvailableSpaces
index | the location index |
pCell | the cell. |
Reimplemented from AbstractCellPopulation< DIM >.
Definition at line 215 of file CaBasedCellPopulation.cpp.
References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::RemoveCellUsingLocationIndex().
|
virtual |
Remove all cells labelled as dead.
Note that after calling this method the cell population will be in an inconsistent state until the equivalent of a 'remesh' is performed! So don't try iterating over cells or anything like that.
Implements AbstractCellPopulation< DIM >.
Definition at line 254 of file CaBasedCellPopulation.cpp.
std::vector< unsigned > & CaBasedCellPopulation< DIM >::rGetAvailableSpaces | ( | ) |
Definition at line 116 of file CaBasedCellPopulation.cpp.
PottsMesh< DIM > & CaBasedCellPopulation< DIM >::rGetMesh | ( | ) |
Definition at line 129 of file CaBasedCellPopulation.cpp.
Referenced by CryptShovingCaBasedDivisionRule::CalculateDaughterNodeIndex(), ExclusionCaBasedDivisionRule< SPACE_DIM >::CalculateDaughterNodeIndex(), ShovingCaBasedDivisionRule< SPACE_DIM >::CalculateDaughterNodeIndex(), DiffusionCaUpdateRule< DIM >::EvaluateProbability(), ExclusionCaBasedDivisionRule< SPACE_DIM >::IsRoomToDivide(), and HeterotypicBoundaryLengthWriter< ELEMENT_DIM, SPACE_DIM >::Visit().
const PottsMesh< DIM > & CaBasedCellPopulation< DIM >::rGetMesh | ( | ) | const |
Definition at line 135 of file CaBasedCellPopulation.cpp.
|
inlineprivate |
Serialize the object and its member variables.
Note that serialization of the mesh and cells is handled by load/save_construct_data.
Note also that member data related to writers is not saved - output must be set up again by the caller after a restart.
archive | the archive |
version | the current version of this class |
Definition at line 106 of file CaBasedCellPopulation.hpp.
References CaBasedCellPopulation< DIM >::mAvailableSpaces, CaBasedCellPopulation< DIM >::mLatticeCarryingCapacity, CaBasedCellPopulation< DIM >::mpCaBasedDivisionRule, and CaBasedCellPopulation< DIM >::mSwitchingUpdateRuleCollection.
void CaBasedCellPopulation< DIM >::SetCaBasedDivisionRule | ( | boost::shared_ptr< AbstractCaBasedDivisionRule< DIM > > | pCaBasedDivisionRule | ) |
Set the division rule for this population.
pCaBasedDivisionRule | pointer to the new division rule |
Definition at line 607 of file CaBasedCellPopulation.cpp.
|
private |
Set the empty sites by taking in a set of which nodes indices are empty sites.
rEmptySiteIndices | set of node indices corresponding to empty sites |
|
virtual |
Overridden Update() method.
Checks association of nodes with CellPtrs.
hasHadBirthsOrDeaths | - a bool saying whether cell population has had Births Or Deaths |
Implements AbstractCellPopulation< DIM >.
Definition at line 500 of file CaBasedCellPopulation.cpp.
|
virtual |
Overridden UpdateCellLocations() method.
dt | time step |
Implements AbstractOnLatticeCellPopulation< DIM >.
Definition at line 283 of file CaBasedCellPopulation.cpp.
References EXCEPTION, PottsMesh< DIM >::GetMooreNeighbouringNodeIndices(), RandomNumberGenerator::Instance(), NEVER_REACHED, RandomNumberGenerator::randMod(), RandomNumberGenerator::ranf(), and RandomNumberGenerator::Shuffle().
|
privatevirtual |
Overridden Validate() method.
Not used in CA simulations so just contains NEVER_REACHED
Implements AbstractCellPopulation< DIM >.
Definition at line 53 of file CaBasedCellPopulation.cpp.
References NEVER_REACHED.
|
privatevirtual |
Overridden WriteVtkResultsToFile() method.
This method offsets cells so can visulaise multiple cells at a single site
rDirectory | pathname of the output directory, relative to where Chaste output is stored |
Implements AbstractCellPopulation< DIM >.
Definition at line 625 of file CaBasedCellPopulation.cpp.
References VtkMeshWriter< ELEMENT_DIM, SPACE_DIM >::AddPointData(), NodesOnlyMesh< SPACE_DIM >::ConstructNodesWithoutMesh(), SimulationTime::GetTimeStepsElapsed(), NodesOnlyMesh< SPACE_DIM >::GetWidth(), SimulationTime::Instance(), RandomNumberGenerator::Instance(), RandomNumberGenerator::ranf(), and VtkMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteFilesUsingMesh().
|
friend |
Definition at line 93 of file CaBasedCellPopulation.hpp.
|
friend |
Definition at line 66 of file CaBasedCellPopulation.hpp.
|
private |
Records for each node the node the number of spaces available.
Definition at line 80 of file CaBasedCellPopulation.hpp.
Referenced by CaBasedCellPopulation< DIM >::CaBasedCellPopulation(), and CaBasedCellPopulation< DIM >::serialize().
|
private |
The carrying capacity (number of cells allowed per site).
Definition at line 71 of file CaBasedCellPopulation.hpp.
Referenced by CaBasedCellPopulation< DIM >::serialize().
|
private |
A pointer to a division rule that is used to specify how cells divide. I.e do they move other cells out of the way. This is a specialisation for CA models.
Definition at line 84 of file CaBasedCellPopulation.hpp.
Referenced by CaBasedCellPopulation< DIM >::CaBasedCellPopulation(), and CaBasedCellPopulation< DIM >::serialize().
|
private |
The update rules used to determine the new location of the cells. These rules specify is cells switch locations.
Definition at line 77 of file CaBasedCellPopulation.hpp.
Referenced by CaBasedCellPopulation< DIM >::serialize().