coulombCollision

Coulomb Collision

Works with a VSimPD license. Collision of the form

\[A + B \rightarrow A + B\]

Elastic scattering of two charged particles. Both momentum and energy are conserved. The algorithm is based on a paper by F. Perez, et. al. (“Improved modeling of relativistic collisions and collisional ionization in particle-in-cell codes”, Physics of Plasmas, 19, 2012).

The coulombCollision algorithm conserves energy and momentum by shifting into the CoM frame, randomly picking two scattering angles (polar and azimuthal angles from an isotropic distribution), and then exactly conserving momentum and energy.

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

reactants = [speciesA speciesB]
products = [speciesA speciesB]

where speciesA and speciesB are both charged species.

Note

The order is arbitrary, but the must be consistent between the Reactants and Products blocks.

Example coulombCollision Block

<RxnProductGenerator productGenerator>
  kind = coulombCollision
</RxnProductGenerator>