VertexCryptSimulation2d Class Reference

#include <VertexCryptSimulation2d.hpp>

Inheritance diagram for VertexCryptSimulation2d:

Inheritance graph
[legend]
Collaboration diagram for VertexCryptSimulation2d:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 VertexCryptSimulation2d (AbstractCellPopulation< 2 > &rCellPopulation, bool deleteCellPopulationAndForceCollection=false, bool initialiseCells=true)
void UseJiggledBottomCells ()
void ApplyCellPopulationBoundaryConditions (const std::vector< c_vector< double, 2 > > &rOldLocations)
void SetBottomCellAncestors ()
void OutputSimulationParameters (out_stream &rParamsFile)

Private Member Functions

template<class Archive>
void serialize (Archive &archive, const unsigned int version)
c_vector< double, 2 > CalculateCellDivisionVector (CellPtr pParentCell)
void WriteVisualizerSetupFile ()
void SetupWriteBetaCatenin ()
void WriteBetaCatenin (double time)
void SetupSolve ()
void PostSolve ()
void AfterSolve ()

Private Attributes

bool mUseJiggledBottomCells
bool mWriteBetaCatenin
out_stream mVizBetaCateninResultsFile

Friends

class TestVertexCryptSimulation2d
class boost::serialization::access


Detailed Description

A 2D vertex-based crypt simulation object.

Definition at line 41 of file VertexCryptSimulation2d.hpp.


Constructor & Destructor Documentation

VertexCryptSimulation2d::VertexCryptSimulation2d ( AbstractCellPopulation< 2 > &  rCellPopulation,
bool  deleteCellPopulationAndForceCollection = false,
bool  initialiseCells = true 
)

Constructor.

Parameters:
rCellPopulation A cell population object
deleteCellPopulationAndForceCollection Whether to delete the cell population 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 34 of file VertexCryptSimulation2d.cpp.

References CellBasedSimulation< 2 >::mrCellPopulation, and mWriteBetaCatenin.


Member Function Documentation

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

Archive the member variables.

Serialization of singleton objects must be done with care. Before the object is serialized via a pointer, it *MUST* be serialized directly, or an assertion will trip when a second instance of the class is created on de-serialization.

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

Reimplemented from CellBasedSimulation< 2 >.

Definition at line 51 of file VertexCryptSimulation2d.hpp.

References mUseJiggledBottomCells, and mWriteBetaCatenin.

c_vector< double, 2 > VertexCryptSimulation2d::CalculateCellDivisionVector ( CellPtr  pParentCell  )  [private, virtual]

By default this method returns the zero vector. If the parent cell is a stem cell, then this method returns the vector (0,1). This is then used by the VertexBasedCellPopulation method AddCell() as the axis along which the cell divides.

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

Reimplemented from CellBasedSimulation< 2 >.

Definition at line 55 of file VertexCryptSimulation2d.cpp.

References WntConcentration< DIM >::Destroy(), WntConcentration< DIM >::Instance(), and WntConcentration< DIM >::IsWntSetUp().

void VertexCryptSimulation2d::WriteVisualizerSetupFile (  )  [private, virtual]

Overridden WriteVisualizerSetupFile() method.

Writes out special information about the mesh to the visualizer.

Reimplemented from CellBasedSimulation< 2 >.

Definition at line 73 of file VertexCryptSimulation2d.cpp.

References CellBasedSimulation< 2 >::mpVizSetupFile, and CellBasedSimulation< 2 >::mrCellPopulation.

void VertexCryptSimulation2d::SetupWriteBetaCatenin (  )  [private]

Use an output file handler to reate a beta catenin results file.

Definition at line 78 of file VertexCryptSimulation2d.cpp.

References CellBasedSimulation< 2 >::mpVizSetupFile, CellBasedSimulation< 2 >::mSimulationOutputDirectory, mVizBetaCateninResultsFile, and OutputFileHandler::OpenOutputFile().

Referenced by SetupSolve().

void VertexCryptSimulation2d::WriteBetaCatenin ( double  time  )  [private]

