Chaste  Release::2017.1
CryptSimulation2d Class Reference

#include <CryptSimulation2d.hpp>

+ Inheritance diagram for CryptSimulation2d:
+ Collaboration diagram for CryptSimulation2d:

Public Member Functions

 CryptSimulation2d (AbstractCellPopulation< 2 > &rCellPopulation, bool deleteCellPopulationInDestructor=false, bool initialiseCells=true)
 
virtual ~CryptSimulation2d ()
 
void UseJiggledBottomCells ()
 
void SetBottomCellAncestors ()
 
void OutputSimulationParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from OffLatticeSimulation< 2 >
 OffLatticeSimulation (AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM > &rCellPopulation, bool deleteCellPopulationInDestructor=false, bool initialiseCells=true)
 
void AddForce (boost::shared_ptr< AbstractForce< ELEMENT_DIM, ELEMENT_DIM > > pForce)
 
void RemoveAllForces ()
 
void AddCellPopulationBoundaryCondition (boost::shared_ptr< AbstractCellPopulationBoundaryCondition< ELEMENT_DIM, ELEMENT_DIM > > pBoundaryCondition)
 
void RemoveAllCellPopulationBoundaryConditions ()
 
void SetNumericalMethod (boost::shared_ptr< AbstractNumericalMethod< ELEMENT_DIM, ELEMENT_DIM > > pNumericalMethod)
 
const boost::shared_ptr< AbstractNumericalMethod< ELEMENT_DIM, ELEMENT_DIM > > GetNumericalMethod () const
 
void OutputAdditionalSimulationSetup (out_stream &rParamsFile)
 
const std::vector< boost::shared_ptr< AbstractForce< ELEMENT_DIM, ELEMENT_DIM > > > & rGetForceCollection () const
 
- Public Member Functions inherited from AbstractCellBasedSimulation< ELEMENT_DIM, ELEMENT_DIM >
 AbstractCellBasedSimulation (AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation, bool deleteCellPopulationInDestructor=false, bool initialiseCells=true)
 
virtual ~AbstractCellBasedSimulation ()
 
std::vector< doubleGetNodeLocation (const unsigned &rNodeIndex)
 
double GetDt ()
 
unsigned GetNumBirths ()
 
unsigned GetNumDeaths ()
 
std::string GetOutputDirectory ()
 
void SetDt (double dt)
 
void SetEndTime (double endTime)
 
void SetOutputDirectory (std::string outputDirectory)
 
void SetSamplingTimestepMultiple (unsigned samplingTimestepMultiple)
 
void SetNoBirth (bool noBirth)
 
void SetUpdateCellPopulationRule (bool updateCellPopulation)
 
bool GetUpdateCellPopulationRule ()
 
void AddCellKiller (boost::shared_ptr< AbstractCellKiller< SPACE_DIM > > pCellKiller)
 
void RemoveAllCellKillers ()
 
void AddSimulationModifier (boost::shared_ptr< AbstractCellBasedSimulationModifier< ELEMENT_DIM, SPACE_DIM > > pSimulationModifier)
 
std::vector< boost::shared_ptr< AbstractCellBasedSimulationModifier< ELEMENT_DIM, SPACE_DIM > > > * GetSimulationModifiers ()
 
void Solve ()
 
AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > & rGetCellPopulation ()
 
const AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > & rGetCellPopulation () const
 
bool GetOutputDivisionLocations ()
 
void SetOutputDivisionLocations (bool outputDivisionLocations)
 
bool GetOutputCellVelocities ()
 
void SetOutputCellVelocities (bool outputCellVelocities)
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 

Protected Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)
 
void SetupSolve ()
 
- Protected Member Functions inherited from OffLatticeSimulation< 2 >
virtual void UpdateCellLocationsAndTopology ()
 
void RevertToOldLocations (std::map< Node< ELEMENT_DIM > *, c_vector< double, ELEMENT_DIM > > oldNodeLoctions)
 
void ApplyBoundaries (std::map< Node< ELEMENT_DIM > *, c_vector< double, ELEMENT_DIM > > oldNodeLoctions)
 
virtual void WriteVisualizerSetupFile ()
 
- Protected Member Functions inherited from AbstractCellBasedSimulation< ELEMENT_DIM, ELEMENT_DIM >
virtual unsigned DoCellBirth ()
 
unsigned DoCellRemoval ()
 
virtual bool StoppingEventHasOccurred ()
 
virtual void UpdateCellPopulation ()
 
void OutputSimulationSetup ()
 

Protected Attributes

bool mUsingMeshBasedCellPopulation
 
- Protected Attributes inherited from OffLatticeSimulation< 2 >
std::vector< boost::shared_ptr< AbstractForce< ELEMENT_DIM, ELEMENT_DIM > > > mForceCollection
 
std::vector< boost::shared_ptr< AbstractCellPopulationBoundaryCondition< ELEMENT_DIM, ELEMENT_DIM > > > mBoundaryConditions
 
