File neutral_mixed.hxx#
Defines
-
NEUTRAL_MIXED_H#
-
struct NeutralMixed : public Component#
- #include <neutral_mixed.hxx>
Evolve density, parallel momentum and pressure for a neutral gas species with cross-field diffusion
Public Functions
-
NeutralMixed(const std::string &name, Options &options, Solver *solver)#
- Parameters:
name – The name of the species e.g. “h”
options – Top-level options. Settings will be taken from options[name]
solver – Time-integration solver to be used
-
virtual void transform(Options &state) override#
Modify the given simulation state.
-
virtual void finally(const Options &state) override#
Use the final simulation state to update internal state (e.g. time derivatives)
-
virtual void outputVars(Options &state) override#
Add extra fields for output, or set attributes e.g docstrings.
-
virtual void precon(const Options &state, BoutReal gamma) override#
Preconditioner.
Private Members
-
std::string name#
Species name.
-
Field3D Nn#
-
Field3D Pn#
-
Field3D NVn#
-
Field3D Vn#
Neutral parallel velocity.
-
Field3D Tn#
Neutral temperature.
-
Field3D Nnlim#
-
Field3D Pnlim#
-
Field3D logPnlim#
-
BoutReal AA#
Atomic mass (proton = 1)
-
std::vector<std::string> collision_names#
Collisions used for collisionality.
-
std::string diffusion_collisions_mode#
Collision selection, either afn or multispecies.
-
Field3D nu#
Collisionality to use for diffusion.
-
Field3D Dnn#
Diffusion coefficient.
-
Field3D DnnNn#
-
Field3D DnnPn#
-
Field3D DnnTn#
-
Field3D DnnNVn#
Used for operators.
-
BoutReal flux_limit#
Diffusive flux limit.
-
BoutReal diffusion_limit#
Maximum diffusion coefficient.
-
bool sheath_ydown#
-
bool sheath_yup#
-
BoutReal density_floor#
Minimum Nn used when dividing NVn by Nn to get Vn.
-
BoutReal temperature_floor#
-
BoutReal pressure_floor#
Minimum Pn used when dividing Pn by Nn to get Tn.
-
bool freeze_low_density#
Freeze evolution in low density regions?
-
bool neutral_viscosity#
include viscosity?
-
bool neutral_conduction#
Include heat conduction?
-
bool evolve_momentum#
Evolve parallel momentum?
-
Field3D kappa_n#
-
Field3D eta_n#
Neutral conduction and viscosity.
-
bool precondition = {true}#
Enable preconditioner?
-
bool precon_laplacexy = {false}#
Use LaplaceXY?
-
bool lax_flux#
Use Lax flux for advection terms.
-
std::unique_ptr<Laplacian> inv#
Laplacian inversion used for preconditioning.
-
Field3D density_source#
-
Field3D pressure_source#
External input source.
-
Field3D Sn#
-
Field3D Sp#
-
Field3D Snv#
Particle, pressure and momentum source.
-
Field3D sound_speed#
Sound speed for use with Lax flux.
-
bool output_ddt#
Save time derivatives?
-
bool diagnose#
Save additional diagnostics?
-
Field3D pf_adv_perp_xlow#
-
Field3D pf_adv_perp_ylow#
-
Field3D pf_adv_par_ylow#
-
Field3D mf_adv_perp_xlow#
-
Field3D mf_adv_perp_ylow#
-
Field3D mf_adv_par_ylow#
-
Field3D mf_visc_perp_xlow#
-
Field3D mf_visc_perp_ylow#
-
Field3D mf_visc_par_ylow#
-
Field3D ef_adv_perp_xlow#
-
Field3D ef_adv_perp_ylow#
-
Field3D ef_adv_par_ylow#
-
Field3D ef_cond_perp_xlow#
-
Field3D ef_cond_perp_ylow#
-
Field3D ef_cond_par_ylow#
-
NeutralMixed(const std::string &name, Options &options, Solver *solver)#