diff --git a/doc/content/source/auxkernels/AbsValueAux.md b/doc/content/source/auxkernels/AbsValueAux.md index e3cf8831f0d..3a437c82921 100644 --- a/doc/content/source/auxkernels/AbsValueAux.md +++ b/doc/content/source/auxkernels/AbsValueAux.md @@ -1,20 +1,17 @@ # AbsValueAux -!alert construction title=Undocumented Class -The AbsValueAux has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/AbsValueAux ## Overview -!! Replace these lines with information regarding the AbsValueAux object. +`AbsValueAux` returns the absolute value a coupled variable. ## Example Input File Syntax -!! Describe and include an example of how to use the AbsValueAux object. +An example of how to use `AbsValueAux` can be found in the +test file `TM_steady.i`. + +!listing test/tests/TM10_circular_wg/TM_steady.i block=AuxKernels/Hphi_mag !syntax parameters /AuxKernels/AbsValueAux diff --git a/doc/content/source/auxkernels/Current.md b/doc/content/source/auxkernels/Current.md index 52b237efccf..3015799371e 100644 --- a/doc/content/source/auxkernels/Current.md +++ b/doc/content/source/auxkernels/Current.md @@ -1,20 +1,40 @@ # Current -!alert construction title=Undocumented Class -The Current has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/Current ## Overview -!! Replace these lines with information regarding the Current object. +`Current` returns the electric current density of a species in logarithmic form. `Current` +assumes the electrostatic approximation for the electric field. + +The electrostatic current density is defined as + +\begin{equation} +J_{j} = q_{j} (\text{sign}_{j} \mu_{j} \left( \text{-} \nabla V\right) n_{j} - D_{j} \nabla (n_{j})) +\end{equation} + +Where $J_{j}$ is the current density, $q_{j}$ is the charge of the species, $\text{sign}_{j}$ indicates the advection behavior ($\text{+}1$ for positively charged species and $\text{-}1$ for negatively charged species), $\mu_{j}$ is the mobility coefficient, $V$ is the potential, $n_{j}$ is the density, and $D_{j}$ is the diffusion coefficient. When converting the density to logarithmic form and applying a scaling factor of the mesh, `Current` is defined as + +\begin{equation} +J_{j} = q_{j} N_{A} \left(\text{sign}_{j} \mu_{j} \frac{\text{-} \nabla (V)}{l_{c}} \exp(N_{j}) - D_{j} \exp(N_{j}) \frac{\nabla (N_{j})}{l_{c}} \right) +\end{equation} + +Where $N_{j}$ is the molar density of the specie in logarithmic form, $N_{A}$ is Avogadro's number, $l_{c}$ is the scaling factor of the mesh. + +For the case of the where artificial diffusion is introduced to the charge specie flux, an additional term is included in the current density, such that: + +\begin{equation} +J_{j,\text{ Total}} = J_{j} + q_{j} N_{A} \mu_{j} \frac{\text{-}\lVert \nabla (V) \rVert_{2}}{l_{c}} \frac{h_\text{max}}{2} \exp(N_{j}) \frac{\nabla (N_{j})}{l_{c}} +\end{equation} + +Where $h_\text{max}$ is the max length of the current element. ## Example Input File Syntax -!! Describe and include an example of how to use the Current object. +An example of how to use `Current` can be found in the +test file `Lymberopoulos_with_argon_metastables.i`. + +!listing test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i block=AuxKernels/Current_em !syntax parameters /AuxKernels/Current diff --git a/doc/content/source/auxkernels/DensityMoles.md b/doc/content/source/auxkernels/DensityMoles.md index 8a6f8baf0c0..2f546690fa5 100644 --- a/doc/content/source/auxkernels/DensityMoles.md +++ b/doc/content/source/auxkernels/DensityMoles.md @@ -1,20 +1,23 @@ # DensityMoles -!alert construction title=Undocumented Class -The DensityMoles has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/DensityMoles ## Overview -!! Replace these lines with information regarding the DensityMoles object. +`DensityMoles` converts the density value of a coupled species from a logarithmic molar density into units of #/m$^{3}$, such that: + +\begin{equation} +n_{j} = N_{A} \exp(N_{j}) +\end{equation} + +Where $n_{j}$ is the density, $N_{j}$ is the molar density of the specie in logarithmic form, and $N_{A}$ is Avogadro's number. This is often needed due to Zapdos solving densities using a logarithmic molar formulation to help avoid negative densities and ill-conditioned matrices. ## Example Input File Syntax -!! Describe and include an example of how to use the DensityMoles object. +An example of how to use `DensityMoles` can be found in the +test file `Lymberopoulos_with_argon_metastables.i`. + +!listing test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i block=AuxKernels/em_lin !syntax parameters /AuxKernels/DensityMoles diff --git a/doc/content/source/auxkernels/DensityNormalization.md b/doc/content/source/auxkernels/DensityNormalization.md index 129a4563e0c..e47ca0d678d 100644 --- a/doc/content/source/auxkernels/DensityNormalization.md +++ b/doc/content/source/auxkernels/DensityNormalization.md @@ -1,21 +1,40 @@ # DensityNormalization -!alert construction title=Undocumented Class -The DensityNormalization has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/DensityNormalization ## Overview -!! Replace these lines with information regarding the DensityNormalization object. +`DensityNormalization` is similar to [`NormalizationAux`](/auxkernels/NormalizationAux.md), except it normalizes a variable in logarithmic form based on a Postprocessor value. + +The formulation of `DensityNormalization` is defined as + +\begin{equation} +\frac{\exp(\text{variable})*\text{normal factor}}{\text{normalization}} - \text{shift} +\end{equation} + +!alert warning title=Untested Class +The DensityNormalization does not have a formalized test, yet. For this reason, +users should be aware of unforeseen bugs when using DensityNormalization. To +report a bug or discuss future contributions to Zapdos, please refer to the +[Zapdos GitHub Discussions page](https://github.com/shannon-lab/zapdos/discussions). +For standards of how to contribute to Zapdos and the MOOSE framework, +please refer to the [MOOSE Contributing page](framework/contributing.md). ## Example Input File Syntax !! Describe and include an example of how to use the DensityNormalization object. +```text +[AuxKernels] + [Normalized_Electrons] + type = DensityNormalization + variable = norm_electrons + Density = electrons + normalization = max_electron + [] +[] +``` + !syntax parameters /AuxKernels/DensityNormalization !syntax inputs /AuxKernels/DensityNormalization diff --git a/doc/content/source/auxkernels/DiffusiveFlux.md b/doc/content/source/auxkernels/DiffusiveFlux.md index fa2c697e744..d4dbacd5eda 100644 --- a/doc/content/source/auxkernels/DiffusiveFlux.md +++ b/doc/content/source/auxkernels/DiffusiveFlux.md @@ -1,20 +1,34 @@ # DiffusiveFlux -!alert construction title=Undocumented Class -The DiffusiveFlux has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/DiffusiveFlux ## Overview -!! Replace these lines with information regarding the DiffusiveFlux object. +`DiffusiveFlux` returns the diffusive flux of a species in logarithmic form. + +The diffusive flux is defined as + +\begin{equation} +\Gamma_{\text{Diffusion}} = \text{-}D_{j} \nabla (n_{j}) +\end{equation} + +Where $\Gamma_{\text{Diffusion}}$ is the diffusive flux, $D_{j}$ is the diffusion coefficient and $n_{j}$ is the density. +When converting the density to logarithmic form and applying a scaling factor of the mesh, +`DiffusiveFlux` is defined as + +\begin{equation} +\Gamma_{\text{Diffusion}} = \text{-}D_{j} N_{A} \exp(N_{j}) \frac{\nabla (N_{j})}{l_{c}} +\end{equation} + +Where $N_{j}$ is the molar density of the specie in logarithmic form, $N_{A}$ is Avogadro's +number, $l_{c}$ is the scaling factor of the mesh. ## Example Input File Syntax -!! Describe and include an example of how to use the DiffusiveFlux object. +An example of how to use `DiffusiveFlux` can be found in the +test file `mean_en.i`. + +!listing test/tests/1d_dc/mean_en.i block=AuxKernels/DiffusiveFlux_em !syntax parameters /AuxKernels/DiffusiveFlux diff --git a/doc/content/source/auxkernels/DriftDiffusionFluxAux.md b/doc/content/source/auxkernels/DriftDiffusionFluxAux.md index 9b951e0c2b9..ff1d360c7d2 100644 --- a/doc/content/source/auxkernels/DriftDiffusionFluxAux.md +++ b/doc/content/source/auxkernels/DriftDiffusionFluxAux.md @@ -1,21 +1,49 @@ # DriftDiffusionFluxAux -!alert construction title=Undocumented Class -The DriftDiffusionFluxAux has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/DriftDiffusionFluxAux ## Overview -!! Replace these lines with information regarding the DriftDiffusionFluxAux object. +`DriftDiffusionFluxAux` returns the simplified drift-diffusion flux of a species. `DriftDiffusionFluxAux` +assumes a mobility and diffusion coefficient of unity, the electrostatic approximation for the electric field, and a non-scaled version of the specie's density. + +The electrostatic flux is defined as + +\begin{equation} +\Gamma_{j} = \text{sign}_{j} \left( \text{-}\nabla V\right) n_{j} - \nabla (n_{j}) +\end{equation} + +Where $\Gamma_{j}$ is the flux assuming drift-diffusion formulation, $\text{sign}_{j}$ indicates the advection behavior ($\text{+}1$ for positively charged species and $\text{-}1$ for negatively charged species), +$V$ is the potential, and $n_{j}$ is the density. + +!alert note +When calculating the drift-diffusion flux for scaled densities and non-unity coefficients, please refer to [`TotalFlux`](/auxkernels/TotalFlux.md). + +!alert warning title=Undocumented Test +The DriftDiffusionFluxAux does not have a formalized test, yet. For this reason, +users should be aware of unforeseen bugs when using DriftDiffusionFluxAux. To +report bugs or discuss future contributions to Zapdos, please refer to the +[Zapdos GitHub Discussions page](https://github.com/shannon-lab/zapdos/discussions). +For standards of how to contribute to Zapdos and the MOOSE framework, +please refer to the [MOOSE Contributing page](framework/contributing.md). ## Example Input File Syntax !! Describe and include an example of how to use the DriftDiffusionFluxAux object. +```text +[AuxKernels] + [Electron_Flux] + type = DriftDiffusionFluxAux + variable = electron_flux + u = electrons + potential = potential + positive_charge = false + component = 0 + [] +[] +``` + !syntax parameters /AuxKernels/DriftDiffusionFluxAux !syntax inputs /AuxKernels/DriftDiffusionFluxAux diff --git a/doc/content/source/auxkernels/EFieldAdvAux.md b/doc/content/source/auxkernels/EFieldAdvAux.md index dbfe18b0948..cbe951f6a03 100644 --- a/doc/content/source/auxkernels/EFieldAdvAux.md +++ b/doc/content/source/auxkernels/EFieldAdvAux.md @@ -1,20 +1,34 @@ # EFieldAdvAux -!alert construction title=Undocumented Class -The EFieldAdvAux has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/EFieldAdvAux ## Overview -!! Replace these lines with information regarding the EFieldAdvAux object. +`EFieldAdvAux` returns electric field driven advective flux of defined species in logarithmic form. `EFieldAdvAux` +assumes the electrostatic approximation for the electric field. + +The advective flux is defined as + +\begin{equation} +\Gamma_{\text{Advection}} = \text{sign}_{j} \mu_{j} \left( \text{-} \nabla V\right) n_{j} +\end{equation} + +Where $\Gamma_{\text{Advection}}$ is the advective flux, $\text{sign}_{j}$ indicates the advection behavior ($\text{+}1$ for positively charged species and $\text{-}1$ for negatively charged species), $\mu_{j}$ is the mobility coefficient, $V$ is the potential, and $n_{j}$ is the density. When converting the density to logarithmic form and applying a scaling factor of the mesh, +`EFieldAdvAux` is defined as + +\begin{equation} +\Gamma_{\text{Advection}} = N_{A} \text{sign}_{j} \mu_{j} \frac{\text{-} \nabla (V)}{l_{c}} \exp(N_{j}) +\end{equation} + +Where $N_{j}$ is the molar density of the specie in logarithmic form, $N_{A}$ is Avogadro's +number, $l_{c}$ is the scaling factor of the mesh. ## Example Input File Syntax -!! Describe and include an example of how to use the EFieldAdvAux object. +An example of how to use `EFieldAdvAux` can be found in the +test file `mean_en.i`. + +!listing test/tests/1d_dc/mean_en.i block=AuxKernels/EFieldAdvAux_em !syntax parameters /AuxKernels/EFieldAdvAux diff --git a/doc/content/source/auxkernels/Efield.md b/doc/content/source/auxkernels/Efield.md index c5f66ecdf11..26a763194f6 100644 --- a/doc/content/source/auxkernels/Efield.md +++ b/doc/content/source/auxkernels/Efield.md @@ -1,20 +1,26 @@ # Efield -!alert construction title=Undocumented Class -The Efield has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/Efield ## Overview -!! Replace these lines with information regarding the Efield object. +`Efield` returns a component of the electrostatic electric field. + +The formulation of `Efield` is defined as + +\begin{equation} +E_{\text{comp.}} = \frac{\text{-} \nabla_{\text{comp.}} (V) \ V_{c}}{l_{c}} +\end{equation} + +Where $E_{\text{comp.}}$ is a component of the electric field, $V$ is the potential, $V_{c}$ is the +scaling factor of the potential , and $l_{c}$ is the scaling factor of the mesh. ## Example Input File Syntax -!! Describe and include an example of how to use the Efield object. +An example of how to use `Efield` can be found in the +test file `Lymberopoulos_with_argon_metastables.i`. + +!listing test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i block=AuxKernels/Efield_calc !syntax parameters /AuxKernels/Efield diff --git a/doc/content/source/auxkernels/ElectronTemperature.md b/doc/content/source/auxkernels/ElectronTemperature.md index 19eb40cb649..1d9361af618 100644 --- a/doc/content/source/auxkernels/ElectronTemperature.md +++ b/doc/content/source/auxkernels/ElectronTemperature.md @@ -1,20 +1,35 @@ # ElectronTemperature -!alert construction title=Undocumented Class -The ElectronTemperature has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/ElectronTemperature ## Overview -!! Replace these lines with information regarding the ElectronTemperature object. +`ElectronTemperature` returns the electron temperature. + +The electron temperature is defined as + +\begin{equation} +T_{e} = \frac{2}{3} \frac{n_{\varepsilon}}{n_{e}} +\end{equation} + +Where $T_{e}$ is the electron temperature, $n_{\varepsilon}$ is the mean energy density +of the electrons, and $n_{e}$ is the electron density. +When converting the density to logarithmic form, +`ElectronTemperature` is defined as + +\begin{equation} +T_{e} = \frac{2}{3} \exp(N_{\varepsilon} - N_{e}) +\end{equation} + +Where $N_{\varepsilon}$ is the electron mean energy density in logarithmic form +and $N_{e}$ is the electron density in logarithmic form. ## Example Input File Syntax -!! Describe and include an example of how to use the ElectronTemperature object. +An example of how to use `ElectronTemperature` can be found in the +test file `Lymberopoulos_with_argon_metastables.i`. + +!listing test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i block=AuxKernels/Te !syntax parameters /AuxKernels/ElectronTemperature diff --git a/doc/content/source/auxkernels/Position.md b/doc/content/source/auxkernels/Position.md index c4251912d82..1ae00bca765 100644 --- a/doc/content/source/auxkernels/Position.md +++ b/doc/content/source/auxkernels/Position.md @@ -1,20 +1,20 @@ # Position -!alert construction title=Undocumented Class -The Position has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/Position ## Overview -!! Replace these lines with information regarding the Position object. +`Position` returns the characteristic scaling length for a given direction. Zapdos +users can uniformly scale the position units for a given set of equations. This means +a user can construct a normalized mesh of some factor and scale all equations to +that same factor. `Position` is then used to plot against any spatial results. ## Example Input File Syntax -!! Describe and include an example of how to use the Position object. +An example of how to use `Position` can be found in the +test file `Lymberopoulos_with_argon_metastables.i`. + +!listing test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i block=AuxKernels/x_g !syntax parameters /AuxKernels/Position diff --git a/doc/content/source/auxkernels/PowerDep.md b/doc/content/source/auxkernels/PowerDep.md index d9140ec6bc4..76a99133036 100644 --- a/doc/content/source/auxkernels/PowerDep.md +++ b/doc/content/source/auxkernels/PowerDep.md @@ -1,20 +1,50 @@ # PowerDep -!alert construction title=Undocumented Class -The PowerDep has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/PowerDep ## Overview -!! Replace these lines with information regarding the PowerDep object. +`PowerDep` returns the amount of power deposited into a user specified specie by +Joule Heating. `PowerDep` +assumes the electrostatic approximation for the electric field. + +The power deposited by Joule Heating is defined as + +\begin{equation} +P_{\text{Joule Heating}} = \Gamma_{j} \cdot \text{-} \nabla (V) \\ +\\[10pt] +\Gamma_{j} = q_{j} (\text{sign}_{j} \mu_{j} \left( \text{-} \nabla V\right) n_{j} - D_{j} \nabla (n_{j})) +\end{equation} + +Where $P_{\text{Joule Heating}}$ is the power deposited by Joule heating, $q_{j}$ is the charge of the species, $\text{sign}_{j}$ indicates the advection behavior ($\text{+}1$ for positively charged species and $\text{-}1$ for negatively charged species), $\mu_{j}$ is the mobility coefficient, +$V$ is the potential, $n_{j}$ is the density, and $D_{j}$ is the diffusion coefficient. +When converting the density to log form and applying a scaling factor of the mesh / voltage, +`PowerDep` is defined as + +\begin{equation} +P_{\text{Joule Heating}} = \Gamma_{j} \cdot \frac{\text{-} \nabla (V) V_{c}}{l_{c}} \\ +\\[10pt] +\Gamma_{j} = q_{j} N_{A} \left( \text{sign}_{j} \mu_{j} \frac{\text{-} \nabla (V)}{l_{c}} \exp(N_{j}) - D_{j} \exp(N_{j}) \frac{\nabla (N_{j})}{l_{c}} \right) +\end{equation} + +Where $N_{j}$ is the molar density of the specie in log form, $N_{A}$ is Avogadro's +number, $l_{c}$ is the scaling factor of the mesh, and $V_{c}$ is the scaling factor +of the potential. + +For the case where artificial diffusion is introduced to the charge specie flux, an additional term is included, such that: + +\begin{equation} +\Gamma_{j\text{, Total}} = \Gamma_{j} + q_{j} N_{A} \mu_{j} \frac{\text{-}\lVert \nabla (V) \rVert_{2}}{l_{c}} \frac{h_\text{max}}{2} \exp(N_{j}) \frac{\nabla (N_{j})}{l_{c}} +\end{equation} + +Where $h_\text{max}$ is the max length of the current element. ## Example Input File Syntax -!! Describe and include an example of how to use the PowerDep object. +An example of how to use `PowerDep` can be found in the +test file `mean_en.i`. + +!listing test/tests/1d_dc/mean_en.i block=AuxKernels/PowerDep_em !syntax parameters /AuxKernels/PowerDep diff --git a/doc/content/source/auxkernels/ProcRate.md b/doc/content/source/auxkernels/ProcRate.md index dd4054ddd0d..ede74ee761c 100644 --- a/doc/content/source/auxkernels/ProcRate.md +++ b/doc/content/source/auxkernels/ProcRate.md @@ -1,20 +1,36 @@ # ProcRate -!alert construction title=Undocumented Class -The ProcRate has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/ProcRate ## Overview -!! Replace these lines with information regarding the ProcRate object. +`ProcRate` returns the production rate for chemistry reactions determined by Townsend coefficients in units of #/m$^{3}$s. `ProcRate` +assumes the electrostatic approximation for the current. + +The production rate is defined as + +\begin{equation} +S_{\text{Townsend}} = \alpha_{j} (\mu_{e} \left( \nabla -V\right) n_{e} - D_{e} \nabla (n_{e})) +\end{equation} + +Where $S_{\text{Townsend}}$ is the production rate determined by Townsend coefficients, $\alpha_{j}$ is the Townsend coefficient for the reaction, $\mu_{e}$ is the mobility coefficient, +$V$ is the potential, $n_{e}$ is the electron density, and $D_{e}$ is the diffusion coefficient. +When converting the density to logarithmic form and applying a scaling factor of the mesh, +`ProcRate` is defined as + +\begin{equation} +S_{\text{Townsend}} = \alpha_{j} N_{A} \left(\mu_{e} \frac{-\nabla (V)}{l_{c}} \exp(N_{e}) - D_{e} \exp(N_{e}) \frac{\nabla (N_{e})}{l_{c}} \right) +\end{equation} + +Where $N_{e}$ is the molar density of the electrons in logarithmic form, $N_{A}$ is Avogadro's +number, $l_{c}$ is the scaling factor of the mesh. ## Example Input File Syntax -!! Describe and include an example of how to use the ProcRate object. +An example of how to use `ProcRate` can be found in the +test file `mean_en.i`. + +!listing test/tests/1d_dc/mean_en.i block=AuxKernels/ProcRate_el !syntax parameters /AuxKernels/ProcRate diff --git a/doc/content/source/auxkernels/ProcRateForRateCoeff.md b/doc/content/source/auxkernels/ProcRateForRateCoeff.md index 75b345a2461..e99d15714a9 100644 --- a/doc/content/source/auxkernels/ProcRateForRateCoeff.md +++ b/doc/content/source/auxkernels/ProcRateForRateCoeff.md @@ -1,20 +1,37 @@ # ProcRateForRateCoeff -!alert construction title=Undocumented Class -The ProcRateForRateCoeff has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/ProcRateForRateCoeff ## Overview -!! Replace these lines with information regarding the ProcRateForRateCoeff object. +`ProcRateForRateCoeff` returns the production rate for a two body reactions determined by rate coefficients in units of #/m$^{3}$s. + +The production rate is defined as + +\begin{equation} +S_{\text{Rate}} = k n_{i} n_{j} +\end{equation} + +Where $S_{\text{Rate}}$ is the production rate determined by rate coefficients, $k$ is the rate coefficient for the reaction, $n_{j}$ is the density for the first species, and $n_{j}$ is the density for the second species. +When converting the density to logarithmic form, +`ProcRateForRateCoeff` is defined as + +\begin{equation} +S_{\text{Rate}} = k N_{A} \exp(N_{i}) \exp(N_{j}) +\end{equation} + +Where $N_{i}$ and $N_{j}$ is the molar density of the species in logarithmic form, and $N_{A}$ is Avogadro's +number. + +!alert note +When coupling Zapdos with CRANE, `ProcRateForRateCoeff` serves the same function as CRANE's [`ReactionRateSecondOrderLog`](/auxkernels/ReactionRateSecondOrderLog.md). ## Example Input File Syntax -!! Describe and include an example of how to use the ProcRateForRateCoeff object. +An example of how to use `ProcRateForRateCoeff` can be found in the +test file `Lymberopoulos_with_argon_metastables.i`. + +!listing test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i block=AuxKernels/emRate !syntax parameters /AuxKernels/ProcRateForRateCoeff diff --git a/doc/content/source/auxkernels/ProcRateForRateCoeffThreeBody.md b/doc/content/source/auxkernels/ProcRateForRateCoeffThreeBody.md index 6b36773685e..82de554f451 100644 --- a/doc/content/source/auxkernels/ProcRateForRateCoeffThreeBody.md +++ b/doc/content/source/auxkernels/ProcRateForRateCoeffThreeBody.md @@ -1,20 +1,37 @@ # ProcRateForRateCoeffThreeBody -!alert construction title=Undocumented Class -The ProcRateForRateCoeffThreeBody has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/ProcRateForRateCoeffThreeBody ## Overview -!! Replace these lines with information regarding the ProcRateForRateCoeffThreeBody object. +`ProcRateForRateCoeffThreeBody` returns the production rate for a three body reactions determined by rate coefficients in units of #/m$^{3}$s. + +The production rate is defined as + +\begin{equation} +S_{\text{Rate}} = k n_{i} n_{j} n_{k} +\end{equation} + +Where $S_{\text{Rate}}$ is the production rate determined by rate coefficients, $k$ is the rate coefficient for the reaction, $n_{j}$ is the density for the first species, $n_{j}$ is the density for the second species, and $n_{k}$ is the density for the third species. +When converting the density to logarithmic form, +`ProcRateForRateCoeffThreeBody` is defined as + +\begin{equation} +S_{\text{Rate}} = k N_{A} \exp(N_{i}) \exp(N_{j}) \exp(N_{k}) +\end{equation} + +Where $N_{k}$, $N_{j}$ and $N_{k}$ is the molar density of the species in logarithmic form, and $N_{A}$ is Avogadro's +number. + +!alert note +When coupling Zapdos with CRANE, `ProcRateForRateCoeffThreeBody` serves the same function as CRANE's [`ReactionRateThirdOrderLog`](/auxkernels/ReactionRateThirdOrderLog.md). ## Example Input File Syntax -!! Describe and include an example of how to use the ProcRateForRateCoeffThreeBody object. +An example of how to use `ProcRateForRateCoeffThreeBody` can be found in the +test file `Lymberopoulos_with_argon_metastables.i`. + +!listing test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i block=AuxKernels/ThreeBRate !syntax parameters /AuxKernels/ProcRateForRateCoeffThreeBody diff --git a/doc/content/source/auxkernels/Sigma.md b/doc/content/source/auxkernels/Sigma.md index 23b1c5bbc3e..0db276c07c8 100644 --- a/doc/content/source/auxkernels/Sigma.md +++ b/doc/content/source/auxkernels/Sigma.md @@ -1,21 +1,54 @@ # Sigma -!alert construction title=Undocumented Class -The Sigma has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/Sigma ## Overview -!! Replace these lines with information regarding the Sigma object. +`Sigma` calculates a simplifed version of the surface charge on a boundary due to the advection flux of an ion species. `Sigma` assumes a mobility coefficient of unity, the electrostatic approximation for the electric field, and a non-scaled version of the specie's density. + +The surface charge is defined as + +\begin{equation} +\sigma = \int \Gamma_{i} \cdot \textbf{n} \ \text{d}t \\[10pt] +\Gamma_{i} = \text{-} \nabla (V) n_{i} +\end{equation} + +Where $\sigma$ is the surface charge, $\Gamma_{i}$ is the advective flux of the ions, $\textbf{n}$ is the outward pointing unit normal on the boundary, $V$ is the potential, and $n_{i}$ is the ion density. + +Using the midpoint method for integration, the surface charge calculation becomes + +\begin{equation} +\sigma_{t} = \sigma_{t-1} - \nabla (V) n_{i} \cdot \textbf{n} \ \text{d}t +\end{equation} + +Where $\sigma_{t}$ is the surface charge of the current time step, $\sigma_{t-1}$ is the surface of the previous time step, and $\text{d}t$ is the difference between time steps. + +!alert note +When calculating the surface charge for scaled densities, non-unity coefficients, and includes contribution due to electron flux, please refer to [`ADSurfaceCharge`](/materials/ADSurfaceCharge.md). + +!alert warning title=Untested Class +The Sigma does not have a formalized test, yet. For this reason, +users should be aware of unforeseen bugs when using Sigma. To +report a bug or discuss future contributions to Zapdos, please refer to the +[Zapdos GitHub Discussions page](https://github.com/shannon-lab/zapdos/discussions). +For standards of how to contribute to Zapdos and the MOOSE framework, +please refer to the [MOOSE Contributing page](framework/contributing.md). ## Example Input File Syntax !! Describe and include an example of how to use the Sigma object. +```text +[AuxKernels] + [Surface_Charge] + type = Sigma + variable = charge + n = ions + potential = potential + [] +[] +``` + !syntax parameters /AuxKernels/Sigma !syntax inputs /AuxKernels/Sigma diff --git a/doc/content/source/auxkernels/TM0CylindricalErAux.md b/doc/content/source/auxkernels/TM0CylindricalErAux.md index 4d482f710e9..52346ce82d6 100644 --- a/doc/content/source/auxkernels/TM0CylindricalErAux.md +++ b/doc/content/source/auxkernels/TM0CylindricalErAux.md @@ -1,20 +1,25 @@ # TM0CylindricalErAux -!alert construction title=Undocumented Class -The TM0CylindricalErAux has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/TM0CylindricalErAux ## Overview -!! Replace these lines with information regarding the TM0CylindricalErAux object. +`TM0CylindricalErAux` calculates the radial component of the E-field based on the azimuthal component of the magnetic field. `TM0CylindricalErAux` assumes an axisymmetric transverse magnetic (TM) wave and negligible current density compared to the displacement current. + +The radial component of the displacement E-field for a TM$_{0}$ wave is defined as + +\begin{equation} +E_{r} = \frac{\text{-} 1}{\omega \varepsilon_{0} \varepsilon_{r}} \frac{dH_{\phi}}{dz} +\end{equation} + +Where $E_{r}$ is the radial component of the E-field, $H_{\phi}$ is the azimuthal component of the magnetic field, $\omega$ is the drive frequency, $\varepsilon_{0}$ is the permittivity of free space, and $\varepsilon_{r}$ is the relative permittivity of the medium. ## Example Input File Syntax -!! Describe and include an example of how to use the TM0CylindricalErAux object. +An example of how to use `TM0CylindricalErAux` can be found in the +test file `TM_steady.i`. + +!listing test/tests/TM10_circular_wg/TM_steady.i block=AuxKernels/Er !syntax parameters /AuxKernels/TM0CylindricalErAux diff --git a/doc/content/source/auxkernels/TM0CylindricalEzAux.md b/doc/content/source/auxkernels/TM0CylindricalEzAux.md index 9e49d10050f..155564839b5 100644 --- a/doc/content/source/auxkernels/TM0CylindricalEzAux.md +++ b/doc/content/source/auxkernels/TM0CylindricalEzAux.md @@ -1,20 +1,25 @@ # TM0CylindricalEzAux -!alert construction title=Undocumented Class -The TM0CylindricalEzAux has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/TM0CylindricalEzAux ## Overview -!! Replace these lines with information regarding the TM0CylindricalEzAux object. +`TM0CylindricalEzAux` calculates the axial component of the E-field based on the azimuthal component of the magnetic field. `TM0CylindricalEzAux` assumes an axisymmetric transverse magnetic (TM) wave and negligible current density compared to the displacement current. + +The axial component of the displacement E-field for a TM$_{0}$ wave is defined as + +\begin{equation} +E_{z} = \frac{1}{\omega \varepsilon_{0} \varepsilon_{r}} \left( \frac{H_{\phi}}{r} + \frac{dH_{\phi}}{dr} \right) +\end{equation} + +Where $E_{z}$ is the axial component of the E-field, $H_{\phi}$ is the azimuthal component of the magnetic field, $\omega$ is the drive frequency, $r$ is the radial distance from the axial centerline, $\varepsilon_{0}$ is the permittivity of free space, and $\varepsilon_{r}$ is the relative permittivity of the medium. ## Example Input File Syntax -!! Describe and include an example of how to use the TM0CylindricalEzAux object. +An example of how to use `TM0CylindricalEzAux` can be found in the +test file `TM_steady.i`. + +!listing test/tests/TM10_circular_wg/TM_steady.i block=AuxKernels/Electric_z !syntax parameters /AuxKernels/TM0CylindricalEzAux diff --git a/doc/content/source/auxkernels/TotalFlux.md b/doc/content/source/auxkernels/TotalFlux.md index 940fab7a27c..a848a1a092b 100644 --- a/doc/content/source/auxkernels/TotalFlux.md +++ b/doc/content/source/auxkernels/TotalFlux.md @@ -1,20 +1,32 @@ # TotalFlux -!alert construction title=Undocumented Class -The TotalFlux has not been documented. The content listed below should be used as a starting point for -documenting the class, which includes the typical automatic documentation associated with a -MooseObject; however, what is contained is ultimately determined by what is necessary to make the -documentation clear for users. - !syntax description /AuxKernels/TotalFlux ## Overview -!! Replace these lines with information regarding the TotalFlux object. +`TotalFlux` returns the total flux of a species in logarithmic form. `TotalFlux` +assumes the electrostatic approximation for the electric field. + +The electrostatic flux is usually defined as + +\begin{equation} +\Gamma_{j} = \text{sign}_{j} \mu_{j} \left( \text{-} \nabla V \right) n_{j} - D_{j} \nabla (n_{j}) +\end{equation} + +Where $\Gamma_{j}$ is the flux assuming drift-diffusion formulation, $\mu_{j}$ is the mobility coefficient, $\text{sign}_{j}$ indicates the advection behavior ($\text{+}1$ for positively charged species, $\text{-}1$ for negatively charged species and $\text{0}$ for neutral species), $V$ is the potential, $n_{j}$ is the density, and $D_{j}$ is the diffusion coefficient. When converting the density to logarithmic form, `TotalFlux` is defined as + +\begin{equation} +\Gamma_{j} = \text{sign}_{j} \mu_{j} \left(\text{-} \nabla V\right) \exp(N_{j}) - D_{j} \exp(N_{j}) \nabla (N_{j}) +\end{equation} + +Where $N_{j}$ is the molar density of the specie in logarithmic form. ## Example Input File Syntax -!! Describe and include an example of how to use the TotalFlux object. +An example of how to use `TotalFlux` can be found in the +test file `mean_en.i`. + +!listing test/tests/1d_dc/mean_en.i block=AuxKernels/tot_flux_OHm !syntax parameters /AuxKernels/TotalFlux diff --git a/include/auxkernels/Current.h b/include/auxkernels/Current.h index eac6e78cb19..abe73c852ba 100644 --- a/include/auxkernels/Current.h +++ b/include/auxkernels/Current.h @@ -24,9 +24,10 @@ class CurrentTempl : public AuxKernel virtual Real computeValue() override; protected: - Real _r_units; + const int _component; + const Real _r_units; - MooseVariable & _density_var; + const MooseVariable & _density_var; const VariableValue & _density_log; const VariableGradient & _grad_density_log; const VariableGradient & _grad_potential; diff --git a/include/auxkernels/DiffusiveFlux.h b/include/auxkernels/DiffusiveFlux.h index 2594772f739..aec0e26461e 100644 --- a/include/auxkernels/DiffusiveFlux.h +++ b/include/auxkernels/DiffusiveFlux.h @@ -23,7 +23,8 @@ class DiffusiveFluxTempl : public AuxKernel protected: virtual Real computeValue() override; - Real _r_units; + const int _component; + const Real _r_units; // Coupled variables diff --git a/include/auxkernels/EFieldAdvAux.h b/include/auxkernels/EFieldAdvAux.h index 9eba05b00d9..a46335c3575 100644 --- a/include/auxkernels/EFieldAdvAux.h +++ b/include/auxkernels/EFieldAdvAux.h @@ -23,7 +23,8 @@ class EFieldAdvAuxTempl : public AuxKernel protected: virtual Real computeValue() override; - Real _r_units; + const int _component; + const Real _r_units; // Coupled variables diff --git a/include/auxkernels/ProcRateForRateCoeffThreeBody.h b/include/auxkernels/ProcRateForRateCoeffThreeBody.h index 1f452b7de67..930d18f8806 100644 --- a/include/auxkernels/ProcRateForRateCoeffThreeBody.h +++ b/include/auxkernels/ProcRateForRateCoeffThreeBody.h @@ -25,7 +25,7 @@ class ProcRateForRateCoeffThreeBodyTempl : public AuxKernel protected: const VariableValue & _v; const VariableValue & _w; - const VariableValue & _vv; + const VariableValue & _x; const GenericMaterialProperty & _reaction_coeff; }; diff --git a/include/auxkernels/TotalFlux.h b/include/auxkernels/TotalFlux.h index c5109e9faf9..8120cdd3222 100644 --- a/include/auxkernels/TotalFlux.h +++ b/include/auxkernels/TotalFlux.h @@ -23,7 +23,8 @@ class TotalFluxTempl : public AuxKernel virtual Real computeValue() override; protected: - MooseVariable & _density_var; + const int _component; + const MooseVariable & _density_var; const VariableValue & _density_log; const VariableGradient & _grad_density_log; const VariableGradient & _grad_potential; diff --git a/src/auxkernels/AbsValueAux.C b/src/auxkernels/AbsValueAux.C index f007530d8c0..0702a4b225d 100644 --- a/src/auxkernels/AbsValueAux.C +++ b/src/auxkernels/AbsValueAux.C @@ -17,7 +17,7 @@ AbsValueAux::validParams() { InputParameters params = AuxKernel::validParams(); params.addRequiredCoupledVar("u", "Variable we want absolute value of."); - params.addClassDescription("Returns the absolute value of variable"); + params.addClassDescription("Returns the absolute value of the specified variable"); return params; } diff --git a/src/auxkernels/Current.C b/src/auxkernels/Current.C index a927c66508e..94d74fc0f2c 100644 --- a/src/auxkernels/Current.C +++ b/src/auxkernels/Current.C @@ -23,13 +23,15 @@ CurrentTempl::validParams() { InputParameters params = AuxKernel::validParams(); - params.addRequiredCoupledVar("density_log", "The electron density"); + params.addRequiredCoupledVar("density_log", "The log of the species density"); params.addRequiredCoupledVar("potential", "The potential"); + params.addParam( + "component", 0, "The component of the Current vector. (0 = x, 1 = y, 2 = z)"); params.addParam( "art_diff", false, "Whether there is a current contribution from artificial diffusion."); params.addRequiredParam("position_units", "Units of position."); params.addClassDescription( - "Returns the electric current associated with the flux of defined species"); + "Returns the electric current associated with the flux of the specified species"); return params; } @@ -37,6 +39,7 @@ template CurrentTempl::CurrentTempl(const InputParameters & parameters) : AuxKernel(parameters), + _component(getParam("component")), _r_units(1. / getParam("position_units")), _density_var(*getVar("density_log", 0)), @@ -54,18 +57,18 @@ template Real CurrentTempl::computeValue() { - Real r = - _sgn[_qp] * 1.6e-19 * 6.02e23 * - (_sgn[_qp] * raw_value(_mu[_qp]) * -_grad_potential[_qp](0) * _r_units * - std::exp(_density_log[_qp]) - - raw_value(_diff[_qp]) * std::exp(_density_log[_qp]) * _grad_density_log[_qp](0) * _r_units); + Real r = _sgn[_qp] * 1.6e-19 * 6.02e23 * + (_sgn[_qp] * raw_value(_mu[_qp]) * -_grad_potential[_qp](_component) * _r_units * + std::exp(_density_log[_qp]) - + raw_value(_diff[_qp]) * std::exp(_density_log[_qp]) * + _grad_density_log[_qp](_component) * _r_units); if (_art_diff) { Real vd_mag = raw_value(_mu[_qp]) * _grad_potential[_qp].norm() * _r_units; Real delta = vd_mag * _current_elem->hmax() / 2.; r += _sgn[_qp] * 1.6e-19 * 6.02e23 * -delta * std::exp(_density_log[_qp]) * - _grad_density_log[_qp](0) * _r_units; + _grad_density_log[_qp](_component) * _r_units; } return r; diff --git a/src/auxkernels/DensityMoles.C b/src/auxkernels/DensityMoles.C index 1aab3a561ea..7994c339e21 100644 --- a/src/auxkernels/DensityMoles.C +++ b/src/auxkernels/DensityMoles.C @@ -18,7 +18,7 @@ DensityMoles::validParams() InputParameters params = Density::validParams(); params.addRequiredParam("use_moles", "Whether to convert from units of moles to #."); - params.addClassDescription("Returns physical densities in units of #/m^3"); + params.addClassDescription("Returns physical densities in units of #/m$^3$"); return params; } diff --git a/src/auxkernels/DiffusiveFlux.C b/src/auxkernels/DiffusiveFlux.C index 26fde3e15ca..7cbd59b7127 100644 --- a/src/auxkernels/DiffusiveFlux.C +++ b/src/auxkernels/DiffusiveFlux.C @@ -24,13 +24,15 @@ DiffusiveFluxTempl::validParams() InputParameters params = AuxKernel::validParams(); params.addRequiredCoupledVar("density_log", "The variable representing the log of the density."); params.addRequiredParam("position_units", "Units of position."); - params.addClassDescription("Returns the diffusive flux of defined species"); + params.addParam("component", 0, "The component of position. (0 = x, 1 = y, 2 = z)"); + params.addClassDescription("Returns the diffusive flux of the specified species"); return params; } template DiffusiveFluxTempl::DiffusiveFluxTempl(const InputParameters & parameters) : AuxKernel(parameters), + _component(getParam("component")), _r_units(1. / getParam("position_units")), // Coupled variables @@ -49,7 +51,7 @@ template Real DiffusiveFluxTempl::computeValue() { - return -raw_value(_diff[_qp]) * std::exp(_density_log[_qp]) * _grad_density_log[_qp](0) * + return -raw_value(_diff[_qp]) * std::exp(_density_log[_qp]) * _grad_density_log[_qp](_component) * _r_units * 6.02e23; } diff --git a/src/auxkernels/DriftDiffusionFluxAux.C b/src/auxkernels/DriftDiffusionFluxAux.C index e6bc871dfdb..697f88171e4 100644 --- a/src/auxkernels/DriftDiffusionFluxAux.C +++ b/src/auxkernels/DriftDiffusionFluxAux.C @@ -24,7 +24,7 @@ DriftDiffusionFluxAux::validParams() "negative."); params.addRequiredCoupledVar("u", "The drift-diffusing species."); params.addParam("component", 0, "The flux component you want to see."); - params.addClassDescription("Returns the drift-diffusion flux of defined species"); + params.addClassDescription("Returns the drift-diffusion flux of the specified species"); return params; } diff --git a/src/auxkernels/EFieldAdvAux.C b/src/auxkernels/EFieldAdvAux.C index 8cd497d839e..c67aba2ab5e 100644 --- a/src/auxkernels/EFieldAdvAux.C +++ b/src/auxkernels/EFieldAdvAux.C @@ -26,13 +26,16 @@ EFieldAdvAuxTempl::validParams() "potential", "The gradient of the potential will be used to compute the advection velocity."); params.addRequiredCoupledVar("density_log", "The variable representing the log of the density."); params.addRequiredParam("position_units", "Units of position."); - params.addClassDescription("Returns the electric field driven advective flux of defined species"); + params.addParam("component", 0, "The component the EField Vector. (0 = x, 1 = y, 2 = z)"); + params.addClassDescription( + "Returns the electric field driven advective flux of the specified species"); return params; } template EFieldAdvAuxTempl::EFieldAdvAuxTempl(const InputParameters & parameters) : AuxKernel(parameters), + _component(getParam("component")), _r_units(1. / getParam("position_units")), // Coupled variables @@ -52,8 +55,8 @@ template Real EFieldAdvAuxTempl::computeValue() { - return _sgn[_qp] * raw_value(_mu[_qp]) * std::exp(_density_log[_qp]) * -_grad_potential[_qp](0) * - _r_units * 6.02e23; + return _sgn[_qp] * raw_value(_mu[_qp]) * std::exp(_density_log[_qp]) * + -_grad_potential[_qp](_component) * _r_units * 6.02e23; } template class EFieldAdvAuxTempl; diff --git a/src/auxkernels/Position.C b/src/auxkernels/Position.C index c343ec09cde..e4d60fa9d2d 100644 --- a/src/auxkernels/Position.C +++ b/src/auxkernels/Position.C @@ -19,9 +19,9 @@ Position::validParams() params.addRequiredParam("position_units", "Units of position."); params.addParam("component", 0, "The component of position. (0 = x, 1 = y, 2 = z)"); params.addClassDescription( - "Produces an elemental auxiliary variable useful for plotting against other" - "elemental auxiliary variables. Mesh points automatically output by Zapdos only work" - "for plotting nodal variables. Since almost all auxiliary variables are elemental, this" + "Produces an elemental auxiliary variable useful for plotting against other " + "elemental auxiliary variables. Mesh points automatically output by Zapdos only work " + "for plotting nodal variables. Since almost all auxiliary variables are elemental, this " "AuxKernel is very important"); return params; } diff --git a/src/auxkernels/ProcRate.C b/src/auxkernels/ProcRate.C index 529eec55b79..5ed20f673e9 100644 --- a/src/auxkernels/ProcRate.C +++ b/src/auxkernels/ProcRate.C @@ -30,7 +30,7 @@ ProcRateTempl::validParams() "The process that we want to get the townsend coefficient for. Options are iz, ex, and el."); params.addRequiredParam("position_units", "Units of position."); params.addClassDescription( - "Reaction rate for electron impact collisions in units of #/m^3s. User can pass" + "Reaction rate for electron impact collisions in units of #/m$^{3}$s. User can pass " "choice of elastic, excitation, or ionization Townsend coefficients"); return params; } diff --git a/src/auxkernels/ProcRateForRateCoeff.C b/src/auxkernels/ProcRateForRateCoeff.C index 742029ee11d..7077749dedf 100644 --- a/src/auxkernels/ProcRateForRateCoeff.C +++ b/src/auxkernels/ProcRateForRateCoeff.C @@ -25,7 +25,7 @@ ProcRateForRateCoeffTempl::validParams() params.addCoupledVar("w", "The second variable that is reacting to create u."); params.addRequiredParam("reaction", "The full reaction equation."); params.addClassDescription( - "Reaction rate for two body collisions in units of #/m^3s. User can pass" + "Reaction rate for two body collisions in units of #/m$^{3}$s. User can pass " "choice of elastic, excitation, or ionization reaction rate coefficients"); return params; diff --git a/src/auxkernels/ProcRateForRateCoeffThreeBody.C b/src/auxkernels/ProcRateForRateCoeffThreeBody.C index 3242a8f4537..050bbb8c05e 100644 --- a/src/auxkernels/ProcRateForRateCoeffThreeBody.C +++ b/src/auxkernels/ProcRateForRateCoeffThreeBody.C @@ -23,10 +23,10 @@ ProcRateForRateCoeffThreeBodyTempl::validParams() params.addCoupledVar("v", "The first variable that is reacting to create u."); params.addCoupledVar("w", "The second variable that is reacting to create u."); - params.addCoupledVar("vv", "The second variable that is reacting to create u."); + params.addCoupledVar("x", "The third variable that is reacting to create u."); params.addRequiredParam("reaction", "The full reaction equation."); params.addClassDescription( - "Reaction rate for three body collisions in units of #/m^3s. User can pass" + "Reaction rate for three body collisions in units of #/m$^{3}$s. User can pass " "choice of elastic, excitation, or ionization reaction rate coefficients"); return params; @@ -39,7 +39,7 @@ ProcRateForRateCoeffThreeBodyTempl::ProcRateForRateCoeffThreeBodyTempl( _v(coupledValue("v")), _w(coupledValue("w")), - _vv(coupledValue("vv")), + _x(coupledValue("x")), _reaction_coeff( getGenericMaterialProperty("k_" + getParam("reaction"))) { @@ -51,7 +51,7 @@ ProcRateForRateCoeffThreeBodyTempl::computeValue() { return 6.02e23 * raw_value(_reaction_coeff[_qp]) * std::exp(_v[_qp]) * std::exp(_w[_qp]) * - std::exp(_vv[_qp]); + std::exp(_x[_qp]); } typedef ProcRateForRateCoeffThreeBodyTempl ProcRateForRateCoeffThreeBody; diff --git a/src/auxkernels/Sigma.C b/src/auxkernels/Sigma.C index 796d55da3b3..2a81935d6a0 100644 --- a/src/auxkernels/Sigma.C +++ b/src/auxkernels/Sigma.C @@ -20,6 +20,9 @@ Sigma::validParams() params.addRequiredCoupledVar("n", "The density of the ions."); params.addRequiredCoupledVar("potential", "The potential"); + params.addClassDescription( + "Calculates the surface charge due to a simplified version of the ion flux " + "to a boundary."); return params; } diff --git a/src/auxkernels/TM0CylindricalErAux.C b/src/auxkernels/TM0CylindricalErAux.C index c3802fab6b1..0b22ae0dd74 100644 --- a/src/auxkernels/TM0CylindricalErAux.C +++ b/src/auxkernels/TM0CylindricalErAux.C @@ -19,6 +19,8 @@ TM0CylindricalErAux::validParams() params.addRequiredCoupledVar("Hphi", "Magnetic field component Hphi."); params.addRequiredParam("f", "The drive frequency."); params.addParam("eps_r", 1., "The relative permittivity of the medium."); + params.addClassDescription("Calculates the radial E-field for an axisymmetric " + "TM$_{0}$ wave."); return params; } diff --git a/src/auxkernels/TM0CylindricalEzAux.C b/src/auxkernels/TM0CylindricalEzAux.C index 9c912b70394..c54459be916 100644 --- a/src/auxkernels/TM0CylindricalEzAux.C +++ b/src/auxkernels/TM0CylindricalEzAux.C @@ -19,6 +19,8 @@ TM0CylindricalEzAux::validParams() params.addRequiredCoupledVar("Hphi", "Magnetic field component Hphi."); params.addRequiredParam("f", "The drive frequency."); params.addParam("eps_r", 1., "The relative permittivity of the medium."); + params.addClassDescription("Calculates the axial E-field for an axisymmetric " + "TM$_{0}$ wave."); return params; } diff --git a/src/auxkernels/TotalFlux.C b/src/auxkernels/TotalFlux.C index de84a7a0303..1d67493ba7e 100644 --- a/src/auxkernels/TotalFlux.C +++ b/src/auxkernels/TotalFlux.C @@ -25,7 +25,9 @@ TotalFluxTempl::validParams() params.addRequiredCoupledVar("density_log", "The electron density"); params.addRequiredCoupledVar("potential", "The potential"); - params.addClassDescription("Returns the total flux of defined species"); + params.addParam( + "component", 0, "The component of the TotalFlux vector. (0 = x, 1 = y, 2 = z)"); + params.addClassDescription("Returns the total flux of the specified species"); return params; } @@ -34,6 +36,7 @@ template TotalFluxTempl::TotalFluxTempl(const InputParameters & parameters) : AuxKernel(parameters), + _component(getParam("component")), _density_var(*getVar("density_log", 0)), _density_log(coupledValue("density_log")), _grad_density_log(coupledGradient("density_log")), @@ -48,8 +51,9 @@ template Real TotalFluxTempl::computeValue() { - return _sgn[_qp] * raw_value(_mu[_qp]) * -_grad_potential[_qp](0) * std::exp(_density_log[_qp]) - - raw_value(_diff[_qp]) * std::exp(_density_log[_qp]) * _grad_density_log[_qp](0); + return _sgn[_qp] * raw_value(_mu[_qp]) * -_grad_potential[_qp](_component) * + std::exp(_density_log[_qp]) - + raw_value(_diff[_qp]) * std::exp(_density_log[_qp]) * _grad_density_log[_qp](_component); } template class TotalFluxTempl; diff --git a/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables.i b/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables.i index 08644130c53..ee5fa804800 100644 --- a/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables.i +++ b/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables.i @@ -497,7 +497,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [Te] diff --git a/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables_2D_At100mTorr.i b/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables_2D_At100mTorr.i index 740630836be..0e3931c8e4c 100644 --- a/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables_2D_At100mTorr.i +++ b/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables_2D_At100mTorr.i @@ -523,7 +523,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [Te] diff --git a/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables_2D_At1Torr.i b/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables_2D_At1Torr.i index 97c30bee915..6370593064f 100644 --- a/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables_2D_At1Torr.i +++ b/test/tests/Conference_Syntax_Tests/Lymberopoulos_with_argon_metastables_2D_At1Torr.i @@ -524,7 +524,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [Te] diff --git a/test/tests/DriftDiffusionAction/2D_RF_Plasma_actions.i b/test/tests/DriftDiffusionAction/2D_RF_Plasma_actions.i index eccef131e13..f6941279361 100644 --- a/test/tests/DriftDiffusionAction/2D_RF_Plasma_actions.i +++ b/test/tests/DriftDiffusionAction/2D_RF_Plasma_actions.i @@ -348,7 +348,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] diff --git a/test/tests/DriftDiffusionAction/2D_RF_Plasma_no_actions.i b/test/tests/DriftDiffusionAction/2D_RF_Plasma_no_actions.i index badba490f90..fee2b9602a2 100644 --- a/test/tests/DriftDiffusionAction/2D_RF_Plasma_no_actions.i +++ b/test/tests/DriftDiffusionAction/2D_RF_Plasma_no_actions.i @@ -491,7 +491,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [e_temp] diff --git a/test/tests/DriftDiffusionAction/RF_Plasma_actions.i b/test/tests/DriftDiffusionAction/RF_Plasma_actions.i index b90fbfee1a7..a5058600bf2 100644 --- a/test/tests/DriftDiffusionAction/RF_Plasma_actions.i +++ b/test/tests/DriftDiffusionAction/RF_Plasma_actions.i @@ -318,7 +318,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] diff --git a/test/tests/DriftDiffusionAction/RF_Plasma_no_actions.i b/test/tests/DriftDiffusionAction/RF_Plasma_no_actions.i index 491a1175083..8a160f04a4a 100644 --- a/test/tests/DriftDiffusionAction/RF_Plasma_no_actions.i +++ b/test/tests/DriftDiffusionAction/RF_Plasma_no_actions.i @@ -458,7 +458,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [e_temp] diff --git a/test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i b/test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i index 3557619b30a..49f2e6abb81 100644 --- a/test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i +++ b/test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables.i @@ -497,7 +497,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [Te] diff --git a/test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables_2D_At100mTorr_CoarseMesh.i b/test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables_2D_At100mTorr_CoarseMesh.i index 4d34307285e..eddb739f684 100644 --- a/test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables_2D_At100mTorr_CoarseMesh.i +++ b/test/tests/Lymberopoulos_rf_discharge/Lymberopoulos_with_argon_metastables_2D_At100mTorr_CoarseMesh.i @@ -523,7 +523,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [Te] diff --git a/test/tests/accelerations/Acceleration_By_Averaging_main.i b/test/tests/accelerations/Acceleration_By_Averaging_main.i index 0db7483f116..1d920714ac8 100644 --- a/test/tests/accelerations/Acceleration_By_Averaging_main.i +++ b/test/tests/accelerations/Acceleration_By_Averaging_main.i @@ -460,7 +460,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [Te] diff --git a/test/tests/accelerations/Acceleration_By_Shooting_Method.i b/test/tests/accelerations/Acceleration_By_Shooting_Method.i index 86dfc082f33..9f6d5097e35 100644 --- a/test/tests/accelerations/Acceleration_By_Shooting_Method.i +++ b/test/tests/accelerations/Acceleration_By_Shooting_Method.i @@ -450,7 +450,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [Te] diff --git a/test/tests/accelerations/Acceleration_By_Shooting_Method_SensitivityMatrix.i b/test/tests/accelerations/Acceleration_By_Shooting_Method_SensitivityMatrix.i index ece4ca2d6a6..b4153db458e 100644 --- a/test/tests/accelerations/Acceleration_By_Shooting_Method_SensitivityMatrix.i +++ b/test/tests/accelerations/Acceleration_By_Shooting_Method_SensitivityMatrix.i @@ -563,7 +563,7 @@ dom0Scale = 25.4e-3 variable = ThreeBRate v = Ar* w = Ar - vv = Ar + x = Ar reaction = 'Ar* + Ar + Ar -> Ar_2 + Ar' [] [Te]