12#ifndef CD_ItoKMCSurfaceReactionsImplem_H
13#define CD_ItoKMCSurfaceReactionsImplem_H
17#include <CD_NamespaceHeader.H>
19using namespace Physics::ItoKMC;
37 MayDay::Warning(
"ItoKMCSurfaceReaction::addReaction - reactant indicies do not match!");
88#include <CD_NamespaceFooter.H>
Declaration of a class that encapsulates a set secondary emission at EBs and domain edges/faces.
Reaction class for describing secondary emissions due to a single outgoing particle in ItoKMCPhysics.
Definition CD_ItoKMCSurfaceReaction.H:32
size_t m_reactant
Reactant index.
Definition CD_ItoKMCSurfaceReactions.H:92
void add(const ItoKMCSurfaceReaction &a_surfaceReaction) noexcept
Add a reaction.
Definition CD_ItoKMCSurfaceReactionsImplem.H:32
const size_t & getReactant() const noexcept
Get the reactant.
Definition CD_ItoKMCSurfaceReactionsImplem.H:65
std::discrete_distribution< size_t > & getDistribution() const noexcept
Get the discrete distribution for the reaction efficiencies.
Definition CD_ItoKMCSurfaceReactionsImplem.H:83
virtual ~ItoKMCSurfaceReactions() noexcept
Destructor.
Definition CD_ItoKMCSurfaceReactionsImplem.H:26
const std::vector< Real > & getEfficiencies() const noexcept
Get the reaction efficiency.
Definition CD_ItoKMCSurfaceReactionsImplem.H:77
std::vector< Products > m_products
Plasma product indices.
Definition CD_ItoKMCSurfaceReactions.H:97
bool m_isDefined
Is defined or not.
Definition CD_ItoKMCSurfaceReactions.H:87
const std::vector< Products > & getProducts() const noexcept
Get the plasma products for each reaction.
Definition CD_ItoKMCSurfaceReactionsImplem.H:71
ItoKMCSurfaceReactions() noexcept
Allowed, but you need to call the define function afterwards.
Definition CD_ItoKMCSurfaceReactionsImplem.H:21
std::discrete_distribution< size_t > m_distribution
Discrete distribution – useful when drawing a reaction.
Definition CD_ItoKMCSurfaceReactions.H:107
std::vector< Real > m_efficiencies
Reaction efficiencies.
Definition CD_ItoKMCSurfaceReactions.H:102
void reset() noexcept
Reset method for clearing class.
Definition CD_ItoKMCSurfaceReactionsImplem.H:55
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