CryptSimulation1d Class Reference

#include <CryptSimulation1d.hpp>

Inherits TissueSimulation< 1 >.

Collaboration diagram for CryptSimulation1d:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 CryptSimulation1d (AbstractTissue< 1 > &rTissue, std::vector< AbstractForce< 1 > * > forceCollection, bool deleteTissueAndForceCollection=false, bool initialiseCells=true)
void ApplyTissueBoundaryConditions (const std::vector< c_vector< double, 1 > > &rOldLocations)

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)
c_vector< double, 1 > CalculateCellDivisionVector (TissueCell &rParentCell)

Private Attributes

MeshBasedTissue< 1 > * mpStaticCastTissue

Friends

class TestCryptSimulation1d
class boost::serialization::access

Detailed Description

A 1D crypt simulation object. The model is a simplified version of a 2D crypt model developed by Meineke et al (doi:10.1046/j.0960-7722.2001.00216.x).

Definition at line 45 of file CryptSimulation1d.hpp.


Constructor & Destructor Documentation

CryptSimulation1d::CryptSimulation1d ( AbstractTissue< 1 > &  rTissue,
std::vector< AbstractForce< 1 > * >  forceCollection,
bool  deleteTissueAndForceCollection = false,
bool  initialiseCells = true 
)

Constructor.

Parameters:
rTissue A tissue facade class (contains a mesh and cells)
forceCollection The mechanics to use in the simulation
deleteTissueAndForceCollection Whether to delete the tissue and force collection on destruction to free up memory
initialiseCells whether to initialise cells (set to false when loading from an archive)

Definition at line 33 of file CryptSimulation1d.cpp.

References TissueConfig::Instance(), mpStaticCastTissue, TissueSimulation< 1 >::mrTissue, and TissueConfig::SetSpringStiffness().


Member Function Documentation

void CryptSimulation1d::ApplyTissueBoundaryConditions ( const std::vector< c_vector< double, 1 > > &  rOldLocations  ) 

Overridden ApplyTissueBoundaryConditions() method.

If an instance of WntConcentration is not set up, then stem cells at the bottom of the crypt are pinned. Any cell that has moved below the bottom of the crypt is moved back up.

Parameters:
rOldLocations the node locations at the previous time step

If WntConcentration is not set up then stem cells must be pinned, so we reset the location of each stem cell.

Definition at line 102 of file CryptSimulation1d.cpp.

References AbstractTissue< DIM >::GetLocationIndexUsingCell(), AbstractCellCentreBasedTissue< DIM >::GetNodeCorrespondingToCell(), mpStaticCastTissue, TissueSimulation< 1 >::mrTissue, Node< SPACE_DIM >::rGetLocation(), and Node< SPACE_DIM >::rGetModifiableLocation().

c_vector< double, 1 > CryptSimulation1d::CalculateCellDivisionVector ( TissueCell rParentCell  )  [private, virtual]

Calculates the new locations of a dividing cell's cell centres. Moves the dividing node a bit and returns co-ordinates for the new node. It does this by picking a random direction (0->2PI) and placing the parent and daughter in opposing directions on this axis.

Parameters:
rParentCell the parent cell
Returns:
daughter_coords the coordinates for the daughter cell.

Reimplemented from TissueSimulation< 1 >.

Definition at line 47 of file CryptSimulation1d.cpp.

References TissueConfig::GetDivisionSeparation(), AbstractTissue< DIM >::GetLocationIndexUsingCell(), AbstractCellCentreBasedTissue< DIM >::GetLocationOfCellCentre(), RandomNumberGenerator::Instance(), TissueConfig::Instance(), mpStaticCastTissue, TissueSimulation< 1 >::mrTissue, and RandomNumberGenerator::ranf().

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

Archive the simulation and member variables.

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

Reimplemented from TissueSimulation< 1 >.

Definition at line 61 of file CryptSimulation1d.hpp.


Friends And Related Function Documentation

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

Needed for serialization.

Reimplemented from TissueSimulation< 1 >.

Definition at line 53 of file CryptSimulation1d.hpp.


Member Data Documentation

Helper member that is a static cast of the tissue.

Definition at line 69 of file CryptSimulation1d.hpp.

Referenced by ApplyTissueBoundaryConditions(), CalculateCellDivisionVector(), and CryptSimulation1d().


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

Generated by  doxygen 1.6.2