ImpactCollider

An ImpactCollider block is used to model charged particle collisions with fluid or background neutral gases, or fluid gas mixtures.

The ImpactCollider/ImpactCollisions feature handles electron and ion impact collisions with background fluid neutral gas or fluid gas mixtures. ImpactCollider/ImpactCollisions uses the Monte Carlo Collision (MCC) technique. It enables users to test a variety of charged particle impact collisions in plasma simulations with background gases or gas mixtures. Details of the collision models and the collision cross-section options available are described below.

This feature allows modeling of charged particle collisions with either one gas kind or multiple gas mixtures. Also, ImpactCollider allows users the flexibility to consider only one collision kind, more than one collision kind, or all collision kinds in their VSim simulations.

In the case of electron-impact collisions, both elastic scattering and inelastic collisions such as excitation or ionization processes are supported. For the ion-impact collisions case, both elastic scattering (momentum-exchange) and inelastic charge-exchange collision processes are supported. In addition, ImpactCollider enables users to select impact collision cross-section data from three different options.

Available options for impact cross-section selection data include:

  • builtIn
  • eedl
  • userDefined

These cross-section options are described in detail in ImpactCollision blocks.

Users can use one or multiple ImpactCollider blocks in a VSim input file. Each ImpactCollider block can contain one or multiple ImpactCollision blocks to define different kinds of electron/ion impact collisions with the fluid neutral gases in the corresponding VSim input file.

Note

ImpactCollider blocks should be used only with background fluid gases (i.e., the neutral gas is assumed to be a fluid rather than a collection of kinetic neutral macroparticles). The gases listed under the ImpactCollider block’s neutralGas parameter must be defined using the Fluid block, and the Fluid block’s gasKind should match the gas names declared in the neutralGas parameter of the ImpactCollider block.

ImpactCollider Parameters

There is only one kind of ImpactCollider block, and therefore no kind attribute is needed.

The ImpactCollider block can contain one or more ImpactCollision blocks to specify which collisions will take place.

neutralGas (string vector)
List of fluid gas or fluid gas mixture VSim objects that can be collided with the impacting particle species. VSim checks to see if a neutralGas vector of strings is provided. The strings correspond to the names of the ionizable objects. The names of the ionizable gas objects must be defined in the VSim input file using Fluid blocks.
neutralGasTemp (float vector, optional)
Temperature values for the gases listed under the neutralGas. The default gas temperature value is 300 K. The neutralGasTemp parameter is used in determining the energies of ions produced in ionization reactions, and also in determining the ion energies during charge-exchange collisions.
impactSpecies (string vector)
A list of particle species that can participate in impact collisions with the gas or gas mixtures listed under the neutralGas. VSim checks whether an impactSpecies vector of strings is provided. The strings should correspond to the names of the impact species objects, which must be defined in the VSim input file using Species blocks. Both fixed-weight and variable-weight particles are supported.

Example ImpactCollider Block

<ImpactCollider electronHeGasCollisions>

  neutralGas = [HeNeutralGas]
  impactSpecies = [electrons]
  neutralGasTemp = GAS_TEMP_IN_K
  <ImpactCollision ElecImpElastic>
    kind = impactElastic
    crossSectionDataType = [userDefined]
    crossSectionDataFile = [elasticCS.dat]
    scatteringType = uniform
  </ImpactCollision>

  <ImpactCollision ElecImpExcitation1>
    kind = impactExcitation
    crossSectionDataType = [userDefined]
    crossSectionDataFile = [excitation1CS.dat]
    scatteringType = uniform
  </ImpactCollision>

  <ImpactCollision ElecImpExcitation2>
    kind = impactExcitation
    crossSectionDataType = [userDefined]
    crossSectionDataFile = [excitation2CS.dat]
    scatteringType = uniform
  </ImpactCollision>

  <ImpactCollision elecImpIonization>
    kind = impactIonization
    crossSectionDataType = [userDefined]
    crossSectionDataFile = [ionizationCS.dat]
    ionizedElectronSpecies = [electrons]
    ionSpecies = [He1]
    depleteBackgroundGas = false
    scatteringType = uniform
  </ImpactCollision>

</ImpactCollider>