The collisions
property of the DREAMSettings
object contains settings
for how electronelectron and electronion collisions are to be handled. The
object is very simple in structure and only contains a number of flags. The
available options are listed below.
CollisionHandler
¶bremsstrahlung_mode
¶Whether or not to take bremsstrahlung losses into account. The available options are

Neglect bremsstrahlung losses 

Use the stoppingpower formula. 
collfreq_mode
¶Which model to use for the collision frequencies. The available options are

Superthermal limit of collision frequencies. 

Fully relativistic collision frequencies. 

Ultrarelativistic limit of collision frequencies. 
The full collision model uses collision frequencies which are valid everywhere for testparticles and supports the relativistic MaxwellJüttner distribution as equilibrium, and is therefore the least approximate model currently implemented in DREAM. This mode is required for running fullykinetic simulations where all electrons are resolved on the kinetic grid.
The superthermal limit of the full expressions has also been implemented and is intended for “standard” DREAM calculations, i.e. where a combined fluidkinetic calculation is conducted. This model for the distribution is nonconservative, where electrons are lost in the origin, are removed from the distribution and enter the fluid cold population. Notably, this setting removes the possibility of resolving Dreicer runaway generation, but captures all other mechanisms.
The ultrarelativistic is finally intended for benchmarking and for modelling the highly relativistic runaway electrons, where the \(v=c\) limit is taken in the collision frequencies.
collfreq_type
¶Which type of ion nuclear screening to assume for ions.

Assume that ion charges are completely screened. 

Assume collisions with the full nuclear charge. 

Take into account the partial screening of the nucleus 
The partiallyscreened model is valid at all energies and captures the momentumdependent screening effect of bound electrons, and contains the most accurate collision model available. Formally, the completelyscreened type is the lowenergy limit of this general model, and nonscreened the asymptotic highenergy limit.
lnlambda
¶Which model to use for the Coulomb logarithm \(\ln\Lambda\).

Take the Coulomb logarithm to depend only on temperature and density. 

Take the Coulomb logarithm to depend only on temperature and density. 

Account for the Coulomb logarithm’s dependence on electron energy. 
The energydependent Coulomb logarithm accounts for the increase of (and difference between)
the electronelectron and electronion Coulomb logarithms as the electron energy increases.
LNLAMBDA_THERMAL
corresponds roughly to the energydependent model evaluated at the
thermal momentum, and LNLAMBDA_CONSTANT
at the speed of light.
pstar_mode
¶Which model to use for the effective critical momentum \(p_\star\), which set the analytical runaway rates of avalanche, Compton and tritium.

Assumes bananaregime runaway generation with trapping corrections 

Assumes local runaway generation 
The local model is inspired by C J McDevitt, XZ Tang, EPL 127, 45001 (2019), where they showed that at sufficiently strong electric fields (and therefore low critical momenta), the electrons enter the collisional regimes where they are scattered before completing a bounce orbit. At electron densities of 2e20, this occurs at approximately \(p_c\sim 0.1\).
Note
Fluid Dreicer generation does not support COLLISIONLESS and always default to COLLISIONAL.
The below example shows how to set collision options:
from DREAM.DREAMSettings import DREAMSettings
import DREAM.Settings.CollisionHandler as Collisions
ds = DREAMSettings()
...
ds.collisions.bremsstrahlung_mode = Collisions.BREMSSTRAHLUNG_MODE_STOPPING_POWER
ds.collisions.collfreq_mode = Collisions.COLLFREQ_MODE_FULL
ds.collisions.collfreq_type = Collisions.COLLFREQ_TYPE_NON_SCREENED
ds.collisions.lnlambda = Collisions.LNLAMBDA_CONSTANT
ds.collision.pstar_mode = Collisions.PSTAR_MODE_COLLISIONAL