boost::shared_ptr< AbstractNumericalMethod< ELEMENT_DIM, ELEMENT_DIM > > mpNumericalMethod
 
- Protected Attributes inherited from AbstractCellBasedSimulation< ELEMENT_DIM, ELEMENT_DIM >
double mDt
 
double mEndTime
 
AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > & mrCellPopulation
 
bool mDeleteCellPopulationInDestructor
 
bool mInitialiseCells
 
bool mNoBirth
 
bool mUpdateCellPopulation
 
std::string mOutputDirectory
 
std::string mSimulationOutputDirectory
 
out_stream mpVizSetupFile
 
unsigned mNumBirths
 
unsigned mNumDeaths
 
bool mOutputDivisionLocations
 
out_stream mpDivisionLocationFile
 
bool mOutputCellVelocities
 
out_stream mpCellVelocitiesFile
 
std::vector< boost::shared_ptr< AbstractCellKiller< SPACE_DIM > > > mCellKillers
 
std::vector< boost::shared_ptr< AbstractCellBasedSimulationModifier< ELEMENT_DIM, SPACE_DIM > > > mSimulationModifiers
 
unsigned mSamplingTimestepMultiple
 

Friends

class TestCryptSimulation2dWithMeshBasedCellPopulation
 
class TestCryptSimulation2dWithVertexBasedCellPopulation
 
class boost::serialization::access
 

Detailed Description

A 2D crypt simulation object. For more details on the crypt geometry, see the papers by van Leeuwen et al (2009) [doi:10.1111/j.1365-2184.2009.00627.x] and Osborne et al (2010) [doi:10.1098/rsta.2010.0173].

Definition at line 54 of file CryptSimulation2d.hpp.

Constructor & Destructor Documentation

CryptSimulation2d::CryptSimulation2d ( AbstractCellPopulation< 2 > &  rCellPopulation,
bool  deleteCellPopulationInDestructor = false,
bool  initialiseCells = true 
)

Constructor.

Parameters
rCellPopulationA cell population object
deleteCellPopulationInDestructorWhether to delete the cell population on destruction to free up memory (defaults to false)
initialiseCellswhether to initialise cells (defaults to true, set to false when loading from an archive)

Definition at line 46 of file CryptSimulation2d.cpp.

References OffLatticeSimulation< 2 >::AddCellPopulationBoundaryCondition(), EXCEPTION, MAKE_PTR, MAKE_PTR_ARGS, AbstractCellBasedSimulation< ELEMENT_DIM, ELEMENT_DIM >::mDeleteCellPopulationInDestructor, AbstractCellBasedSimulation< ELEMENT_DIM, ELEMENT_DIM >::mrCellPopulation, and mUsingMeshBasedCellPopulation.

CryptSimulation2d::~CryptSimulation2d ( )
virtual

Destructor.

This frees the CryptSimulationBoundaryCondition.

Definition at line 85 of file CryptSimulation2d.cpp.

Member Function Documentation

void CryptSimulation2d::OutputSimulationParameters ( out_stream &  rParamsFile)
virtual

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

Definition at line 146 of file CryptSimulation2d.cpp.

References CHASTE_CLASS_EXPORT, OffLatticeSimulation< 2 >::mBoundaryConditions, AbstractCellBasedSimulation< ELEMENT_DIM, ELEMENT_DIM >::mrCellPopulation, and OffLatticeSimulation< ELEMENT_DIM, SPACE_DIM >::OutputSimulationParameters().

template<class Archive >
void CryptSimulation2d::serialize ( Archive &  archive,
const unsigned int  version 
)
inlineprotected

Archive the simulation and member variable.

Parameters
archivethe archive
versionthe current version of this class

Definition at line 71 of file CryptSimulation2d.hpp.

References SerializableSingleton< SINGLETON_CLASS >::GetSerializationWrapper(), and WntConcentration< DIM >::Instance().

void CryptSimulation2d::SetBottomCellAncestors ( )

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

Definition at line 117 of file CryptSimulation2d.cpp.

References MAKE_PTR_ARGS, AbstractCellBasedSimulation< ELEMENT_DIM, ELEMENT_DIM >::mrCellPopulation, and mUsingMeshBasedCellPopulation.

void CryptSimulation2d::SetupSolve ( )
protectedvirtual
void CryptSimulation2d::UseJiggledBottomCells ( )

Set method for mUseJiggledBottomCells.

Definition at line 111 of file CryptSimulation2d.cpp.

References OffLatticeSimulation< 2 >::mBoundaryConditions.

Friends And Related Function Documentation

friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 63 of file CryptSimulation2d.hpp.

Member Data Documentation

bool CryptSimulation2d::mUsingMeshBasedCellPopulation
protected

Helper member that stores whether we are using a MeshBasedCellPopulationWithGhostNodes (if not, then we are assumed to be using a VertexBasedCellPopulation).

Definition at line 83 of file CryptSimulation2d.hpp.

Referenced by CryptSimulation2d(), and SetBottomCellAncestors().


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