chombo-discharge
Loading...
Searching...
No Matches
CD_RteSpeciesJSON.H
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2022-2026 SINTEF Energy Research
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 */
6
13#ifndef CD_RTESPECIESJSON_H
14#define CD_RTESPECIESJSON_H
15
16// Std includes
17#include <list>
18
19// Chombo includes
20#include <RealVect.H>
21
22// Our includes
23#include <CD_RtSpecies.H>
24#include <CD_NamespaceHeader.H>
25
26namespace Physics {
27 namespace CdrPlasma {
28
33 {
34 public:
39 using KappaFunction = std::function<Real(const RealVect a_pos)>;
40
44 RteSpeciesJSON() = default;
45
51 RteSpeciesJSON(const std::string& a_name, const KappaFunction& a_kappaFunction);
52
57 RteSpeciesJSON(const RteSpeciesJSON& a_other) = delete;
58
63 RteSpeciesJSON(const RteSpeciesJSON&& a_other) = delete;
64
70 operator=(const RteSpeciesJSON& a_other) = delete;
71
77 operator=(const RteSpeciesJSON&& a_other) = delete;
78
82 virtual ~RteSpeciesJSON();
83
89 void
90 define(const std::string& a_name, const KappaFunction& a_kappaFunction);
91
97 Real
98 getAbsorptionCoefficient(const RealVect& a_pos) const override final;
99
100 protected:
105
110 };
111 } // namespace CdrPlasma
112} // namespace Physics
113
114#include <CD_NamespaceFooter.H>
115
116#endif
Declaration of a class which supplies a user interface to radiative transfer code.
Encapsulation of radiative transfer species for usage with CdrPlasmaJSON.
Definition CD_RteSpeciesJSON.H:33
void define(const std::string &a_name, const KappaFunction &a_kappaFunction)
Define function.
Definition CD_RteSpeciesJSON.cpp:29
RteSpeciesJSON & operator=(const RteSpeciesJSON &&a_other)=delete
Disallowed move assignment.
bool m_isDefined
Is defined or not.
Definition CD_RteSpeciesJSON.H:104
RteSpeciesJSON(const RteSpeciesJSON &&a_other)=delete
Disallowed move constructor.
RteSpeciesJSON()=default
Default constructor. Must subsequently call define.
RteSpeciesJSON(const RteSpeciesJSON &a_other)=delete
Disallowed constructor.
RteSpeciesJSON & operator=(const RteSpeciesJSON &a_other)=delete
Disallowed copy assignment.
virtual ~RteSpeciesJSON()
Destructor.
Definition CD_RteSpeciesJSON.cpp:23
std::function< Real(const RealVect a_pos)> KappaFunction
Alias for absorption length function.
Definition CD_RteSpeciesJSON.H:39
KappaFunction m_absorptionFunction
Absorption coefficient function.
Definition CD_RteSpeciesJSON.H:109
Real getAbsorptionCoefficient(const RealVect &a_pos) const override final
Initial data function.
Definition CD_RteSpeciesJSON.cpp:36
Declaration of a class that defines an interface to radiative transfer solvers, i....
Definition CD_RtSpecies.H:31
Namespace containing physics models for use with chombo-discharge.
Definition CD_AdvectionDiffusion.H:16