(dream)

This module provides a way for the user to load a distribution function from an output file generated by the kinetic solver DREAM. The module is capable of loading both hot electron- and runaway distribution functions.

Summary of options

Option Description
dream distribution Name of distribution function to load (f_hot or f_re).
dream flippitchsign If true, flips the sign of the particle pitch.
dream interptype Interpolation method to use.
dream logarithmize Whether or not to interpolate in the logarithm of the distribution function.
dream name Name of file containing DREAM distribution function.
dream time Index of time step from distribution function to use.

Example configuration

The following example configures a DREAM distribution function:

@DistributionFunction ourDistributionFunction (dream) {
    name = "/path/to/distribution.h5";
    distribution = "f_hot";
}

All options

distribution
Default value:f_re, if it exists in the output file, otherwise f_hot.
Allowed values:f_hot or f_re.

Specifies the name of the distribution function to load. DREAM can simulate the evolution of two connected distribution functions simultaneously and this option specifies which of the two distribution functions to use. Generally, synchrotron radiation originates in the high-energy region of the distribution which is represented by f_re. Hence, f_re is used by default unless this option is explicitly set otherwise. Some simulations keep the entire distribution function on a single grid, in which case SOFT will pick the only available distribution function.

flippitchsign
Default value:no
Allowed values:yes or no

If yes, transforms \(f(p,\xi)\to f(p,-\xi)\). This is useful in case the distribution function is defined in an inconsistent way (i.e. if a positive parallel electric field accelerates particles in the anti-parallel direction).

interptype
Default value:cubic
Allowed values:cubic or linear

SOFT interpolates in the given distribution function to evaluate it at arbitrary points on the phase space grid. A linear interpolation scheme is always used to interpolate in the radial coordinate, but interpolation in the momentum coordinates (\(p\) and \(\xi\)) can either be done using bi-linear or bi-cubic splines.

logarithmize
Default value:no
Allowed values:yes or no

If yes, interpolates in the logarithm of the distribution function instead of in the distribution function directly. This can aid in fitting sharply decaying ditsribution functions.

name
Default value:Nothing
Allowed values:Any valid file name

Name of the file containing the distribution function.

time
Default value:-1 (last timestep)
Allowed values:Any integer with absolute value less than the number of time points in the distribution function

Selects the index of the time step to take the distribution function from. Negative indices count from the back of the array, so that -1 corresponds to the last timestep, -2 to the next-to-last etc.