AbstractCentreBasedCellPopulation< DIM > Class Template Reference

#include <AbstractCentreBasedCellPopulation.hpp>

Inherits AbstractOffLatticeCellPopulation< DIM >.

Inherited by MeshBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, MeshBasedCellPopulation< 2 >, and NodeBasedCellPopulation< DIM >.

Collaboration diagram for AbstractCentreBasedCellPopulation< DIM >:
Collaboration graph
[legend]

List of all members.

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

Detailed Description

template<unsigned DIM>
class AbstractCentreBasedCellPopulation< DIM >

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

Definition at line 42 of file AbstractCentreBasedCellPopulation.hpp.


Constructor & Destructor Documentation

template<unsigned DIM>
AbstractCentreBasedCellPopulation< DIM >::AbstractCentreBasedCellPopulation (  )  [inline, protected]

Constructor for use by archiving only.

Definition at line 40 of file AbstractCentreBasedCellPopulation.cpp.

template<unsigned DIM>
AbstractCentreBasedCellPopulation< DIM >::AbstractCentreBasedCellPopulation ( std::vector< CellPtr > &  rCells,
const std::vector< unsigned locationIndices = std::vector<unsigned>() 
) [inline]

Default constructor.

Parameters:
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.


Member Function Documentation

template<unsigned DIM>
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.

Parameters:
pNewCell the cell to add
rCellDivisionVector the position in space at which to put it
pParentCell pointer to a parent cell (if required)
Returns:
address of cell as it appears in the cell list

Implements AbstractCellPopulation< DIM >.

Reimplemented in MeshBasedCellPopulation< DIM >, MeshBasedCellPopulationWithGhostNodes< DIM >, NodeBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, and MeshBasedCellPopulation< 2 >.

Definition at line 61 of file AbstractCentreBasedCellPopulation.cpp.

References AbstractOffLatticeCellPopulation< DIM >::AddNode(), AbstractCellPopulation< DIM >::GetNumNodes(), AbstractCellPopulation< DIM >::mCellLocationMap, AbstractCellPopulation< DIM >::mCells, and AbstractCellPopulation< DIM >::mLocationCellMap.

template<unsigned DIM>
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.

Parameters:
locationIndex location index of the cell
rCellProliferativeTypeCounter cell type counter
rCellCyclePhaseCounter cell cycle phase counter

Reimplemented from AbstractCellPopulation< DIM >.

Definition at line 129 of file AbstractCentreBasedCellPopulation.cpp.

References AbstractCentreBasedCellPopulation< DIM >::IsGhostNode(), and AbstractCellPopulation< DIM >::mpVizCellProliferativeTypesFile.

Referenced by AbstractCentreBasedCellPopulation< DIM >::GenerateCellResultsAndWriteToFiles().

template<unsigned DIM>
void AbstractCentreBasedCellPopulation< DIM >::GenerateCellResultsAndWriteToFiles (  )  [inline, virtual]
template<unsigned DIM>
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.

Parameters:
nodeIndex the global index of this node
Returns:
the damping constant at the Cell associated with this node

Implements AbstractOffLatticeCellPopulation< DIM >.

Reimplemented in MeshBasedCellPopulation< DIM >, MeshBasedCellPopulation< 1 >, and MeshBasedCellPopulation< 2 >.

Definition at line 109 of file AbstractCentreBasedCellPopulation.cpp.

References AbstractCellPopulation< DIM >::GetCellUsingLocationIndex(), AbstractOffLatticeCellPopulation< DIM >::GetDampingConstantMutant(), and AbstractOffLatticeCellPopulation< DIM >::GetDampingConstantNormal().

Referenced by NodeBasedCellPopulationWithBuskeUpdate< DIM >::UpdateNodeLocations(), and AbstractCentreBasedCellPopulation< DIM >::UpdateNodeLocations().

template<unsigned DIM>
c_vector< double, DIM > AbstractCentreBasedCellPopulation< DIM >::GetLocationOfCellCentre ( CellPtr  pCell  )  [inline, virtual]

Overridden GetLocationOfCellCentre() method. Find where a given cell is in space.

Parameters:
pCell the cell
Returns:
the location of the node corresponding to this cell.

Implements AbstractCellPopulation< DIM >.

Definition at line 47 of file AbstractCentreBasedCellPopulation.cpp.

References AbstractCentreBasedCellPopulation< DIM >::GetNodeCorrespondingToCell().

Referenced by CryptSimulation1d::CalculateCellDivisionVector(), CryptStatistics::GetCryptSection(), and CryptProjectionStatistics::GetCryptSection().

template<unsigned DIM>
double AbstractCentreBasedCellPopulation< DIM >::GetMeinekeDivisionSeparation (  )  [inline]
template<unsigned DIM>
Node< DIM > * AbstractCentreBasedCellPopulation< DIM >::GetNodeCorrespondingToCell ( CellPtr  pCell  )  [inline]
template<unsigned DIM>
bool AbstractCentreBasedCellPopulation< DIM >::IsCellAssociatedWithADeletedLocation ( CellPtr  pCell  )  [inline, virtual]

Overridden IsCellAssociatedWithADeletedLocation() method.

Parameters:
pCell the cell
Returns:
whether a given cell is associated with a deleted node.

Implements AbstractCellPopulation< DIM >.

Definition at line 78 of file AbstractCentreBasedCellPopulation.cpp.

References AbstractCentreBasedCellPopulation< DIM >::GetNodeCorrespondingToCell().

template<unsigned DIM>
bool AbstractCentreBasedCellPopulation< DIM >::IsGhostNode ( unsigned  index  )  [inline, virtual]
template<unsigned DIM>
void AbstractCentreBasedCellPopulation< DIM >::OutputCellPopulationParameters ( out_stream &  rParamsFile  )  [inline, virtual]
template<unsigned DIM>
template<class Archive >
void AbstractCentreBasedCellPopulation< DIM >::serialize ( Archive &  archive,
const unsigned int  version 
) [inline, private]
template<unsigned DIM>
void AbstractCentreBasedCellPopulation< DIM >::SetMeinekeDivisionSeparation ( double  divisionSeparation  )  [inline]

Set mMeinekeDivisionSeparation.

Parameters:
divisionSeparation the new value of mMeinekeDivisionSeparation

Definition at line 225 of file AbstractCentreBasedCellPopulation.cpp.

References AbstractCentreBasedCellPopulation< DIM >::mMeinekeDivisionSeparation.

template<unsigned DIM>
void AbstractCentreBasedCellPopulation< DIM >::UpdateNodeLocations ( const std::vector< c_vector< double, DIM > > &  rNodeForces,
double  dt 
) [inline, virtual]
template<unsigned DIM>
void AbstractCentreBasedCellPopulation< DIM >::WriteTimeAndNodeResultsToFiles (  )  [inline, virtual]
template<unsigned DIM>
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 >, and MeshBasedCellPopulation< 2 >.


Friends And Related Function Documentation

template<unsigned DIM>
friend class boost::serialization::access [friend]

Member Data Documentation

template<unsigned DIM>
double AbstractCentreBasedCellPopulation< DIM >::mMeinekeDivisionSeparation [protected]

The documentation for this class was generated from the following files:
Generated on Thu Dec 22 13:00:49 2011 for Chaste by  doxygen 1.6.3