Chaste Commit::baa90ac2819b962188b7562f2326be23c47859a7
|
#include <OnLatticeSimulation.hpp>
Public Member Functions | |
OnLatticeSimulation (AbstractCellPopulation< DIM > &rCellPopulation, bool deleteCellPopulationInDestructor=false, bool initialiseCells=true) | |
void | AddUpdateRule (boost::shared_ptr< AbstractUpdateRule< DIM > > pUpdateRule) |
void | RemoveAllUpdateRules () |
void | OutputAdditionalSimulationSetup (out_stream &rParamsFile) |
void | OutputSimulationParameters (out_stream &rParamsFile) |
Public Member Functions inherited from AbstractCellBasedSimulation< DIM > | |
AbstractCellBasedSimulation (AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM > &rCellPopulation, bool deleteCellPopulationInDestructor=false, bool initialiseCells=true) | |
virtual | ~AbstractCellBasedSimulation () |
std::vector< double > | GetNodeLocation (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 | SetUpdatingTimestepMultiple (unsigned updatingTimestepMultiple) |
void | SetNoBirth (bool noBirth) |
void | SetUpdateCellPopulationRule (bool updateCellPopulation) |
bool | GetUpdateCellPopulationRule () |
void | AddCellKiller (boost::shared_ptr< AbstractCellKiller< ELEMENT_DIM > > pCellKiller) |
void | RemoveAllCellKillers () |
void | AddSimulationModifier (boost::shared_ptr< AbstractCellBasedSimulationModifier< ELEMENT_DIM, ELEMENT_DIM > > pSimulationModifier) |
std::vector< boost::shared_ptr< AbstractCellBasedSimulationModifier< ELEMENT_DIM, ELEMENT_DIM > > > * | GetSimulationModifiers () |
void | AddTopologyUpdateSimulationModifier (boost::shared_ptr< AbstractCellBasedSimulationModifier< ELEMENT_DIM, ELEMENT_DIM > > pSimulationModifier) |
std::vector< boost::shared_ptr< AbstractCellBasedSimulationModifier< ELEMENT_DIM, ELEMENT_DIM > > > * | GetTopologyUpdateSimulationModifiers () |
void | Solve () |
AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM > & | rGetCellPopulation () |
const AbstractCellPopulation< ELEMENT_DIM, ELEMENT_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 | |
void | UpdateCellPopulation () |
void | UpdateCellLocationsAndTopology () |
Protected Member Functions inherited from AbstractCellBasedSimulation< DIM > | |
virtual void | WriteVisualizerSetupFile () |
virtual unsigned | DoCellBirth () |
unsigned | DoCellRemoval () |
virtual void | SetupSolve () |
virtual bool | StoppingEventHasOccurred () |
void | OutputSimulationSetup () |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
Friends | |
class | boost::serialization::access |
Additional Inherited Members | |
Protected Attributes inherited from AbstractCellBasedSimulation< DIM > | |
double | mDt |
double | mEndTime |
AbstractCellPopulation< ELEMENT_DIM, ELEMENT_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< ELEMENT_DIM > > > | mCellKillers |
std::vector< boost::shared_ptr< AbstractCellBasedSimulationModifier< ELEMENT_DIM, ELEMENT_DIM > > > | mSimulationModifiers |
std::vector< boost::shared_ptr< AbstractCellBasedSimulationModifier< ELEMENT_DIM, ELEMENT_DIM > > > | mTopologyUpdateSimulationModifiers |
unsigned | mSamplingTimestepMultiple |
unsigned | mUpdatingTimestepMultiple |
Run an on-lattice 2D or 3D cell-based simulation.
The OnLatticeSimulation is constructed with a CellPopulation, which updates the correspondence between each Cell and its spatial representation and handles cell division (governed by the CellCycleModel associated with each cell). Once constructed, one or more Update rules may be passed to the OnLatticeSimulation object, to define the processes which update cells in the CellPopulation. Similarly, one or more CellKillers may be passed to the OnLatticeSimulation object to specify conditions in which Cells may die.
Definition at line 58 of file OnLatticeSimulation.hpp.
OnLatticeSimulation< DIM >::OnLatticeSimulation | ( | AbstractCellPopulation< DIM > & | rCellPopulation, |
bool | deleteCellPopulationInDestructor = false , |
||
bool | initialiseCells = true |
||
) |
Constructor.
rCellPopulation | A cell population object |
deleteCellPopulationInDestructor | Whether to delete the cell population on destruction to free up memory (defaults to false) |
initialiseCells | Whether to initialise cells (defaults to true, set to false when loading from an archive) |
Definition at line 41 of file OnLatticeSimulation.cpp.
References EXCEPTION.
void OnLatticeSimulation< DIM >::AddUpdateRule | ( | boost::shared_ptr< AbstractUpdateRule< DIM > > | pUpdateRule | ) |
Add an update rule to be used in this simulation.
pUpdateRule | shared pointer to an update rule law |
Definition at line 55 of file OnLatticeSimulation.cpp.
References AbstractOnLatticeCellPopulation< DIM >::AddUpdateRule().
|
virtual |
Overridden OutputAdditionalSimulationSetup() method to output the force and cell population boundary condition information.
rParamsFile | the file stream to which the parameters are output |
Implements AbstractCellBasedSimulation< DIM >.
Definition at line 87 of file OnLatticeSimulation.cpp.
References AbstractOnLatticeCellPopulation< DIM >::GetUpdateRuleCollection().
|
virtual |
Overridden OutputSimulationParameters() method.
rParamsFile | the file stream to which the parameters are output |
Implements AbstractCellBasedSimulation< DIM >.
Definition at line 107 of file OnLatticeSimulation.cpp.
References AbstractCellBasedSimulation< ELEMENT_DIM, SPACE_DIM >::OutputSimulationParameters().
void OnLatticeSimulation< DIM >::RemoveAllUpdateRules | ( | ) |
Remove any update rules that have previously been passed to the cell population.
Definition at line 62 of file OnLatticeSimulation.cpp.
References AbstractOnLatticeCellPopulation< DIM >::RemoveAllUpdateRules().
|
inlineprivate |
Serialize the object and any member variables.
archive | the archive |
version | the current version of this class |
Definition at line 71 of file OnLatticeSimulation.hpp.
|
protectedvirtual |
Overridden UpdateCellLocationsAndTopology() method.
If using a PottsBasedCellPopulation, this method performs Monte Carlo sampling.
Implements AbstractCellBasedSimulation< DIM >.
Definition at line 69 of file OnLatticeSimulation.cpp.
References GenericEventHandler< 11, CellBasedEventHandler >::BeginEvent(), GenericEventHandler< 11, CellBasedEventHandler >::EndEvent(), and AbstractOnLatticeCellPopulation< DIM >::UpdateCellLocations().
|
protectedvirtual |
Overridden UpdateCellPopulation() method.
If using a CaBasedCellPopulation, this method does nothing if at the start of a simulation that has just been loaded, to ensure consistency in random number generation.
Reimplemented from AbstractCellBasedSimulation< DIM >.
Definition at line 77 of file OnLatticeSimulation.cpp.
References SimulationTime::GetTimeStepsElapsed(), SimulationTime::Instance(), and AbstractCellBasedSimulation< ELEMENT_DIM, SPACE_DIM >::UpdateCellPopulation().
|
friend |
Needed for serialization.
Definition at line 63 of file OnLatticeSimulation.hpp.