next up previous
Next: Common Blocks Up: User Routines Previous: Initialization and Termination Routines

Main User Routines

For each event a number of phase spaces is generated, each of these phase spaces can have several contributions. The main idea is to calculate your observables once for each phase space iphasno and add all weights of the corresponding contributions to the event weight. The calculation of the observables is done in disphase and the summing is done in discontr. The user has to take care, that the observables are saved in a common block and are available when discontr is called. It is sufficient to allocate space for up to 30 different phase spaces.

In addition to the actual event sampling, some programs perform an adaptation loop to adapt the phase space to the region that is actually used. In this additional loop disphase is called only. The adaptation is then done according to the return value.

The syntax is

      function disphase (iphasno, npar, ps, iadapt)

      double precision disphase
      integer          iphasno, npar, iadapt
      double precision ps(4,10)
and
      subroutine discontr (iphasno, ntype, nalp, nalps, n2pi,
     +   ilognf, jmin, jmax, weight )
      
      integer          iphasno, ntype, nalp, nalps, n2pi
      integer          ilognf, jmin, jmax 
      double precision weight(-13:11)
where the arguments have the following meaning :

The full weight of one contribution is then

wcontribution = $\displaystyle \lambda$$\displaystyle \alpha_{s}^{\mbox{\scriptsize\tt ialps}}$$\displaystyle \alpha_{\mbox{\scriptsize elm}}^{\mbox{\scriptsize\tt ialp}}$$\displaystyle \left(\vphantom{{1\over 2\pi}}\right.$$\displaystyle {1\over 2\pi}$ $\displaystyle \left.\vphantom{{1\over 2\pi}}\right)^{\mbox{\scriptsize\tt n2pi}}_{}$$\displaystyle \sum_{i= \mbox{\scriptsize\tt jmin}}^{\mbox{\scriptsize\tt jmax}}$$\displaystyle \tt weight$(i)$\displaystyle \rho_{i}^{}$

This somewhat complicated procedure can be performed by a library function double wsum (nord, nalp, nalps, n2pi, ilognf, jmin, jmax, weight,
fscale, rscale, alphas).
See section the web version [5] for an example. nord selects the leading or higher order particle density function (see steering card values PDFL and PDFH). fscale and rscale are the inputs for the factorization and renormalization scale, respectively. alphas is an output parameter returning the value of $ \alpha_{s}^{}$ at this phase space point.

Additional information for experienced users : For DISASTER++ all phase spaces for one event are generated at the beginning of the event and the disphase routine is called for each phase space, before the first call to discontr is made. The ntype information is 0 for tree level and -1 otherwise. In DISENT the sequence is different, for each contribution disphase and discontr are called right after each other. The ntype information is fully available. The adaptation loop is performed in DISASTER++, only.


next up previous
Next: Common Blocks Up: User Routines Previous: Initialization and Termination Routines
latex2html conversion by www person on 1999-12-19