void VertexCryptSimulation2d::SetupSolve (  )  [private, virtual]

Overridden SetupSolve() method.

Write initial beta catenin results to file if required.

Reimplemented from CellBasedSimulation< 2 >.

Definition at line 118 of file VertexCryptSimulation2d.cpp.

References SimulationTime::GetTime(), SimulationTime::Instance(), CellBasedSimulation< 2 >::mrCellPopulation, mWriteBetaCatenin, SetupWriteBetaCatenin(), and WriteBetaCatenin().

void VertexCryptSimulation2d::PostSolve (  )  [private, virtual]

void VertexCryptSimulation2d::AfterSolve (  )  [private, virtual]

Overridden AfterSolve() method.

Closes beta catenin results file if required, then calls the base class method.

Reimplemented from CellBasedSimulation< 2 >.

Definition at line 153 of file VertexCryptSimulation2d.cpp.

References CellBasedSimulation< 2 >::mrCellPopulation, mVizBetaCateninResultsFile, and mWriteBetaCatenin.

void VertexCryptSimulation2d::UseJiggledBottomCells (  ) 

Set method for mUseJiggledBottomCells.

Definition at line 166 of file VertexCryptSimulation2d.cpp.

References mUseJiggledBottomCells.

void VertexCryptSimulation2d::ApplyCellPopulationBoundaryConditions ( const std::vector< c_vector< double, 2 > > &  rOldLocations  ) 

Overridden ApplyCellPopulationBoundaryConditions() 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 the stem cells must be pinned to y=0, so any node whose old hieght was close to zero is moved back to zero.

Definition at line 171 of file VertexCryptSimulation2d.cpp.

References WntConcentration< DIM >::Destroy(), WntConcentration< DIM >::Instance(), WntConcentration< DIM >::IsWntSetUp(), CellBasedSimulation< 2 >::mpRandomGenerator, CellBasedSimulation< 2 >::mrCellPopulation, mUseJiggledBottomCells, RandomNumberGenerator::ranf(), Node< SPACE_DIM >::rGetLocation(), and Node< SPACE_DIM >::rGetModifiableLocation().

void VertexCryptSimulation2d::SetBottomCellAncestors (  ) 

Sets the Ancestor index of all the cells at the bottom in order, can be used to trace clonal populations.

Definition at line 214 of file VertexCryptSimulation2d.cpp.

References CellBasedSimulation< 2 >::mrCellPopulation.

void VertexCryptSimulation2d::OutputSimulationParameters ( out_stream &  rParamsFile  )  [virtual]

Outputs simulation 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 CellBasedSimulation< 2 >.

Definition at line 228 of file VertexCryptSimulation2d.cpp.

References CellBasedSimulation< 2 >::mrCellPopulation, mUseJiggledBottomCells, and CellBasedSimulation< DIM >::OutputSimulationParameters().


Friends And Related Function Documentation

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

Needed for serialization.

Reimplemented from CellBasedSimulation< 2 >.

Definition at line 49 of file VertexCryptSimulation2d.hpp.


Member Data Documentation

Whether to use a flat bottom surface or to jiggle the cells on the bottom surface

Definition at line 61 of file VertexCryptSimulation2d.hpp.

Referenced by ApplyCellPopulationBoundaryConditions(), OutputSimulationParameters(), serialize(), and UseJiggledBottomCells().

Whether the simulation includes the cell cycle models VanLeeuwen2009WntSwatCellCycleModelHypothesisOne or VanLeeuwen2009WntSwatCellCycleModelHypothesisOne, and hence whether beta catenin results are written to file.

Definition at line 69 of file VertexCryptSimulation2d.hpp.

Referenced by AfterSolve(), PostSolve(), serialize(), SetupSolve(), VertexCryptSimulation2d(), and WriteBetaCatenin().

The file that the values of beta catenin is written out to.

Definition at line 72 of file VertexCryptSimulation2d.hpp.

Referenced by AfterSolve(), SetupWriteBetaCatenin(), and WriteBetaCatenin().


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

Generated on Mon Nov 1 12:37:33 2010 for Chaste by  doxygen 1.5.5