- impactIonCollisions
impactIonCollisions¶
Works with VSimPD license.
This kind of MonteCarlo interaction models ion impact collisions with a background neutral gas. In this kind of collision the incident ion is scattered (referred to as momentum exchange) or else undergoes charge exchange collision with the background neutral gas. In the momentum exchange collision, the incident ion does not lose energy. In the charge exchange interaction, the resulting ion energy is determined based on the background neutral gas temperature.
Note
This feature replaces the impactIonCollisions feature previously implemented in Vorpal ionization.
impactIonCollisions Parameters¶
- crossSection (string, required)
Cross section to be used in the interaction. Possible values are
builtIn
, andfunctionDefined
. See below for required parameters for each choice.
- ionCollType (string, required)
Type of ion impact collision, one of:
MomentumExchange
ChargeExchange
.
- impactSpecies (string, required)
Name of the incident particles described by a species block in the input file.
- neutralGas (string, required)
Name of the Fluid block describing the background neutral gas. For more information on the kinds of allowed neutral Gases, please see Working with neutralGas Fluids and the gasKind Parameter.
- neutralGasTemp (real, optional, default = 300.)
Temperature of the background neutral gas in Kelvin. This parameter is used to determine the incident ion velocity relative to the neutral gas atoms and the final ion velocity.
- depleteBackgroundGas (string, optional, default = true)
A flag to modify the background fluid gas density when performing the interaction.
- leaveIncidentUnchanged (bool, optional, default = false)
When enabled, this parameter leaves the impact (incident) particle unchanged after the collision is processed. This is helpful when the scattering effect of the incident particle is treated as a bulk effect, such as in the nullBgAbsorber.
builtIn Parameters¶
The builtIn
option is based on the semi-empirical formula
from Lindsay [LS05] for all gas types except Xe and Ar. For Xe and Ar background
neutral gases the builtIn
cross section data is used from the data
found in experiments by Miller [MPL+02].
Please see Types of collisions for the available
builtIn
gases.
functionDefined Parameters¶
If the functionDefined
cross section type is used, the following
parameters must be set:
- OAFunc (block, required)
An OAFunc block of name
crossSectionFunc
must be used inside the Interaction block. The OAFunc block allows the user to define its own cross section for the interaction, either through a two-column data file or through an expression. The kinds of OAFunc available for this interaction areinterpolatedFromFile
,LXcatFile
, orexpression
. The OAFunc must return the value of the cross section in m2.Please see OAFunc Block for more information on the OAFunc block.
- crossSectionVariable (string, optional, default = energy)
Used in the case when an OAFunc function is given for the cross section to specify whether the parameter of the function is either the:
Relative collision velocity magnitude of the incident particle in m-1:
crossSectionVariable = velocity
Kinetic energy of the incident particle in eV:
crossSectionVariable = energy
Example impactIonCollisions Block¶
<MonteCarloInteraction ArIonCollider>
<IncidentSelector mySelector>
kind=unbiasedSelector
</IncidentSelector>
<Interaction ArIonElasticM>
kind = impactIonCollisions
neutralGas = ArNeutralGas
impactSpecies = Ar1
neutralGasTemp = 300
ionCollType = MomentumExchange
crossSection = builtIn
</Interaction>
<Interaction ArIonCEX>
kind = impactIonCollisions
neutralGas = ArNeutralGas
impactSpecies = Ar1
neutralGasTemp = 300
ionCollType = ChargeExchange
crossSection = builtIn
</Interaction>
</MonteCarloInteractions>