template<class Init, class Coefficients>
walker::GeneralizedDirichlet class

Lochner's generalized Dirichlet SDE used polymorphically with DiffEq.

The template arguments specify policies and are used to configure the behavior of the class. The policies are:

  • Init - initialization policy, see DiffEq/InitPolicy.h
  • Coefficients - coefficients policy, see DiffEq/GeneralizedDirichletCoeffPolicy.h

Constructors, destructors, conversion operators

GeneralizedDirichlet(ncomp_t c) explicit
Constructor.

Public functions

void initialize(int stream, tk::Particles& particles)
void advance(tk::Particles& particles, int stream, tk::real dt, tk::real, const std::map<tk::ctr::Product, tk::real>&)
Advance particles according to the generalized Dirichlet SDE.

Function documentation

template<class Init, class Coefficients>
walker::GeneralizedDirichlet<Init, Coefficients>::GeneralizedDirichlet(ncomp_t c) explicit

Constructor.

Parameters
in Index specifying which generalized Dirichlet system of SDEs to construct. There can be multiple gendir ... end blocks in a control file. This index specifies which generalized Dirichlet SDE system to instantiate. The index corresponds to the order in which the gendir ... end blocks are given the control file.

template<class Init, class Coefficients>
void walker::GeneralizedDirichlet<Init, Coefficients>::initialize(int stream, tk::Particles& particles)

Parameters
stream in Thread (or more precisely stream) ID
particles in/out Array of particle properties

Initalize SDE, prepare for time integration

Set initial conditions using initialization policy

template<class Init, class Coefficients>
void walker::GeneralizedDirichlet<Init, Coefficients>::advance(tk::Particles& particles, int stream, tk::real dt, tk::real, const std::map<tk::ctr::Product, tk::real>&)

Advance particles according to the generalized Dirichlet SDE.

Parameters
particles in/out Array of particle properties
stream in Thread (or more precisely stream) ID
dt in Time step size