impactElastic
Works with VSimPD license.
Kind of MonteCarlo interaction that models the elastic scattering collision of an electron with a background neutral gas or species. In this kind of collision, the incident electron loses small percentage of its energy and is scattered after the collision. The scattered electron energy, \(\epsilon_{sc}\), is computed to be:
\[\epsilon_{sc} = \epsilon_{inc} \left(1 - \frac{2 m_e M_0}{(m_e+M_0)^2} (1. - \cos \chi) \right)\]where:
\(\epsilon_{inc}\) is the incident electron energy,
\(m_e\) is the mass of the incident electron,
\(M_0\) is the mass of the neutral gas atom,
\(\chi\) is the scattering angle given by:
\[\cos \chi = \frac{2 + \epsilon_{inc} -2\left(1+\epsilon_{inc}\right)^{R_1}}{\epsilon_{inc}}\]The azimuthal scattering angle is given by:
\(\varphi = 2 \pi R_2\)In the above equations \(R_1\) and \(R_2\) are two random numbers uniformly distributed between 0 and 1.
Note
This feature replaces the impactElastic feature previously implemented in Vorpal ionization.
crossSection (string, required)
Cross section to be used in the interaction. Possible values
are builtIn
, eedl
, and functionDefined
.
See below for required parameters for each choice.
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.
isNeutralGasFluid (string, optional, default = true)
Defines whether the neutral gas tracked is a fluid background or not. The
default is true, i.e. the neutral gas is fluid. When this option is false,
the kinetic neutral species and its gas type must be defined
using inNeutrals
and inNeutralsGasType
.
inNeutrals
(string)
Name of the impact kinetic neutral particle described by a species block in the input file. This attribute is required whenisNeutralGasFluid
is set to false.
inNeutralsGasType
(string)
Type of the impact kinetic neutral gas particle. This attribute is required whenisNeutralGasFluid
is set to false.
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.
force1D (integer, optional, default = 0)
Force the interaction to occur in 1D.
Please see Types of collisions for the available
builtIn
gases.
If the eedl
cross section type is used, the following
parameters must be set:
crossSectionDataFile (string)
Points to the file containing the EEDL data.
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 = 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
<Interaction ElecImpElastic>
kind = impactElastic
neutralGas = ArNeutralGas
impactSpecies = electrons
crossSection = eedl
crossSectionDataFile = eedlAr.dat
</Interaction>