AdhesionPottsUpdateRule< DIM > Class Template Reference

#include <AdhesionPottsUpdateRule.hpp>

Inherits AbstractPottsUpdateRule< DIM >.

Inherited by DifferentialAdhesionPottsUpdateRule< DIM >.

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

List of all members.

Public Member Functions

 AdhesionPottsUpdateRule ()
 ~AdhesionPottsUpdateRule ()
double EvaluateHamiltonianContribution (unsigned currentNodeIndex, unsigned targetNodeIndex, PottsBasedCellPopulation< DIM > &rCellPopulation)
virtual double GetCellCellAdhesionEnergy (CellPtr pCellA, CellPtr pCellB)
virtual double GetCellBoundaryAdhesionEnergy (CellPtr pCell)
double GetCellCellAdhesionEnergyParameter ()
double GetCellBoundaryAdhesionEnergyParameter ()
void SetCellCellAdhesionEnergyParameter (double cellCellAdhesionEnergyEnergyParameter)
void SetCellBoundaryAdhesionEnergyParameter (double cellBoundaryAdhesionEnergyParameter)
void OutputUpdateRuleParameters (out_stream &rParamsFile)

Private Member Functions

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

Private Attributes

double mCellCellAdhesionEnergyParameter
double mCellBoundaryAdhesionEnergyParameter

Friends

class TestPottsUpdateRules
class boost::serialization::access

Detailed Description

template<unsigned DIM>
class AdhesionPottsUpdateRule< DIM >

An adhesion update rule for use in cell-based simulations using the cellular Potts model.

Definition at line 46 of file AdhesionPottsUpdateRule.hpp.


Constructor & Destructor Documentation

template<unsigned DIM>
AdhesionPottsUpdateRule< DIM >::AdhesionPottsUpdateRule (  )  [inline]

Constructor.

Definition at line 32 of file AdhesionPottsUpdateRule.cpp.

template<unsigned DIM>
AdhesionPottsUpdateRule< DIM >::~AdhesionPottsUpdateRule (  )  [inline]

Destructor.

Definition at line 40 of file AdhesionPottsUpdateRule.cpp.


Member Function Documentation

template<unsigned DIM>
double AdhesionPottsUpdateRule< DIM >::EvaluateHamiltonianContribution ( unsigned  currentNodeIndex,
unsigned  targetNodeIndex,
PottsBasedCellPopulation< DIM > &  rCellPopulation 
) [inline, virtual]

Overridden EvaluateHamiltonianContribution() method

Uses sum_adjacentsites (1-delta(spin(i),spin(j))) gamma(spin(i),spin(j))

Parameters:
currentNodeIndex The index of the current node/lattice site
targetNodeIndex The index of the target node/lattice site
rCellPopulation The 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

Before the move, we have a negative contribution (H_0) to the Hamiltonian if: the target node and neighbouring node are NOT contained in the same Potts element; the neighbouring node is contained in a Potts element, but the target node is not; or the target node is contained in a Potts element, but the neighbouring node is not.

After the move, we have a positive contribution (H_1) to the Hamiltonian if: the current node and neighbouring node are contained in different Potts elements; the neighbouring node is contained in a Potts element, but the current node is not; or the current node is contained in a Potts element, but the neighbouring node is not.

Implements AbstractPottsUpdateRule< DIM >.

Definition at line 45 of file AdhesionPottsUpdateRule.cpp.

References EXCEPTION, AdhesionPottsUpdateRule< DIM >::GetCellBoundaryAdhesionEnergy(), AdhesionPottsUpdateRule< DIM >::GetCellCellAdhesionEnergy(), AbstractCellPopulation< DIM >::GetCellUsingLocationIndex(), PottsBasedCellPopulation< DIM >::GetNode(), and PottsBasedCellPopulation< DIM >::rGetMesh().

template<unsigned DIM>
double AdhesionPottsUpdateRule< DIM >::GetCellBoundaryAdhesionEnergy ( CellPtr  pCell  )  [inline, virtual]

Method to calculate the specific interaction between cell and medium can be overridden in child classes to implement differential adhesion .etc.

Parameters:
pCell pointer to the cell
Returns:
Cell boundary interaction adhesion energy for the cell

Reimplemented in DifferentialAdhesionPottsUpdateRule< DIM >.

Definition at line 155 of file AdhesionPottsUpdateRule.cpp.

References AdhesionPottsUpdateRule< DIM >::GetCellBoundaryAdhesionEnergyParameter().

