Chaste
Release::2018.1
|
#include <VertexBasedCellPopulation.hpp>
Public Member Functions | |
VertexBasedCellPopulation (MutableVertexMesh< DIM, DIM > &rMesh, std::vector< CellPtr > &rCells, bool deleteMesh=false, bool validate=true, const std::vector< unsigned > locationIndices=std::vector< unsigned >()) | |
VertexBasedCellPopulation (MutableVertexMesh< DIM, DIM > &rMesh) | |
virtual | ~VertexBasedCellPopulation () |
double | GetDampingConstant (unsigned nodeIndex) |
MutableVertexMesh< DIM, DIM > & | rGetMesh () |
const MutableVertexMesh< DIM, DIM > & | rGetMesh () const |
VertexElement< DIM, DIM > * | GetElement (unsigned elementIndex) |
unsigned | GetNumElements () |
unsigned | GetNumNodes () |
c_vector< double, DIM > | GetLocationOfCellCentre (CellPtr pCell) |
Node< DIM > * | GetNode (unsigned index) |
std::set< unsigned > | GetNeighbouringLocationIndices (CellPtr pCell) |
unsigned | AddNode (Node< DIM > *pNewNode) |
virtual void | CheckForStepSizeException (unsigned nodeIndex, c_vector< double, DIM > &rDisplacement, double dt) |
void | SetNode (unsigned index, ChastePoint< DIM > &rNewLocation) |
VertexElement< DIM, DIM > * | GetElementCorrespondingToCell (CellPtr pCell) |
CellPtr | AddCell (CellPtr pNewCell, CellPtr pParentCell=CellPtr()) |
unsigned | RemoveDeadCells () |
bool | IsCellAssociatedWithADeletedLocation (CellPtr pCell) |
void | Update (bool hasHadBirthsOrDeaths=true) |
virtual void | OpenWritersFiles (OutputFileHandler &rOutputFileHandler) |
virtual void | AcceptPopulationWriter (boost::shared_ptr< AbstractCellPopulationWriter< DIM, DIM > > pPopulationWriter) |
virtual void | AcceptPopulationCountWriter (boost::shared_ptr< AbstractCellPopulationCountWriter< DIM, DIM > > pPopulationCountWriter) |
virtual void | AcceptCellWriter (boost::shared_ptr< AbstractCellWriter< DIM, DIM > > pCellWriter, CellPtr pCell) |
unsigned | GetRosetteRankOfCell (CellPtr pCell) |
double | GetVolumeOfCell (CellPtr pCell) |
std::vector< c_vector< double, DIM > > | GetLocationsOfT2Swaps () |
std::vector< unsigned > | GetCellIdsOfT2Swaps () |
void | AddLocationOfT2Swap (c_vector< double, DIM > locationOfT2Swap) |
void | AddCellIdOfT2Swap (unsigned idOfT2Swap) |
void | ClearLocationsAndCellIdsOfT2Swaps () |
bool | GetOutputCellRearrangementLocations () |
void | SetOutputCellRearrangementLocations (bool outputCellRearrangementLocations) |
void | OutputCellPopulationParameters (out_stream &rParamsFile) |
double | GetWidth (const unsigned &rDimension) |
std::set< unsigned > | GetNeighbouringNodeIndices (unsigned index) |
virtual TetrahedralMesh< DIM, DIM > * | GetTetrahedralMeshForPdeModifier () |
virtual bool | IsPdeNodeAssociatedWithNonApoptoticCell (unsigned pdeNodeIndex) |
virtual double | GetCellDataItemAtPdeNode (unsigned pdeNodeIndex, std::string &rVariableName, bool dirichletBoundaryConditionApplies=false, double dirichletBoundaryValue=0.0) |
boost::shared_ptr < AbstractVertexBasedDivisionRule < DIM > > | GetVertexBasedDivisionRule () |
void | SetVertexBasedDivisionRule (boost::shared_ptr< AbstractVertexBasedDivisionRule< DIM > > pVertexBasedDivisionRule) |
virtual double | GetDefaultTimeStep () |
virtual void | WriteDataToVisualizerSetupFile (out_stream &pVizSetupFile) |
virtual void | SimulationSetupHook (AbstractCellBasedSimulation< DIM, DIM > *pSimulation) |
bool | GetRestrictVertexMovementBoolean () |
void | SetRestrictVertexMovementBoolean (bool restrictVertexMovement) |
Public Member Functions inherited from AbstractOffLatticeCellPopulation< DIM > | |
AbstractOffLatticeCellPopulation (AbstractMesh< ELEMENT_DIM, ELEMENT_DIM > &rMesh, std::vector< CellPtr > &rCells, const std::vector< unsigned > locationIndices=std::vector< unsigned >()) | |
virtual unsigned | AddNode (Node< ELEMENT_DIM > *pNewNode)=0 |
virtual void | SetNode (unsigned nodeIndex, ChastePoint< ELEMENT_DIM > &rNewLocation)=0 |
virtual void | UpdateNodeLocations (double dt) |
virtual void | CheckForStepSizeException (unsigned nodeIndex, c_vector< double, ELEMENT_DIM > &rDisplacement, double dt)=0 |
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, ELEMENT_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 |
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) |
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 () |
c_vector< double, SPACE_DIM > | GetCentroidOfCellPopulation () |
virtual void | UpdateCellProcessLocation () |
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 () |
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) |
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 |
Private Member Functions | |
virtual void | WriteVtkResultsToFile (const std::string &rDirectory) |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
void | Validate () |
Private Attributes | |
bool | mDeleteMesh |
MutableVertexMesh< DIM, DIM > * | mpMutableVertexMesh |
bool | mOutputCellRearrangementLocations |
boost::shared_ptr < AbstractVertexBasedDivisionRule < DIM > > | mpVertexBasedDivisionRule |
std::vector< c_vector< double, DIM > > | mLocationsOfT2Swaps |
std::vector< unsigned > | mCellIdsOfT2Swaps |
bool | mRestrictVertexMovement |
Friends | |
class | TestVertexBasedDivisionRules |
class | boost::serialization::access |
A facade class encapsulating a vertex-based cell population.
Contains a group of cells and maintains the associations between CellPtrs and elements in the MutableVertexMesh.
Definition at line 47 of file FixedVertexBasedDivisionRule.hpp.
VertexBasedCellPopulation< DIM >::VertexBasedCellPopulation | ( | MutableVertexMesh< DIM, DIM > & | rMesh, |
std::vector< CellPtr > & | rCells, | ||
bool | deleteMesh = false , |
||
bool | validate = true , |
||
const std::vector< unsigned > | locationIndices = std::vector<unsigned>() |
||
) |
Create a new cell population facade from a mesh and collection of cells.
There must be precisely one CellPtr for each VertexElement in the mesh.
rMesh | reference to a |
rCells | reference to a vector of CellPtrs |
deleteMesh | set to true if you want the cell population to free the mesh memory on destruction |
validate | whether to validate the cell population when it is created (defaults to true) |
locationIndices | an optional vector of location indices that correspond to real cells |
Definition at line 52 of file VertexBasedCellPopulation.cpp.
References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::AddCellUsingLocationIndex(), AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >::mCells, VertexBasedCellPopulation< SPACE_DIM >::mpMutableVertexMesh, VertexBasedCellPopulation< SPACE_DIM >::mpVertexBasedDivisionRule, AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >::mrMesh, and VertexBasedCellPopulation< SPACE_DIM >::Validate().
VertexBasedCellPopulation< DIM >::VertexBasedCellPopulation | ( | MutableVertexMesh< DIM, DIM > & | rMesh | ) |
Constructor for use by boost serialization ONLY!
rMesh | a vertex mesh. |
Definition at line 81 of file VertexBasedCellPopulation.cpp.
References VertexBasedCellPopulation< SPACE_DIM >::mpMutableVertexMesh, and AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >::mrMesh.
|
virtual |
Destructor, which frees any memory allocated by the constructor.
Definition at line 91 of file VertexBasedCellPopulation.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 362 of file VertexBasedCellPopulation.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 356 of file VertexBasedCellPopulation.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 350 of file VertexBasedCellPopulation.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< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 202 of file VertexBasedCellPopulation.cpp.
void VertexBasedCellPopulation< DIM >::AddCellIdOfT2Swap | ( | unsigned | idOfT2Swap | ) |
Add ID of T2 Swap.
idOfT2Swap | ID of the cell undergoing a T2 swap |
Definition at line 579 of file VertexBasedCellPopulation.cpp.
void VertexBasedCellPopulation< DIM >::AddLocationOfT2Swap | ( | c_vector< double, DIM > | locationOfT2Swap | ) |
Add location of T2 Swap.
locationOfT2Swap | Location of the T2 swap |
Definition at line 573 of file VertexBasedCellPopulation.cpp.
unsigned VertexBasedCellPopulation< DIM >::AddNode | ( | Node< DIM > * | pNewNode | ) |
Overridden AddNode() method.
Add a new node to the cell population.
pNewNode | pointer to the new node |
Definition at line 178 of file VertexBasedCellPopulation.cpp.
|
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.
nodeIndex | Index of the node in question (allows us to check whether this is a ghost or particle) |
rDisplacement | Movement vector of the node at this time step |
dt | Current time step size |
Definition at line 260 of file VertexBasedCellPopulation.cpp.
void VertexBasedCellPopulation< DIM >::ClearLocationsAndCellIdsOfT2Swaps | ( | ) |
Clear the locations and IDs of cells undergoing T2 Swaps.
Definition at line 585 of file VertexBasedCellPopulation.cpp.
Referenced by VertexT2SwapLocationsWriter< ELEMENT_DIM, SPACE_DIM >::Visit().
|
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< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 759 of file VertexBasedCellPopulation.cpp.
References Node< SPACE_DIM >::rGetContainingElementIndices().
std::vector< unsigned > VertexBasedCellPopulation< DIM >::GetCellIdsOfT2Swaps | ( | ) |
Return all IDs of cells undergoing T2 swaps since the last sampling time step.
Definition at line 567 of file VertexBasedCellPopulation.cpp.
Referenced by VertexT2SwapLocationsWriter< ELEMENT_DIM, SPACE_DIM >::Visit().
|
virtual |
Overridden GetDampingConstant() method.
nodeIndex | the global index of this node |
Implements AbstractOffLatticeCellPopulation< DIM >.
Definition at line 100 of file VertexBasedCellPopulation.cpp.
References EXCEPTION, and SimulationTime::Instance().
Referenced by NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit().
|
virtual |
Overridden GetDefaultTimeStep() method.
A hard-coded value of 0.002 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, ELEMENT_DIM >.
Definition at line 809 of file VertexBasedCellPopulation.cpp.
VertexElement< DIM, DIM > * VertexBasedCellPopulation< DIM >::GetElement | ( | unsigned | elementIndex | ) |
Get a particular VertexElement.
elementIndex | the global index of the VertexElement |
Definition at line 147 of file VertexBasedCellPopulation.cpp.
Referenced by FarhadifarForce< DIM >::AddForceContribution(), NagaiHondaForce< DIM >::AddForceContribution(), and CellPopulationElementWriter< ELEMENT_DIM, SPACE_DIM >::Visit().
VertexElement< DIM, DIM > * VertexBasedCellPopulation< DIM >::GetElementCorrespondingToCell | ( | CellPtr | pCell | ) |
Get a pointer to the element corresponding to a given CellPtr.
pCell | the cell |
Definition at line 190 of file VertexBasedCellPopulation.cpp.
|
virtual |
Overridden GetLocationOfCellCentre() method.
Find the centre of mass of a given cell (assuming uniform density). Note that, as there is no guarantee of convexity, this may lie outside the VertexElement corresponding to the cell.
pCell | a cell in the population |
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 159 of file VertexBasedCellPopulation.cpp.
std::vector< c_vector< double, DIM > > VertexBasedCellPopulation< DIM >::GetLocationsOfT2Swaps | ( | ) |
Return all locations of T2 swaps since the last sampling time step.
Definition at line 561 of file VertexBasedCellPopulation.cpp.
Referenced by VertexT2SwapLocationsWriter< ELEMENT_DIM, SPACE_DIM >::Visit().
|
virtual |
Overridden GetNeighbouringLocationIndices() method.
Given a cell, returns the set of location indices corresponding to neighbouring cells.
pCell | a cell |
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 171 of file VertexBasedCellPopulation.cpp.
|
virtual |
Overridden GetNeighbouringNodeIndices() method.
index | the node index |
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 543 of file VertexBasedCellPopulation.cpp.
|
virtual |
Overridden GetNode() method.
index | global index of the specified node |
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 165 of file VertexBasedCellPopulation.cpp.
Referenced by WelikyOsterForce< DIM >::AddForceContribution(), FarhadifarForce< DIM >::AddForceContribution(), and NagaiHondaForce< DIM >::AddForceContribution().
unsigned VertexBasedCellPopulation< DIM >::GetNumElements | ( | ) |
Definition at line 196 of file VertexBasedCellPopulation.cpp.
Referenced by FarhadifarForce< DIM >::AddForceContribution(), and NagaiHondaForce< DIM >::AddForceContribution().
|
virtual |
Overridden GetNumNodes() method.
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 153 of file VertexBasedCellPopulation.cpp.
Referenced by FarhadifarForce< DIM >::AddForceContribution(), and NagaiHondaForce< DIM >::AddForceContribution().
bool VertexBasedCellPopulation< DIM >::GetOutputCellRearrangementLocations | ( | ) |
Definition at line 505 of file VertexBasedCellPopulation.cpp.
bool VertexBasedCellPopulation< DIM >::GetRestrictVertexMovementBoolean | ( | ) |
Get the value of the mRestrictVertexMovement boolean.
Definition at line 832 of file VertexBasedCellPopulation.cpp.
unsigned VertexBasedCellPopulation< DIM >::GetRosetteRankOfCell | ( | CellPtr | pCell | ) |
Get the "rosette rank" of a cell.
This is defined as the maximum number of cells shared by any node in the cell's corresponding element.
pCell | boost shared pointer to a cell |
Definition at line 368 of file VertexBasedCellPopulation.cpp.
Referenced by CellRosetteRankWriter< ELEMENT_DIM, SPACE_DIM >::GetCellDataForVtkOutput().
|
virtual |
Overridden GetTetrahedralMeshForPdeModifier() method.
This method is called by AbstractGrowingDomainPdeModifier.
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 592 of file VertexBasedCellPopulation.cpp.
References TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), Node< SPACE_DIM >::GetIndex(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeGlobalIndex(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), OutputFileHandler::GetOutputDirectoryFullPath(), Node< SPACE_DIM >::IsBoundaryNode(), PetscTools::IsSequential(), Node< SPACE_DIM >::rGetLocation(), and AbstractMesh< ELEMENT_DIM, SPACE_DIM >::SetMeshHasChangedSinceLoading().
boost::shared_ptr< AbstractVertexBasedDivisionRule< DIM > > VertexBasedCellPopulation< DIM >::GetVertexBasedDivisionRule | ( | ) |
Definition at line 549 of file VertexBasedCellPopulation.cpp.
|
virtual |
Overridden GetVolumeOfCell() method.
pCell | boost shared pointer to a cell |
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 380 of file VertexBasedCellPopulation.cpp.
|
virtual |
Overridden GetWidth() method.
Calculate the 'width' of any dimension of the cell population by calling GetWidth() on the mesh.
rDimension | a dimension (0,1 or 2) |
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 534 of file VertexBasedCellPopulation.cpp.
|
virtual |
Overridden IsCellAssociatedWithADeletedLocation() method.
pCell | the cell |
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 282 of file VertexBasedCellPopulation.cpp.
|
virtual |
Overridden IsPdeNodeAssociatedWithNonApoptoticCell() method.
pdeNodeIndex | inedx of a node in a tetrahedral mesh for use with a PDE modifier |
Reimplemented from AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 727 of file VertexBasedCellPopulation.cpp.
|
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< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 475 of file VertexBasedCellPopulation.cpp.
References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::OpenWritersFiles().
|
virtual |
Overridden OutputCellPopulationParameters() method.
rParamsFile | the file stream to which the parameters are output |
Reimplemented from AbstractOffLatticeCellPopulation< DIM >.
Definition at line 517 of file VertexBasedCellPopulation.cpp.
References AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM >::OutputCellPopulationParameters().
|
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< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 225 of file VertexBasedCellPopulation.cpp.
MutableVertexMesh< DIM, DIM > & VertexBasedCellPopulation< DIM >::rGetMesh | ( | ) |
Definition at line 135 of file VertexBasedCellPopulation.cpp.
Referenced by VertexCryptBoundaryForce< DIM >::AddForceContribution(), WelikyOsterForce< DIM >::AddForceContribution(), FarhadifarForce< DIM >::AddForceContribution(), NagaiHondaForce< DIM >::AddForceContribution(), ShortAxisVertexBasedDivisionRule< SPACE_DIM >::CalculateCellDivisionVector(), VertexT3SwapLocationsWriter< ELEMENT_DIM, SPACE_DIM >::Visit(), VertexT1SwapLocationsWriter< ELEMENT_DIM, SPACE_DIM >::Visit(), CellPopulationElementWriter< ELEMENT_DIM, SPACE_DIM >::Visit(), NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit(), and HeterotypicBoundaryLengthWriter< ELEMENT_DIM, SPACE_DIM >::Visit().
const MutableVertexMesh< DIM, DIM > & VertexBasedCellPopulation< DIM >::rGetMesh | ( | ) | const |
Definition at line 141 of file VertexBasedCellPopulation.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 124 of file VertexBasedCellPopulation.hpp.
References VertexBasedCellPopulation< SPACE_DIM >::mOutputCellRearrangementLocations, VertexBasedCellPopulation< SPACE_DIM >::mpVertexBasedDivisionRule, and VertexBasedCellPopulation< SPACE_DIM >::mRestrictVertexMovement.
void VertexBasedCellPopulation< DIM >::SetNode | ( | unsigned | index, |
ChastePoint< DIM > & | rNewLocation | ||
) |
Overridden SetNode() method.
Move the node with a given index to a new point in space.
index | the index of the node to be moved |
rNewLocation | the new target location of the node |
Definition at line 184 of file VertexBasedCellPopulation.cpp.
void VertexBasedCellPopulation< DIM >::SetOutputCellRearrangementLocations | ( | bool | outputCellRearrangementLocations | ) |
Set mOutputCellRearrangementLocations.
outputCellRearrangementLocations | the new value of mOutputCellRearrangementLocations |
Definition at line 511 of file VertexBasedCellPopulation.cpp.
void VertexBasedCellPopulation< DIM >::SetRestrictVertexMovementBoolean | ( | bool | restrictVertexMovement | ) |
Set the value of the mRestrictVertexMovement boolean.
restrictVertexMovement | whether to restrict vertex movement in this simulation. |
Definition at line 838 of file VertexBasedCellPopulation.cpp.
void VertexBasedCellPopulation< DIM >::SetVertexBasedDivisionRule | ( | boost::shared_ptr< AbstractVertexBasedDivisionRule< DIM > > | pVertexBasedDivisionRule | ) |
Set the division rule for this population.
pVertexBasedDivisionRule | pointer to the new division rule |
Definition at line 555 of file VertexBasedCellPopulation.cpp.
|
virtual |
Overridden SimulationSetupHook() method.
Hook method to add a T2SwapCellKiller to a simulation object, which is always required in the case of a VertexBasedCellPopulation. This functionality avoids the need for static or dynamic casts to specific cell population types within simulation methods.
Note: In order to inhibit T2 swaps, the user needs to set the threshold for T2 swaps in the MutableVertexMesh object mrMesh to 0, using the SetT2Threshold() method.
pSimulation | pointer to a cell-based simulation object |
Definition at line 824 of file VertexBasedCellPopulation.cpp.
References AbstractCellBasedSimulation< ELEMENT_DIM, SPACE_DIM >::AddCellKiller(), and MAKE_PTR_ARGS.
|
virtual |
Remove the VertexElements which have been marked as deleted, perform any cell rearrangements if required, and update the correspondence with CellPtrs.
hasHadBirthsOrDeaths | - a bool saying whether cell population has had Births Or Deaths not needed in this cell population class |
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 288 of file VertexBasedCellPopulation.cpp.
References VertexElementMap::GetNewIndex().
Referenced by HeterotypicBoundaryLengthWriter< ELEMENT_DIM, SPACE_DIM >::Visit().
|
privatevirtual |
Check the consistency of internal data structures. Each VertexElement must have a CellPtr associated with it.
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 322 of file VertexBasedCellPopulation.cpp.
References EXCEPTION, and SimulationTime::Instance().
Referenced by VertexBasedCellPopulation< SPACE_DIM >::VertexBasedCellPopulation().
|
virtual |
Overridden WriteDataToVisualizerSetupFile() method. Write any data necessary to a visualization setup file. Used by AbstractCellBasedSimulation::WriteVisualizerSetupFile().
pVizSetupFile | a visualization setup file |
Reimplemented from AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 815 of file VertexBasedCellPopulation.cpp.
|
privatevirtual |
Overridden WriteVtkResultsToFile() method.
rDirectory | pathname of the output directory, relative to where Chaste output is stored |
Implements AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM >.
Definition at line 392 of file VertexBasedCellPopulation.cpp.
References VertexMeshWriter< ELEMENT_DIM, SPACE_DIM >::AddCellData(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetElementIteratorBegin(), SimulationTime::GetTimeStepsElapsed(), SimulationTime::Instance(), and VertexMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteVtkUsingMesh().
|
friend |
This test uses the private constructor to simplify testing.
Definition at line 65 of file VertexBasedCellPopulation.hpp.
|
private |
The Ids of cells that have undergone T2 swaps, stored so they can be accessed and output by the cell killer and population writer classes. The Ids are stored until they are cleared by ClearLocationsAndCellIdsOfT2Swaps().
Definition at line 96 of file VertexBasedCellPopulation.hpp.
|
private |
Whether to delete the mesh when we are destroyed. Needed if this cell population has been de-serialized.
Definition at line 71 of file VertexBasedCellPopulation.hpp.
|
private |
Locations of T2 swaps (the centre of the removed triangle), stored so they can be accessed and output by the cell killer and population writer classes. The locations are stored until they are cleared by ClearLocationsAndCellIdsOfT2Swaps().
Definition at line 90 of file VertexBasedCellPopulation.hpp.
|
private |
Whether to output the locations of T1 swaps and T3 swaps to files. Defaults to true.
Definition at line 80 of file VertexBasedCellPopulation.hpp.
Referenced by VertexBasedCellPopulation< SPACE_DIM >::serialize().
|
private |
A static cast of the AbstractMesh from AbstractCellPopulation for use in this class
Definition at line 77 of file VertexBasedCellPopulation.hpp.
Referenced by VertexBasedCellPopulation< SPACE_DIM >::VertexBasedCellPopulation().
|
private |
A pointer to a division rule that is used to generate the axis when dividing cells. This is a specialisation for Vertex models.
Definition at line 84 of file VertexBasedCellPopulation.hpp.
Referenced by VertexBasedCellPopulation< SPACE_DIM >::serialize(), and VertexBasedCellPopulation< SPACE_DIM >::VertexBasedCellPopulation().
|
private |
Whether to restrict the vertex movement if vertex displacement is larger than the cell rearrangement threshold.
Definition at line 102 of file VertexBasedCellPopulation.hpp.
Referenced by VertexBasedCellPopulation< SPACE_DIM >::serialize().