NFluidSrc
Applies the implicit source operator to the 5 moment N-fluid (ion, electron, EM) system. This operator
should only really be applied to charged species as all the source terms are zero for neutral species
so it can result in an excessively large matrix if neutral species are included. The approach
is described for the two-fluid system in,
Kumar, Harish, and Siddhartha Mishra. “Entropy Stable Numerical Schemes for Two-Fluid Plasma Equations.”
Journal of Scientific Computing 52.2 (2012): 401-425.
The algorithm in USim though can be applied to an arbitrary number
of charged species (anywhere from 1 to N species!). A two-fluid version of this source is
also in USIM twoFluidSrc and should be used when only two charged species
are required since the algorithm will be slightly faster.
Parameters (All types)
type
string
- Specifies the type of implicit matrix. Options are 5Moment for the 5 moment two-fluid system.
Parameters (5Moment)
speciesCharge
(float vector)
- List of species charges in the same order as the species in variables. There should be the same
number of charges as there are species.
speciesMass
(float)
- List of species masses in the same order as the species in variables. There should be the same number
of masses as there are species.
epsilon0
- Permittivity of free space
Parent Updater Data (5Moment)
in
(string vector, required)
1st Variable
- \(\rho\) electron mass density
- \(\rho\,u_{x}\) electron x momentum density
- \(\rho\,u_{y}\) electron y momentum density
- \(\rho\,u_{z}\) electron z momentum density
- \(e\) electron energy density
2nd Variable
- \(\rho\) ion mass density
- \(\rho\,u_{x}\) ion x momentum density
- \(\rho\,u_{y}\) ion y momentum density
- \(\rho\,u_{z}\) ion z momentum density
- \(e\) ion energy density
Nth Variable
- \(\rho\) ion mass density
- \(\rho\,u_{x}\) ion x momentum density
- \(\rho\,u_{y}\) ion y momentum density
- \(\rho\,u_{z}\) ion z momentum density
- \(e\) ion energy density
(N+1)th Variable
- \(E_{x}\) x electric field
- \(E_{y}\) y electric field
- \(E_{z}\) z electric field
- \(B_{x}\) x magnetic field
- \(B_{y}\) y magnetic field
- \(B_{z}\) z magnetic field
- \(\Psi_{E}\) electric field correction potential
- \(\Psi_{B}\) magnetic field correction potential
out
(string vector, required)
- In all cases the output is \(Q^{n+1}\). For the 5 moment system there are N+1 outputs corresponding
to each of the fluids (the same order as the input) and em field (in that order).
Example
<Updater NFluidLorentz>
kind = equation1d
onGrid = domain
in = [electronsNew, ionsNew, emNew]
out = [electronsNew, ionsNew, emNew]
#operation = add
<Equation fluidLorentz>
kind = NFluidSrc
type = 5Moment
speciesCharge = [ELECTRON_CHARGE, ION_CHARGE]
speciesMass = [ELECTRON_MASS, ION_MASS]
epsilon0 = 1.0
</Equation>
</Updater>