The user must supply his own main program to initialize the package and generate events. The initialization routine LQINIT must be called once to perform some initialization and calculate the total cross-section. The resonance width, CMS energy squared, standard model parameters and QCD parameters are calculated. The structure function parameterization is also chosen in the initialization routine. If the CMZ [14] option PDF is selected when building the program, the default structure functions are KMRS B0 (MODE=40). Otherwise EHLQ set 1 (1986 updated version) from PYTHIA is used.
A call is automatically made to the routine LQXSEC to
calculate the total cross-section in a user defined
phase-space region in terms of variables (x,y).
The phase-space region is specified by setting values for
,
,
and
which correspond to parameters CUT(1),
CUT(2), CUT(3) and CUT(4) respectively in the /LEPTOU/
common block.
Depending on the option chosen, the resonance, DIS and
interference terms will be calculated separately.
In addition, if radiative corrections are request the
separate contributions from the Born term, hard
bremsstruhlung and soft photon contributions are calculated.
A program banner, the value of some parameters and the
process to be generated are printed out.
Events are generated by calling the routine LQGEN once per event in the user program. The routine to create the event record, LQFILL, is then automatically called by LQGEN. Routines from JETSET can be used for final state parton showers, fragmentation and decay processes. If parton showers in the colour dipole approximation are requested the routines in ARIADNE are automatically called. By default final state parton showers are not generated. If the HERWIG option is chosen initial and final state parton showers are generated, and the fragmentation and decays are handled by HERWIG. In the current version of the generator a radiative photon is always present in the event record, albeit with usually undetectable energy.
All other subroutines and functions are called internally. But the cross-section functions may be called by the user if so desired after initialization. The functions calculate differential cross-sections as a function of the s, x and y variables. Some constants are initialized the first time a cross-section function is called. Electron or positron polarizations may be chosen by setting variable BEAPOL in common block /LQCOMM/. The appropriate cross-section returned depends on the value of IPROC in common block /LQCOMM/ and is in picobarns.