secondemits.mac

This macro file can be imported to an input file with

$ import secondemits

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 secondary emitters for the various kinds of secondary emission supported by vorpal.

Public Macros

addSecondaryElectronEmitter(secElecSpeciesName, secElecElectronSpeciesName, material, suppressEnergy, secElecParticleSinkName)

Add a secondary electron particle source block to the simulation. Emission is from a primary particle source’s absorber which can either be a shape (imported or created through CSG) or a boundary of the simulation domain. Emission takes into account material properties. Delegates to addSecondaryElectrons(10 args).

Parameters
  • secElecSpeciesName – The name of the secondary electron particle source block.

  • secElecElectronSpeciesName – The name of the emitted electron species.

  • material – A material that determines secondary electron yield. Can be either “copper” or “stainless”.

  • suppressEnergy – A real number, units eV, denoting the suppressing energy of the local electric field. If the local field is of sign that would immediately push the electron back into the surface, then emission does not occur. If emission is desired regardless than this number is set to a very large number. Default is 1e20.

  • secElecParticleSinkName – The name of the particle sink that the secondary electrons are to be emitted from. Must be a Boundary Absorb and Save or a Cut Cell Absorb and Save.

addInteriorSecondaryElectronEmitter(secElecSpeciesName, secElecElectronSpeciesName, material, suppressEnergy, emissionAxis, emissionDir, emissionCoord, secElecParticleSinkName)

Add a secondary electron particle source block to the simulation. Emission is from a primary particle source’s absorber which is interior to the simulation domain. Emission takes into account material properties. Emission direction and offset can be defined as desired. Delegates to addSecondaryElectrons(10 args).

Parameters
  • secElecSpeciesName – The name of the secondary electron particle source block.

  • secElecElectronSpeciesName – The name of the emitted electron species.

  • material – A material that determines secondary electron yield. Can be either “copper” or “stainless”.

  • suppressEnergy – A real number, units eV, denoting the suppressing energy of the local electric field. If the local field is of sign that would immediately push the electron back into the surface, then emission does not occur. If emission is desired regardless than this number is set to a very large number. Default is 1e20.

  • emissionAxis – An integer that defines the axis of emission (e.g. x,y, or z).

  • emissionDir – A string: “positive” or “negative”. Defines which direction for the secondary electrons to travel after emission.

  • emissionCoord – A real valued coordinate that defines the emission offset, or the distance away from the absorber to emit.

  • secElecParticleSinkName – The name of the particle sink that the secondary electrons are to be emitted from. Must be a Interior Absorb and Save.

addSimpleSecondaryElectronEmitter(simpleSecSpeciesName, simpleSecElectronSpeciesName, emissionProbability, emittedEnergy, simpleSecParticleSinkName)

Add a secondary electron particle source block to the simulation. The secondary electron is of the same species as the primary (absorbed) electron. Emission is from a primary electron’s absorber which can either be a shape (imported or created through CSG) or a boundary of the simulation domain. The emitted electron’s energy can be specified along with the secondary electron yield.

Parameters
  • simpleSecSpeciesName – The name of the secondary electron particle source block.

  • simpleSecElectronSpeciesName – The name of the emitted electron species.

  • emissionProability – The probability a secondary electron will be emitted. This is differentiated from the constant probability secondary electron emitter in that the emitted energy is still variable.

  • emittedEnergy – A real number denoting the energy, in Joules. The energy of an emitted electron will be random, between 0 and this number.

  • simpleSecParticleSinkName – The name of the particle sink that the secondary electrons are to be emitted from. Must be a Boundary Absorb and Save or a Cut Cell Absorb and Save.

addConstantProbabilitySecondaryElectronEmitter(constProbSecSpeciesName, constProbSecElectronSpeciesName, emissionProb, constProbSecParticleSinkName)

Add a secondary electron particle source block to the simulation. Emission is from the primary species’ absorber which can either be a shape (imported or created through CSG) or a boundary of the simulation domain. The probability for emission can be explicitly set.

Parameters
  • constProbSecSpeciesName – The name of the secondary electron particle source block.

  • constProbSecElectronSpeciesName – The name of the emitted electron species.

  • emittedProb – A real valued number on [0.0, 1.0] denoting the probability of emitting a secondary electron.

  • constProbSecParticleSinkName – The name of the particle sink that the secondary electrons are to be emitted from. Must be a Boundary Absorb and Save or a Cut Cell Absorb and Save.

addSputterEmitter(sputterSpeciesName, sputterElectronSpeciesName, sputterEmittedSpeciesType, vsig, sputterParticleSinkName)

Add a secondary neutral particle source block to the simulation. Emission is from the primary species’ absorber which can either be a shape (imported or created through CSG) or a boundary of the simulation domain. The type of atom to be sputtered can be selected along with the standard deviation of the velocity of the emitted particles. Delegates to addSputterer(10 args).

Parameters
  • sputterSpeciesName – The name of the secondary electron particle source block.

  • sputterElectronSpeciesName – The name of the emitted electron species.

  • sputterEmittedSpeciesType – The type of atom that is to be sputtered. See the sputter emitter documentation for a list of valid types.

  • vsig – A three-vector of rms velocities.

  • sputterParticleSinkName – The name of the particle sink that the secondary particles are to be emitted from. Must be a Boundary Absorb and Save or a Cut Cell Absorb and Save.

addSputterEmitter(sputterSpeciesName, sputterElectronSpeciesName, sputterEmittedSpeciesType, vsig, emissionAxis, emissionDir, emissionCoord, sputterParticleSinkName)

Add a secondary neutral particle source block to the simulation. Emission is from the primary species’ absorber which can either be a shape (imported or created through CSG) or a boundary of the simulation domain. The type of atom to be sputtered can be selected along with the standard deviation of the velocity of the emitted particles. Emission direction and offset can be defined as desired. Delegates to addSputterer(10 args).

Parameters
  • sputterSpeciesName – The name of the secondary electron particle source block.

  • sputterElectronSpeciesName – The name of the emitted electron species.

  • sputterEmittedSpeciesType – The type of atom that is to be sputtered. See the sputter emitter documentation for a list of valid types.

  • vsig – A three-vector of rms velocities.

  • emissionAxis – An integer that defines the axis of emission (e.g. x,y, or z).

  • emissionDir – A string: “positive” or “negative”. Defines which direction for the secondary electrons to travel after emission.

  • emissionCoord – A real valued coordinate that defines the emission offset, or the distance away from the absorber to emit.

  • sputterParticleSinkName – The name of the particle sink that the secondary particles are to be emitted from. Must be a Boundary Absorb and Save or a Cut Cell Absorb and Save.