chombo-discharge
Loading...
Searching...
No Matches
CD_CdrPlasmaStreamerTagger.H
Go to the documentation of this file.
1/* chombo-discharge
2 * Copyright © 2021 SINTEF Energy Research.
3 * Please refer to Copyright.txt and LICENSE in the chombo-discharge root directory.
4 */
5
12#ifndef CD_CdrPlasmaStreamerTagger_H
13#define CD_CdrPlasmaStreamerTagger_H
14
15// Our includes
17#include <CD_NamespaceHeader.H>
18
19namespace Physics {
20 namespace CdrPlasma {
21
27 {
28 public:
33
41 CdrPlasmaStreamerTagger(const RefCountedPtr<CdrPlasmaPhysics>& a_physics,
42 const RefCountedPtr<CdrPlasmaStepper>& a_timeStepper,
43 const RefCountedPtr<AmrMesh>& a_amr,
44 const RefCountedPtr<ComputationalGeometry>& a_computationalGeometry);
45
50
54 virtual void
55 parseOptions() override;
56
60 virtual void
61 parseRuntimeOptions() override;
62
75 virtual Vector<Real>
76 tracer(const RealVect a_pos,
77 const Real a_time,
78 const Real a_dx,
79 const RealVect a_electricField,
80 const Real a_minElectricField,
81 const Real a_maxElectricField,
82 const RealVect a_gradElectricField,
83 const Real a_minGradElectricField,
84 const Real a_maxGradElectricField) const override;
85
96 virtual bool
97 coarsenCell(const RealVect a_pos,
98 const Real a_time,
99 const Real a_dx,
100 const int a_lvl,
101 const Vector<Real> a_tracers,
102 const Vector<RealVect> a_gradTracers) const override;
103
114 virtual bool
115 refineCell(const RealVect a_pos,
116 const Real a_time,
117 const Real a_dx,
118 const int a_lvl,
119 const Vector<Real> a_tracers,
120 const Vector<RealVect> a_gradTracers) const override;
121
122 protected:
127
132
137
142
147 };
148 } // namespace CdrPlasma
149} // namespace Physics
150
151#include <CD_NamespaceFooter.H>
152
153#endif
Cell tagger class for Physics/CdrPlasma.
Lightweight tagging class which flags cells for refinement/coarsening using the electric field only.
Definition CD_CdrPlasmaFieldTagger.H:28
Class which implements CdrPlasmaFieldTagger and refines cells based on the criterion alpha*dx > thres...
Definition CD_CdrPlasmaStreamerTagger.H:27
Real m_coarCurv
Threshold for coarsening based on curvature.
Definition CD_CdrPlasmaStreamerTagger.H:126
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:126
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:104
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:79
Real m_coarAlpha
Threshold for refinement based on Townsend ionization coefficient.
Definition CD_CdrPlasmaStreamerTagger.H:141
virtual ~CdrPlasmaStreamerTagger()
Destructor.
Definition CD_CdrPlasmaStreamerTagger.cpp:21
virtual void parseRuntimeOptions() override
Parse runtime options.
Definition CD_CdrPlasmaStreamerTagger.cpp:69
Real m_refiAlpha
Threshold for refinement based on Townsend ionization coefficient.
Definition CD_CdrPlasmaStreamerTagger.H:136
CdrPlasmaStreamerTagger()=delete
Disallowed weak constructor.
int m_maxCoarsenLevel
Set coarsening level.
Definition CD_CdrPlasmaStreamerTagger.H:146
virtual void parseOptions() override
Parse class options.
Definition CD_CdrPlasmaStreamerTagger.cpp:47
Real m_refiCurv
Threshold for refinement based on curvature.
Definition CD_CdrPlasmaStreamerTagger.H:131
Name containing various physics models for running chombo-discharge code.
Definition CD_AdvectionDiffusion.H:15