Chaste Commit::1fd4e48e3990e67db148bc1bc4cf6991a0049d0c
DivisionBiasTrackingModifier< DIM > Class Template Reference

#include <DivisionBiasTrackingModifier.hpp>

+ Inheritance diagram for DivisionBiasTrackingModifier< DIM >:
+ Collaboration diagram for DivisionBiasTrackingModifier< DIM >:

Public Member Functions

 DivisionBiasTrackingModifier (c_vector< double, DIM > divisionBiasVector)
 
virtual ~DivisionBiasTrackingModifier ()
 
const c_vector< double, DIM > & rGetDivisionBiasVector () const
 
virtual void UpdateAtEndOfTimeStep (AbstractCellPopulation< DIM, DIM > &rCellPopulation)
 
virtual void SetupSolve (AbstractCellPopulation< DIM, DIM > &rCellPopulation, std::string outputDirectory)
 
void UpdateCellData (AbstractCellPopulation< DIM, DIM > &rCellPopulation)
 
void OutputSimulationModifierParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from AbstractCellBasedSimulationModifier< DIM, DIM >
 AbstractCellBasedSimulationModifier ()
 
virtual ~AbstractCellBasedSimulationModifier ()
 
virtual void UpdateAtEndOfTimeStep (AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation)=0
 
virtual void UpdateAtEndOfOutputTimeStep (AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation)
 
virtual void SetupSolve (AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation, std::string outputDirectory)=0
 
virtual void UpdateAtEndOfSolve (AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation)
 
void OutputSimulationModifierInfo (out_stream &rParamsFile)
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)
 

Private Attributes

c_vector< double, DIM > mDivisionBiasVector
 

Friends

class boost::serialization::access
 

Detailed Description

template<unsigned DIM>
class DivisionBiasTrackingModifier< DIM >

A modifier class which at each simulation time step calculates a real number between zero and 1 for each cell, which represents the normalised distance of the cell along a given axis of the cell population through its centroid, and stores this number in the CellData property as "bias". To be used in conjunction with the BiasedBernoulliTrialCellCycleModel class.

Definition at line 52 of file DivisionBiasTrackingModifier.hpp.

Constructor & Destructor Documentation

◆ DivisionBiasTrackingModifier()

template<unsigned DIM>
DivisionBiasTrackingModifier< DIM >::DivisionBiasTrackingModifier ( c_vector< double, DIM >  divisionBiasVector)

Constructor.

Parameters
divisionBiasVectorthe specified axis along which division probability is biased

Definition at line 40 of file DivisionBiasTrackingModifier.cpp.

References DivisionBiasTrackingModifier< DIM >::mDivisionBiasVector.

◆ ~DivisionBiasTrackingModifier()

Destructor.

Definition at line 49 of file DivisionBiasTrackingModifier.cpp.

Member Function Documentation

◆ OutputSimulationModifierParameters()

template<unsigned DIM>
void DivisionBiasTrackingModifier< DIM >::OutputSimulationModifierParameters ( out_stream &  rParamsFile)
virtual

Overridden OutputSimulationModifierParameters() method. Output any simulation modifier parameters to file.

Parameters
rParamsFilethe file stream to which the parameters are output

Implements AbstractCellBasedSimulationModifier< DIM, DIM >.

Definition at line 133 of file DivisionBiasTrackingModifier.cpp.

References AbstractCellBasedSimulationModifier< ELEMENT_DIM, SPACE_DIM >::OutputSimulationModifierParameters().

◆ rGetDivisionBiasVector()

template<unsigned DIM>
const c_vector< double, DIM > & DivisionBiasTrackingModifier< DIM >::rGetDivisionBiasVector ( ) const
Returns
mDivisionBiasVector.

Definition at line 54 of file DivisionBiasTrackingModifier.cpp.

◆ serialize()

template<unsigned DIM>
template<class Archive >
void DivisionBiasTrackingModifier< DIM >::serialize ( Archive &  archive,
const unsigned int  version 
)
inlineprivate

Boost Serialization method for archiving/checkpointing. Archives the object and its member variables.

Parameters
archiveThe boost archive.
versionThe current version of this class.

Definition at line 72 of file DivisionBiasTrackingModifier.hpp.

◆ SetupSolve()

template<unsigned DIM>
void DivisionBiasTrackingModifier< DIM >::SetupSolve ( AbstractCellPopulation< DIM, DIM > &  rCellPopulation,
std::string  outputDirectory 
)
virtual

Overridden SetupSolve() method.

Specify what to do in the simulation before the start of the time loop.

Parameters
rCellPopulationreference to the cell population
outputDirectorythe output directory, relative to where Chaste output is stored

Definition at line 66 of file DivisionBiasTrackingModifier.cpp.

◆ UpdateAtEndOfTimeStep()

template<unsigned DIM>
void DivisionBiasTrackingModifier< DIM >::UpdateAtEndOfTimeStep ( AbstractCellPopulation< DIM, DIM > &  rCellPopulation)
virtual

Overridden UpdateAtEndOfTimeStep() method.

Specify what to do in the simulation at the end of each time step.

Parameters
rCellPopulationreference to the cell population

Definition at line 60 of file DivisionBiasTrackingModifier.cpp.

◆ UpdateCellData()

template<unsigned DIM>
void DivisionBiasTrackingModifier< DIM >::UpdateCellData ( AbstractCellPopulation< DIM, DIM > &  rCellPopulation)

Helper method to calculate the normalised distance of each cell in the population along the division bias axis and store these in the CellData.

Parameters
rCellPopulationreference to the cell population

This hack is needed because in the case of a MeshBasedCellPopulation in which multiple cell divisions have occurred over one time step, the Voronoi tessellation (while existing) is out-of-date. Thus, if we did not regenerate the Voronoi tessellation here, an assertion may trip as we try to access a Voronoi element whose index exceeds the number of elements in the out-of-date tessellation.

Todo:
work out how to properly fix this (#1986)

Iterate over cell population and store each cell's signed distance along mDivisionBiasVector through the centroid of the cell population, where zero corresponds to a cell located at the centroid of the cell population.

Definition at line 76 of file DivisionBiasTrackingModifier.cpp.

References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::Begin(), MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::CreateVoronoiTessellation(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::End(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetCentroidOfCellPopulation(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetLocationOfCellCentre(), and AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::Update().

Friends And Related Symbol Documentation

◆ boost::serialization::access

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

Needed for serialization.

Definition at line 63 of file DivisionBiasTrackingModifier.hpp.

Member Data Documentation

◆ mDivisionBiasVector

template<unsigned DIM>
c_vector<double, DIM> DivisionBiasTrackingModifier< DIM >::mDivisionBiasVector
private

The specified axis along which division probability is biased. Initialized in the constructor.

Definition at line 60 of file DivisionBiasTrackingModifier.hpp.

Referenced by DivisionBiasTrackingModifier< DIM >::DivisionBiasTrackingModifier().


The documentation for this class was generated from the following files: