![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() |
Optimisation of potential settings
Command | Short description |
---|---|
DISPLAY
| Displays potential settings |
FACTOR
| Factorises the potential |
FORCES
| Computes the forces on the wires |
PRINT-CELL
| Prints the cell data |
RESTORE
| Restores the original settings after a SET |
SAVE
| Saves the potential settings |
SET
| Optimises potential settings |
Modification of the cell structure:
Command | Short description |
---|---|
ADD
| Adds elements to the cell |
CHANGE-VOLTAGES
| Modifies the wire, plane and tube potentials |
DELETE
| Deletes elements from the cell |
Three dimensional charges:
Command | Short description |
---|---|
CHARGES
| Adds three dimensional charges to the cell |
DELETE-CHARGES
| Removes three dimensional charges from the cell |
LIST-CHARGES
| Lists the three dimensional charges |
Adding a background field:
Command | Short description |
---|---|
BACKGROUND-FIELD
| Adds a background field to the cell |
DELETE-FIELD-MAP
| Deletes a background field map |
DELETE-BACKGROUND-FIELD
| Removes the background field |
FIELD-MAP
| Reads a field map for use as background field |
READ-FIELD-MAP
| Reads a binary field map as background field |
General purpose instructions:
Command | Short description |
---|---|
AREA
| Changes the part of the cell that is considered |
DRIFT-AREA
| Sets the part of the cell where electrons drift |
GRID
| Changes the grid density |
OPTIONS
| Switches options off and on |
POINTS
| Sets the number of points on the track |
SELECT
| Selects active wires |
TRACK
| Sets the track |
The coordinate system can not be changed by this instruction.
The symbolic variables from the cell section can not be used.
After each ADD instruction, the cell is checked, a new cell type is determined and the capacitance matrix is calculated. If you have several elements to add, it is advisable to group them in a single instruction. If you only wish to modify a wire voltage, use CHANGE-VOLTAGES instead.
Format:
ADD [PERIODICITY {X|Y|PHI} length] ... [PLANE {X|Y|R|PHI} coordinate ... [VOLTAGE voltage]] ... [LABEL label] [WIRE LABEL label ... AT position ... [VOLTAGE voltage] ... [DIAMETER diam]]
Additional information on:
Please note that the AREA affected by this instruction is not the area in which electrons and ions are allowed to drift. The latter area, which is relevant when optimising the drift time, is set with the DRIFT-AREA command.
Format:
See the AREA command in the field section.
The background field is not checked for consistency between the field and potential, nor for compatibility with the boundary conditions. Such checks can be done in the field section using the CHECK instruction.
You have to supply at least 3 formulae: potential, x- component and y-component of the electric field. You may in addition supply the z-component of the electric field. The latter defaults to 0.
If the background field is to be derived from a field map, then the FIELD-MAP statement should precede the BACKGROUND-FIELD statement. The background field map is kept across optimisation and cell sections, as long as the storage occupied by this field is not claimed by a main field map in the cell section. It is therefore not necessary to read a field map again to modify the dependence of the background field map on the field map.
Format:
BACKGROUND-FIELD ... VOLTAGE formula EX formula EY formula [EZ formula]
Example:
background-field voltage=cos(2*x)*sin(2*y) ... ex= 2*sin(2*x)*sin(2*y) ... ey= -2*cos(2*x)*cos(2*y)
Additional information on:
This instruction does not recompute the capacitance matrix, and is therefore considerably faster than ADD for large cells. You should however use the latter if you need to modify other parameters than the potential, such as the location of a wire or a plane, the radius of the tube or the diameter of a wire.
Format:
CHANGE-VOLTAGES {WIRE wire | PLANE plane | TUBE} VOLTAGE voltage ...
Example:
CH-V W 1 V 1000 W 2 V 3000
Changes the voltage on wire 1 to 1000 V and on wire 2 to 3000 V.
Additional information on:
+-----------------------------------------------------------------+ | The current version of Garfield only takes point charges into | | account in a small number of configurations. | +-----------------------------------------------------------------+
Adds three dimensional point charges to the cell. These charges are not taken into account for the charge calculation on the wires, they therefore should be seen as, temporary, space charges.
Format:
CHARGES x y z q x y z q ... (blank line)
Example:
CHARGES 0 0 0 100 1 1 1 200
Places one space charge at (0,0,0) and one at (1,1,1). The first has a charge of 100 and the second a charge of 200.
Additional information on:
Format:
DELETE-BACKGROUND-FIELD
Example:
del-backgr
Format:
DELETE-CHARGES
Example:
DELETE-CHARGES
Format:
DELETE-FIELD-MAP
Example:
DELETE-FIELD-MAP
Format:
DISPLAY
Please note that this command does not define the plane over which optimisation is carried out. To change this plane, use AREA.
Format:
See the AREA command in the field section.
Format:
FACTOR [GRID | WIRE | TRACK] ... [NOGROUP | GROUP]
Example:
FACTOR
(All defaults, GRID and NOGROUP, are accepted.)
When computing a background field due to additional charges, with finite element programs, all conductors should be set to 0 V. This ensures that the boundary conditions are respected when the basic field and the background field are superimposed.
Also the &CELL section has a FIELD-MAP command. The field maps entered in the &CELL section serve as main field, i.e. the field map replaces the field due to wires and planes, file the field maps entered in the &OPTIMISE section are used for the computation of the background field. The two field maps share (for the moment) the same storage and can therefore not be used at the same time.
Format and examples:
See the FIELD-MAP command in the cell section.
To obtain meaningful results, one should take care to supply, using the ROWS statement of the cell section, the wire length and the wire tension. If one is interested in the gravitational sag, then one should also enter the density of the wire material and the chamber orientation with the GRAVITY.
This instruction offer 2 levels of accuracy, called DETAILED and FAST.
The wires on which this instruction operates are those selected by the SELECT instruction. These wires do not necessarily have to be located within the current AREA. When one uses the ITERATE option to study collective wire motion, then it is crucial to select all wires that are likely to move.
Format:
FORCES [PRINT-SAG | NOPRINT-SAG] ... [PLOT-SAG | NOPLOT-SAG] ... [NOKEEP-SAG | KEEP-SAG] ...[PRINT-FORCES | NOPRINT-FORCES] ... [PLOT-FORCES | NOPLOT-FORCES] ... [NOKEEP-FORCES | KEEP-FORCES] ...
[DETAILED | FAST] ... [SCANNING-GRID nx ny] ... [SCANNING-AREA {LARGEST | FIRST-ORDER | ... FIRST-ORDER-ENLARGED-BY fact | ... xmin ymin xmax ymax}] ... [SHOTS nshot] ... [STEPS-PER-SHOT nstep] ... [INTERPOLATION-ORDER order] ... [NOEXTRAPOLATE | EXTRAPOLATE] ...
[ITERATE [n_iter] | NOITERATE] ... [TOLERANCE tolerance] ... [UPDATE-SCALING-FACTOR factor] ... [OFFSET wire x_offset y_offset] ...
[ELECTROSTATICS | NOELECTROSTATICS] ... [GRAVITY | NOGRAVITY]
Example:
select s forces detailed keep-sag
The forces acting on the S wires will be calculated in detail and the sag profiles will be stored in global variables.
Note:
This computation benefits greatly from vector processors and matrix algebra libraries tuned to the hardware (e.g. ESSL).
Additional information on:
The grid is common to all sections.
Format:
GRID number_of_steps_in_x [number_of_steps_in_y]
Example:
GRID 5
Additional information on:
Format:
LIST-CHARGES
Example:
LIST-CHARGES
Contrary to most other commands which take the number of sampling points from the TRACK command, SET uses the number set with POINTS.
This number is used nowhere else.
Format:
POINTS points_on_track
Example:
POINTS 50[Default: 20]
Format:
PRINT-CELL
Example:
PRINT-CELL
Format:
RESTORE [reference_number]
Example:
SAVE (program replies with the reference number 5; next you try:) SET V TO AVERAGE ON GRID DISPLAY (You notice you don't like the new settings and therefore ...) RESTORE 5
Format:
SAVE
In this section, the FORCES instruction will try to compute displacements for the wires that have been selected and the SET instruction will vary the voltages on such wires.
Selection of other electrodes than wires has no effect in this section.
Format:
See the SELECT command in the field section.
Example:
SEL (1 S) 2 F
(Put wire 1 together with all S wires in one group, make wire 2 a group of its own and do the same for each of the F wires.)
Only the potentials on the electrodes that have been subject to a SELECT will be touched during the process. Electrodes that are put together in a group, are shifted collectively.
Format:
SET field_function ... TO {AVERAGE | target_function} ... [WEIGHT weight_function] ... [ON {TRACK | GRID | WIRE}] ... [DISTANCE distance] ... [EPSILON epsilon] ... [ITERATE-LIMIT iterlim] ... [PRINT | NOPRINT]
Examples:
SET V TO AVERAGE ON TRACK DIST 100 SET E TO 1000 ON GRID DIST 1
(The first example is an attempt to make V flat over a line, the second could be used to obtain a homogeneous drift field.)
Additional information on:
The TRACK command is shared between all sections and has therefore a rich format. In this section, only the geometrical aspects are used. Particle types and clustering models need not be specified.
Format:
See the TRACK command in the drift section.
Example:
TRACK 1 1 2 2
Formatted on 0100-08-27 at 04:53.