methods 

&DRIFT: methods


velocity

In the absence of a magnetic field, the drift velocity vector for both electrons and ions is parallel with the electric field.

The magnitude of the drift velocity vector is taken from the gas tables. Mainly for historic reasons, the tables list the velocity for electrons and the velocity divided by the field (usually called mobility) for ions, a difference that is of a merely formal nature.

The magnitude of the drift velocity of electrons and the mobility of ions can be entered with the TABLE and ADD gas section commands. Electron velocities can in addition be computed with MAGBOLTZ and MIX.

In the presence of a magnetic field, both electrons and ions experience a force which is perpendicular to both the E field and the local velocity. In vacuum, particles will follow a spiraling trajectory. In chamber gases however, both electrons and ions undergo frequent scattering as a result of which they move in a straight line.

This motion can be described in 3 ways in Garfield:

Since the Lorentz angle for ions can currently not be entered in the gas tables, the latter formula is always used for ions.


Runge_Kutta_Fehlberg

Runge Kutta Fehlberg integration is initialised with

The method iterates over the following steps:

  1. Given a starting point, the velocity at the starting point, and a time step, compute 2 estimates of the next point on the drift-line: These 2 estimates are based on the drift velocity at the starting point and the velocity at only 3 new locations.
  2. The time step is updated by comparing the 2nd and 3rd order estimates with the requested accuracy:
                accuracy
    dt' =  dt \√ ---------
                |z\<SUB\>2\</SUB\> - z\<SUB\>3\</SUB\>|
    
  3. The step is repeated if:
  4. The position is updated with the 2nd order estimate.
  5. The velocity is updated according to the end-point velocity of the step, which is one of the 3 velocity vectors that were computed under 1.

The iteration ends when any of the following conditions is satisfied:

The strength of this algorithm is that it takes very long steps in areas where the field is nearly constant and small steps in areas with a varying field. This saves computation time and improves the overall accuracy of the calculation.

The method is well adapted to fields that are smooth, such as analytic potentials. Field maps in contrast are sometimes not even continuous. This algorithm has difficulties coping with such rough maps - the Monte Carlo method is then a better choice.


Monte_Carlo

Monte Carlo tracking through diverging and converging fields depends on the step size. Since the mean free path at atmospheric pressure in gases is of the order of microns, it would not be appropriate to take the small step size limit in detectors where the characteristic dimensions are of the order of mm or smaller. For electrons, the method is to be considered obsolete and microscopic tracking should be used instead. The method is still used for ions, for which no better method is currently available.
The Monte Carlo drift-line integration method is initialised by:

The method iterates over the following steps:

  1. From the velocity and the time step, compute a step length, assuming the velocity to be constant over the step.
  2. Compute the transverse and longitudinal diffusion coefficients at the starting location, scale with the square root of the step length. Here too, we assume the diffusion is constant over the step.
  3. Generate a diffusion step, with 1 longitudinal component in the direction of the drift velocity and 2 transverse components according to 3 uncorrelated Gaussian distributions.
  4. Update the location by adding the step due to the velocity and the random step due to diffusion.

The iteration ends when any of the following conditions is satisfied:

The most striking difference between Monte Carlo and Runge Kutta integration is that the latter will, for a given starting point, always compute the same path while Monte Carlo integration will lead to different trajectories (provided lateral diffusion is appreciable).

Monte Carlo integration is intrinsically robust and is therefore well suited when integrating non-smooth fields such as those encountered in field maps.

The Monte Carlo method is also to be preferred for very small scale detectors at the scale of the diffusion.

However, care must be taken to adjust the step size. If the steps are too large, the method is inaccurate. If they are too small, the maximum number of steps will be reached before the particle has reached an electrode.


microscopic

Electron tracking at the molecular level using Monte Carlo techniques.

This method relies heavily on the Magboltz procedures and should give results which are statistically compatible with Magboltz tables.

Between collisions with gas molecules, the electron follows a vacuum trajectory. The path length between collisions is drawn from an exponential distribution around the mean free path that corresponds to the electron energy. The null-collision technique [H.R. Skullerud, Brit. J. Appl. Phys. series 2 volume 1 (1968) 1567-1577] is used to correct for the variations of the mean free path as a result of the change in electron kinetic energy between collisions.

Each collision is classified as one of the following with one of the molecule species present in the gas:

