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

#include <SurfaceAreaConstraintPottsUpdateRule.hpp>

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

Public Member Functions

 SurfaceAreaConstraintPottsUpdateRule ()
 
 ~SurfaceAreaConstraintPottsUpdateRule ()
 
double EvaluateHamiltonianContribution (unsigned currentNodeIndex, unsigned targetNodeIndex, PottsBasedCellPopulation< DIM > &rCellPopulation)
 
double GetDeformationEnergyParameter ()
 
void SetDeformationEnergyParameter (double deformationEnergyParameter)
 
double GetMatureCellTargetSurfaceArea () const
 
void SetMatureCellTargetSurfaceArea (double matureCellTargetSurfaceArea)
 
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 mMatureCellTargetSurfaceArea
 

Friends

class TestPottsUpdateRules
 
class boost::serialization::access
 

Detailed Description

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

Constructor & Destructor Documentation

Constructor.

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

Definition at line 39 of file SurfaceAreaConstraintPottsUpdateRule.cpp.

Destructor.

Definition at line 48 of file SurfaceAreaConstraintPottsUpdateRule.cpp.

Member Function Documentation

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

Overridden EvaluateHamiltonianContribution() method

Uses sum_elements gamma (A_i - A_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 SurfaceAreaConstraintPottsUpdateRule.cpp.

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

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

Definition at line 176 of file SurfaceAreaConstraintPottsUpdateRule.cpp.

template<unsigned DIM>
double SurfaceAreaConstraintPottsUpdateRule< DIM >::GetMatureCellTargetSurfaceArea ( ) const
Returns
mMatureCellTargetSurfaceArea

Definition at line 188 of file SurfaceAreaConstraintPottsUpdateRule.cpp.

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

References AbstractPottsUpdateRule< DIM >::OutputUpdateRuleParameters().

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

References SurfaceAreaConstraintPottsUpdateRule< DIM >::mDeformationEnergyParameter, and SurfaceAreaConstraintPottsUpdateRule< DIM >::mMatureCellTargetSurfaceArea.

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

Set mDeformationEnergyParameter.

Parameters
deformationEnergyParameterthe new value of mDeformationEnergyParameter

Definition at line 182 of file SurfaceAreaConstraintPottsUpdateRule.cpp.

template<unsigned DIM>
void SurfaceAreaConstraintPottsUpdateRule< DIM >::SetMatureCellTargetSurfaceArea ( double  matureCellTargetSurfaceArea)

Set mMatureCellTargetSurfaceArea.

Parameters
matureCellTargetSurfaceAreathe new value of mMatureCellTargetSurfaceArea

Definition at line 194 of file SurfaceAreaConstraintPottsUpdateRule.cpp.

Member Data Documentation

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

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

template<unsigned DIM>
double SurfaceAreaConstraintPottsUpdateRule< DIM >::mMatureCellTargetSurfaceArea
private
Todo:
provide units #1829 Non-dimensional target surface area of a mature (fully-grown) cell, given in units of area of lattice site. Set to the default value 16 in the constructor.

Definition at line 71 of file SurfaceAreaConstraintPottsUpdateRule.hpp.

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


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