Chaste  Release::2018.1
VolumeConstraintPottsUpdateRule< DIM > Class Template Reference

#include <VolumeConstraintPottsUpdateRule.hpp>

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

Public Member Functions

 VolumeConstraintPottsUpdateRule ()
 
 ~VolumeConstraintPottsUpdateRule ()
 
double EvaluateHamiltonianContribution (unsigned currentNodeIndex, unsigned targetNodeIndex, PottsBasedCellPopulation< DIM > &rCellPopulation)
 
double GetDeformationEnergyParameter ()
 
void SetDeformationEnergyParameter (double deformationEnergyParameter)
 
double GetMatureCellTargetVolume () const
 
void SetMatureCellTargetVolume (double matureCellTargetVolume)
 
void OutputUpdateRuleParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from AbstractPottsUpdateRule< DIM >
 AbstractPottsUpdateRule ()
 
virtual ~AbstractPottsUpdateRule ()
 
- Public Member Functions inherited from AbstractUpdateRule< DIM >
 AbstractUpdateRule ()
 
virtual ~AbstractUpdateRule ()
 
void OutputUpdateRuleInfo (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

double mDeformationEnergyParameter
 
double mMatureCellTargetVolume
 

Friends

class TestPottsUpdateRules
 
class boost::serialization::access
 

Detailed Description

template<unsigned DIM>
class VolumeConstraintPottsUpdateRule< DIM >

A volume constraint update rule class for use in Potts based simulations.

Note this currently assumes cells don't grow, i.e the target volume is constant for each cell over time.

Definition at line 52 of file VolumeConstraintPottsUpdateRule.hpp.

Constructor & Destructor Documentation

Constructor.

Todo:
Default values don't apply in 3D.

Definition at line 39 of file VolumeConstraintPottsUpdateRule.cpp.

Destructor.

Definition at line 48 of file VolumeConstraintPottsUpdateRule.cpp.

Member Function Documentation

template<unsigned DIM>
double VolumeConstraintPottsUpdateRule< DIM >::EvaluateHamiltonianContribution ( unsigned  currentNodeIndex,
unsigned  targetNodeIndex,
PottsBasedCellPopulation< DIM > &  rCellPopulation 
)
virtual

Overridden EvaluateHamiltonianContribution() method

Uses sum_elements alpha (V_i - V_i^T)^2.

Parameters
currentNodeIndexThe index of the current node/lattice site
targetNodeIndexThe index of the target node/lattice site
rCellPopulationThe cell population
Returns
The difference in the Hamiltonian with the configuration of the target node having the same spin as the current node with the current configuration. i.e H_1-H_0

Implements AbstractPottsUpdateRule< DIM >.

Definition at line 53 of file VolumeConstraintPottsUpdateRule.cpp.

References EXCEPTION, PottsBasedCellPopulation< DIM >::GetNode(), and PottsBasedCellPopulation< DIM >::rGetMesh().

template<unsigned DIM>
double VolumeConstraintPottsUpdateRule< DIM >::GetDeformationEnergyParameter ( )
Returns
mDeformationEnergyParameter

Definition at line 102 of file VolumeConstraintPottsUpdateRule.cpp.

template<unsigned DIM>
double VolumeConstraintPottsUpdateRule< DIM >::GetMatureCellTargetVolume ( ) const
Returns
mMatureCellTargetVolume

Definition at line 114 of file VolumeConstraintPottsUpdateRule.cpp.

template<unsigned DIM>
void VolumeConstraintPottsUpdateRule< DIM >::OutputUpdateRuleParameters ( out_stream &  rParamsFile)
virtual

Overridden OutputUpdateRuleParameters() method.

Parameters
rParamsFilethe file stream to which the parameters are output

Reimplemented from AbstractPottsUpdateRule< DIM >.

Definition at line 127 of file VolumeConstraintPottsUpdateRule.cpp.

References AbstractPottsUpdateRule< DIM >::OutputUpdateRuleParameters().

template<unsigned DIM>
template<class Archive >
void VolumeConstraintPottsUpdateRule< 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 81 of file VolumeConstraintPottsUpdateRule.hpp.

References VolumeConstraintPottsUpdateRule< DIM >::mDeformationEnergyParameter, and VolumeConstraintPottsUpdateRule< DIM >::mMatureCellTargetVolume.

template<unsigned DIM>
void VolumeConstraintPottsUpdateRule< DIM >::SetDeformationEnergyParameter ( double  deformationEnergyParameter)

Set mDeformationEnergyParameter.

Parameters
deformationEnergyParameterthe new value of mDeformationEnergyParameter

Definition at line 108 of file VolumeConstraintPottsUpdateRule.cpp.

template<unsigned DIM>
void VolumeConstraintPottsUpdateRule< DIM >::SetMatureCellTargetVolume ( double  matureCellTargetVolume)

Set mMatureCellTargetVolume.

Parameters
matureCellTargetVolumethe new value of mMatureCellTargetVolume

Definition at line 120 of file VolumeConstraintPottsUpdateRule.cpp.

Member Data Documentation

template<unsigned DIM>
double VolumeConstraintPottsUpdateRule< DIM >::mDeformationEnergyParameter
private

Cell deformation energy parameter. Set to the default value 0.5 in the constructor.

Todo:
provide units

Definition at line 63 of file VolumeConstraintPottsUpdateRule.hpp.

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

template<unsigned DIM>
double VolumeConstraintPottsUpdateRule< DIM >::mMatureCellTargetVolume
private

Non-dimensional target volume of a mature (fully-grown) cell, given in number of lattice sites. Set to the default value 16 in the constructor.

Definition at line 70 of file VolumeConstraintPottsUpdateRule.hpp.

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


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