The choice is made according to the relative cross sections of these processes at the energy of the electron just prior to the collision. Magboltz contains for each gas ingredient separate cross sections for each type of interaction. It is not unusual that several tens or even hundreds of processes take part.

Procedures which perform microscopic tracking include DRIFT_MICROSCOPIC_ELECTRON and MICROSCOPIC_AVALANCHE.


vacuum

Tracking of relativistic charges through E and B fields in vacuum.

Runge-Kutta-Nystr\&ouml;m integration is used to solve the second order equation of motion numerically:

  .    q   /                              \\
  v = --- | E  +  v/c \&times; B  -  v/c  v/c \&sdot; E |
      \&gamma; m  \\                              /
where q is the charge, m the mass, v the velocity, E the electric field and B the magnetic field.

An automatic step size update is performed by comparing the RKN step, accurate to fourth order, with a simple trapezoid estimate. The integration accuracy must therefore be set to a larger value than with RKF integration.

Tracking in vacuum is provided by the procedures DRIFT_ELECTRON_VACUUM and DRIFT_ION_VACUUM.

The relativistic character of the calculations is illustrated by the following examples:

Left: the orange line represents a relativistic electron (\&gamma; nearly 4) moving through a uniform B field of 2\&nbsp;T perpendicular to the plane of view. It starts from (0,0) with an initial velocity pointing along the positive x-axis. There is no electric field. The green line (partially hidden by the orange line) is a circle with a radius\&nbsp;=\&nbsp;p/(B\&nbsp;q) where p is the momentum and q the charge. For the blue line, the momentum is replaced by m\&nbsp;v, i.e. this is the result of a non-relativistic calculation.

Right: an electron, initially at rest, accelerates in a uniform electric field of 10\&nbsp;kV/cm over a distance of 50\&nbsp;/cm. As in the figure on the left, the blue line shows the non-relativistic calculation.


diffusion

Diffusion is primarily a spatial effect. While a particle drifts, it will on average follow the drift velocity vector, both in direction and in speed. Additionally, it will be scattered transversely, an effect known as transverse diffusion, and it will at times move a bit slower or faster, an effect known as longitudinal diffusion.

The transverse component of diffusion, usually the largest of the two, will make a particle follow a trajectory that differs from the mean. Longitudinal diffusion will only have an effect on the drift time.

If diffusion does not cause the particles starting at one and the same point to reach different electrodes, the dominant effect of diffusion is a fluctuation in arrival time. One should note that this fluctuation is not only due to the longitudinal part of diffusion - also the transverse part plays a role.

Garfield offers several methods to estimate the effect of diffusion:

Additional information on:

 

multiplication

The mean gas multiplication over a drift path is estimated as the exponentiated integral of the Townsend coefficient over the path:
M = e\<SUP\>\&int; \&alpha; dz\</SUP\>
The integration is performed using the Newton-Raphson technique over each step of the drift-line, repeatedly bisecting a step until either the maximum stack depth has been reached, or until the difference between the trapezoidal and the quadratic estimate over a section becomes less than a fraction \&epsilon; of the trapezoidal estimate without bisection of the integral over the entire path.

The integral of the Townsend coefficient over a drift path computed with the Monte_Carlo technique is larger than the integral over a drift path from the same point computed with the Runge_Kutta_Fehlberg method. The reason for this difference is that the path length for Monte Carlo integration is larger than for RKF integration.

Magboltz computes Townsend coefficients which are suitable for use with an Runge-Kutta path. The PROJECTED-PATH-INTEGRATION integration parameter can in certain contexts be used to reduce the step size dependence of the integral over Monte Carlo paths.

Attachment, even at a rate which is orders of magnitude smaller than the gain, profoundly modifies the avalanche fluctuations. Usually, the effect of combined gain and attachment is a loss of energy resolution. The reason for this effect is that the attachment rate, in many gas mixtures, exceeds the gain at the onset of the avalanche. Thus, there is a non-negligible probability that an electron is lost before it can start an avalanche while attachment after the avalanche has reached a certain size has virtually no effect anymore. Fluctuations of the avalanche size can be estimated by using the AVALANCHE and RND_MULTIPLICATION procedures.


attachment

