Chaste  Release::2017.1
DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM > Class Template Reference

#include <DifferentialAdhesionGeneralisedLinearSpringForce.hpp>

+ Inheritance diagram for DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >:
+ Collaboration diagram for DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >:

Public Member Functions

 DifferentialAdhesionGeneralisedLinearSpringForce ()
 
double VariableSpringConstantMultiplicationFactor (unsigned nodeAGlobalIndex, unsigned nodeBGlobalIndex, AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation, bool isCloserThanRestLength)
 
double GetHomotypicLabelledSpringConstantMultiplier ()
 
void SetHomotypicLabelledSpringConstantMultiplier (double labelledSpringConstantMultiplier)
 
double GetHeterotypicSpringConstantMultiplier ()
 
void SetHeterotypicSpringConstantMultiplier (double heterotypicSpringConstantMultiplier)
 
void OutputForceParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from GeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >
 GeneralisedLinearSpringForce ()
 
virtual ~GeneralisedLinearSpringForce ()
 
c_vector< double, SPACE_DIM > CalculateForceBetweenNodes (unsigned nodeAGlobalIndex, unsigned nodeBGlobalIndex, AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation)
 
double GetMeinekeSpringStiffness ()
 
double GetMeinekeDivisionRestingSpringLength ()
 
double GetMeinekeSpringGrowthDuration ()
 
void SetMeinekeSpringStiffness (double springStiffness)
 
void SetMeinekeDivisionRestingSpringLength (double divisionRestingSpringLength)
 
void SetMeinekeSpringGrowthDuration (double springGrowthDuration)
 
- Public Member Functions inherited from AbstractTwoBodyInteractionForce< ELEMENT_DIM, SPACE_DIM >
 AbstractTwoBodyInteractionForce ()
 
bool GetUseCutOffLength ()
 
void SetCutOffLength (double cutOffLength)
 
double GetCutOffLength ()
 
void AddForceContribution (AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation)
 
virtual void WriteDataToVisualizerSetupFile (out_stream &pVizSetupFile)
 
- Public Member Functions inherited from AbstractForce< ELEMENT_DIM, SPACE_DIM >
 AbstractForce ()
 
virtual ~AbstractForce ()
 
void OutputForceInfo (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 mHomotypicLabelledSpringConstantMultiplier
 
double mHeterotypicSpringConstantMultiplier
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Protected Attributes inherited from GeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >
double mMeinekeSpringStiffness
 
double mMeinekeDivisionRestingSpringLength
 
double mMeinekeSpringGrowthDuration
 
- Protected Attributes inherited from AbstractTwoBodyInteractionForce< ELEMENT_DIM, SPACE_DIM >
bool mUseCutOffLength
 
double mMechanicsCutOffLength
 

Detailed Description

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
class DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >

A class for a simple two-body differential adhesion force law between labelled and unlabelled cells (as defined by the CellLabel cell property).

Designed for use in node and mesh-based simulations.

Todo:

#2266 - throw exceptions if using other cell population objects?

#2266 - override CalculateForceBetweenNodes() to use a default rest length of 1.0 for all springs?

Definition at line 52 of file DifferentialAdhesionGeneralisedLinearSpringForce.hpp.

Constructor & Destructor Documentation

Member Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
template<class Archive >
void DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::serialize ( Archive &  archive,
const unsigned int  version 
)
inlineprivate
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::SetHeterotypicSpringConstantMultiplier ( double  heterotypicSpringConstantMultiplier)

Set mHeterotypicSpringConstantMultiplier.

Parameters
heterotypicSpringConstantMultiplierthe new value of mHeterotypicSpringConstantMultiplier

Definition at line 109 of file DifferentialAdhesionGeneralisedLinearSpringForce.cpp.

References DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::mHeterotypicSpringConstantMultiplier.

Referenced by DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::serialize().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::SetHomotypicLabelledSpringConstantMultiplier ( double  labelledSpringConstantMultiplier)

Set mHomotypicLabelledSpringConstantMultiplier.

Parameters
labelledSpringConstantMultiplierthe new value of mHomotypicLabelledSpringConstantMultiplier

Definition at line 96 of file DifferentialAdhesionGeneralisedLinearSpringForce.cpp.

References DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::mHomotypicLabelledSpringConstantMultiplier.

Referenced by DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::serialize().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::VariableSpringConstantMultiplicationFactor ( unsigned  nodeAGlobalIndex,
unsigned  nodeBGlobalIndex,
AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &  rCellPopulation,
bool  isCloserThanRestLength 
)
virtual

Overridden VariableSpringConstantMultiplicationFactor() method.

This method takes account of the distinct spring constants present for homotypic (labelled-labelled and unlabelled-unlabelled) and heterotypic (labelled-unlabelled) interactions between neighbouring cells.

Parameters
nodeAGlobalIndexindex of one neighbouring node
nodeBGlobalIndexindex of the other neighbouring node
rCellPopulationthe cell population
isCloserThanRestLengthwhether the neighbouring nodes lie closer than the rest length of their connecting spring
Returns
the multiplication factor.

Reimplemented from GeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >.

Definition at line 48 of file DifferentialAdhesionGeneralisedLinearSpringForce.cpp.

References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetCellUsingLocationIndex(), DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::mHeterotypicSpringConstantMultiplier, and DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::mHomotypicLabelledSpringConstantMultiplier.

Referenced by DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::serialize().

Friends And Related Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 80 of file DifferentialAdhesionGeneralisedLinearSpringForce.hpp.

Member Data Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM = ELEMENT_DIM>
double DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::mHomotypicLabelledSpringConstantMultiplier
private

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