electronScatter

Electron Scatter

Works with a VSimPD license. Collision of the form

\[e + A \rightarrow e + A\]

A scattering process similar to binaryElastic, but optimized for the specific case where one of the scattering species is an electron. The electronScatter process is inelastic, for an elastic electron scattering process, use Binary Elastic.

A generator of 2 product particles to model electron scattering off of a neutral/ion. Can be isotropic or anisotropic following the Vahedi-Surendra algorithm [VS95].

In the Vahedi-Surendra algorithm, 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 “A” species in the equation above,

  • \(\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.

Any RxnProcess Block block which points to a productGenerator of kind = electronScatter should have the Reactants and Products in the order:

reactants = [electron speciesA]
products = [electron speciesA]

electronScatter Attributes

scatterType (string, required, default = VS)

The isotropy of the electron scatter. Can be isotropic or VS for a non-isotropic scattering following the algorithm presented by Vahedi and Surendra (see above).

randomSeed (int, optional, default: random int)

Manually set a random seed used to determine the final velocities of the product particles.

The default is to choose a random seed at run time. To produce identical simulations, advanced users may want to manually set a seed. It is recommended not to include this parameter so that a different random number will be generated for each run.

Example electronScatter Block

<RxnProductGenerator productGenerator>
  kind = electronScatter
  #scatterType = VS
  #randomSeed = 423
</RxnProductGenerator>