Chaste  Release::2017.1
VolumeTrackingModifier< DIM > Class Template Reference

#include <VolumeTrackingModifier.hpp>

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

Public Member Functions

 VolumeTrackingModifier ()
 
virtual ~VolumeTrackingModifier ()
 
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)
 

Friends

class boost::serialization::access
 

Detailed Description

template<unsigned DIM>
class VolumeTrackingModifier< DIM >

A modifier class which at each simulation time step calculates the volume of each cell and stores it in in the CellData property as "volume". To be used in conjunction with contact inhibition cell cycle models.

Definition at line 50 of file VolumeTrackingModifier.hpp.

Constructor & Destructor Documentation

template<unsigned DIM>
VolumeTrackingModifier< DIM >::VolumeTrackingModifier ( )

Default constructor.

Definition at line 40 of file VolumeTrackingModifier.cpp.

Referenced by VolumeTrackingModifier< DIM >::serialize().

template<unsigned DIM>
VolumeTrackingModifier< DIM >::~VolumeTrackingModifier ( )
virtual

Destructor.

Definition at line 46 of file VolumeTrackingModifier.cpp.

Referenced by VolumeTrackingModifier< DIM >::serialize().

Member Function Documentation

template<unsigned DIM>
void VolumeTrackingModifier< 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 100 of file VolumeTrackingModifier.cpp.

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

Referenced by VolumeTrackingModifier< DIM >::serialize().

template<unsigned DIM>
template<class Archive >
void VolumeTrackingModifier< DIM >::serialize ( Archive &  archive,
const unsigned int  version 
)
inlineprivate
template<unsigned DIM>
void VolumeTrackingModifier< 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 57 of file VolumeTrackingModifier.cpp.

References VolumeTrackingModifier< DIM >::UpdateCellData().

Referenced by VolumeTrackingModifier< DIM >::serialize().

template<unsigned DIM>
void VolumeTrackingModifier< 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 51 of file VolumeTrackingModifier.cpp.

References VolumeTrackingModifier< DIM >::UpdateCellData().

Referenced by VolumeTrackingModifier< DIM >::serialize().

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

Helper method to compute the volume of each cell in the population 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)

Definition at line 67 of file VolumeTrackingModifier.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 >::GetVolumeOfCell(), and AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::Update().

Referenced by VolumeTrackingModifier< DIM >::serialize(), VolumeTrackingModifier< DIM >::SetupSolve(), and VolumeTrackingModifier< DIM >::UpdateAtEndOfTimeStep().

Friends And Related Function Documentation

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

Needed for serialization.

Definition at line 53 of file VolumeTrackingModifier.hpp.


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