Chaste Release::3.1
CryptProjectionForce Class Reference

#include <CryptProjectionForce.hpp>

Inheritance diagram for CryptProjectionForce:
Collaboration diagram for CryptProjectionForce:

List of all members.

Public Member Functions

 CryptProjectionForce ()
 ~CryptProjectionForce ()
double GetA () const
double GetB () const
double GetWntChemotaxisStrength ()
void SetWntChemotaxisStrength (double wntChemotaxisStrength)
void SetWntChemotaxis (bool includeWntChemotaxis)
double CalculateCryptSurfaceHeightAtPoint (const c_vector< double, 2 > &rNodeLocation)
double CalculateCryptSurfaceDerivativeAtPoint (const c_vector< double, 2 > &rNodeLocation)
void AddForceContribution (std::vector< c_vector< double, 2 > > &rForces, AbstractCellPopulation< 2 > &rCellPopulation)
void OutputForceParameters (out_stream &rParamsFile)

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)
void UpdateNode3dLocationMap (AbstractCellPopulation< 2 > &rCellPopulation)
c_vector< double, 2 > CalculateForceBetweenNodes (unsigned nodeAGlobalIndex, unsigned nodeBGlobalIndex, AbstractCellPopulation< 2 > &rCellPopulation)

Private Attributes

double mA
double mB
bool mIncludeWntChemotaxis
double mWntChemotaxisStrength
std::map< unsigned, c_vector
< double, 3 > > 
mNode3dLocationMap

Friends

class TestCryptProjectionForce
class boost::serialization::access

Detailed Description

A force law for use in crypt projection simulations.

Definition at line 47 of file CryptProjectionForce.hpp.


Constructor & Destructor Documentation

CryptProjectionForce::CryptProjectionForce ( )
CryptProjectionForce::~CryptProjectionForce ( )

Destructor.

Definition at line 49 of file CryptProjectionForce.cpp.


Member Function Documentation

double CryptProjectionForce::CalculateCryptSurfaceDerivativeAtPoint ( const c_vector< double, 2 > &  rNodeLocation)

Calculates the derivative df/dr of the crypt surface function z=f(r) at a point whose 2D position is a distance r from the centre of the cell_population, which we assume to be at (0,0).

Parameters:
rNodeLocationthe 2D location of a node
Returns:
the gradient

Definition at line 110 of file CryptProjectionForce.cpp.

References mA, and mB.

Referenced by CalculateForceBetweenNodes().

double CryptProjectionForce::CalculateCryptSurfaceHeightAtPoint ( const c_vector< double, 2 > &  rNodeLocation)

Calculates the height of the crypt surface given by z = f(r) = a*r^b at a point whose 2D position is a distance r from the centre of the cell population. This assumes that the cell population is centred at the origin.

Parameters:
rNodeLocation
Returns:
the z component corresponding to rNodeLocation

Definition at line 105 of file CryptProjectionForce.cpp.

References mA, and mB.

Referenced by UpdateNode3dLocationMap().

c_vector< double, 2 > CryptProjectionForce::CalculateForceBetweenNodes ( unsigned  nodeAGlobalIndex,
unsigned  nodeBGlobalIndex,
AbstractCellPopulation< 2 > &  rCellPopulation 
) [private]
double CryptProjectionForce::GetA ( ) const
Returns:
mA.

Definition at line 80 of file CryptProjectionForce.cpp.

References mA.

double CryptProjectionForce::GetB ( ) const
Returns:
mB.

Definition at line 85 of file CryptProjectionForce.cpp.

References mB.

double CryptProjectionForce::GetWntChemotaxisStrength ( )
Returns:
mWntChemotaxisStrength

Definition at line 95 of file CryptProjectionForce.cpp.

References mWntChemotaxisStrength.

void CryptProjectionForce::OutputForceParameters ( out_stream &  rParamsFile) [virtual]

Outputs force parameters to file

As this method is pure virtual, it must be overridden in subclasses.

Parameters:
rParamsFilethe file stream to which the parameters are output

Reimplemented from GeneralisedLinearSpringForce< 2 >.

Definition at line 296 of file CryptProjectionForce.cpp.

References mA, mB, mIncludeWntChemotaxis, and mWntChemotaxisStrength.

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

Archive the object and its member variables.

Parameters:
archivethe archive
versionthe current version of this class

Reimplemented from GeneralisedLinearSpringForce< 2 >.

Definition at line 55 of file CryptProjectionForce.hpp.

References mA, mB, mIncludeWntChemotaxis, and mWntChemotaxisStrength.

void CryptProjectionForce::SetWntChemotaxis ( bool  includeWntChemotaxis)

Set mIncludeWntChemotaxis.

Parameters:
includeWntChemotaxiswhether to include Wnt-dependent chemotaxis

Definition at line 100 of file CryptProjectionForce.cpp.

References mIncludeWntChemotaxis.

void CryptProjectionForce::SetWntChemotaxisStrength ( double  wntChemotaxisStrength)

Set mWntChemotaxisStrength.

Parameters:
wntChemotaxisStrengththe new value of mWntChemotaxisStrength

Definition at line 90 of file CryptProjectionForce.cpp.

References mWntChemotaxisStrength.

void CryptProjectionForce::UpdateNode3dLocationMap ( AbstractCellPopulation< 2 > &  rCellPopulation) [private]

Friends And Related Function Documentation

friend class boost::serialization::access [friend]

Needed for serialization.

Reimplemented from GeneralisedLinearSpringForce< 2 >.

Definition at line 53 of file CryptProjectionForce.hpp.


Member Data Documentation

The value of the constant a in the definition of the crypt surface z = f(r) = a*r^b.

Definition at line 68 of file CryptProjectionForce.hpp.

Referenced by CalculateCryptSurfaceDerivativeAtPoint(), CalculateCryptSurfaceHeightAtPoint(), CryptProjectionForce(), GetA(), OutputForceParameters(), and serialize().

The value of the constant b in the definition of the crypt surface z = f(r) = a*r^b.

Definition at line 74 of file CryptProjectionForce.hpp.

Referenced by CalculateCryptSurfaceDerivativeAtPoint(), CalculateCryptSurfaceHeightAtPoint(), CryptProjectionForce(), GetB(), OutputForceParameters(), and serialize().

Whether to include Wnt-dependent chemotaxis for stem cells.

Definition at line 79 of file CryptProjectionForce.hpp.

Referenced by AddForceContribution(), OutputForceParameters(), serialize(), and SetWntChemotaxis().

std::map<unsigned, c_vector<double, 3> > CryptProjectionForce::mNode3dLocationMap [private]

Map node indices to 3D locations on the crypt surface.

Definition at line 89 of file CryptProjectionForce.hpp.

Referenced by CalculateForceBetweenNodes(), and UpdateNode3dLocationMap().


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