The attachment losses over a drift path are estimated as the exponentiated integral of the attachment coefficient over the path:
L = e\<SUP\>- \&int; &eta; dz\</SUP\>
The integration is performed using the Newton-Raphson technique over each step of the drift-line, repeatedly bisecting a step until either the maximum stack depth has been reached, or until the difference between the trapezoidal and the quadratic estimate over a section becomes less than a fraction \&epsilon; of the trapezoidal estimate without bisection of the integral over the entire path.

The integral of the attachment coefficient over a drift path computed with the Monte_Carlo technique is larger than the integral over a drift path from the same point computed with the Runge_Kutta_Fehlberg method. The reason for this difference is that the path length for Monte Carlo integration is larger than for RKF integration.

Magboltz computes attachment coefficients for use with an RKF path. The PROJECTED-PATH-INTEGRATION integration parameter can in certain contexts be used to reduce the step size dependence of the integral over Monte Carlo paths.


status

All drift-line integration routines return status information which tells what happened to the particle that has been drifting.

When the integration routines are called through commands, the status is, on request, printed as part of the output. If the routines are called via procedures, then the status is usually one of the output arguments.

The status is usually shown or returned as a string, shown in the second column of the table below. Occasionally however, a numeric status code is returned, shown in the third column.

The DRIFT_INFORMATION procedure returns on request the status of the last drift-line that has been computed in either of these 2 formats.

Drift-line ended because ... Status string Numeric status code
Particle left the drift area Left the drift area -1
More than MXLIST steps Too many steps -2
Various faults Calculations abandoned -3
Hit an equipotential plane Hit a plane -4
Entered a dielectricum Left drift medium -5
Left the finite element mesh Left the mesh -6
Attached by a gas molecule Attached -7
Drift-line makes sharp kink Bend sharper than pi/2 -8
Electron energy too high Energy exceeds E_maximum -9
Hit the plane on the left Hit the minimum x plane -11
Hit the plane on the right Hit the maximum x plane -12
Hit the plane on the bottom Hit the minimum y plane -13
Hit the plane on the top Hit the maximum y plane -14
Hit the tube wall Hit the tube -15
Below transport energy Below transport cut -16
Maximum total MC time reached Maximum MC time reached -18
Hit a wire of type X Hit X wire N 1 ... MXWIRE
Hit a replica of an X-wire Hit a replica of X wire N MXWIRE+1 ... 2*MXWIRE
Ended in a solid of type X Hit X solid N 2*MXWIRE+1 ... 2*MXWIRE+MXSOLI
Other cases (shouldn't occur) Unknown other

Notes:

  1. The drift area is set with the AREA command. When magnetic fields are present, care should be taken to define an appropriate drift area in all 3 dimensions.
  2. If a drift-line ends because the calculation requires too many steps, then usually either the integration accuracy or the maximum_step size are poorly chosen. The permitted maximum number of steps MXLIST is set at compilation time.
  3. Faults can occur for a variety of reasons specific to the integration technique used (either Runge_Kutta_Fehlberg or Monte_Carlo).
  4. The status "Bend sharper than pi/2" only occurs if the REJECT-KINKS integration parameter has been switched on.
  5. The status "Energy exceeds E_maximum" only occurs with microscopic electron tracing as a result of an incorrect choice of the e_maximum parameter.
  6. When a particle hits an electrode in a finite element field map, it will usually be declared to have "Left the mesh": finite element programs do not normally generate a mesh inside conductors. If SOLIDS have been defined, then Garfield will check whether the last point on the mesh is located inside a solid, in which case it will assign a status code accordingly.
  7. The "X" in the status code for wires, replicas of wires and solids is replaced by the corresponding wire label or the corresponding solid label (see SOLIDS). "N" is replaced by the respective sequence number.
  8. A further status code, "Started from a line or an edge" (numeric code -20), is used when the REVERSE-ISOCHRONS option has not been used for plotting isochrons in EDGES and TRACK plots. This status code merely indicates that the particle started from an edge or from the track and it does not give information on the end point of the particle.
  9. A status "Calculations abandoned" can correspond to any of a large number of situations. Examples include: zero electric field, zero electron velocity, step-size smaller than the accuracy, error computing the rotation matrices or divergence tensors used for Monte Carlo integration, difficulties terminating a drift-line on an electrode, internal inconsistencies.


Go to the top level, to &DRIFT, to methods, to the topic index, to the table of contents, or to the full text.

Formatted on 21/01/18 at 16:55.