Specifying a set of individual rays

If the voltages are time-independent the user specifies for each individual ray:

The initial coordinates.

The initial velocity components, either

(1) cartesian x, y and z components -that is, direction cosines in the x, y and z directions or any other values proportional to these, or

(2) polar angles theta and phi (that is, the azimuthal angle), together with the axis of the polar system.

In both cases the program will automatically scale the numbers that are entered (using the given energy, relativistically if necessary) to convert them to velocity components.

The initial energy, in eV (or < 0, in which case the velocities will be used to give the energy).

The current, in mA (and some arbitrary number must be entered for the current even if space-charge iterations are not called for later). Note that this current is usually greater than that of an individual electron, so the ray therefore represents a model particle that moves in the total electric field as if it were a single electron or ion but carries the charge and current of many adjacent electrons or ions -this model particle has sometimes been labelled a super-electron or ion.

If the voltages depend on the time then the initial time (in msec) is required instead of the current.

The maximum number of rays is 'maxray'.

There is no need to worry about the sign of the current (the program will deal with this).

The total current is the sum of the currents of the individual rays, taking account of the planes of reflection symmetry. The sum of the currents that have been entered is therefore multiplied by 2 for each such plane. (This implies for example that if x = 0 and y = 0 are reflection planes, then the current of a ray that goes along the z axis is multiplied by 4).

The particles can be of variable mass), in which case the user has to specify the charge number and the atomic mass number (eg 1.0 and 12.0 for singly charged atomic carbon). These numbers can be different for the different rays (as illustrated in xmpl2d12.dat or xmpl3d08.dat). On the other hand, if the particle mass is constant (and not that of the electron) then the extra information has already been entered and so is not needed here.

The calculated ray information is automatically saved at the end of the binary part of the processed dat file, file, and is available for re-use, provided that the present input data file is identical to the one used previously and the processed data file is also the one generated previously.

For users who are editing or constructing an 'input data file' without the use of the data-builder -that is, pre-processor:

But Manual editing is certainly not recommended -it is a relic from the time when the databuilder was not available All users are strongly encouraged to use the databuilder, which always gives the correct formats and which has many options for which the formats are not described or easily deduced.

CPO2D:

Typical data, taken from the 'benchmark test' file test2d01.dat, are:

set of single rays:

0. -1. 1. 0. 1. 0. r,z,vr,vz,energy,mA

0. -1. 0.995 0.09983 1. 0. r,z,vr,vz,energy,mA

0. -1. 0.995 -0.09983 1. 0. r,z,vr,vz,energy,mA

last of this set of rays

Then use 1 line per ray.

If the voltages depend on the time enter

initial r (or x),z,vr (or vx),vz,energy (eV),time (msec)

If the voltages are time-independent enter

initial r (or x),z,vr (or vx),vz,energy (eV),current (mA)

(and some arbitrary number must be entered for the current even if space-charge iterations are not called for later).

To re-use ray data that was calculated previously the present file should be identical to the previous one except that the line

'y trace rays? (y/n)'

should be replaced by the line

'previously calculated rays'

(or any line that starts with 'p').

CPO3D:

Typical data, taken from the ‘example’ file xmpl3d05.dat, are:

set of single rays:

0. -1. 0. 1. 0. 0. 1. 0. x,y,z,vx,vy,vz,eV,I

0. -1. 0. 1. 0.1 0. 1. 0. x,y,z,vx,vy,vz,eV,I

0. -1. 0. 1. -0.1 0. 1. 0. x,y,z,vx,vy,vz,eV,I

last of this set of rays

Then use 1 line per ray:

(a) if it is a time-dependent problem enter

initial x, y, z(mm), vx, vy, vz(m/s), energy(eV), time(msec),

(b) if it is a time-independent problem (with or without space-charge) enter

initial x, y, z(mm), vx, vy, vz(m/s), energy(eV), current(mA).

(Some arbitrary number must be entered for the current even if space-charge iterations are not called for later).

To re-use ray data that was calculated previously the present file should be identical to the previous one except that the line

'start of ray information'

should be replaced by the line

'previously calculated rays'

CPO2D and CPO3D:

If the particle mass is variable (that is, if 'v' was entered 2 lines previously, see the relevant note) then two more values must be entered at the end of each line, the charge number and the atomic mass number (eg 1.0 and 12.0 for singly charged atomic carbon), and these numbers can be different for the different rays (as illustrated in xmpl2d12.dat or xmpl3d08.dat). On the other hand, if the particle mass is constant (that is, if 'c' was entered previously) then the extra information has already been entered and so is not needed here.

Terminate the list with a further line that starts with 'l', for 'last'.