CryptProjectionForce Class Reference

#include <CryptProjectionForce.hpp>

Inheritance diagram for CryptProjectionForce:

Inheritance graph
[legend]
Collaboration diagram for CryptProjectionForce:

Collaboration graph
[legend]

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 39 of file CryptProjectionForce.hpp.


Constructor & Destructor Documentation

CryptProjectionForce::CryptProjectionForce (  ) 

CryptProjectionForce::~CryptProjectionForce (  ) 

Destructor.

Definition at line 42 of file CryptProjectionForce.cpp.


Member Function Documentation

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

Archive the object and its member variables.

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

Reimplemented from GeneralisedLinearSpringForce< 2 >.

Definition at line 47 of file CryptProjectionForce.hpp.

References mA, mB, mIncludeWntChemotaxis, and mWntChemotaxisStrength.

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

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

double CryptProjectionForce::GetA (  )  const

Returns:
mA.

Definition at line 73 of file CryptProjectionForce.cpp.

References mA.

double CryptProjectionForce::GetB (  )  const

Returns:
mB.

Definition at line 78 of file CryptProjectionForce.cpp.

References mB.

double CryptProjectionForce::GetWntChemotaxisStrength (  ) 

Returns:
mWntChemotaxisStrength

Definition at line 88 of file CryptProjectionForce.cpp.

References mWntChemotaxisStrength.

void CryptProjectionForce::SetWntChemotaxisStrength ( double  wntChemotaxisStrength  ) 

Set mWntChemotaxisStrength.

Parameters:
wntChemotaxisStrength the new value of mWntChemotaxisStrength

Definition at line 83 of file CryptProjectionForce.cpp.

References mWntChemotaxisStrength.

void CryptProjectionForce::SetWntChemotaxis ( bool  includeWntChemotaxis  ) 

Set mIncludeWntChemotaxis.

Parameters:
includeWntChemotaxis whether to include Wnt-dependent chemotaxis

Definition at line 93 of file CryptProjectionForce.cpp.

References mIncludeWntChemotaxis.

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 98 of file CryptProjectionForce.cpp.

References mA, and mB.

Referenced by UpdateNode3dLocationMap().

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:
rNodeLocation the 2D location of a node
Returns:
the gradient

Definition at line 103 of file CryptProjectionForce.cpp.

References mA, and mB.

Referenced by CalculateForceBetweenNodes().

void CryptProjectionForce::AddForceContribution ( std::vector< c_vector< double, 2 > > &  rForces,
AbstractCellPopulation< 2 > &  rCellPopulation 
)

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:
rParamsFile the file stream to which the parameters are output

Reimplemented from GeneralisedLinearSpringForce< 2 >.

Definition at line 285 of file CryptProjectionForce.cpp.

References mA, mB, mIncludeWntChemotaxis, mWntChemotaxisStrength, and GeneralisedLinearSpringForce< DIM >::OutputForceParameters().


Friends And Related Function Documentation

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

Needed for serialization.

Reimplemented from GeneralisedLinearSpringForce< 2 >.

Definition at line 45 of file CryptProjectionForce.hpp.


Member Data Documentation

double CryptProjectionForce::mA [private]

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

Definition at line 62 of file CryptProjectionForce.hpp.

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

double CryptProjectionForce::mB [private]

The value of the constant b 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(), GetB(), OutputForceParameters(), and serialize().

Whether to include Wnt-dependent chemotaxis for stem cells.

Definition at line 73 of file CryptProjectionForce.hpp.

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

Strength of Wnt-based chemotactic force.

Definition at line 78 of file CryptProjectionForce.hpp.

Referenced by AddForceContribution(), GetWntChemotaxisStrength(), OutputForceParameters(), serialize(), and SetWntChemotaxisStrength().

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

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

Definition at line 83 of file CryptProjectionForce.hpp.

Referenced by CalculateForceBetweenNodes(), and UpdateNode3dLocationMap().


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

Generated on Mon Nov 1 12:36:26 2010 for Chaste by  doxygen 1.5.5