collisions.mac
This macro file can be imported to an input file with
It is imported by VSim whenever a simulation contains particles.
This macro file is available to all packages.
This macro file defines macros for adding collisions between particles
and particles and between particles and fluids into a simulation.
Uses: collisionsinz.mac, collisionsmc.mac, and collisionsrxn.mac
To add collisions to your simulation with the collisions.mac macros involves
3 defining steps.
- Create the neutral gas using the fluids.mac macro addNeutralGas
- Specify the type of collisions (electrons or ions) by including a macro for
either addElectronNeutralFluidCollisions or addIonNeutralFluidCollisions
- Specify which types of collisions for each species where choices are
- Electrons: Elastic, Excitation, Ionization
- Ions: Charge Exchange, Momentum Exchange
Examples
Here are some example uses of the macros in this macro file:
addNeutralGas(XeNeutralGas, Xe, initGasDen, 300., True, [zMin, rMin], [zMax, rMax])
addElectronNeutralFluidCollisions(elecNeutralColl, electrons, XeNeutralGas)
addElectronNeutralFluidIonizationCollision(elecIonization, elecNeutralColl, electrons, XePlus, isotropic, EvaluatedElectronDataLibrary, eedl.dat)
addElectronNeutralFluidElasticCollision(elecElastic, elecNeutralColl, isotropic, EvaluatedElectronDataLibrary, eedl.dat)
addElectronNeutralFluidExcitationCollision(elecExcitation, elecNeutralColl, isotropic, EvaluatedElectronDataLibrary, eedl.dat)
Public Macros
-
addElectronNeutralFluidCollisions
(name, impactElectrons, neutralGas)
Add collisions between an electron species and a neutral
background gas.
Parameters: |
- name – The name of this collision process.
- impactElectrons – The name of the impacting electron species.
- neutralGas – The name of the neutral background gas.
|
-
addIonNeutralFluidCollisions
(name, impactIons, neutralGas)
Add collisions between an ion species and a neutral
background gas.
Parameters: |
- name – The name of this collision process.
- impactElectrons – The name of the impacting electron species.
- neutralGas – The name of the neutral background gas.
|
-
addElectronNeutralFluidElasticCollision
(name, owningCollider, productDist, crossSectionType)
Add elastic collision with built in cross-sectioning.
Parameters: |
- name – The name of this collision process.
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addElectronNeutralFluidCollisions macro.
- productDist – The distribution of product velocities after collision. Choice of isotropic or VahediSurendra.
- crossSectionType – The cross section calculation method. Choice of userDefinedCrossSection or EvaluatedElectronDataLibrary.
|
-
addElectronNeutralFluidElasticCollision
(name, owningCollider, productDist, crossSectionType, dataFile)
Add elastic collision with file defined in cross-sectioning.
Parameters: |
- name – The name of this collision process.
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addElectronNeutralFluidCollisions macro.
- productDist – The distribution of product velocities after collision. Choice of isotropic or VahediSurendra.
- crossSectionType – The cross section calculation method. Choice of userDefinedCrossSection or EvaluatedElectronDataLibrary.
- dataFile – The file containing the cross section data.
|
-
addElectronNeutralFluidExcitationCollision
(name, owningCollider, productDist, crossSectionType)
Add excitation collision with built in cross-sectioning.
Parameters: |
- name – The name of this collision process.
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addElectronNeutralFluidCollisions macro.
- productDist – The distribution of product velocities after collision. Choice of isotropic or VahediSurendra.
- crossSectionType – The cross section calculation method. Choice of userDefinedCrossSection or EvaluatedElectronDataLibrary.
|
-
addElectronNeutralFluidExcitationCollision
(name, owningCollider, productDist, crossSectionType, dataFile)
Add excitation collision with file defined in cross-sectioning.
Parameters: |
- name – The name of this collision process.
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addElectronNeutralFluidCollisions macro.
- productDist – The distribution of product velocities after collision. Choice of isotropic or VahediSurendra.
- crossSectionType – The cross section calculation method. Choice of userDefinedCrossSection or EvaluatedElectronDataLibrary.
- dataFile – The file containing the cross section data.
|
-
addElectronNeutralFluidIonizationCollision
(name, owningCollider, productElectrons, productIons, productDist, crossSectionType)
Add ionization collision with built in cross sectioning.
Parameters: |
- name – The name of this collision process.
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addElectronNeutralFluidCollisions macro.
- productElectrons – The name of the product electron species.
- productIons – The name of the product ion species.
- productDist – The distribution of product velocities after collision. Choice of isotropic or VahediSurendra.
- crossSectionType – The cross section calculation method. Choice of builtIn, userDefinedCrossSection or EvaluatedElectronDataLibrary.
|
-
addElectronNeutralFluidIonizationCollision
(name, owningCollider, productElectrons, productIons, productDist, crossSectionType, dataFile)
Add ionization collision with file defined in cross-sectioning.
Parameters: |
- name – The name of this collision process.
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addElectronNeutralFluidCollisions macro.
- productElectrons – The name of the product electron species.
- productIons – The name of the product ion species.
- productDist – The distribution of product velocities after collision. Choice of isotropic or VahediSurendra.
- crossSectionType – The cross section calculation method. Choice of builtIn, userDefinedCrossSection or EvaluatedElectronDataLibrary.
- dataFile – The file containing the cross section data.
|
-
addIonNeutralFluidChargeExchangeCollision
(name, owningCollider, productDist, crossSectionType)
Add charge exchange collision with built in cross-sectioning.
Parameters: |
- name – The name of this collision process.
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addIonNeutralFluidCollisions macro.
- productDist – The distribution of product velocities after collision. Choice of backward.
- crossSectionType – The cross section calculation method. Choice of builtIn or userDefinedCrossSection.
|
-
addIonNeutralFluidChargeExchangeCollision
(name, owningCollider, productDist, crossSectionType, dataFile)
Add charge exchange collision with file defined in cross-sectioning.
Parameters: |
- name – The name of this collision process.
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addIonNeutralFluidCollisions macro.
- productDist – The distribution of product velocities after collision. Choice of backward.
- crossSectionType – The cross section calculation method. Choice of builtIn or userDefinedCrossSection.
- dataFile – The file containing the cross section data.
|
-
addIonNeutralFluidMomentumExchangeCollision
(name, owningCollider, productDist, crossSectionType)
Add momentum exchange collision with built in cross-sectioning.
Parameters: |
- name – The name of this collision process.
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addIonNeutralFluidCollisions macro.
- productDist – The distribution of product velocities after collision. Choice of backward
- crossSectionType – The cross section calculation method. Choice of builtIn or userDefinedCrossSection
|
-
addIonNeutralFluidMomentumExchangeCollision
(name, owningCollider, productDist, crossSectionType, dataFile)
Add momentum exchange collision with file defined in cross sectioning
Parameters: |
- name – The name of this collision process
- owningCollider – The collisions parent that defines the impact species and the neutral gas. The name used for the addIonNeutralFluidCollisions macro.
- productDist – The distribution of product velocities after collision. Choice of backward.
- crossSectionType – The cross section calculation method. Choice of builtIn or userDefinedCrossSection.
- dataFile – The file containing the cross section data.
|