#include <TissueSimulation.hpp>
Public Member Functions | |
TissueSimulation (AbstractTissue< DIM > &rTissue, std::vector< AbstractForce< DIM > * > forceCollection, bool deleteTissueAndForceCollection=false, bool initialiseCells=true) | |
virtual | ~TissueSimulation () |
std::vector< double > | GetNodeLocation (const unsigned &rNodeIndex) |
c_vector< unsigned, NUM_CELL_MUTATION_STATES > | GetCellMutationStateCount () |
c_vector< unsigned, NUM_CELL_TYPES > | GetCellTypeCount () |
c_vector< unsigned, 5 > | GetCellCyclePhaseCount () |
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 | SetOutputCellMutationStates (bool outputCellMutationStates) |
void | SetOutputCellAncestors (bool outputCellAncestors) |
void | SetOutputCellTypes (bool outputCellTypes) |
void | SetOutputCellVariables (bool outputCellVariables) |
void | SetOutputCellCyclePhases (bool outputCellCyclePhases) |
void | SetUpdateTissueRule (bool updateTissue) |
void | AddCellKiller (AbstractCellKiller< DIM > *pCellKiller) |
void | Solve () |
AbstractTissue< DIM > & | rGetTissue () |
const AbstractTissue< DIM > & | rGetTissue () const |
const std::vector < AbstractForce< DIM > * > | rGetForceCollection () const |
Protected Member Functions | |
template<class Archive> | |
void | serialize (Archive &archive, const unsigned int version) |
virtual void | WriteVisualizerSetupFile () |
unsigned | DoCellBirth () |
virtual c_vector< double, DIM > | CalculateDividingCellCentreLocations (TissueCell *pParentCell) |
unsigned | DoCellRemoval () |
virtual void | UpdateNodePositions (const std::vector< c_vector< double, DIM > > &rNodeForces) |
virtual void | ApplyTissueBoundaryConditions (const std::vector< c_vector< double, DIM > > &rOldLocations) |
virtual void | PostSolve () |
virtual void | SetupSolve () |
virtual void | AfterSolve () |
virtual bool | StoppingEventHasOccurred () |
Protected Attributes | |
double | mDt |
double | mEndTime |
AbstractTissue< DIM > & | mrTissue |
bool | mDeleteTissue |
bool | mAllocatedMemoryForForceCollection |
bool | mInitialiseCells |
bool | mNoBirth |
bool | mUpdateTissue |
bool | mOutputCellMutationStates |
bool | mOutputCellAncestors |
bool | mOutputCellTypes |
bool | mOutputCellVariables |
bool | mOutputCellCyclePhases |
std::string | mOutputDirectory |
std::string | mSimulationOutputDirectory |
out_stream | mpSetupFile |
CancerParameters * | mpParams |
RandomNumberGenerator * | mpRandomGenerator |
unsigned | mNumBirths |
unsigned | mNumDeaths |
unsigned | mSamplingTimestepMultiple |
std::vector < AbstractCellKiller< DIM > * > | mCellKillers |
std::vector< AbstractForce < DIM > * > | mForceCollection |
Friends | |
class | TestCryptSimulation2d |
class | TestTissueSimulation3d |
class | boost::serialization::access |
Cells are represented by their centres in space, they are connected by springs defined by the cells' Delaunay/Voronoi tesselation.
The spring lengths are governed by the equations dr/dt = stem_cycle_time*(mu/eta) sum_j r_hat_i,j*(|r_i,j|-s0) = alpha sum_j r_hat_i,j*(|r_i,j|-s0)
where alpha = stem_cycle_time*(mu/eta) = stem_cycle_time*meineke_lambda. s0 = natural length of the spring.
Length is scaled by natural length. Time is in hours.
meineke_lambda = mu (spring constant) / eta (damping) = 0.01 (from Meineke - note that the value we use for Meineke lambda is completely different because we have nondimensionalised)
The TissueSimulation accepts a tissue (facade class), containing either a mesh or just a vector of nodes, where nodes are associated with TissueCells or are ghost nodes. The TissueSimulation then accesses only the TissueCells via an iterator in the tissue facade class.
If simulating a crypt with a mesh-based tissue, the mesh should be surrounded by at least one layer of ghost nodes. These are nodes which do not correspond to a cell, but are necessary for remeshing (because the remesher tries to create a convex hull of the set of nodes) and visualization purposes. The MeshBasedTissueWithGhostNodes class deals with ghost nodes.
Cells can divide (at a time governed by their cell cycle models).
Cells can die - at a time/position specified by cell killers which can be added to the simulation.
Definition at line 84 of file TissueSimulation.hpp.
TissueSimulation< DIM >::TissueSimulation | ( | AbstractTissue< DIM > & | rTissue, | |
std::vector< AbstractForce< DIM > * > | forceCollection, | |||
bool | deleteTissueAndForceCollection = false , |
|||
bool | initialiseCells = true | |||
) | [inline] |
Constructor.
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 41 of file TissueSimulation.cpp.
References CancerParameters::Instance(), TissueSimulation< DIM >::mAllocatedMemoryForForceCollection, TissueSimulation< DIM >::mDeleteTissue, TissueSimulation< DIM >::mDt, TissueSimulation< DIM >::mEndTime, TissueSimulation< DIM >::mForceCollection, TissueSimulation< DIM >::mInitialiseCells, TissueSimulation< DIM >::mNoBirth, TissueSimulation< DIM >::mNumBirths, TissueSimulation< DIM >::mNumDeaths, TissueSimulation< DIM >::mOutputCellAncestors, TissueSimulation< DIM >::mOutputCellCyclePhases, TissueSimulation< DIM >::mOutputCellMutationStates, TissueSimulation< DIM >::mOutputCellTypes, TissueSimulation< DIM >::mOutputCellVariables, TissueSimulation< DIM >::mOutputDirectory, TissueSimulation< DIM >::mpParams, TissueSimulation< DIM >::mpRandomGenerator, TissueSimulation< DIM >::mrTissue, TissueSimulation< DIM >::mSamplingTimestepMultiple, TissueSimulation< DIM >::mSimulationOutputDirectory, and TissueSimulation< DIM >::mUpdateTissue.
TissueSimulation< DIM >::~TissueSimulation | ( | ) | [inline, virtual] |
Destructor.
This frees the tissue and cell killers, if they were created by de-serialization.
Definition at line 97 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mAllocatedMemoryForForceCollection, TissueSimulation< DIM >::mCellKillers, TissueSimulation< DIM >::mDeleteTissue, TissueSimulation< DIM >::mForceCollection, and TissueSimulation< DIM >::mrTissue.
void TissueSimulation< DIM >::serialize | ( | Archive & | archive, | |
const unsigned int | version | |||
) | [inline, protected] |
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.
archive | ||
version |
Reimplemented in CryptSimulation2d.
Definition at line 179 of file TissueSimulation.hpp.
virtual void TissueSimulation< DIM >::WriteVisualizerSetupFile | ( | ) | [inline, protected, virtual] |
Writes out special information about the mesh to the visualizer.
Reimplemented in CryptSimulation2d.
Definition at line 211 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::Solve().
unsigned TissueSimulation< DIM >::DoCellBirth | ( | ) | [inline, protected] |
During a simulation time step, process any cell divisions that need to occur. If the simulation includes cell birth, causes (almost) all cells that are ready to divide to produce daughter cells.
Definition at line 123 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::CalculateDividingCellCentreLocations(), TissueSimulation< DIM >::mNoBirth, and TissueSimulation< DIM >::mrTissue.
Referenced by TissueSimulation< DIM >::AfterSolve(), and TissueSimulation< DIM >::Solve().
c_vector< double, DIM > TissueSimulation< DIM >::CalculateDividingCellCentreLocations | ( | TissueCell * | pParentCell | ) | [inline, protected, 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.
pParentCell | pointer to the parent cell |
Reimplemented in CryptSimulation2d.
Definition at line 191 of file TissueSimulation.cpp.
References CancerParameters::GetDivisionSeparation(), CancerParameters::Instance(), and TissueSimulation< DIM >::mrTissue.
Referenced by TissueSimulation< DIM >::DoCellBirth().
unsigned TissueSimulation< DIM >::DoCellRemoval | ( | ) | [inline, protected] |
During a simulation time step, process any cell sloughing or death
This uses the cell killers to remove cells and associated nodes from the facade class.
Definition at line 164 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mCellKillers, and TissueSimulation< DIM >::mrTissue.
Referenced by TissueSimulation< DIM >::AfterSolve(), and TissueSimulation< DIM >::Solve().
void TissueSimulation< DIM >::UpdateNodePositions | ( | const std::vector< c_vector< double, DIM > > & | rNodeForces | ) | [inline, protected, virtual] |
Moves each node to a new position for this timestep by calling the tissue UpdateNodeLocations() method then applying any boundary conditions.
rNodeForces | the forces on nodes |
Definition at line 240 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::ApplyTissueBoundaryConditions(), TissueSimulation< DIM >::mDt, and TissueSimulation< DIM >::mrTissue.
Referenced by TissueSimulation< DIM >::Solve().
virtual void TissueSimulation< DIM >::ApplyTissueBoundaryConditions | ( | const std::vector< c_vector< double, DIM > > & | rOldLocations | ) | [inline, protected, virtual] |
Apply any tissue boundary conditions. Can be overridden in subclasses.
rOldLocations |
Definition at line 261 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::UpdateNodePositions().
virtual void TissueSimulation< DIM >::PostSolve | ( | ) | [inline, protected, virtual] |
A method for subclasses to do something at the end of each timestep
Reimplemented in CryptSimulation2d.
Definition at line 268 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::Solve().
virtual void TissueSimulation< DIM >::SetupSolve | ( | ) | [inline, protected, virtual] |
A method for subclasses to do something at before the start of the time loop
Reimplemented in CryptSimulation2d.
Definition at line 275 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::Solve().
void TissueSimulation< DIM >::AfterSolve | ( | ) | [inline, protected, virtual] |
Implements out cell birth, cell death and a tissue update if necessary for a final time. This method may be overridden in subclasses to do something at the end of each time loop. Note that each subclass should also call the base class method.
Reimplemented in CryptSimulation2d.
Definition at line 628 of file TissueSimulation.cpp.
References GenericEventHandler< 9, CancerEventHandler >::BeginEvent(), TissueSimulation< DIM >::DoCellBirth(), TissueSimulation< DIM >::DoCellRemoval(), GenericEventHandler< 9, CancerEventHandler >::EndEvent(), SimulationTime::Instance(), TissueSimulation< DIM >::mNumBirths, TissueSimulation< DIM >::mNumDeaths, TissueSimulation< DIM >::mrTissue, and TissueSimulation< DIM >::mUpdateTissue.
Referenced by CryptSimulation2d::AfterSolve(), and TissueSimulation< DIM >::Solve().
bool TissueSimulation< DIM >::StoppingEventHasOccurred | ( | ) | [inline, protected, virtual] |
A child class can overload this if they want the simulation to stop based on certain conditions before the specified end time (for example, run until a crypt becomes monoclonal).
Definition at line 670 of file TissueSimulation.cpp.
Referenced by TissueSimulation< DIM >::Solve().
std::vector< double > TissueSimulation< DIM >::GetNodeLocation | ( | const unsigned & | rNodeIndex | ) | [inline] |
Get a node's location (ONLY FOR TESTING)
rNodeIndex | the node index |
Definition at line 391 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mrTissue.
c_vector< unsigned, NUM_CELL_MUTATION_STATES > TissueSimulation< DIM >::GetCellMutationStateCount | ( | ) | [inline] |
Find out how many cells of each mutation state there are
Definition at line 677 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputCellMutationStates, and TissueSimulation< DIM >::mrTissue.
c_vector< unsigned, NUM_CELL_TYPES > TissueSimulation< DIM >::GetCellTypeCount | ( | ) | [inline] |
Find out how many cells of each type there are
Definition at line 688 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputCellTypes, and TissueSimulation< DIM >::mrTissue.
c_vector< unsigned, 5 > TissueSimulation< DIM >::GetCellCyclePhaseCount | ( | ) | [inline] |
Find out how many cells in each cell cycle phase there are
Definition at line 699 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputCellCyclePhases, and TissueSimulation< DIM >::mrTissue.
double TissueSimulation< DIM >::GetDt | ( | ) | [inline] |
Definition at line 269 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mDt.
unsigned TissueSimulation< DIM >::GetNumBirths | ( | ) | [inline] |
Definition at line 276 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mNumBirths.
unsigned TissueSimulation< DIM >::GetNumDeaths | ( | ) | [inline] |
Definition at line 283 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mNumDeaths.
std::string TissueSimulation< DIM >::GetOutputDirectory | ( | void | ) | [inline] |
Get the output directory of the simulation.
Definition at line 306 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputDirectory.
void TissueSimulation< DIM >::SetDt | ( | double | dt | ) | [inline] |
Set the timestep of the simulation.
dt | the timestep to use |
Definition at line 261 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mDt.
void TissueSimulation< DIM >::SetEndTime | ( | double | endTime | ) | [inline] |
Set the end time and resets the timestep to be endtime/100.
endTime | the end time to use |
Definition at line 290 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mEndTime.
void TissueSimulation< DIM >::SetOutputDirectory | ( | std::string | outputDirectory | ) | [inline] |
Set the output directory of the simulation.
outputDirectory | the output directory to use |
Definition at line 298 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputDirectory, and TissueSimulation< DIM >::mSimulationOutputDirectory.
void TissueSimulation< DIM >::SetSamplingTimestepMultiple | ( | unsigned | samplingTimestepMultiple | ) | [inline] |
Set the ratio of the number of actual timesteps to the number of timesteps at which results are written to file. Default value is set to 1 by the constructor.
samplingTimestepMultiple | the ratio to use |
Definition at line 313 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mSamplingTimestepMultiple.
void TissueSimulation< DIM >::SetNoBirth | ( | bool | noBirth | ) | [inline] |
Set the simulation to run with no birth.
noBirth | whether to run with no birth |
Definition at line 342 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mNoBirth.
void TissueSimulation< DIM >::SetOutputCellMutationStates | ( | bool | outputCellMutationStates | ) | [inline] |
Set the simulation to count and store the number of each cell mutation state.
outputCellMutationStates | whether to output cell mutation states |
Definition at line 349 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputCellMutationStates.
void TissueSimulation< DIM >::SetOutputCellAncestors | ( | bool | outputCellAncestors | ) | [inline] |
Set the simulation to output the cell ancestors if they are set.
outputCellAncestors | whether to output cell ancestors |
Definition at line 363 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputCellAncestors.
void TissueSimulation< DIM >::SetOutputCellTypes | ( | bool | outputCellTypes | ) | [inline] |
Set the simulation to count and store the number of each cell type.
outputCellTypes | whether to output cell types |
Definition at line 356 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputCellTypes.
void TissueSimulation< DIM >::SetOutputCellVariables | ( | bool | outputCellVariables | ) | [inline] |
Set the simulation to output the cell-cycle variables.
outputCellVariables | whether to output cell-cycle variables |
Definition at line 370 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputCellVariables.
void TissueSimulation< DIM >::SetOutputCellCyclePhases | ( | bool | outputCellCyclePhases | ) | [inline] |
Set the simulation to output the cell cycle phases.
The test for this method is in TestCryptSimulation2d::TestStandardResultForArchivingTestsBelow().
outputCellCyclePhases | whether to output cell-cycle phases |
Definition at line 377 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mOutputCellCyclePhases.
void TissueSimulation< DIM >::SetUpdateTissueRule | ( | bool | updateTissue | ) | [inline] |
Set whether to update the topology of the tissue at each time step.
updateTissue | whether to update the tissue each time step |
Definition at line 335 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mUpdateTissue.
void TissueSimulation< DIM >::AddCellKiller | ( | AbstractCellKiller< DIM > * | pCellKiller | ) | [inline] |
Add a cell killer to be used in this simulation.
pCellKiller | pointer to a cell killer |
Definition at line 384 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mCellKillers.
void TissueSimulation< DIM >::Solve | ( | ) | [inline] |
Main solve method.
This method sets up the simulation time, creates output files, and initialises the tissue. It then iterates through a time loop. At each time step, first any cell death or birth is implemented, then the tissue topology is updated, then the forces are recalculated and the tissue evolved according to whatever force laws are present in the simulation, and finally the results for that time step are output to file. At the end of the time loop, the method closes any output files.
If the tissue has a mesh, then we currently must call the Update() method at each time step. Otherwise, we only need to call Update() after there has been any cell birth or cell death.
Definition at line 403 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::AfterSolve(), GenericEventHandler< 9, CancerEventHandler >::BeginEvent(), TissueSimulation< DIM >::DoCellBirth(), TissueSimulation< DIM >::DoCellRemoval(), GenericEventHandler< 9, CancerEventHandler >::EndEvent(), SimulationTime::GetTime(), SimulationTime::GetTimeStepsElapsed(), SimulationTime::IncrementTimeOneStep(), SimulationTime::Instance(), TissueSimulation< DIM >::mDt, TissueSimulation< DIM >::mEndTime, TissueSimulation< DIM >::mForceCollection, TissueSimulation< DIM >::mNumBirths, TissueSimulation< DIM >::mNumDeaths, TissueSimulation< DIM >::mOutputCellAncestors, TissueSimulation< DIM >::mOutputCellCyclePhases, TissueSimulation< DIM >::mOutputCellMutationStates, TissueSimulation< DIM >::mOutputCellTypes, TissueSimulation< DIM >::mOutputCellVariables, TissueSimulation< DIM >::mOutputDirectory, TissueSimulation< DIM >::mpSetupFile, TissueSimulation< DIM >::mrTissue, TissueSimulation< DIM >::mSamplingTimestepMultiple, TissueSimulation< DIM >::mSimulationOutputDirectory, TissueSimulation< DIM >::mUpdateTissue, OutputFileHandler::OpenOutputFile(), TissueSimulation< DIM >::PostSolve(), SimulationTime::ResetEndTimeAndNumberOfTimeSteps(), SimulationTime::SetEndTimeAndNumberOfTimeSteps(), TissueSimulation< DIM >::SetupSolve(), TissueSimulation< DIM >::StoppingEventHasOccurred(), TissueSimulation< DIM >::UpdateNodePositions(), and TissueSimulation< DIM >::WriteVisualizerSetupFile().
AbstractTissue< DIM > & TissueSimulation< DIM >::rGetTissue | ( | ) | [inline] |
Definition at line 321 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mrTissue.
const AbstractTissue< DIM > & TissueSimulation< DIM >::rGetTissue | ( | ) | const [inline] |
Definition at line 328 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mrTissue.
const std::vector< AbstractForce< DIM > * > TissueSimulation< DIM >::rGetForceCollection | ( | ) | const [inline] |
Definition at line 184 of file TissueSimulation.cpp.
References TissueSimulation< DIM >::mForceCollection.
friend class boost::serialization::access [friend] |
Needed for serialization.
Reimplemented in CryptSimulation2d.
Definition at line 166 of file TissueSimulation.hpp.
double TissueSimulation< DIM >::mDt [protected] |
Time step.
Definition at line 94 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::GetDt(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetDt(), TissueSimulation< DIM >::Solve(), TissueSimulation< DIM >::TissueSimulation(), and TissueSimulation< DIM >::UpdateNodePositions().
double TissueSimulation< DIM >::mEndTime [protected] |
Time to run the Solve() method up to.
Definition at line 97 of file TissueSimulation.hpp.
Referenced by TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetEndTime(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
AbstractTissue<DIM>& TissueSimulation< DIM >::mrTissue [protected] |
Facade encapsulating cells in the tissue being simulated.
Definition at line 100 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::AfterSolve(), TissueSimulation< DIM >::CalculateDividingCellCentreLocations(), TissueSimulation< DIM >::DoCellBirth(), TissueSimulation< DIM >::DoCellRemoval(), TissueSimulation< DIM >::GetCellCyclePhaseCount(), TissueSimulation< DIM >::GetCellMutationStateCount(), TissueSimulation< DIM >::GetCellTypeCount(), TissueSimulation< DIM >::GetNodeLocation(), TissueSimulation< DIM >::rGetTissue(), TissueSimulation< DIM >::Solve(), TissueSimulation< DIM >::TissueSimulation(), TissueSimulation< DIM >::UpdateNodePositions(), and TissueSimulation< DIM >::~TissueSimulation().
bool TissueSimulation< DIM >::mDeleteTissue [protected] |
Whether to delete the facade in the destructor.
Definition at line 103 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::TissueSimulation(), and TissueSimulation< DIM >::~TissueSimulation().
bool TissueSimulation< DIM >::mAllocatedMemoryForForceCollection [protected] |
Whether delete the collection of force laws in the destructor.
Definition at line 106 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::TissueSimulation(), and TissueSimulation< DIM >::~TissueSimulation().
bool TissueSimulation< DIM >::mInitialiseCells [protected] |
Whether to initialise the cells.
Definition at line 109 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::TissueSimulation().
bool TissueSimulation< DIM >::mNoBirth [protected] |
Whether to run the simulation with no birth (defaults to false).
Definition at line 112 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::DoCellBirth(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetNoBirth(), and TissueSimulation< DIM >::TissueSimulation().
bool TissueSimulation< DIM >::mUpdateTissue [protected] |
Whether to update the topology of the tissue at each time step (defaults to true).
Definition at line 115 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::AfterSolve(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetUpdateTissueRule(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
bool TissueSimulation< DIM >::mOutputCellMutationStates [protected] |
Whether to count the number of each cell mutation state and output to file
Definition at line 118 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::GetCellMutationStateCount(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetOutputCellMutationStates(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
bool TissueSimulation< DIM >::mOutputCellAncestors [protected] |
Whether to output the ancestor of each cell to a visualizer file
Definition at line 121 of file TissueSimulation.hpp.
Referenced by TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetOutputCellAncestors(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
bool TissueSimulation< DIM >::mOutputCellTypes [protected] |
Whether to count the number of each cell type and output to file
Definition at line 124 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::GetCellTypeCount(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetOutputCellTypes(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
bool TissueSimulation< DIM >::mOutputCellVariables [protected] |
Whether to write the cell variables to a file
Definition at line 127 of file TissueSimulation.hpp.
Referenced by TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetOutputCellVariables(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
bool TissueSimulation< DIM >::mOutputCellCyclePhases [protected] |
Whether to write the cell cycle phases to a file
Definition at line 130 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::GetCellCyclePhaseCount(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetOutputCellCyclePhases(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
std::string TissueSimulation< DIM >::mOutputDirectory [protected] |
Output directory (a subfolder of tmp/[USERNAME]/testoutput)
Definition at line 133 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::GetOutputDirectory(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetOutputDirectory(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
std::string TissueSimulation< DIM >::mSimulationOutputDirectory [protected] |
Simulation Output directory either the same as mOutputDirectory or includes mOutputDirectory/results_from_time_[TIME]
Definition at line 136 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::SetOutputDirectory(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
out_stream TissueSimulation< DIM >::mpSetupFile [protected] |
Visualiser setup file
Definition at line 139 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::Solve().
CancerParameters* TissueSimulation< DIM >::mpParams [protected] |
The Meineke and cancer parameters
Definition at line 142 of file TissueSimulation.hpp.
Referenced by TissueSimulation< 2 >::serialize(), and TissueSimulation< DIM >::TissueSimulation().
RandomNumberGenerator* TissueSimulation< DIM >::mpRandomGenerator [protected] |
The singleton RandomNumberGenerator
Definition at line 145 of file TissueSimulation.hpp.
Referenced by TissueSimulation< 2 >::serialize(), and TissueSimulation< DIM >::TissueSimulation().
unsigned TissueSimulation< DIM >::mNumBirths [protected] |
Counts the number of births during the simulation
Definition at line 148 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::AfterSolve(), TissueSimulation< DIM >::GetNumBirths(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
unsigned TissueSimulation< DIM >::mNumDeaths [protected] |
Counts the number of deaths during the simulation
Definition at line 151 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::AfterSolve(), TissueSimulation< DIM >::GetNumDeaths(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
unsigned TissueSimulation< DIM >::mSamplingTimestepMultiple [protected] |
The ratio of the number of actual timesteps to the number of timesteps at which results are written to file
Definition at line 157 of file TissueSimulation.hpp.
Referenced by TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::SetSamplingTimestepMultiple(), TissueSimulation< DIM >::Solve(), and TissueSimulation< DIM >::TissueSimulation().
std::vector<AbstractCellKiller<DIM>*> TissueSimulation< DIM >::mCellKillers [protected] |
List of cell killers
Definition at line 160 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::AddCellKiller(), TissueSimulation< DIM >::DoCellRemoval(), TissueSimulation< 2 >::serialize(), and TissueSimulation< DIM >::~TissueSimulation().
std::vector<AbstractForce<DIM>*> TissueSimulation< DIM >::mForceCollection [protected] |
The mechanics used to determine the new location of the cells
Definition at line 163 of file TissueSimulation.hpp.
Referenced by TissueSimulation< DIM >::rGetForceCollection(), TissueSimulation< 2 >::serialize(), TissueSimulation< DIM >::Solve(), TissueSimulation< DIM >::TissueSimulation(), and TissueSimulation< DIM >::~TissueSimulation().