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

#include <LinearSpringWithVariableSpringConstantsForce.hpp>

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

Public Member Functions

 LinearSpringWithVariableSpringConstantsForce ()
 
virtual ~LinearSpringWithVariableSpringConstantsForce ()
 
void SetEdgeBasedSpringConstant (bool useEdgeBasedSpringConstant)
 
void SetMutantSprings (bool useMutantSprings, double mutantMutantMultiplier=2, double normalMutantMultiplier=1.5)
 
void SetBetaCateninSprings (bool useBCatSprings)
 
void SetApoptoticSprings (bool useApoptoticSprings)
 
double VariableSpringConstantMultiplicationFactor (unsigned nodeAGlobalIndex, unsigned nodeBGlobalIndex, AbstractCellPopulation< DIM > &rCellPopulation, bool isCloserThanRestLength)
 
void AddForceContribution (AbstractCellPopulation< DIM > &rCellPopulation)
 
double GetBetaCatSpringScaler ()
 
void SetBetaCatSpringScaler (double betaCatSpringScaler)
 
double GetApoptoticSpringTensionStiffness ()
 
void SetApoptoticSpringTensionStiffness (double apoptoticSpringTensionStiffness)
 
double GetApoptoticSpringCompressionStiffness ()
 
void SetApoptoticSpringCompressionStiffness (double apoptoticSpringCompressionStiffness)
 
virtual void OutputForceParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from GeneralisedLinearSpringForce< DIM >
 GeneralisedLinearSpringForce ()
 
virtual ~GeneralisedLinearSpringForce ()
 
virtual double VariableSpringConstantMultiplicationFactor (unsigned nodeAGlobalIndex, unsigned nodeBGlobalIndex, AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM > &rCellPopulation, bool isCloserThanRestLength)
 
