12#ifndef CD_ItoSpecies_H
13#define CD_ItoSpecies_H
20#include <CD_NamespaceHeader.H>
158#include <CD_NamespaceFooter.H>
Declaration of a particle class for Ito diffusion.
Class that acts as user interface for parsing initial data and mobility/diffusion kernels into ItoSol...
Definition CD_ItoSpecies.H:28
ItoSpecies()
Default constructor, but user should set the name, charge/mobility/diffusivity etc.
Definition CD_ItoSpecies.cpp:16
bool isDiffusive() const
Return diffusive or not.
Definition CD_ItoSpecies.cpp:60
int m_chargeNumber
Charge.
Definition CD_ItoSpecies.H:130
std::string getName() const
Return name.
Definition CD_ItoSpecies.cpp:42
bool m_isDiffusive
Diffusive ItoSpecies or not.
Definition CD_ItoSpecies.H:140
std::function< Real(const RealVect &x, const Real &t)> m_initialDensity
Initial density, in case the user wants to generate particles from a density distribution.
Definition CD_ItoSpecies.H:155
List< ItoParticle > m_initialParticles
Initial particles.
Definition CD_ItoSpecies.H:150
bool isMobile() const
Mobile ItoSpecies or not.
Definition CD_ItoSpecies.cpp:66
const std::function< Real(const RealVect &x, const Real &t)> & getInitialDensity() const
Return the initial density.
Definition CD_ItoSpecies.cpp:54
virtual Real mobility(const Real a_energy) const
Compute the mobility as a function of energy.
Definition CD_ItoSpecies.cpp:90
std::string m_name
Ito_Species name.
Definition CD_ItoSpecies.H:125
bool m_isMobile
Mobile ItoSpecies or not.
Definition CD_ItoSpecies.H:145
int m_maxInitialParticlesPerCell
Maximum number of initial numerical particles per cell.
Definition CD_ItoSpecies.H:135
virtual ~ItoSpecies()
Destructor (does nothing):
Definition CD_ItoSpecies.cpp:38
int getChargeNumber() const
Return charge.
Definition CD_ItoSpecies.cpp:48
List< ItoParticle > & getInitialParticles()
Get initial particles – this is called by ItoSolver when filling the solver with initial particles.
Definition CD_ItoSpecies.cpp:78
virtual void setInitialDensity(const std::function< Real(const RealVect &x, const Real &t)> &a_initialDensity)
Set the initial species density.
Definition CD_ItoSpecies.cpp:72
virtual Real diffusion(const Real a_energy) const
Compute the diffusion coefficient.
Definition CD_ItoSpecies.cpp:96
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:37
TracerParticleSolver()
Default constructor.
Definition CD_TracerParticleSolverImplem.H:25