chombo-discharge
Loading...
Searching...
No Matches
CD_RteSpeciesJSON.H
Go to the documentation of this file.
1/* chombo-discharge
2 * Copyright © 2022 SINTEF Energy Research.
3 * Please refer to Copyright.txt and LICENSE in the chombo-discharge root directory.
4 */
5
12#ifndef CD_RteSpeciesJSON_H
13#define CD_RteSpeciesJSON_H
14
15// Std includes
16#include <list>
17
18// Chombo includes
19#include <RealVect.H>
20
21// Our includes
22#include <CD_RtSpecies.H>
23#include <CD_NamespaceHeader.H>
24
25namespace Physics {
26 namespace CdrPlasma {
27
32 {
33 public:
38 using KappaFunction = std::function<Real(const RealVect a_pos)>;
39
43 RteSpeciesJSON() = default;
44
50 RteSpeciesJSON(const std::string& a_name, const KappaFunction& a_kappaFunction);
51
56 RteSpeciesJSON(const RteSpeciesJSON& a_other) = delete;
57
62 RteSpeciesJSON(const RteSpeciesJSON&& a_other) = delete;
63
69 operator=(const RteSpeciesJSON& a_other) = delete;
70
76 operator=(const RteSpeciesJSON&& a_other) = delete;
77
81 virtual ~RteSpeciesJSON();
82
88 void
89 define(const std::string& a_name, const KappaFunction& a_kappaFunction);
90
96 Real
97 getAbsorptionCoefficient(const RealVect a_pos) const override final;
98
99 protected:
104
109 };
110 } // namespace CdrPlasma
111} // namespace Physics
112
113#include <CD_NamespaceFooter.H>
114
115#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:32
void define(const std::string &a_name, const KappaFunction &a_kappaFunction)
Define function.
Definition CD_RteSpeciesJSON.cpp:28
RteSpeciesJSON & operator=(const RteSpeciesJSON &&a_other)=delete
Disallowed move assignment.
bool m_isDefined
Is defined or not.
Definition CD_RteSpeciesJSON.H:103
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.
Real getAbsorptionCoefficient(const RealVect a_pos) const override final
Initial data function.
Definition CD_RteSpeciesJSON.cpp:35
RteSpeciesJSON & operator=(const RteSpeciesJSON &a_other)=delete
Disallowed copy assignment.
virtual ~RteSpeciesJSON()
Destructor.
Definition CD_RteSpeciesJSON.cpp:22
std::function< Real(const RealVect a_pos)> KappaFunction
Alias for absorption length function.
Definition CD_RteSpeciesJSON.H:38
KappaFunction m_absorptionFunction
Absorption coefficient function.
Definition CD_RteSpeciesJSON.H:108
Declaration of a class that defines an interface to radiative transfer solvers, i....
Definition CD_RtSpecies.H:30
Name containing various physics models for running chombo-discharge code.
Definition CD_AdvectionDiffusion.H:15