DiffusionCaUpdateRule< DIM > Class Template Reference

#include <DiffusionCaUpdateRule.hpp>

Inherits AbstractCaUpdateRule< DIM >.

Collaboration diagram for DiffusionCaUpdateRule< DIM >:
Collaboration graph
[legend]

List of all members.

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

Detailed Description

template<unsigned DIM>
class DiffusionCaUpdateRule< DIM >

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.


Constructor & Destructor Documentation

template<unsigned DIM>
DiffusionCaUpdateRule< DIM >::DiffusionCaUpdateRule (  )  [inline]

Constructor.

Definition at line 39 of file DiffusionCaUpdateRule.cpp.

template<unsigned DIM>
DiffusionCaUpdateRule< DIM >::~DiffusionCaUpdateRule (  )  [inline]

Destructor.

Definition at line 46 of file DiffusionCaUpdateRule.cpp.


Member Function Documentation

template<unsigned DIM>
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.

Parameters:
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
Returns:
The probability of the cell moving from the current node to the target node

Implements AbstractCaUpdateRule< DIM >.

Definition at line 51 of file DiffusionCaUpdateRule.cpp.

References CaBasedCellPopulation< DIM >::GetNode(), DiffusionCaUpdateRule< DIM >::mDiffusionParameter, and CaBasedCellPopulation< DIM >::rGetMesh().

template<unsigned DIM>
double DiffusionCaUpdateRule< DIM >::GetDiffusionParameter (  )  [inline]
Returns:
mDiffusionParameter

Definition at line 65 of file DiffusionCaUpdateRule.cpp.

References DiffusionCaUpdateRule< DIM >::mDiffusionParameter.

template<unsigned DIM>
void DiffusionCaUpdateRule< DIM >::OutputUpdateRuleParameters ( out_stream &  rParamsFile  )  [inline, virtual]
Todo:
#2066 return the time step (mDt) defined in the calculation of the probability of a cell moving to a certain site
Todo:
#2066 define the time step (dt) defined in the calculation of the probability of a cell moving to a certain site

Overridden OutputUpdateRuleParameters() method.

Parameters:
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.

template<unsigned DIM>
template<class Archive >
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.

Parameters:
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.

template<unsigned DIM>
void DiffusionCaUpdateRule< DIM >::SetDiffusionParameter ( double  diffusionParameter  )  [inline]

Set mDiffusionParameter.

Parameters:
diffusionParameter the new value of mDiffusionParameter

Definition at line 71 of file DiffusionCaUpdateRule.cpp.

References DiffusionCaUpdateRule< DIM >::mDiffusionParameter.


Friends And Related Function Documentation

template<unsigned DIM>
friend class boost::serialization::access [friend]

Needed for serialization.

Reimplemented from AbstractCaUpdateRule< DIM >.

Definition at line 77 of file DiffusionCaUpdateRule.hpp.


Member Data Documentation

template<unsigned DIM>
double DiffusionCaUpdateRule< DIM >::mDiffusionParameter [private]
template<unsigned DIM>
double DiffusionCaUpdateRule< DIM >::mDt [private]

The timestep (units?) for this probability

Todo:
#2066

Definition at line 75 of file DiffusionCaUpdateRule.hpp.


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

Generated by  doxygen 1.6.2