Abstract base class for specifying plasma kinetics. This is the base class used by CdrPlasmaStepper when advancing the minimal plasma model. More...
#include <CD_CdrPlasmaPhysics.H>
Protected Attributes | |
Vector< RefCountedPtr< CdrSpecies > > | m_cdrSpecies |
List of species. | |
Vector< RefCountedPtr< RtSpecies > > | m_rtSpecies |
List of optical transitions between species. | |
int | m_numCdrSpecies |
Number of species. | |
int | m_numRtSpecies |
Number of RTE species. | |
Abstract base class for specifying plasma kinetics. This is the base class used by CdrPlasmaStepper when advancing the minimal plasma model.
|
pure virtual |
Routine intended for advancing a reaction network over a time a_dt.
This routine assumes that the subsequent advance is in the form phi^(k+1) = phi^k + S*a_dt. Thus, this routine exists such that users can EITHER fill a_cdrSources and a_rteSources directly with an explicit rule, OR they can perform a fully implicit advance within this routine and set S from that.
[out] | a_cdrSources | Source terms for CDR equations. |
[out] | a_rteSources | Source terms for RTE equations. |
[in] | a_cdrDensities | Grid-based density for particle species. |
[in] | a_cdrGradients | Grid-based gradients for particle species. |
[in] | a_rteDensities | Grid-based densities for photons. |
[in] | a_E | Electric field. |
[in] | a_pos | Position in space. |
[in] | a_dx | Grid resolution. |
[in] | a_dt | Advanced time. |
[in] | a_time | Current time. |
[in] | a_kappa | Grid cell unit volume. |
Implemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
pure virtual |
Compute alpha. Should return Townsend ionization coefficient.
This function is mostly used for the cell tagging classes
[in] | a_E | Electric field. |
[in] | a_position | Physical coordinates |
Implemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
pure virtual |
Compute CDR fluxes on dielectric-gas interfaces. This is used as a boundary condition in the CDR equations.
[in] | a_time | Time |
[in] | a_pos | Position |
[in] | a_normal | Normal vector. This points into the gas phase. |
[in] | a_E | Electric field |
[in] | a_cdrDensities | CDR densities (on the EB) |
[in] | a_cdrVelocities | Normal component of CDR velocities (on the EB). |
[in] | a_cdrGradients | Normal gradients of cdr densities |
[in] | a_rteFluxes | RTE fluxes (normal component only) |
[in] | a_extrapCdrFluxes | Extrapolated fluxes from the gas side. |
Implemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
pure virtual |
Compute diffusion coefficients for the CDR equations.
[in] | a_time | Time |
[in] | a_pos | Position |
[in] | a_E | Electric field |
[in] | a_cdrDensities | CDR densities |
Implemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
pure virtual |
Compute CDR fluxes through domain sides. This is used as a boundary condition in the CDR equations.
[in] | a_time | Time |
[in] | a_pos | Position |
[in] | a_dir | Direction (0 = x, 1=y etc) |
[in] | a_side | Side (low or high side) |
[in] | a_E | Electric field |
[in] | a_cdrDensities | CDR densities. |
[in] | a_cdrVelocities | CDR velocities (normal component only). |
[in] | a_cdrGradients | CDR gradients (normal component only) |
[in] | a_rteFluxes | RTE fluxes (normal component only) |
[in] | a_extrapCdrFluxes | Extrapolated fluxes from the gas side. |
Implemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
pure virtual |
Compute velocities for the CDR equations.
[in] | a_time | Time |
[in] | a_pos | Position |
[in] | a_E | Electric field |
[in] | a_cdrDensities | CDR densities |
Implemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
pure virtual |
Compute CDR fluxes on electrode-gas interfaces. This is used as a boundary condition in the CDR equations.
[in] | a_time | Time |
[in] | a_pos | Position |
[in] | a_normal | Boundary normal vector. This points into the gas phase. |
[in] | a_E | Electric field |
[in] | a_cdrVelocities | CDR velocities. Normal component only. |
[in] | a_cdrDensities | CDR densities. |
[in] | a_cdrGradients | Normal gradients of cdr densities |
[in] | a_rteFluxes | RTE fluxes (normal component only) |
[in] | a_extrapCdrFluxes | Extrapolated fluxes from the gas side. |
Implemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
pure virtual |
Compute eta. Should return Townsend attachment coefficient.
This function is mostly used for the cell tagging classes
[in] | a_E | Electric field. |
[in] | a_position | Physical coordinates |
Implemented in Physics::CdrPlasma::CdrPlasmaJSON.
Get number of plot variables for this physics class.
This is used by CdrPlasmaStepper for pre-allocating data that will be put in a plot file. When overriding this method then this routine should return the number of plot variables that will be plotted. The returned number should thus be the same as the vectors that are returned from getPlotVariableNames and getPlotVariables.
Reimplemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
inlinevirtual |
Get plot variable names. The.
This function will return the plot variable names that CdrPlasmaPhysics will plot. The length of the returned vector must be the same as the returned value from getNumberOfPlotVariables. Note that the names/positions between this routine and getPlotVariables should be consistent.
Reimplemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
inlinevirtual |
Provide plot variables. This is used by CdrPlasmaStepper when writing plot files.
The length of the returned vector should be the same as the returned value from getNumberOfPlotVariables. The names for the returned variables are given by the returned vector in getPlotVariableNames().
[in] | a_cdrDensities | Grid-based density for particle species. |
[in] | a_cdrGradients | Grid-based gradients for particle species. |
[in] | a_rteDensities | Grid-based densities for photons. |
[in] | a_E | Electric field. |
[in] | a_pos | Position in space. |
[in] | a_dx | Grid resolution. |
[in] | a_dt | Advanced time. |
[in] | a_time | Current time. |
[in] | a_kappa | Grid cell unit volume. |
Reimplemented in Physics::CdrPlasma::CdrPlasmaJSON.
|
pure virtual |
Set the initial surface charge.
[in] | a_time | Time |
[in] | a_pos | Position |
Implemented in Physics::CdrPlasma::CdrPlasmaJSON.
Parse run-time options.
Reimplemented in Physics::CdrPlasma::CdrPlasmaJSON.