Chaste  Release::3.4
DiffusionCaUpdateRule< DIM > Class Template Reference

#include <DiffusionCaUpdateRule.hpp>

+ Inheritance diagram for DiffusionCaUpdateRule< DIM >:
+ Collaboration diagram for DiffusionCaUpdateRule< 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)
 
- Public Member Functions inherited from AbstractCaUpdateRule< DIM >
 AbstractCaUpdateRule ()
 
virtual ~AbstractCaUpdateRule ()
 
void OutputUpdateRuleInfo (out_stream &rParamsFile)
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 

Private Member Functions

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

Private Attributes

double mDiffusionParameter
 

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 ( )

Constructor.

Definition at line 39 of file DiffusionCaUpdateRule.cpp.

template<unsigned DIM>
DiffusionCaUpdateRule< DIM >::~DiffusionCaUpdateRule ( )

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 
)
virtual

Calculate the probability of a given move.

Uses random diffusion to each neighbouring node, scaled according to distance.

Parameters
currentNodeIndexThe index of the current node/lattice site
targetNodeIndexThe index of the target node/lattice site
rCellPopulationThe cell population
dtis the time interval
deltaXdefines the size of the lattice site
cella 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(), and CaBasedCellPopulation< DIM >::rGetMesh().

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

Definition at line 65 of file DiffusionCaUpdateRule.cpp.

template<unsigned DIM>
void DiffusionCaUpdateRule< DIM >::OutputUpdateRuleParameters ( out_stream &  rParamsFile)
virtual

Overridden OutputUpdateRuleParameters() method.

Parameters
rParamsFilethe file stream to which the parameters are output

Implements AbstractCaUpdateRule< DIM >.

Definition at line 77 of file DiffusionCaUpdateRule.cpp.

References AbstractCaUpdateRule< DIM >::OutputUpdateRuleParameters().

template<unsigned DIM>
template<class Archive >
void DiffusionCaUpdateRule< DIM >::serialize ( Archive &  archive,
const unsigned int  version 
)
inlineprivate

Boost Serialization method for archiving/checkpointing. Archives the object and its member variables.

Parameters
archiveThe boost archive.
versionThe current version of this class.

Definition at line 80 of file DiffusionCaUpdateRule.hpp.

References DiffusionCaUpdateRule< DIM >::mDiffusionParameter.

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

Set mDiffusionParameter.

Parameters
diffusionParameterthe new value of mDiffusionParameter

Definition at line 71 of file DiffusionCaUpdateRule.cpp.

Member Data Documentation

template<unsigned DIM>
double DiffusionCaUpdateRule< DIM >::mDiffusionParameter
private

Diffusion parameter for update rule. Set to the default value 0.5 in the constructor.

Todo:
provide units

Definition at line 69 of file DiffusionCaUpdateRule.hpp.

Referenced by DiffusionCaUpdateRule< DIM >::serialize().


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