File recycling.hxx

Defines

RECYCLING_H
struct Recycling : public Component
#include <recycling.hxx>

Convert fluxes of species at boundaries

Since this must be calculated after boundary fluxes (e.g. sheath), it is included as a top-level component

Public Functions

Recycling(std::string name, Options &alloptions, Solver*)

Inputs

  • <name>

    • species A comma-separated list of species to recycle

  • <species>

    • recycle_as The species to recycle into

    • recycle_multiplier The recycled flux multiplier, between 0 and 1

    • recycle_energy The energy of the recycled particles [eV]

virtual void transform(Options &state) override

Inputs

  • species

    • <species>

      • density

      • velocity

Outputs

  • species

    • <species>

      • density_source

virtual void outputVars(Options &state) override

Add extra fields for output, or set attributes e.g docstrings.

Private Members

std::vector<RecycleChannel> channels
bool target_recycle
bool sol_recycle
bool pfr_recycle
bool neutral_pump

Flags for enabling recycling in different regions.

bool diagnose

Save additional post-processing variables?

Field3D density_source
Field3D energy_source

Recycling particle and energy sources for all locations.

Field3D energy_flow_ylow
Field3D energy_flow_xlow

Cell edge fluxes used for calculating fast recycling energy source.

Field3D particle_flow_xlow

Radial wall particle fluxes for recycling calc. No need to get poloidal from here, it’s calculated from sheath velocity.

Field2D is_pump

1 = pump, 0 = no pump. Works only in SOL/PFR. Provided by user in grid file.

Field3D target_recycle_density_source
Field3D target_recycle_energy_source
Field3D wall_recycle_density_source
Field3D wall_recycle_energy_source

Recycling particle and energy sources for pfr + sol recycling.

Field3D pump_density_source
Field3D pump_energy_source

Recycling particle and energy sources for pump recycling.

struct RecycleChannel

Public Members

std::string from

The species name to recycle.

std::string to

Species to recycle to.

BoutReal target_multiplier

Flux multiplier (recycling fraction). Combination of recycling fraction and species change e.g h+ -> h2 results in 0.5 multiplier

BoutReal sol_multiplier
BoutReal pfr_multiplier
BoutReal pump_multiplier
BoutReal target_energy
BoutReal sol_energy
BoutReal pfr_energy

Energy of recycled particle (normalised to Tnorm)

BoutReal target_fast_recycle_fraction
BoutReal pfr_fast_recycle_fraction
BoutReal sol_fast_recycle_fraction

Fraction of ions undergoing fast reflection.

BoutReal target_fast_recycle_energy_factor
BoutReal sol_fast_recycle_energy_factor
BoutReal pfr_fast_recycle_energy_factor

Fraction of energy retained by fast recycled neutrals.