#include <LinearSpringWithVariableSpringConstantsForce.hpp>
Public Member Functions | |
LinearSpringWithVariableSpringConstantsForce () | |
~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, AbstractTissue< DIM > &rTissue, bool isCloserThanRestLength) |
void | AddForceContribution (std::vector< c_vector< double, DIM > > &rForces, AbstractTissue< DIM > &rTissue) |
Protected Attributes | |
bool | mUseEdgeBasedSpringConstant |
bool | mUseMutantSprings |
double | mMutantMutantMultiplier |
double | mNormalMutantMultiplier |
bool | mUseBCatSprings |
bool | mUseApoptoticSprings |
Private Member Functions | |
template<class Archive> | |
void | serialize (Archive &archive, const unsigned int version) |
Friends | |
class | TestForces |
class | boost::serialization::access |
Definition at line 40 of file LinearSpringWithVariableSpringConstantsForce.hpp.
LinearSpringWithVariableSpringConstantsForce< DIM >::LinearSpringWithVariableSpringConstantsForce | ( | ) | [inline] |
Constructor.
Definition at line 35 of file LinearSpringWithVariableSpringConstantsForce.cpp.
LinearSpringWithVariableSpringConstantsForce< DIM >::~LinearSpringWithVariableSpringConstantsForce | ( | ) | [inline] |
Destructor.
Definition at line 47 of file LinearSpringWithVariableSpringConstantsForce.cpp.
void LinearSpringWithVariableSpringConstantsForce< DIM >::serialize | ( | Archive & | archive, | |
const unsigned int | version | |||
) | [inline, private] |
Archive the object and its member variables.
archive | the archive | |
version | the current version of this class |
Reimplemented from GeneralisedLinearSpringForce< DIM >.
Definition at line 55 of file LinearSpringWithVariableSpringConstantsForce.hpp.
References LinearSpringWithVariableSpringConstantsForce< DIM >::mMutantMutantMultiplier, LinearSpringWithVariableSpringConstantsForce< DIM >::mNormalMutantMultiplier, LinearSpringWithVariableSpringConstantsForce< DIM >::mUseApoptoticSprings, LinearSpringWithVariableSpringConstantsForce< DIM >::mUseBCatSprings, LinearSpringWithVariableSpringConstantsForce< DIM >::mUseEdgeBasedSpringConstant, and LinearSpringWithVariableSpringConstantsForce< DIM >::mUseMutantSprings.
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetEdgeBasedSpringConstant | ( | bool | useEdgeBasedSpringConstant | ) | [inline] |
Set whether to use an edge-based spring constant.
useEdgeBasedSpringConstant | whether to use an edge-based spring constant |
Definition at line 52 of file LinearSpringWithVariableSpringConstantsForce.cpp.
References LinearSpringWithVariableSpringConstantsForce< DIM >::mUseEdgeBasedSpringConstant.
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetMutantSprings | ( | bool | useMutantSprings, | |
double | mutantMutantMultiplier = 2 , |
|||
double | normalMutantMultiplier = 1.5 | |||
) | [inline] |
Use different spring strengths depending on two cells: Normal-normal, Normal-mutant, mutant-mutant
useMutantSprings | whether to use mutant springs | |
mutantMutantMultiplier | the multiplier for springs connecting two mutant cells | |
normalMutantMultiplier | the multiplier for springs connecting a mutant cell with a normal cell |
Definition at line 59 of file LinearSpringWithVariableSpringConstantsForce.cpp.
References LinearSpringWithVariableSpringConstantsForce< DIM >::mMutantMutantMultiplier, LinearSpringWithVariableSpringConstantsForce< DIM >::mNormalMutantMultiplier, and LinearSpringWithVariableSpringConstantsForce< DIM >::mUseMutantSprings.
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetBetaCateninSprings | ( | bool | useBCatSprings | ) | [inline] |
Use the amount of beta-catenin on an edge to find spring constant.
useBCatSprings | whether to use beta-catenin-dependent spring stiffness |
Definition at line 67 of file LinearSpringWithVariableSpringConstantsForce.cpp.
References LinearSpringWithVariableSpringConstantsForce< DIM >::mUseBCatSprings.
void LinearSpringWithVariableSpringConstantsForce< DIM >::SetApoptoticSprings | ( | bool | useApoptoticSprings | ) | [inline] |
Set spring stiffness to be dependent on whether cells are apoptotic
useApoptoticSprings | whether to have apoptosis-dependent spring stiffness |
Definition at line 73 of file LinearSpringWithVariableSpringConstantsForce.cpp.
References LinearSpringWithVariableSpringConstantsForce< DIM >::mUseApoptoticSprings.
double LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor | ( | unsigned | nodeAGlobalIndex, | |
unsigned | nodeBGlobalIndex, | |||
AbstractTissue< DIM > & | rTissue, | |||
bool | isCloserThanRestLength | |||
) | [inline, virtual] |
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.
nodeAGlobalIndex | index of one neighbouring node | |
nodeBGlobalIndex | index of the other neighbouring node | |
rTissue | the tissue | |
isCloserThanRestLength | whether the neighbouring nodes lie closer than the rest length of their connecting spring |
Reimplemented from GeneralisedLinearSpringForce< DIM >.
Definition at line 79 of file LinearSpringWithVariableSpringConstantsForce.cpp.
References TissueConfig::GetApoptoticSpringCompressionStiffness(), TissueConfig::GetApoptoticSpringTensionStiffness(), TissueConfig::GetBetaCatSpringScaler(), TissueCell::GetCellCycleModel(), TissueCell::GetCellType(), VoronoiTessellation< DIM >::GetEdgeLength(), VoronoiTessellation< DIM >::GetFacePerimeter(), IngeWntSwatCellCycleModel::GetMembraneBoundBetaCateninLevel(), TissueCell::GetMutationState(), TissueConfig::GetSpringStiffness(), AbstractTissue< DIM >::HasMesh(), TissueConfig::Instance(), LinearSpringWithVariableSpringConstantsForce< DIM >::mMutantMutantMultiplier, LinearSpringWithVariableSpringConstantsForce< DIM >::mNormalMutantMultiplier, LinearSpringWithVariableSpringConstantsForce< DIM >::mUseApoptoticSprings, LinearSpringWithVariableSpringConstantsForce< DIM >::mUseBCatSprings, LinearSpringWithVariableSpringConstantsForce< DIM >::mUseEdgeBasedSpringConstant, LinearSpringWithVariableSpringConstantsForce< DIM >::mUseMutantSprings, AbstractTissue< DIM >::rGetCellUsingLocationIndex(), and GeneralisedLinearSpringForce< DIM >::VariableSpringConstantMultiplicationFactor().
void LinearSpringWithVariableSpringConstantsForce< DIM >::AddForceContribution | ( | std::vector< c_vector< double, DIM > > & | rForces, | |
AbstractTissue< DIM > & | rTissue | |||
) | [inline, virtual] |
Overridden AddForceContribution method.
rForces | reference to vector of forces on nodes | |
rTissue | reference to the tissue |
Reimplemented from AbstractTwoBodyInteractionForce< DIM >.
Definition at line 198 of file LinearSpringWithVariableSpringConstantsForce.cpp.
References GeneralisedLinearSpringForce< DIM >::CalculateForceBetweenNodes().
friend class boost::serialization::access [friend] |
Needed for serialization.
Reimplemented from GeneralisedLinearSpringForce< DIM >.
Definition at line 47 of file LinearSpringWithVariableSpringConstantsForce.hpp.
bool LinearSpringWithVariableSpringConstantsForce< DIM >::mUseEdgeBasedSpringConstant [protected] |
Whether to use spring constant proportional to cell-cell contact length/area (defaults to false)
Definition at line 71 of file LinearSpringWithVariableSpringConstantsForce.hpp.
Referenced by LinearSpringWithVariableSpringConstantsForce< DIM >::serialize(), LinearSpringWithVariableSpringConstantsForce< DIM >::SetEdgeBasedSpringConstant(), and LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor().
bool LinearSpringWithVariableSpringConstantsForce< DIM >::mUseMutantSprings [protected] |
Whether to use different stiffnesses depending on whether either cell is a mutant
Definition at line 74 of file LinearSpringWithVariableSpringConstantsForce.hpp.
Referenced by LinearSpringWithVariableSpringConstantsForce< DIM >::serialize(), LinearSpringWithVariableSpringConstantsForce< DIM >::SetMutantSprings(), and LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor().
double LinearSpringWithVariableSpringConstantsForce< DIM >::mMutantMutantMultiplier [protected] |
Multiplier for spring stiffness if mutant
Definition at line 77 of file LinearSpringWithVariableSpringConstantsForce.hpp.
Referenced by LinearSpringWithVariableSpringConstantsForce< DIM >::serialize(), LinearSpringWithVariableSpringConstantsForce< DIM >::SetMutantSprings(), and LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor().
double LinearSpringWithVariableSpringConstantsForce< DIM >::mNormalMutantMultiplier [protected] |
Multiplier for spring stiffness if mutant
Definition at line 80 of file LinearSpringWithVariableSpringConstantsForce.hpp.
Referenced by LinearSpringWithVariableSpringConstantsForce< DIM >::serialize(), LinearSpringWithVariableSpringConstantsForce< DIM >::SetMutantSprings(), and LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor().
bool LinearSpringWithVariableSpringConstantsForce< DIM >::mUseBCatSprings [protected] |
Use springs which are dependent on beta-catenin levels
Definition at line 83 of file LinearSpringWithVariableSpringConstantsForce.hpp.
Referenced by LinearSpringWithVariableSpringConstantsForce< DIM >::serialize(), LinearSpringWithVariableSpringConstantsForce< DIM >::SetBetaCateninSprings(), and LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor().
bool LinearSpringWithVariableSpringConstantsForce< DIM >::mUseApoptoticSprings [protected] |
Use springs which are dependent on whether cells are apoptotic
Definition at line 86 of file LinearSpringWithVariableSpringConstantsForce.hpp.
Referenced by LinearSpringWithVariableSpringConstantsForce< DIM >::serialize(), LinearSpringWithVariableSpringConstantsForce< DIM >::SetApoptoticSprings(), and LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor().