chombo-discharge
CD_ItoKMCSurfaceReactionImplem.H
Go to the documentation of this file.
1 /* chombo-discharge
2  * Copyright © 2023 SINTEF Energy Research.
3  * Please refer to Copyright.txt and LICENSE in the chombo-discharge root directory.
4  */
5 
12 #ifndef CD_ItoKMCSurfaceReactionImplem_H
13 #define CD_ItoKMCSurfaceReactionImplem_H
14 
15 // Our includes
17 #include <CD_NamespaceHeader.H>
18 
19 using namespace Physics::ItoKMC;
20 
21 inline ItoKMCSurfaceReaction::ItoKMCSurfaceReaction(const size_t a_reactant,
22  const std::list<size_t> a_products,
23  const Real a_efficiency) noexcept
24 {
25  this->define(a_reactant, a_products, a_efficiency);
26 }
27 
29 {}
30 
31 inline void
32 ItoKMCSurfaceReaction::define(const size_t a_reactant,
33  const std::list<size_t> a_products,
34  const Real a_efficiency) noexcept
35 {
36  m_reactant = a_reactant;
37  m_products = a_products;
38  m_efficiency = a_efficiency;
39 }
40 
41 inline const size_t&
43 {
44  return m_reactant;
45 }
46 
47 inline size_t&
49 {
50  return m_reactant;
51 }
52 
53 inline const std::list<size_t>&
55 {
56  return m_products;
57 }
58 
59 inline std::list<size_t>&
61 {
62  return m_products;
63 }
64 
65 inline const Real&
67 {
68  return m_efficiency;
69 }
70 
71 inline Real&
73 {
74  return m_efficiency;
75 }
76 
77 #include <CD_NamespaceFooter.H>
78 
79 #endif
Declaration of a class that encapsulates a set secondary emission at EBs and domain edges/faces.
const Real & getEfficiency() const noexcept
Get the reaction efficiency.
Definition: CD_ItoKMCSurfaceReactionImplem.H:66
size_t m_reactant
Source reactant index.
Definition: CD_ItoKMCSurfaceReaction.H:103
std::list< size_t > m_products
Plasma product indices.
Definition: CD_ItoKMCSurfaceReaction.H:108
const size_t & getReactant() const noexcept
Get the reactant.
Definition: CD_ItoKMCSurfaceReactionImplem.H:42
ItoKMCSurfaceReaction()=default
Allowed, but you need to call the define function afterwards.
virtual ~ItoKMCSurfaceReaction() noexcept
Destructor.
Definition: CD_ItoKMCSurfaceReactionImplem.H:28
void define(const size_t a_reactant, const std::list< size_t > a_products, const Real a_efficiency) noexcept
Full define function.
Definition: CD_ItoKMCSurfaceReactionImplem.H:32
const std::list< size_t > & getProducts() const noexcept
Get the plasma products.
Definition: CD_ItoKMCSurfaceReactionImplem.H:54
Real m_efficiency
Reaction efficiency.
Definition: CD_ItoKMCSurfaceReaction.H:113