chombo-discharge
Loading...
Searching...
No Matches
CD_CdrPlasmaStreamerTagger.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_CDRPLASMASTREAMERTAGGER_H
14#define CD_CDRPLASMASTREAMERTAGGER_H
15
16// Our includes
18#include <CD_NamespaceHeader.H>
19
20namespace Physics {
21 namespace CdrPlasma {
22
31 {
32 public:
37
45 CdrPlasmaStreamerTagger(const RefCountedPtr<CdrPlasmaPhysics>& a_physics,
46 const RefCountedPtr<CdrPlasmaStepper>& a_timeStepper,
47 const RefCountedPtr<AmrMesh>& a_amr,
48 const RefCountedPtr<ComputationalGeometry>& a_computationalGeometry);
49
54
58 virtual void
59 parseOptions() override;
60
64 virtual void
65 parseRuntimeOptions() override;
66
80 virtual Vector<Real>
81 tracer(const RealVect& a_pos,
82 const Real a_time,
83 const Real a_dx,
84 const RealVect& a_electricField,
85 const Real a_minElectricField,
86 const Real a_maxElectricField,
87 const RealVect& a_gradElectricField,
88 const Real a_minGradElectricField,
89 const Real a_maxGradElectricField) const override;
90
101 virtual bool
102 coarsenCell(const RealVect& a_pos,
103 const Real a_time,
104 const Real a_dx,
105 const int a_lvl,
106 const Vector<Real>& a_tracers,
107 const Vector<RealVect>& a_gradTracers) const override;
108
119 virtual bool
120 refineCell(const RealVect& a_pos,
121 const Real a_time,
122 const Real a_dx,
123 const int a_lvl,
124 const Vector<Real>& a_tracers,
125 const Vector<RealVect>& a_gradTracers) const override;
126
127 protected:
132
137
142
147
152 };
153 } // namespace CdrPlasma
154} // namespace Physics
155
156#include <CD_NamespaceFooter.H>
157
158#endif
Declaration of the Physics::CdrPlasma::CdrPlasmaFieldTagger class.
Intermediate CdrPlasmaTagger subclass that computes tracer fields from the electric field only.
Definition CD_CdrPlasmaFieldTagger.H:31
Concrete CdrPlasmaFieldTagger that tags cells based on streamer inception criteria.
Definition CD_CdrPlasmaStreamerTagger.H:31
Real m_coarCurv
Threshold for coarsening based on curvature.
Definition CD_CdrPlasmaStreamerTagger.H:131
virtual Vector< Real > tracer(const RealVect &a_pos, const Real a_time, const Real a_dx, const RealVect &a_electricField, const Real a_minElectricField, const Real a_maxElectricField, const RealVect &a_gradElectricField, const Real a_minGradElectricField, const Real a_maxGradElectricField) const override
Compute tracer fields.
Definition CD_CdrPlasmaStreamerTagger.cpp:80
Real m_coarAlpha
Threshold for coarsening based on the Townsend ionization coefficient.
Definition CD_CdrPlasmaStreamerTagger.H:146
virtual ~CdrPlasmaStreamerTagger()
Destructor.
Definition CD_CdrPlasmaStreamerTagger.cpp:22
virtual void parseRuntimeOptions() override
Parse runtime options.
Definition CD_CdrPlasmaStreamerTagger.cpp:70
Real m_refiAlpha
Threshold for refinement based on Townsend ionization coefficient.
Definition CD_CdrPlasmaStreamerTagger.H:141
CdrPlasmaStreamerTagger()=delete
Disallowed weak constructor.
int m_maxCoarsenLevel
Maximum AMR level allowed to be coarsened.
Definition CD_CdrPlasmaStreamerTagger.H:151
virtual bool refineCell(const RealVect &a_pos, const Real a_time, const Real a_dx, const int a_lvl, const Vector< Real > &a_tracers, const Vector< RealVect > &a_gradTracers) const override
Cell-refinement method.
Definition CD_CdrPlasmaStreamerTagger.cpp:130
virtual bool coarsenCell(const RealVect &a_pos, const Real a_time, const Real a_dx, const int a_lvl, const Vector< Real > &a_tracers, const Vector< RealVect > &a_gradTracers) const override
Cell-coarsening method.
Definition CD_CdrPlasmaStreamerTagger.cpp:105
virtual void parseOptions() override
Parse class options.
Definition CD_CdrPlasmaStreamerTagger.cpp:48
Real m_refiCurv
Threshold for refinement based on curvature.
Definition CD_CdrPlasmaStreamerTagger.H:136
Namespace containing physics models for use with chombo-discharge.
Definition CD_AdvectionDiffusion.H:16