#include <AbstractCentreBasedCellPopulation.hpp>
Public Member Functions | |
AbstractCentreBasedCellPopulation (std::vector< CellPtr > &rCells, const std::vector< unsigned > locationIndices=std::vector< unsigned >()) | |
c_vector< double, DIM > | GetLocationOfCellCentre (CellPtr pCell) |
Node< DIM > * | GetNodeCorrespondingToCell (CellPtr pCell) |
CellPtr | AddCell (CellPtr pNewCell, const c_vector< double, DIM > &rCellDivisionVector, CellPtr pParentCell=CellPtr()) |
bool | IsCellAssociatedWithADeletedLocation (CellPtr pCell) |
virtual void | UpdateNodeLocations (const std::vector< c_vector< double, DIM > > &rNodeForces, double dt) |
virtual double | GetDampingConstant (unsigned nodeIndex) |
void | GenerateCellResults (unsigned locationIndex, std::vector< unsigned > &rCellProliferativeTypeCounter, std::vector< unsigned > &rCellCyclePhaseCounter) |
virtual void | GenerateCellResultsAndWriteToFiles () |
virtual void | WriteTimeAndNodeResultsToFiles () |
virtual bool | IsGhostNode (unsigned index) |
double | GetMeinekeDivisionSeparation () |
void | SetMeinekeDivisionSeparation (double divisionSeparation) |
virtual void | OutputCellPopulationParameters (out_stream &rParamsFile) |
Protected Member Functions | |
AbstractCentreBasedCellPopulation () | |
virtual void | WriteVtkResultsToFile ()=0 |
Protected Attributes | |
double | mMeinekeDivisionSeparation |
Private Member Functions | |
template<class Archive> | |
void | serialize (Archive &archive, const unsigned int version) |
Friends | |
class | boost::serialization::access |
Definition at line 41 of file AbstractCentreBasedCellPopulation.hpp.
AbstractCentreBasedCellPopulation< DIM >::AbstractCentreBasedCellPopulation | ( | ) | [inline, protected] |
Constructor for use by archiving only.
Definition at line 41 of file AbstractCentreBasedCellPopulation.cpp.
AbstractCentreBasedCellPopulation< DIM >::AbstractCentreBasedCellPopulation | ( | std::vector< CellPtr > & | rCells, | |
const std::vector< unsigned > | locationIndices = std::vector<unsigned>() | |||
) | [inline] |
Default constructor.
rCells | a vector of cells | |
locationIndices | an optional vector of location indices that correspond to real cells |
Definition at line 32 of file AbstractCentreBasedCellPopulation.cpp.
void AbstractCentreBasedCellPopulation< DIM >::serialize | ( | Archive & | archive, | |
const unsigned int | version | |||
) | [inline, private] |
Serialize the object and its member variables.
archive | the archive | |
version | the current version of this class |
Reimplemented from AbstractCellPopulation< DIM >.
Reimplemented in MeshBasedCellPopulation< DIM >, MeshBasedCellPopulationWithGhostNodes< DIM >, NodeBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, and MeshBasedCellPopulationWithGhostNodes< 2 >.
Definition at line 53 of file AbstractCentreBasedCellPopulation.hpp.
References AbstractCentreBasedCellPopulation< DIM >::mMeinekeDivisionSeparation.
virtual void AbstractCentreBasedCellPopulation< DIM >::WriteVtkResultsToFile | ( | ) | [protected, pure virtual] |
Write the current results to mpVtkMetaFile.
As this method is pure virtual, it must be overridden in subclasses.
Implements AbstractCellPopulation< DIM >.
Implemented in MeshBasedCellPopulation< DIM >, MeshBasedCellPopulationWithGhostNodes< DIM >, NodeBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, and MeshBasedCellPopulationWithGhostNodes< 2 >.
c_vector< double, DIM > AbstractCentreBasedCellPopulation< DIM >::GetLocationOfCellCentre | ( | CellPtr | pCell | ) | [inline, virtual] |
Overridden GetLocationOfCellCentre() method. Find where a given cell is in space.
pCell | the cell |
Implements AbstractCellPopulation< DIM >.
Definition at line 49 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCentreBasedCellPopulation< DIM >::GetNodeCorrespondingToCell().
Referenced by CryptSimulation1d::CalculateCellDivisionVector(), CryptStatistics::GetCryptSection(), and CryptProjectionStatistics::GetCryptSection().
Node< DIM > * AbstractCentreBasedCellPopulation< DIM >::GetNodeCorrespondingToCell | ( | CellPtr | pCell | ) | [inline] |
Get a pointer to the node corresponding to a given cell.
pCell | the cell |
Definition at line 56 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCellPopulation< DIM >::GetNode(), and AbstractCellPopulation< DIM >::mCellLocationMap.
Referenced by CryptSimulation1d::ApplyCellPopulationBoundaryConditions(), AbstractCentreBasedCellPopulation< DIM >::GetLocationOfCellCentre(), AbstractCentreBasedCellPopulation< DIM >::IsCellAssociatedWithADeletedLocation(), NodeBasedCellPopulation< DIM >::RemoveDeadCells(), CellwiseDataGradient< DIM >::SetupGradients(), and MeshBasedCellPopulation< DIM >::Update().
CellPtr AbstractCentreBasedCellPopulation< DIM >::AddCell | ( | CellPtr | pNewCell, | |
const c_vector< double, DIM > & | rCellDivisionVector, | |||
CellPtr | pParentCell = CellPtr() | |||
) | [inline, virtual] |
Add a new cell to the cell population.
pNewCell | the cell to add | |
rCellDivisionVector | the position in space at which to put it | |
pParentCell | pointer to a parent cell (if required) |
Implements AbstractCellPopulation< DIM >.
Reimplemented in MeshBasedCellPopulation< DIM >, MeshBasedCellPopulationWithGhostNodes< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, and MeshBasedCellPopulationWithGhostNodes< 2 >.
Definition at line 65 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCellPopulation< DIM >::AddNode(), AbstractCellPopulation< DIM >::GetNumNodes(), AbstractCellPopulation< DIM >::mCellLocationMap, AbstractCellPopulation< DIM >::mCells, and AbstractCellPopulation< DIM >::mLocationCellMap.
Referenced by MeshBasedCellPopulation< DIM >::AddCell().
bool AbstractCentreBasedCellPopulation< DIM >::IsCellAssociatedWithADeletedLocation | ( | CellPtr | pCell | ) | [inline, virtual] |
Overridden IsCellAssociatedWithADeletedLocation() method.
pCell | the cell |
Implements AbstractCellPopulation< DIM >.
Definition at line 83 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCentreBasedCellPopulation< DIM >::GetNodeCorrespondingToCell().
void AbstractCentreBasedCellPopulation< DIM >::UpdateNodeLocations | ( | const std::vector< c_vector< double, DIM > > & | rNodeForces, | |
double | dt | |||
) | [inline, virtual] |
Overridden UpdateNodeLocations() method.
rNodeForces | a vector containing the force on each node in the cell population | |
dt | the time step |
Implements AbstractCellPopulation< DIM >.
Reimplemented in MeshBasedCellPopulationWithGhostNodes< DIM >, and MeshBasedCellPopulationWithGhostNodes< 2 >.
Definition at line 90 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCellPopulation< DIM >::Begin(), AbstractCellPopulation< DIM >::End(), AbstractCentreBasedCellPopulation< DIM >::GetDampingConstant(), AbstractCellPopulation< DIM >::GetNode(), AbstractCellPopulation< DIM >::mCellLocationMap, and AbstractCellPopulation< DIM >::SetNode().
Referenced by MeshBasedCellPopulationWithGhostNodes< DIM >::UpdateNodeLocations().
double AbstractCentreBasedCellPopulation< DIM >::GetDampingConstant | ( | unsigned | nodeIndex | ) | [inline, 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.
nodeIndex | the global index of this node |
Implements AbstractCellPopulation< DIM >.
Reimplemented in MeshBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, and MeshBasedCellPopulation< 2 >.
Definition at line 116 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCellPopulation< DIM >::GetCellUsingLocationIndex(), AbstractCellPopulation< DIM >::GetDampingConstantMutant(), and AbstractCellPopulation< DIM >::GetDampingConstantNormal().
Referenced by MeshBasedCellPopulation< DIM >::GetDampingConstant(), and AbstractCentreBasedCellPopulation< DIM >::UpdateNodeLocations().
void AbstractCentreBasedCellPopulation< DIM >::GenerateCellResults | ( | unsigned | locationIndex, | |
std::vector< unsigned > & | rCellProliferativeTypeCounter, | |||
std::vector< unsigned > & | rCellCyclePhaseCounter | |||
) | [inline, virtual] |
Overridden GenerateCellResults() method. Generate results for a given cell in the current cell population state to output files.
locationIndex | location index of the cell | |
rCellProliferativeTypeCounter | cell type counter | |
rCellCyclePhaseCounter | cell cycle phase counter |
Reimplemented from AbstractCellPopulation< DIM >.
Definition at line 138 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCellPopulation< DIM >::GenerateCellResults(), AbstractCentreBasedCellPopulation< DIM >::IsGhostNode(), and AbstractCellPopulation< DIM >::mpVizCellProliferativeTypesFile.
Referenced by AbstractCentreBasedCellPopulation< DIM >::GenerateCellResultsAndWriteToFiles().
void AbstractCentreBasedCellPopulation< DIM >::GenerateCellResultsAndWriteToFiles | ( | ) | [inline, virtual] |
Overridden GenerateCellResultsAndWriteToFiles() method.
Implements AbstractCellPopulation< DIM >.
Definition at line 156 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCentreBasedCellPopulation< DIM >::GenerateCellResults(), AbstractCellPopulation< DIM >::GetNode(), AbstractCellPopulation< DIM >::GetNumNodes(), AbstractCellPopulation< DIM >::mCellCyclePhaseCount, AbstractCellPopulation< DIM >::mCellProliferativeTypeCount, AbstractCellPopulation< DIM >::mLocationCellMap, and AbstractCellPopulation< DIM >::WriteCellResultsToFiles().
void AbstractCentreBasedCellPopulation< DIM >::WriteTimeAndNodeResultsToFiles | ( | ) | [inline, virtual] |
Overridden WriteTimeAndNodeResultsToFiles() method.
Reimplemented from AbstractCellPopulation< DIM >.
Definition at line 195 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCellPopulation< DIM >::GetNode(), AbstractCellPopulation< DIM >::GetNumNodes(), SimulationTime::GetTime(), SimulationTime::Instance(), AbstractCellPopulation< DIM >::mLocationCellMap, AbstractCellPopulation< DIM >::mpVizBoundaryNodesFile, and AbstractCellPopulation< DIM >::mpVizNodesFile.
bool AbstractCentreBasedCellPopulation< DIM >::IsGhostNode | ( | unsigned | index | ) | [inline, virtual] |
Find if a given node is a ghost node. The method always returns false but is overridden in MeshBasedCellPopulationWithGhostNodes.
index | the global index of a specified node |
Reimplemented in MeshBasedCellPopulationWithGhostNodes< DIM >, and MeshBasedCellPopulationWithGhostNodes< 2 >.
Definition at line 131 of file AbstractCentreBasedCellPopulation.cpp.
Referenced by AbstractCentreBasedCellPopulation< DIM >::GenerateCellResults(), CellwiseDataGradient< DIM >::SetupGradients(), MeshBasedCellPopulation< DIM >::WriteCellPopulationVolumeResultsToFile(), MeshBasedCellPopulation< DIM >::WriteCellVolumeResultsToFile(), and MeshBasedCellPopulation< DIM >::WriteVtkResultsToFile().
double AbstractCentreBasedCellPopulation< DIM >::GetMeinekeDivisionSeparation | ( | ) | [inline] |
Definition at line 229 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCentreBasedCellPopulation< DIM >::mMeinekeDivisionSeparation.
Referenced by CryptSimulation2d::CalculateCellDivisionVector(), and CryptSimulation1d::CalculateCellDivisionVector().
void AbstractCentreBasedCellPopulation< DIM >::SetMeinekeDivisionSeparation | ( | double | divisionSeparation | ) | [inline] |
Set mMeinekeDivisionSeparation.
divisionSeparation | the new value of mMeinekeDivisionSeparation |
Definition at line 235 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCentreBasedCellPopulation< DIM >::mMeinekeDivisionSeparation.
void AbstractCentreBasedCellPopulation< DIM >::OutputCellPopulationParameters | ( | out_stream & | rParamsFile | ) | [inline, virtual] |
Outputs CellPopulation parameters to file
rParamsFile | the file stream to which the parameters are output |
Implements AbstractCellPopulation< DIM >.
Reimplemented in MeshBasedCellPopulation< DIM >, MeshBasedCellPopulationWithGhostNodes< DIM >, NodeBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, and MeshBasedCellPopulationWithGhostNodes< 2 >.
Definition at line 243 of file AbstractCentreBasedCellPopulation.cpp.
References AbstractCentreBasedCellPopulation< DIM >::mMeinekeDivisionSeparation, and AbstractCellPopulation< DIM >::OutputCellPopulationParameters().
Referenced by NodeBasedCellPopulation< DIM >::OutputCellPopulationParameters(), and MeshBasedCellPopulation< DIM >::OutputCellPopulationParameters().
friend class boost::serialization::access [friend] |
Needed for serialization.
Reimplemented from AbstractCellPopulation< DIM >.
Reimplemented in MeshBasedCellPopulation< DIM >, MeshBasedCellPopulationWithGhostNodes< DIM >, NodeBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, and MeshBasedCellPopulationWithGhostNodes< 2 >.
Definition at line 45 of file AbstractCentreBasedCellPopulation.hpp.
double AbstractCentreBasedCellPopulation< DIM >::mMeinekeDivisionSeparation [protected] |
Initial separation placement of mother/daughter cells at birth. Has units of cell size at equilibrium rest length
Definition at line 67 of file AbstractCentreBasedCellPopulation.hpp.
Referenced by AbstractCentreBasedCellPopulation< DIM >::GetMeinekeDivisionSeparation(), AbstractCentreBasedCellPopulation< DIM >::OutputCellPopulationParameters(), AbstractCentreBasedCellPopulation< DIM >::serialize(), and AbstractCentreBasedCellPopulation< DIM >::SetMeinekeDivisionSeparation().