c_vector< double, ELEMENT_DIM > CalculateForceBetweenNodes (unsigned nodeAGlobalIndex, unsigned nodeBGlobalIndex, AbstractCellPopulation< ELEMENT_DIM, ELEMENT_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, ELEMENT_DIM >
 AbstractTwoBodyInteractionForce ()
 
bool GetUseCutOffLength ()
 
void SetCutOffLength (double cutOffLength)
 
double GetCutOffLength ()
 
virtual c_vector< double,
SPACE_DIM > 
CalculateForceBetweenNodes (unsigned nodeAGlobalIndex, unsigned nodeBGlobalIndex, AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation)=0
 
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
 

Protected Attributes

bool mUseEdgeBasedSpringConstant
 
bool mUseMutantSprings
 
double mMutantMutantMultiplier
 
double mNormalMutantMultiplier
 
bool mUseBCatSprings
 
bool mUseApoptoticSprings
 
double mBetaCatSpringScaler
 
double mApoptoticSpringTensionStiffness
 
double mApoptoticSpringCompressionStiffness
 
- Protected Attributes inherited from GeneralisedLinearSpringForce< DIM >
double mMeinekeSpringStiffness
 
double mMeinekeDivisionRestingSpringLength
 
double mMeinekeSpringGrowthDuration
 
- Protected Attributes inherited from AbstractTwoBodyInteractionForce< ELEMENT_DIM, ELEMENT_DIM >
bool mUseCutOffLength
 
double mMechanicsCutOffLength
 

Private Member Functions

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

Friends

class TestLinearSpringWithVariableSpringConstantsForce
 
class boost::serialization::access
 

Detailed Description

template<unsigned DIM>
class LinearSpringWithVariableSpringConstantsForce< DIM >

A subclass of GeneralisedLinearSpringForce with variable spring constants.

Definition at line 48 of file LinearSpringWithVariableSpringConstantsForce.hpp.

Constructor & Destructor Documentation

Member Function Documentation

template<unsigned DIM>
void LinearSpringWithVariableSpringConstantsForce< DIM >::AddForceContribution ( AbstractCellPopulation< DIM > &  rCellPopulation)

Overridden AddForceContribution method.

Parameters
rCellPopulationreference to the cell population

Definition at line 223 of file LinearSpringWithVariableSpringConstantsForce.cpp.

References EXCEPTION, MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::SpringsBegin(), and MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::SpringsEnd().

template<unsigned DIM>
double LinearSpringWithVariableSpringConstantsForce< DIM >::GetApoptoticSpringCompressionStiffness ( )
Returns
mApoptoticSpringCompressionStiffness

Definition at line 275 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
double LinearSpringWithVariableSpringConstantsForce< DIM >::GetApoptoticSpringTensionStiffness ( )
Returns
mApoptoticSpringTensionStiffness

Definition at line 262 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
double LinearSpringWithVariableSpringConstantsForce< DIM >::GetBetaCatSpringScaler ( )
Returns
mBetaCatSpringScaler

Definition at line 249 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
void LinearSpringWithVariableSpringConstantsForce< DIM >::OutputForceParameters ( out_stream &  rParamsFile)
virtual

Overridden OutputForceParameters() method.

Parameters
rParamsFilethe file stream to which the parameters are output

Reimplemented from GeneralisedLinearSpringForce< DIM >.

Definition at line 288 of file LinearSpringWithVariableSpringConstantsForce.cpp.

References GeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::OutputForceParameters().

template<unsigned DIM>
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetApoptoticSpringCompressionStiffness ( double  apoptoticSpringCompressionStiffness)

Set mApoptoticSpringCompressionStiffness.

Parameters
apoptoticSpringCompressionStiffnessthe new value of mApoptoticSpringCompressionStiffness

Definition at line 281 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetApoptoticSprings ( bool  useApoptoticSprings)

Set spring stiffness to be dependent on whether cells are apoptotic

Parameters
useApoptoticSpringswhether to have apoptosis-dependent spring stiffness

Definition at line 86 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetApoptoticSpringTensionStiffness ( double  apoptoticSpringTensionStiffness)

Set mApoptoticSpringTensionStiffness.

Parameters
apoptoticSpringTensionStiffnessthe new value of mApoptoticSpringTensionStiffness

Definition at line 268 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetBetaCateninSprings ( bool  useBCatSprings)

Use the amount of beta-catenin on an edge to find spring constant.

Parameters
useBCatSpringswhether to use beta-catenin-dependent spring stiffness

Definition at line 80 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetBetaCatSpringScaler ( double  betaCatSpringScaler)

Set mBetaCatSpringScaler.

Parameters
betaCatSpringScalerthe new value of mBetaCatSpringScaler

Definition at line 255 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetEdgeBasedSpringConstant ( bool  useEdgeBasedSpringConstant)

Set whether to use an edge-based spring constant.

Parameters
useEdgeBasedSpringConstantwhether to use an edge-based spring constant

Definition at line 65 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetMutantSprings ( bool  useMutantSprings,
double  mutantMutantMultiplier = 2,
double  normalMutantMultiplier = 1.5 
)

Use different spring strengths depending on two cells: Normal-normal, Normal-mutant, mutant-mutant

Parameters
useMutantSpringswhether to use mutant springs
mutantMutantMultiplierthe multiplier for springs connecting two mutant cells
normalMutantMultiplierthe multiplier for springs connecting a mutant cell with a normal cell

Definition at line 72 of file LinearSpringWithVariableSpringConstantsForce.cpp.

template<unsigned DIM>
double LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor ( unsigned  nodeAGlobalIndex,
unsigned  nodeBGlobalIndex,
AbstractCellPopulation< DIM > &  rCellPopulation,
bool  isCloserThanRestLength 
)

Return a multiplication factor for the spring constant, which may depend on whether the given pair of neighbouring cells are e.g. undergoing apoptosis, have mutations, or experience variable levels of beta catenin.

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.

Definition at line 92 of file LinearSpringWithVariableSpringConstantsForce.cpp.

References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetCellUsingLocationIndex(), AbstractVanLeeuwen2009WntSwatCellCycleModel::GetMembraneBoundBetaCateninLevel(), MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetSurfaceAreaOfVoronoiElement(), MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetVoronoiEdgeLength(), AbstractCellProperty::IsType(), and GeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >::VariableSpringConstantMultiplicationFactor().

Friends And Related Function Documentation

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

Needed for serialization.

Definition at line 55 of file LinearSpringWithVariableSpringConstantsForce.hpp.

Member Data Documentation

template<unsigned DIM>
double LinearSpringWithVariableSpringConstantsForce< DIM >::mApoptoticSpringCompressionStiffness
protected

Non-dimensionalized 'stiffness' of a apoptotic cell under compression.

Definition at line 104 of file LinearSpringWithVariableSpringConstantsForce.hpp.

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

template<unsigned DIM>
double LinearSpringWithVariableSpringConstantsForce< DIM >::mApoptoticSpringTensionStiffness
protected

Non-dimensionalized 'stiffness' of a apoptotic cell under tension.

Definition at line 101 of file LinearSpringWithVariableSpringConstantsForce.hpp.

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

template<unsigned DIM>
double LinearSpringWithVariableSpringConstantsForce< DIM >::mBetaCatSpringScaler
protected

Scaling factor for beta catenin to spring strength.

Definition at line 98 of file LinearSpringWithVariableSpringConstantsForce.hpp.

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

template<unsigned DIM>
double LinearSpringWithVariableSpringConstantsForce< DIM >::mMutantMutantMultiplier
protected

Multiplier for spring stiffness if mutant.

Definition at line 86 of file LinearSpringWithVariableSpringConstantsForce.hpp.

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

template<unsigned DIM>
double LinearSpringWithVariableSpringConstantsForce< DIM >::mNormalMutantMultiplier
protected

Multiplier for spring stiffness if mutant.

Definition at line 89 of file LinearSpringWithVariableSpringConstantsForce.hpp.

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

template<unsigned DIM>
bool LinearSpringWithVariableSpringConstantsForce< DIM >::mUseApoptoticSprings
protected

Use springs which are dependent on whether cells are apoptotic.

Definition at line 95 of file LinearSpringWithVariableSpringConstantsForce.hpp.

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

template<unsigned DIM>
bool LinearSpringWithVariableSpringConstantsForce< DIM >::mUseBCatSprings
protected

Use springs which are dependent on beta-catenin levels.

Definition at line 92 of file LinearSpringWithVariableSpringConstantsForce.hpp.

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

template<unsigned DIM>
bool LinearSpringWithVariableSpringConstantsForce< DIM >::mUseEdgeBasedSpringConstant
protected

Whether to use spring constant proportional to cell-cell contact length/area (defaults to false).

Definition at line 80 of file LinearSpringWithVariableSpringConstantsForce.hpp.

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

template<unsigned DIM>
bool LinearSpringWithVariableSpringConstantsForce< DIM >::mUseMutantSprings
protected

Whether to use different stiffnesses depending on whether either cell is a mutant.

Definition at line 83 of file LinearSpringWithVariableSpringConstantsForce.hpp.

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


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