A couple of instructions can be used regardless of the origin.
Gas mixture prepared during the run:
Command | Short description |
---|---|
ADD
| Adds/replaces elements of the transport table |
CLUSTER
| Enters the cluster size distribution |
EXTRAPOLATIONS
| Extrapolation of the gas tables |
HEED
| Prepares cluster generation by Heed |
INTERPOLATIONS
| Interpolation method in the gas tables |
MAGBOLTZ
| Magboltz gas mixture (accurate) |
MIX
| Schultz-Gresser gas mixing (approximate) |
PARAMETERS
| Molecular parameters of the gas mixture |
PRESSURE
| Sets the pressure |
TEMPERATURE
| Sets the temperature |
WRITE
| Stores the gas description |
User specified gas mixture:
Command | Short description |
---|---|
ADD
| Adds/replaces elements of the transport table |
CLUSTER
| Enters the cluster size distribution |
EXTRAPOLATIONS
| Extrapolation of the gas tables |
GAS-IDENTIFIER
| Adds a label to the gas description |
INTERPOLATIONS
| Interpolation method in the gas tables |
PARAMETERS
| Molecular parameters of the gas mixture |
PRESSURE
| Sets the pressure |
RESET
| Erases gas data entered sofar |
TABLE
| Enters the gas tables |
TEMPERATURE
| Sets the temperature |
WRITE
| Stores the gas description |
Built-in gas mixtures with fixed proportions:
Command | Short description |
---|---|
ARGON-20-ETHANE-80
| Loads the mixture Argon 20 %, ethane 80 % |
ARGON-50-ETHANE-50
| Loads the mixture Argon 50 %, ethane 50 % |
ARGON-80-ETHANE-20
| Loads the mixture Argon 80 %, ethane 20 % |
ARGON-73-METH-20-PROP-7
| Loads Argon 73 %, CH4 20 %, propanol 7 % |
CO2
| Loads data for almost pure CO2 |
CO2-80-ETHANE-20
| Loads the mixture CO2 80 %, ethane 20 % |
CO2-90-ETHANE-10
| Loads the mixture CO2 90 %, ethane 10 % |
CO2-90-ISOBUTANE-10
| Loads the mixture CO2 90 %, isobutane 10 % |
ETHANE
| Loads data for pure ethane |
ISOBUTANE
| Loads data for pure isobutane |
METHANE
| Loads data for pure methane |
PRESSURE
| Sets the pressure |
Retrieval of a gas description previously stored:
Command | Short description |
---|---|
GET
| Retrieves gas data from a dataset |
General purpose instructions:
Command | Short description |
---|---|
OPTIONS
| Plotting and printing of the gas tables |
PLOT-OPTIONS
| Selects plots, sets ranges and log/lin axes |
Please ensure, with the GAS-PRINT and GAS-PLOT options, that the tables agree with what you think is reasonable.
These mixtures have fixed proportions, use MAGBOLTZ or MIX to obtain tables for arbitrary proportions.
Example:
ARG-50-ETH-50
(Until further notice, the program will use 50 % Argon, 50 % Ethane.)
Additional information on:
The ADD command has 2 formats:
Beware that the WRITE command executes only when the section is left. Therefore, if you modify Magboltz computed gas tables with the ADD command, the modified tables will be written - not the original Magboltz data, no matter where you place the WRITE and ADD statements,
REPLACE is a synonym for ADD.
Format:
ADD item_1 { function_1 | value_1 VS ep_1 [ORDER order_1] } ... item_2 { function_2 | value_2 VS ep_2 [ORDER order_2] } ... ...
Example:
Global pbar = 3 magboltz argon 91 nitrogen 4 methane 5 ... e/p-range 0.05 135 Vector E_Ar_Ar K_Ar_Ar 0 1.53 8 1.53 10 1.53 12 1.53 15 1.52 20 1.51 25 1.49 30 1.47 40 1.44 50 1.41 60 1.38 80 1.32 100 1.27 120 1.22 150 1.16 200 1.06 250 0.99 300 0.95 400 0.85 500 0.78 600 0.72 800 0.63 1000 0.56 1200 0.51 1500 0.46 2000 0.40Global E_Ar_Ar = E_Ar_Ar/(0.010354*300) Global K_Ar_Ar = K_Ar_Ar*1e-6/pbar add ion-mobility K_Ar_Ar vs E_Ar_Ar extrapolation low-ion-mobility constant high-ion-mobility linear
Magboltz is used to generate an electron transport table. This also sets the E/p scale.
Next, a file is read in that contains mobilities as function of E/N for Ar+ ions in Ar at a pressure of 1 atm. The data is taken from the literature, in this case Hornbeck '51 and Beaty '68 (for an extensive compilation consult the H. W. Ellis et al. papers). The E/N values are stored in the matrix E_Ar_Ar, while the mobilities are kept in K_Ar_Ar.
The E/N vector is transformed to E/p. The mobility is divided by the pressure, and its units is changed from cm2/sec.V to cm2/microsec.V.
Finally, the mobility is added to the gas tables using the ADD statement.
References:
Additional information on:
The cluster size distribution is not by itself enough to generate clusters along a track. The clustering model based on the distribution entered here, also need to know the cluster spacing, which can be set with the MEAN keyword of the PARAMETERS command.
If you use the HEED interface, then you probably neither need to enter a cluster size distribution nor the cluster spacing. Entering a cluster size distribution and initialising Heed is however allowed. It is only at the TRACK level that you decide which clustering model you are going to use.
Additional information on:
The EXTRAPOLATIONS command has no effect on extrapolation in 2-dimensional tables, such as those produced by Magboltz when the B field is non-zero. For such tables, polynomial extrapolation is performed with the order set with the INTERPOLATIONS command.
Format:
EXTRAPOLATIONS item1 method1 item2 method2 ...
Examples:
EXTR DRIFT: LINEAR, DIFF: CONST, TOWN: CONST EXTR DRIFT EXP
Additional information on:
The MAGBOLTZ and MIX commands set an identification string that contains a description of the gas mixture. It is advisable not to override this string. Instead, one can use the GET_GAS_DATA procedure to obtain the identifier set by these commands, and then add further information to it.
The identification string is displayed in the plots using the COMMENT text representation.
Format:
GAS-IDENTIFIER string
Examples:
GAS-ID "Some gas"
Sets a simple identification string.
temperature 300 K magboltz argon 50 dme 50 *** Ar++ in Ar, T=300 K, error 1 % (Mason McDaniel I, Beaty 68) Vector E_Ar_Ar_2 K_Ar_Ar_2 40 2.49 50 2.47 60 2.45 70 2.42 80 2.39 90 2.37 100 2.34 120 2.28 140 2.23 160 2.19 180 2.15 200 2.11Call get_gas_data(p,t,gasid) Global E_Ar_Ar_2 = p*E_Ar_Ar_2/(0.010354*t) Global K_Ar_Ar_2 = K_Ar_Ar_2*1e-6 add ion-mobility K_Ar_Ar_2 vs E_Ar_Ar_2 extrapolation low-ion-mobility constant high-ion-mobility linear gas-id "{gasid} with Ar<SUP>++</SUP>"
Magboltz is used to compute electron transport properties, and these are complemented with experimental Ar mobility at the same temperature and pressure. The addition is registered in the gas identifier.
The compact gas description contains electron transport property tables, the ion mobility, cluster size and cluster spacing data, Heed initialisation information, the pressure and the temperature. GET overwrites all of these.
Format:
GET file [member]
Example:
GET gas_data.dat gas2
Additional information on:
The TEMPERATURE and the PRESSURE should be specified before issuing the HEED command. Defaults are assumed if they follow the HEED command.
Neither temperature nor pressure scaling is applied to the cluster information provided by HEED.
The author of Heed, Igor Smirnov, should be contacted for further information about this program.
Format:
HEED [ HYDROGEN fraction ] [ HELIUM-4 fraction ] ... [ NEON fraction ] [ ARGON fraction ] ... [ KRYPTON fraction ] [ XENON fraction ] ...[ METHANE fraction ] [ ETHANE fraction ] ... [ ETHENE fraction ] [ ACETYLENE fraction ] ... [ PROPANE fraction ] [ ISOBUTANE fraction ] ... [ NEOPENTANE fraction ] ...
[ NITROGEN fraction ] [ OXYGEN fraction ] ...
[ WATER fraction ] [ CO2 fraction ] ... [ DME fraction ] [ NITROUS-OXIDE fraction ] ... [ AMMONIA fraction ] [ SF6 fraction ] ...
[ CF4 fraction ] [ C2F4H2 fraction ] ... [ C2F5H fraction ] ...
Example:
pressure {3*760} Heed argon 50 ethane 50
(If you have a 3 atm 50/50 Argon-ethane mixture in your chamber.)
Format:
INTERPOLATIONS item1 method1 item2 method2 ...
Examples:
INTERP DRIFT-VELOCITY NEWTON 2, LONG-DIFFUSION NEWTON 1 INT TOWNSEND SPLINE
Additional information on:
Contrary to the related MIX instruction, Magboltz contains cross section data also for non-elastic processes. Furthermore, Magboltz is not limited to the 0th and 1st order terms of the spherical harmonics expansion used by MIX. Magboltz does need considerably more calculation time.
Even though Magboltz computes Townsend and attachment coefficients, one better uses the Imonte program (from the same author) to compute these.
Since Magboltz takes the magnetic field into account to compute the transport properties, the &MAGNETIC section should precede the gas section. If there is a magnetic field, the program computes a drift velocity vector, otherwise a scalar.
Likewise, TEMPERATURE and PRESSURE statements should be issued before invoking Magboltz. If the temperature has not been specified when Magboltz runs, then a default temperature of 300 K will be assumed. No scaling will be applied if the temperature is changed later on. The default pressure is 760 Torr. The transport properties will be scaled according to simple scaling laws if the pressure is modified after the transport properties have been computed. It is not recommended, however, to rely on these scaling laws since these are very approximate.
The author of Magboltz, Steve Biagi, should be contacted for further information about this program.
Format:
MAGBOLTZ [ HYDROGEN frac ] [ DEUTERIUM frac] ... [ HELIUM-3 frac ] [ HELIUM-4 frac ] ... [ NEON frac ] [ ARGON frac ] ... [ KRYPTON frac ] [ XENON frac ] ... [ NITROGEN frac ] [ OXYGEN frac ] ...[ METHANE frac ] [ ETHANE frac ] ... [ ETHENE frac ] [ ACETYLENE frac ] ... [ PROPANE frac ] [ CYCLO-PROPANE frac ] ... [ PROPENE frac ] [ ISOBUTANE frac ] ... [ NEOPENTANE frac ] ...
[ METHANOL frac ] [ ETHANOL frac ] ... [ PROPANOL frac ] ...
[ AMMONIA frac ] [ WATER frac ] ... [ CO frac ] [ CO2 frac ] ... [ METHYLAL frac ] [ DME frac ] ... [ NITRIC-OXIDE frac ] [ NITROUS-OXIDE frac ] ... [ CF4 frac ] [ C2F6 frac ] ... [ SF6 frac ] ...
[ [ ELECTRIC-FIELD-RANGE emin emax ] ... [ N-E ne ] ... [ LINEAR-E-SCALE | LOGARITHMIC-E-SCALE ] | ... [ ELECTRIC-FIELD efield ] ] ... [ [ ANGLE-RANGE amin amax ] [ N-ANGLE nangle ] | ... [ ANGLE angle ] ] ... [ [ B-FIELD-RANGE bmin bmax ] [ N-B nb ] | ... [ B-FIELD bfield ] ] ...
[ NOPLOT-DISTRIBUTION-FUNCTIONS | ... PLOT-DISTRIBUTION-FUNCTIONS ] ...
[ ANALYTIC-INTEGRATION ... [ SECOND-ORDER-TERMS | FIRST-ORDER-TERMS | ORDERS n ] ... [ NOITERATE-ALPHA | ITERATE-ALPHA ] ... [ SWITCH [alpha/pressure] | NOSWITCH ] ... [ F0-TRANSVERSE-DIFFUSION | ... H1-TRANSVERSE-DIFFUSION | ... MEAN-ENERGY-TRANSVERSE-DIFFUSION ] ... [ F0-LONGITUDINAL-DIFFUSION | ... H1-LONGITUDINAL-DIFFUSION | ... G0-LONGITUDINAL-DIFFUSION ] | ... [ MONTE-CARLO-INTEGRATION ... [ COLLISIONS ncoll ] ] ] ...
[ MOBILITY mob ]
Example:
magboltz argon 50 ethane 50
(The gas in your chamber will be 50 % Argon and 50 % Ethane.)
Additional information on:
The main limitation of this method is that it neglects ionisation effects and that it treats excitation inaccurately. This implies that the results are not valid for large E/p values, i.e. close to the electrodes.
Another limitation is that these calculations neglect the magnetic field - this is not an inherent limitation of the method, but there is no intention to invest further effort in this instruction. Garfield nowadays has an interface to the MAGBOLTZ program of Steve Biagi which is far superior in accuracy to this instruction.
Format:
MIX [ ARGON frac ] [ HELIUM frac ] ... [ METHANE frac ] [ ETHANE frac ] ... [ NEON frac ] [ NITROGEN frac ] ... [ ISOBUTANE frac ] [ XENON frac ] ... [ CO2 frac ] [ METHYLAL frac ] ... [ KRYPTON frac ] [ AMMONIA frac ] ...[ MINIMUM-ENERGY emin ] ... [ MAXIMUM-ENERGY emax ] ... [ STEPSIZE-ENERGY estep ] ...
[ CRITICAL-F0-FRACTION frcrit ] ...
[ E/P-RANGE epmin epmax ] ... [ N-E/P n ] ... [ LINEAR-E/P-SCALE | LOGARITHMIC-E/P-SCALE ] ...
[ PLOT-F0 | NOPLOT-F0 ] ... [ PLOT-ENERGY-LOSS | NOPLOT-ENERGY-LOSS ] ... [ PLOT-CROSS-SECTION | NOPLOT-CROSS-SECTION ] ... [ PLOT-PATH | NOPLOT-PATH ] ...
[ PRINT-TABLES | NOPRINT-TABLES ] ...
[ MOBILITY mob ] ... [ TOWNSEND-COEFFICIENTalpha/p ] ... [ ATTACHMENT-COEFFICIENT beta/p ]
Example:
mix argon 50 ethane 50
The gas in your chamber will be 50 % Argon and 50 % Ethane.
Additional information on:
Format:
OPTIONS [NOGAS-PLOT | GAS-PLOT] ... [NOGAS-PRINT | GAS-PRINT]
Examples:
pl-opt drift-velocity nodiffusion notownsend opt gas-plot nogas-print
Requests a plot of the drift velocity. If cluster data has been entered, then also a cluster plot will be made (this is default) but diffusion and multiplication graphs are not shown. Using further PLOT-OPTIONS options, one could have fixed for instance the scale of the drift velocity plot.
&GAS magboltz argon 70 dme 30 opt gas-print nogas-plot >ArDME.print &MAIN >
MAGBOLTZ is called to compute transport properties for a 70/30 mixture of Argon and DME. The transport tables are printed when leaving the section - note the use of the &MAIN command to close the gas section. They do not appear on the screen, but are output to the file ArDME.print.
Additional information on:
The mean number of clusters is used if the clustering model you plan to choose with the TRACK command, is based on the cluster size distribution entered with CLUSTER.
The rest of the data is only used for a simple backup estimate of the cluster size distribution if neither a CLUSTER nor a HEED statement has been issued.
Format:
PARAMETERS [A a] ... [Z z] ... [RHO density] ... [E-PAIR epair] ... [E-MOST-PROBABLE emprob] ... [MEAN mean_number_of_clusters] ... [TRANSVERSE-ION-DIFFUSION sigma_T] ... [LONGITUDINAL-ION-DIFFUSION sigma_L]
As shown in the format description, several lines may be used although a single line is perfectly acceptable as well.
Example:
PARA MEAN 20
This format could be used if you wish to compute arrival time spectra and enter the cluster size distribution with CLUSTER.
Additional information on:
Several plots may be modified in a single statement.
Use DRIFT_VELOCITY and related procedures to have full control over the presentation of the plot.
Format:
PLOT-OPTIONS [plot [options]] ...
Example:
plot-options drift lin-x log-y nodiff nocluster
(Requests a linear E/p axis and a logarithmic drift velocity axis, the opposite of the default. The diffusion coefficients and the cluster size distribution are not plotted.)
Additional information on:
The pressure is used by the gas mixing instructions MIX and MAGBOLTZ as well as by HEED. Please be sure to specify the pressure before issuing these commands.
If you specify the pressure after a mixing command, then the tables will be prepared for standard atmospheric pressure and the conversion to the pressure you specify will be done by relying on the simple scaling laws.
Format:
PRESSURE pressure [unit]
Example:
pressure 2 bar
Additional information on:
A selective reset is performed if any items are listed, otherwise all gas data is deleted.
Format:
RESET [item1] [item2] ...
Additional information on:
Each of the table entries can either be tabulated or be computed from a parametrisation. In either case, the quantities that obey simple pressure scaling laws, have to be entered multiplied by the appropriate power of the pressure.
All tabulated entries must be specified at a common set of E/p values, which must itself be listed in the table if at least one transport property is tabulated. Use ADD if the data that you wish to use for one or more entries, is tabulated at a different set of E/p values.
The order of the tabulated entries is indicated on the TABLE line by listing the names of the entries in the same sequence as in the table. The entry names should not be followed by parametrisations. The place of the E/p values in the table should be indicated by 'E/P'. There is no prefered order of the entries.
If you opt for a parametrised form for one or more entries, then functions have to follow the names of the entries that are to be parametrised. The parametrisations that you enter are not stored as functions, rather they are evaluated at the E/p, angle(E,B) and B values of the table. The list thus obtained will be interpolated when transport properties are required, like for tabulated entries.
If all entries are entered in a parametrised form, then you can either establish the list of E/p values by tabulating them or by specifying an electric_field range.
You have the possibility to create tables with a dependence on the angle between E and B, as well as on the magnetic_field, provided a magnetic field is present in the chamber.
Format:
TABLE [ E/P ] ... [ DRIFT-VELOCITY [ function ] ] ... [ BTRANSVERSE-VELOCITY [ function ] ] ... [ ExB-VELOCITY [ function ] ] ... [ ION-MOBILITY [ function ] ] ... [ LORENTZ-ANGLE [ function ] ] ... [ LONGITUDINAL-DIFFUSION-COEFFICIENT [ function ] ] ... [ TRANSVERSE-DIFFUSION-COEFFICIENT [ function ] ] ... [ TOWNSEND-COEFFICIENT [ function ] ] ... [ ATTACHMENT-COEFFICIENT [ function ] ] ... [ DUMMY [ function ] ] ... [ E/P-RANGE epmin epmax ] [ N-E/P nep ] ... [ LOGARITHMIC-E/P-SCALE | LINEAR-E/P-SCALE ] ... [ [ B-RANGE bmin bmax ] [ N-B nb ] | ... [ B-FIELD b ] ] ... [ [ ANGLE-RANGE amin amax ] [ N-ANGLE nangle ] | ... [ ANGLE angle ] ]
This line is followed by tables for those items that are not functions. The end of the table is signalled by a blank line.
Example:
table drift=100*ep, diff, e/p 0.3 0.1 0.1 0.2 0.1 0.5 0.2 1.0 0.3 2.0
The drift velocity is entered as the function 100*E/p which is evaluated at the E/p values listed in the second column. The longitudinal diffusion is listed in the first column. The ion mobility, the Lorentz angle and the Townsend and attachment coefficients are not specified. Note the blank line at the end of the table.
Additional information on:
The temperature is used by the gas mixing instructions (MIX and MAGBOLTZ) and also by HEED. Please be sure to specify the temperature before issuing these commands.
The temperature is not needed if both the transport properties and the clustering properties have been entered via tables.
Garfield applies, if required, pressure scaling of the transport properties but does not apply temperature scaling laws.
Format:
TEMPERATURE temp [unit]
Example:
TEMPERATURE 300 K
For room temperature.
Additional information on:
The use of this instruction is strongly recommended when you compute the electron transport properties with MAGBOLTZ or with MIX, both of which consume a lot of CPU time. WRITE is not of interest if you enter the transport parameters of your gas description with a TABLE statement.
The dataset contains initialisation information for Heed, which will automatically be performed when re-reading the file with GET.
The format of the compact dataset is subject to modification and backwards compatibility is not guaranteed. Compact datasets that can no longer be read and that are of value, can be sent to the author of Garfield for recovery.
Files written with WRITE should in principle not be edited. These files are also not intended to serve as easily legible tables. Use the GAS-PRINT option or procedures like DRIFT_VELOCITY to obtain legible tables.
Writing takes place while the section is being left, not when the WRITE command is issued. Use e.g. &MAIN to close the section. The statement can appear at any place in the gas section.
Format:
WRITE DATASET file [member] [REMARK remark]
Example:
Global gas_file `Ar_70_iso_30.gas` Global gas_member `exb` Global p 760 &GAS Call inquire_member(gas_file,gas_member,`gas`,exist) If exist Then get {gas_file,gas_member} Else write {gas_file,gas_member} pressure {p} Torr magboltz Argon 70 isobutane 30 ... angle-range 0 10 n-angle 6 ... b-range 0.4 1.2 n-b 5 ... e-range 100 300000 n-e 25 ... coll 25 Endif
Since Magboltz consumes a large amount of CPU time, we use the WRITE command to store the gas tables. When the same input file is run next time, the INQUIRE_MEMBER procedure will detect that the gas tables already exist and a GET is issued instead of a MAGBOLTZ command.
Additional information on:
Formatted on 15/01/01 at 23:07.