|
chombo-discharge
|
Class that acts as user interface for parsing initial data and mobility/diffusion kernels into ItoSolver. More...
#include <CD_ItoSpecies.H>

Public Member Functions | |
| ItoSpecies () | |
| Default constructor, but user should set the name, charge/mobility/diffusivity etc. | |
| ItoSpecies (const std::string a_name, const int a_chargeNumber, const bool a_mobile, const bool a_diffusive) | |
| Full constructor. | |
| virtual | ~ItoSpecies () |
| Destructor (does nothing): | |
| std::string | getName () const |
| Return name. | |
| int | getChargeNumber () const |
| Return charge. | |
| const std::function< Real(const RealVect &x, const Real &t)> & | getInitialDensity () const |
| Return the initial density. | |
| bool | isDiffusive () const |
| Return diffusive or not. | |
| bool | isMobile () const |
| Mobile ItoSpecies or not. | |
| virtual Real | mobility (const Real a_energy) const |
| Compute the mobility as a function of energy. | |
| virtual Real | diffusion (const Real a_energy) const |
| Compute the diffusion coefficient. | |
| virtual void | setInitialDensity (const std::function< Real(const RealVect &x, const Real &t)> &a_initialDensity) |
| Set the initial species density. | |
| List< ItoParticle > & | getInitialParticles () |
| Get initial particles – this is called by ItoSolver when filling the solver with initial particles. | |
| const List< ItoParticle > & | getInitialParticles () const |
| Get initial particles – this is called by ItoSolver when filling the solver with initial particles. | |
Protected Attributes | |
| std::string | m_name |
| Ito_Species name. | |
| int | m_chargeNumber |
| Charge. | |
| int | m_maxInitialParticlesPerCell |
| Maximum number of initial numerical particles per cell. | |
| bool | m_isDiffusive |
| Diffusive ItoSpecies or not. | |
| bool | m_isMobile |
| Mobile ItoSpecies or not. | |
| List< ItoParticle > | m_initialParticles |
| Initial particles. | |
| 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. | |
Class that acts as user interface for parsing initial data and mobility/diffusion kernels into ItoSolver.
This class is used for passing initial data and information into an ItoSolver. This class is required because the ItoSolver may not know about whether or not it will use advect/diffusion, and it is also does not know about initial conditions. All of that is supplied by this class.
| ItoSpecies::ItoSpecies | ( | const std::string | a_name, |
| const int | a_chargeNumber, | ||
| const bool | a_mobile, | ||
| const bool | a_diffusive | ||
| ) |
Full constructor.
| [in] | a_name | Species name |
| [in] | a_chargeNumber | Charge number |
| [in] | a_mobile | Mobile species or not |
| [in] | a_diffusive | Diffusive species or not |
Compute the diffusion coefficient.
This is mostly used for the LEA-type models where the particle diffusivity has a parametric dependence on the energy.
| [in] | a_energy | Particle energy |
| int ItoSpecies::getChargeNumber | ( | ) | const |
Return charge.
| const std::function< Real(const RealVect &x, const Real &t)> & ItoSpecies::getInitialDensity | ( | ) | const |
Return the initial density.
| List< ItoParticle > & ItoSpecies::getInitialParticles | ( | ) |
Get initial particles – this is called by ItoSolver when filling the solver with initial particles.
| const List< ItoParticle > & ItoSpecies::getInitialParticles | ( | ) | const |
Get initial particles – this is called by ItoSolver when filling the solver with initial particles.
| std::string ItoSpecies::getName | ( | ) | const |
Return name.
Compute the mobility as a function of energy.
This is mostly used for the LEA-type models where the particle mobility has a parametric dependence on the energy.
| [in] | a_energy | Particle energy |
|
virtual |
Set the initial species density.
| [in] | a_initialDensity | Initial density. |