Referenced by AdhesionPottsUpdateRule< DIM >::EvaluateHamiltonianContribution().

template<unsigned DIM>
double AdhesionPottsUpdateRule< DIM >::GetCellBoundaryAdhesionEnergyParameter (  )  [inline]
template<unsigned DIM>
double AdhesionPottsUpdateRule< DIM >::GetCellCellAdhesionEnergy ( CellPtr  pCellA,
CellPtr  pCellB 
) [inline, virtual]

Method to calculate the specific interaction between 2 cells can be overridden in child classes to implement differential adhesion .etc.

Parameters:
pCellA pointer to the 1st cell
pCellB pointer to the 2nd cell
Returns:
The cell cell interaction adhesion energy between the two cells

Reimplemented in DifferentialAdhesionPottsUpdateRule< DIM >.

Definition at line 149 of file AdhesionPottsUpdateRule.cpp.

References AdhesionPottsUpdateRule< DIM >::GetCellCellAdhesionEnergyParameter().

Referenced by AdhesionPottsUpdateRule< DIM >::EvaluateHamiltonianContribution().

template<unsigned DIM>
double AdhesionPottsUpdateRule< DIM >::GetCellCellAdhesionEnergyParameter (  )  [inline]
template<unsigned DIM>
void AdhesionPottsUpdateRule< DIM >::OutputUpdateRuleParameters ( out_stream &  rParamsFile  )  [inline, virtual]

Overridden OutputUpdateRuleParameters() method.

Parameters:
rParamsFile the file stream to which the parameters are output

Implements AbstractPottsUpdateRule< DIM >.

Reimplemented in DifferentialAdhesionPottsUpdateRule< DIM >.

Definition at line 185 of file AdhesionPottsUpdateRule.cpp.

References AdhesionPottsUpdateRule< DIM >::mCellBoundaryAdhesionEnergyParameter, and AdhesionPottsUpdateRule< DIM >::mCellCellAdhesionEnergyParameter.

template<unsigned DIM>
template<class Archive >
void AdhesionPottsUpdateRule< DIM >::serialize ( Archive &  archive,
const unsigned int  version 
) [inline, private]

Serialize the object.

Parameters:
archive the archive
version the current version of this class

Reimplemented from AbstractPottsUpdateRule< DIM >.

Reimplemented in DifferentialAdhesionPottsUpdateRule< DIM >.

Definition at line 68 of file AdhesionPottsUpdateRule.hpp.

References AdhesionPottsUpdateRule< DIM >::mCellBoundaryAdhesionEnergyParameter, and AdhesionPottsUpdateRule< DIM >::mCellCellAdhesionEnergyParameter.

template<unsigned DIM>
void AdhesionPottsUpdateRule< DIM >::SetCellBoundaryAdhesionEnergyParameter ( double  cellBoundaryAdhesionEnergyParameter  )  [inline]

Set mCellBoundaryAdhesionEnergyParameter.

Parameters:
cellBoundaryAdhesionEnergyParameter the new value of mCellBoundaryAdhesionEnergyParameter

Definition at line 179 of file AdhesionPottsUpdateRule.cpp.

References AdhesionPottsUpdateRule< DIM >::mCellBoundaryAdhesionEnergyParameter.

template<unsigned DIM>
void AdhesionPottsUpdateRule< DIM >::SetCellCellAdhesionEnergyParameter ( double  cellCellAdhesionEnergyEnergyParameter  )  [inline]

Set mCellCellAdhesionEnergyParameter.

Parameters:
cellCellAdhesionEnergyEnergyParameter the new value of mCellCellAdhesionEnergyParameter

Definition at line 173 of file AdhesionPottsUpdateRule.cpp.

References AdhesionPottsUpdateRule< DIM >::mCellCellAdhesionEnergyParameter.


Friends And Related Function Documentation

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

Needed for serialization.

Reimplemented from AbstractPottsUpdateRule< DIM >.

Reimplemented in DifferentialAdhesionPottsUpdateRule< DIM >.

Definition at line 66 of file AdhesionPottsUpdateRule.hpp.


Member Data Documentation

template<unsigned DIM>
double AdhesionPottsUpdateRule< DIM >::mCellBoundaryAdhesionEnergyParameter [private]
template<unsigned DIM>
double AdhesionPottsUpdateRule< DIM >::mCellCellAdhesionEnergyParameter [private]

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