nullSelfCombination

# nullSelfCombination

Kind of MonteCarlo interaction that combines macroparticles of a single species together into one single macroparticle. This interaction is designed to use variable-weight species.

Note

This feature replaces the selfCombCollision previously implemented in Vorpal collision.

## nullSelfCombination Parameters

species (string)

This specifies the name of the Species block representing the particles to be combined.

threshold (integer)

This specifies the number of particles that must exist in a cell before self-combination.

weight_max (real)

This specifies the maximum variable-weight to be given to a particle when self-combining variable-weight species.

algorithm_kind (integer)

This specifies the kind of algorithm to be used when combining macroparticles. The possible values are 1, 2, 3, 4 or 5. Option 1 indicates a simple pair-wise combination of macroparticles, deleting one and adding the number of real particles (weight) to the other (decimation). Option 2 indicates a slightly more accurate pair-wise approach, deleting one macroparticle and assigning the other the mean position and velocity of the pair as well as the total weight of the pair (inelastic). Option 3 is an elastic combination approach, where quartets of macroparticles are combined into pairs that conserve energy and momentum (elastic). Option 4 is a pair-wise combining approach similar to Option 2 except that it allows users to avoid combining particles that are above the user specified limit. Option 5 is a pairwise approach in which the particles within a cell are grouped in velocity phase-space bins and then particles in each velocity phase-space bin are combined pair-wise. In this approach energy and momentum are conserved.

force1D (integer)

This option only applies to algorithm_kind 3 (elastic). If non-zero (true), this flag forces the velocities of the new particles to be in the 0 direction, rather than in a random 3D direction.

noCombThresholdKE (float, optional, default = 10000.)

This option only applies to algorithm_kind 4. User specified kinetic energy limit in eV. This enables users to set certain energetic particles not to participate in self-combination. Only energy values below this limit are selected for combination.

numPSBins (integer vector, default = [ 2 2 2])

This option only applies to algorithm_kind 5. This enables users to set up the number of velocity phase-space bins to consider in grouping particles in velocity phase-space. If the number of phase space bins large, then the simulation will become slower. A reasonable choice would be using [4 4 4].

### Example nullSelfCombination Block

<NullInteraction elecCollision>
kind = nullSelfCombination
species = electrons
algorithm_kind = 1
weight_max = 1000.
threshold = 2
</NullInteraction>