#include <DiffusionCaUpdateRule.hpp>
Inherits AbstractCaUpdateRule< DIM >.
Public Member Functions | |
DiffusionCaUpdateRule () | |
~DiffusionCaUpdateRule () | |
double | EvaluateProbability (unsigned currentNodeIndex, unsigned targetNodeIndex, CaBasedCellPopulation< DIM > &rCellPopulation, double dt, double deltaX, CellPtr cell) |
double | GetDiffusionParameter () |
void | SetDiffusionParameter (double diffusionParameter) |
void | OutputUpdateRuleParameters (out_stream &rParamsFile) |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
Private Attributes | |
double | mDiffusionParameter |
double | mDt |
Friends | |
class | TestCaUpdateRules |
class | boost::serialization::access |
A diffusion update rule for use in cell-based simulations using the cellular CA model.
The probability of moving to an adjacent lattice site is
D*delta_t/(2*delta_x*delta_x)
Where D is the mDiffusionParameter. delta_t is the timestep. delta_x is the separation of the two lattice sites.
Definition at line 58 of file DiffusionCaUpdateRule.hpp.
DiffusionCaUpdateRule< DIM >::DiffusionCaUpdateRule | ( | ) | [inline] |
Constructor.
Definition at line 39 of file DiffusionCaUpdateRule.cpp.
DiffusionCaUpdateRule< DIM >::~DiffusionCaUpdateRule | ( | ) | [inline] |
Destructor.
Definition at line 46 of file DiffusionCaUpdateRule.cpp.
double DiffusionCaUpdateRule< DIM >::EvaluateProbability | ( | unsigned | currentNodeIndex, | |
unsigned | targetNodeIndex, | |||
CaBasedCellPopulation< DIM > & | rCellPopulation, | |||
double | dt, | |||
double | deltaX, | |||
CellPtr | cell | |||
) | [inline, virtual] |
Calculate the probability of a given move.
Uses random diffusion to each neighbouring node, scaled according to distance.
currentNodeIndex | The index of the current node/lattice site | |
targetNodeIndex | The index of the target node/lattice site | |
rCellPopulation | The cell population | |
dt | is the time interval | |
deltaX | defines the size of the lattice site | |
cell | a pointer to the cell (needed if more than one cell per lattice site |
Implements AbstractCaUpdateRule< DIM >.
Definition at line 51 of file DiffusionCaUpdateRule.cpp.
References CaBasedCellPopulation< DIM >::GetNode(), DiffusionCaUpdateRule< DIM >::mDiffusionParameter, and CaBasedCellPopulation< DIM >::rGetMesh().
double DiffusionCaUpdateRule< DIM >::GetDiffusionParameter | ( | ) | [inline] |
Definition at line 65 of file DiffusionCaUpdateRule.cpp.
References DiffusionCaUpdateRule< DIM >::mDiffusionParameter.
void DiffusionCaUpdateRule< DIM >::OutputUpdateRuleParameters | ( | out_stream & | rParamsFile | ) | [inline, virtual] |
Overridden OutputUpdateRuleParameters() method.
rParamsFile | the file stream to which the parameters are output |
Implements AbstractCaUpdateRule< DIM >.
Definition at line 89 of file DiffusionCaUpdateRule.cpp.
References DiffusionCaUpdateRule< DIM >::mDiffusionParameter.
void DiffusionCaUpdateRule< DIM >::serialize | ( | Archive & | archive, | |
const unsigned int | version | |||
) | [inline, private] |
Boost Serialization method for archiving/checkpointing. Archives the object and its member variables.
archive | The boost archive. | |
version | The current version of this class. |
Reimplemented from AbstractCaUpdateRule< DIM >.
Definition at line 86 of file DiffusionCaUpdateRule.hpp.
References DiffusionCaUpdateRule< DIM >::mDiffusionParameter.
void DiffusionCaUpdateRule< DIM >::SetDiffusionParameter | ( | double | diffusionParameter | ) | [inline] |
Set mDiffusionParameter.
diffusionParameter | the new value of mDiffusionParameter |
Definition at line 71 of file DiffusionCaUpdateRule.cpp.
References DiffusionCaUpdateRule< DIM >::mDiffusionParameter.
friend class boost::serialization::access [friend] |
Needed for serialization.
Reimplemented from AbstractCaUpdateRule< DIM >.
Definition at line 77 of file DiffusionCaUpdateRule.hpp.
double DiffusionCaUpdateRule< DIM >::mDiffusionParameter [private] |
Diffusion parameter for update rule. Set to the default value 0.5 in the constructor.
Definition at line 69 of file DiffusionCaUpdateRule.hpp.
Referenced by DiffusionCaUpdateRule< DIM >::EvaluateProbability(), DiffusionCaUpdateRule< DIM >::GetDiffusionParameter(), DiffusionCaUpdateRule< DIM >::OutputUpdateRuleParameters(), DiffusionCaUpdateRule< DIM >::serialize(), and DiffusionCaUpdateRule< DIM >::SetDiffusionParameter().
double DiffusionCaUpdateRule< DIM >::mDt [private] |
The timestep (units?) for this probability
Definition at line 75 of file DiffusionCaUpdateRule.hpp.