chargeExchange
Works with VSimPD license.
Kind of MonteCarlo interaction that models ionic charge exchange of an ion with a background neutral gas, based on the method described by Spicer, Wang, and Brieda [SWB06]. The method assumes that the neutral atoms are slow enough that their velocity is negligible (for the purposes of computing the relative ion-neutral velocity), and that the ions are moving quickly through the background neutrals. The method also assumes the charge-exchange is between a neutral atom and a singly-ionized atom.
Note
This feature replaces the cellChargeExchange kind previously implemented in the Vorpal collisions.
crossSection (string)
cross-section to be used in the interaction. Possible values
are builtIn
or functionDefined
.
See below for required parameters for each choice.
Please see Types of collisions for the available
builtIn
gases.
If the builtIn
cross-section type is used, the following parameters must
be set:
inIons (string)
Specifies the initial state ionized Species.
inNeutrals (string)
Specifies the initial state neutral background species.
outNeutrals (string)
Specifies the neutral ion species produced by the interaction.
outIons (string)
Specifies the ionized ion species produced by the interaction.
vthermNeutral (real)
This parameter specifies the thermal velocity, in meters per second, of the initial state neutral background species. For the model to be valid, this value should be significantly less than the average velocity of the initial state ion species.
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 are
interpolatedFromFile
, LXcatFile
, or expression
.
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 = velocity)
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
In this example, the builtIn cross-section is used by default. You can refer to impactCollisions interaction examples to see how to use the cross-section with an OAFunc function.
<Interaction chargeXchange>
kind = chargeExchange
vthermNeutrals=16.0
inIons=oxygen1
inNeutrals=oxygen0
outNeutrals=oxygen0
outIons=oxygen1
crossSection = builtIn
</Interaction>