chombo-discharge
Loading...
Searching...
No Matches
CD_ItoKMCSurfaceReaction.H
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2021-2026 SINTEF Energy Research
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 */
6
13#ifndef CD_ITOKMCSURFACEREACTION_H
14#define CD_ITOKMCSURFACEREACTION_H
15
16// Std includes
17#include <list>
18
19// Chombo includes
20#include <REAL.H>
21
22// Our includes
23#include <CD_NamespaceHeader.H>
24
25namespace Physics {
26namespace ItoKMC {
27
34{
35public:
40
47 inline ItoKMCSurfaceReaction(const size_t a_reactant,
48 const std::list<size_t> a_products,
49 const Real a_efficiency) noexcept;
50
54 virtual inline ~ItoKMCSurfaceReaction() noexcept;
55
62 inline void
63 define(const size_t a_reactant, const std::list<size_t> a_products, const Real a_efficiency) noexcept;
64
69 inline const size_t&
70 getReactant() const noexcept;
71
76 inline size_t&
77 getReactant() noexcept;
78
83 inline const std::list<size_t>&
84 getProducts() const noexcept;
85
90 inline std::list<size_t>&
91 getProducts() noexcept;
92
97 inline const Real&
98 getEfficiency() const noexcept;
99
104 inline Real&
105 getEfficiency() noexcept;
106
107protected:
112
116 std::list<size_t> m_products;
117
122};
123} // namespace ItoKMC
124} // namespace Physics
125
126#include <CD_NamespaceFooter.H>
127
129
130#endif
Implementation of CD_ItoKMCSurfaceReaction.H.
Reaction class for describing secondary emissions due to a single outgoing particle in ItoKMCPhysics.
Definition CD_ItoKMCSurfaceReaction.H:34
const Real & getEfficiency() const noexcept
Get the reaction efficiency (const).
Definition CD_ItoKMCSurfaceReactionImplem.H:67
size_t m_reactant
Source reactant index.
Definition CD_ItoKMCSurfaceReaction.H:111
std::list< size_t > m_products
Plasma product indices.
Definition CD_ItoKMCSurfaceReaction.H:116
const size_t & getReactant() const noexcept
Get the reactant species index (const).
Definition CD_ItoKMCSurfaceReactionImplem.H:43
ItoKMCSurfaceReaction()=default
Allowed, but you need to call the define function afterwards.
virtual ~ItoKMCSurfaceReaction() noexcept
Destructor.
Definition CD_ItoKMCSurfaceReactionImplem.H:29
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:33
const std::list< size_t > & getProducts() const noexcept
Get the plasma product species indices (const).
Definition CD_ItoKMCSurfaceReactionImplem.H:55
Real m_efficiency
Reaction efficiency.
Definition CD_ItoKMCSurfaceReaction.H:121
Namespace containing physics models for use with chombo-discharge.
Definition CD_AdvectionDiffusion.H:16