12 #ifndef CD_ItoPlasmaAir3LFA_H
13 #define CD_ItoPlasmaAir3LFA_H
18 #include <CD_NamespaceHeader.H>
59 computeDt(
const RealVect a_E,
const RealVect a_pos,
const Vector<Real> a_densities)
const noexcept
override;
75 updateReactionRates(
const RealVect a_E,
const Real a_dx,
const Real a_kappa)
const noexcept
override;
84 computeItoMobilities(
const Real a_time,
const RealVect a_pos,
const RealVect a_E)
const noexcept
override;
93 computeItoDiffusion(
const Real a_time,
const RealVect a_pos,
const RealVect a_E)
const noexcept
override;
115 Vector<List<Photon>>& a_outgoingPhotons,
116 const Vector<List<ItoParticle>>& a_incomingParticles,
117 const Vector<List<Photon>>& a_incomingPhotons,
118 const Vector<FPR>& a_newNumParticles,
119 const Vector<FPR>& a_oldNumParticles,
121 const RealVect& a_cellCenter,
122 const RealVect& a_cellCentroid,
123 const RealVect& a_bndryCentroid,
124 const RealVect& a_bndryNormal,
125 const Real a_bndryArea,
128 const bool a_isDielectric,
129 const int a_matIndex)
const noexcept
override;
230 addTable(
const std::string a_tableName,
const std::string a_file) noexcept;
317 getAbsorptionCoefficient(
const RealVect a_pos)
const override;
343 #include <CD_NamespaceFooter.H>
Main file for describing Ito-based plasma physics.
Declaration of a table for looking up coefficients etc.
Class that acts as user interface for parsing initial data and mobility/diffusion kernels into ItoSol...
Definition: CD_ItoSpecies.H:28
Electron species.
Definition: CD_ItoPlasmaAir3LFA.H:255
Definition: CD_ItoPlasmaAir3LFA.H:286
Definition: CD_ItoPlasmaAir3LFA.H:300
Real m_f1
Lower frequency.
Definition: CD_ItoPlasmaAir3LFA.H:323
Real m_K2
K2 factor.
Definition: CD_ItoPlasmaAir3LFA.H:338
Real m_K1
K1 factor.
Definition: CD_ItoPlasmaAir3LFA.H:333
Real m_f2
Upper frequency.
Definition: CD_ItoPlasmaAir3LFA.H:328
Positive ion species.
Definition: CD_ItoPlasmaAir3LFA.H:272
Hard-coded implementation of ItoPlasmaPhysics for simplified discharges in STP air....
Definition: CD_ItoPlasmaAir3LFA.H:28
Real m_deltaX
User-defined parameter for time step restriction.
Definition: CD_ItoPlasmaAir3LFA.H:140
Vector< Real > computeItoMobilities(const Real a_time, const RealVect a_pos, const RealVect a_E) const noexcept override
Compute the Ito solver mobilities.
Definition: CD_ItoPlasmaAir3LFA.cpp:226
Real m_O2frac
O2 content.
Definition: CD_ItoPlasmaAir3LFA.H:195
Real m_p
Gas pressure (SI)
Definition: CD_ItoPlasmaAir3LFA.H:180
virtual ~ItoPlasmaAir3LFA()
Destructor. Does nothing of importance.
Definition: CD_ItoPlasmaAir3LFA.cpp:119
std::map< std::string, LookupTable1D< 2 > > m_tables
Lookup tables holding mobilities, rate coefficients etc.
Definition: CD_ItoPlasmaAir3LFA.H:210
Real m_ionMobility
Ion mobility.
Definition: CD_ItoPlasmaAir3LFA.H:155
void injectParticlesEB(Vector< List< ItoParticle >> &a_outgoingParticles, Vector< List< Photon >> &a_outgoingPhotons, const Vector< List< ItoParticle >> &a_incomingParticles, const Vector< List< Photon >> &a_incomingPhotons, const Vector< FPR > &a_newNumParticles, const Vector< FPR > &a_oldNumParticles, const RealVect &a_E, const RealVect &a_cellCenter, const RealVect &a_cellCentroid, const RealVect &a_bndryCentroid, const RealVect &a_bndryNormal, const Real a_bndryArea, const Real a_dx, const Real a_dt, const bool a_isDielectric, const int a_matIndex) const noexcept override
Resolve particle and photon injection at the EB.
Definition: CD_ItoPlasmaAir3LFA.cpp:252
Real m_photoIonizationFactor
Photo-ionization factor.
Definition: CD_ItoPlasmaAir3LFA.H:205
Vector< Real > computeItoDiffusion(const Real a_time, const RealVect a_pos, const RealVect a_E) const noexcept override
Compute the Ito solver diffusion coefficients.
Definition: CD_ItoPlasmaAir3LFA.cpp:240
Real m_ionImpactEfficiency
Ion impact efficiency.
Definition: CD_ItoPlasmaAir3LFA.H:165
virtual Real excitationRates(const Real a_E) const
Excitation rate for photoionization term.
Definition: CD_ItoPlasmaAir3LFA.cpp:335
virtual void updateReactionRates(const RealVect a_E, const Real a_dx, const Real a_kappa) const noexcept override
Update reaction rates.
Definition: CD_ItoPlasmaAir3LFA.cpp:311
Real m_pq
Quenching pressure (SI)
Definition: CD_ItoPlasmaAir3LFA.H:185
virtual Real sergeyFactor(const Real a_O2frac) const
Sergey factor for photoionization term.
Definition: CD_ItoPlasmaAir3LFA.cpp:350
Real m_T
Gas temperature.
Definition: CD_ItoPlasmaAir3LFA.H:190
Real m_quantumEfficiency
Quantum efficiency.
Definition: CD_ItoPlasmaAir3LFA.H:170
Real m_N
Neutral number density.
Definition: CD_ItoPlasmaAir3LFA.H:175
virtual void parseTransport() noexcept
Parse some auxiliary transport settings.
Definition: CD_ItoPlasmaAir3LFA.cpp:143
ItoPlasmaAir3LFA()
Full constructor. Initializes species and sets up reactions.
Definition: CD_ItoPlasmaAir3LFA.cpp:24
virtual void parseDx() noexcept
Parse the m_dX variable used for time step restriction.
Definition: CD_ItoPlasmaAir3LFA.cpp:133
virtual void parseRuntimeOptions() noexcept override
Parse run-time options.
Definition: CD_ItoPlasmaAir3LFA.cpp:122
virtual Real computeAlpha(const RealVect a_E) const override
Compute Townsend ionization coefficient.
Definition: CD_ItoPlasmaAir3LFA.cpp:218
int m_numRtSpecies
Number of radiative transfer species.
Definition: CD_ItoPlasmaAir3LFA.H:150
int m_numPlasmaSpecies
Number of plasma species.
Definition: CD_ItoPlasmaAir3LFA.H:145
Real m_ionDiffCo
Ion diffusion coefficient.
Definition: CD_ItoPlasmaAir3LFA.H:160
Real m_N2frac
N2 content.
Definition: CD_ItoPlasmaAir3LFA.H:200
virtual Real computeDt(const RealVect a_E, const RealVect a_pos, const Vector< Real > a_densities) const noexcept override
Compute a physics-baseded time step.
Definition: CD_ItoPlasmaAir3LFA.cpp:207
virtual void readTables() noexcept
Read various tabulated data into the lookup tables in this class.
Definition: CD_ItoPlasmaAir3LFA.cpp:165
bool m_extrapBC
Extrapolate BC or not.
Definition: CD_ItoPlasmaAir3LFA.H:135
virtual void addTable(const std::string a_tableName, const std::string a_file) noexcept
Add a table to m_tables.
Definition: CD_ItoPlasmaAir3LFA.cpp:195
Base class for interaction between Kinetic Monte Carlo and Ito-based plasma solvers.
Definition: CD_ItoPlasmaPhysics.H:64
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