This commit was generated by cvs2svn to compensate for changes in r7641,
[u/mrichter/AliRoot.git] / DPMJET / flukapro / (USRYLD)
1 *$ CREATE USRYLD.ADD
2 *COPY USRYLD
3 *
4 *=== usryld ===========================================================*
5 *
6 *----------------------------------------------------------------------*
7 *                                                                      *
8 *     Module usryld:                                                   *
9 *                                                                      *
10 *     A. Ferrari : user defined particle yield scoring                 *
11 *                                                                      *
12 *          Last change A. Ferrari 14-nov-1996                          *
13 *                                                                      *
14 *                                                                      *
15 *     Up to MXUSYL user defined track or coll are allowed              *
16 *            lusryl = logical flag, .true. if at least 1 user defined  *
17 *                     yield estimator is used                          *
18 *            lscuyl = logical flag, .true. if at least 1 user defined  *
19 *                     yield estimator for secondaries coming out from  *
20 *                     hadronic inelastic interactions (nr1=-1, nr2=-2) *
21 *                     is used                                          *
22 *            nusryl = number of user defined yeld estimators           *
23 *            itusyl = type of binning: itusyl = ie + ia*100            *
24 *                     |ie| = 1 : kinetic  energy binning               *
25 *                     |ie| = 2 : total momentum  binning               *
26 *                     |ie| = 3 : lab.   rapidity binning               *
27 *                     |ie| = 4 : cms    rapidity binning               *
28 *                     |ie| = 5 : lab. pseudorap. binning               *
29 *                     |ie| = 6 : cms  pseudorap. binning               *
30 *                     |ie| = 7 : lab. x          binning               *
31 *                     |ie| = 8 : cms  Feynmann x binning               *
32 *                     |ie| = 9 : transverse mom. binning               *
33 *                     |ie| =10 : transverse mass binning               *
34 *                     |ie| =11 : lab. long. mom. binning               *
35 *                     |ie| =12 : cms  long. mom. binning               *
36 *                     |ie| =13 : total energy    binning               *
37 *                     |ie| =14 : lab. angle      binning               *
38 *                     |ie| =15 : cms  angle      binning               *
39 *                     |ie| =16 : p_t squared     binning               *
40 *                     |ie| =17 : lab. angle      binning               *
41 *                                with 1/2pi sin(theta) weight          *
42 *                     |ie| =18 : p_t             binning               *
43 *                                with 1/(2pi p_t) weight               *
44 *                     |ie| =19 : frac. lab mom.  binning               *
45 *                     |ie| =20 : trans. kin. en. binning               *
46 *                     |ie| =21 : excitation en.  binning               *
47 *                     ie > 0 --> linear, ie < 0 --> logarithmic        *
48 *                     ia has the same meaning but for the 2nd variable *
49 *            ixusyl = cross section kind, ixa + ixm * 100              *
50 *                     ixa = 1 : plain d2 sigma / d x1 d x2 where x1,x2 *
51 *                               are the first and second variables     *
52 *                     ixa = 2 : invariant cross section E d3 sigma/dp3 *
53 *                     ixa = 3 : plain d2 N / d x1 d x2 where x1,x2 are *
54 *                               the first and second variables         *
55 *                     ixa = 4 : d2 (x2 N) / d x1 d x2  where x1,x2 are *
56 *                               the first and second variables         *
57 *                     ixa = 5 : d2 (x1 N) / d x1 d x2  where x1,x2 are *
58 *                               the first and second variables         *
59 *                     ixa = 6 : d2 N / d x1 d x2 cos(theta) where x1,x2*
60 *                               are the first and second variables,    *
61 *                               and theta is the angle with the normal *
62 *                               to the crossed surface                 *
63 *                     ixm = material number for cross section          *
64 *                           calculation                                *
65 *            idusyl = distribution to be scored: the usual values are  *
66 *                     allowed                                          *
67 *            nr1uyl = 1st region (from...)                             *
68 *            nr2uyl = 2nd region (to  ...)                             *
69 *            usnryl = normalization factor (itusyl dependent)          *
70 *            sgusyl = normalization cross section (itusyl dependent)   *
71 *            llnuyl = no low energy neutron scoring if false, yes if   *
72 *                     true                                             *
73 *            tituyl = yield estimator name                             *
74 *            ipusyl = logical unit to print the results on: formatted  *
75 *                     if > 0, unformatted if < 0                       *
76 *            igmuyl = maximum low energy neutron group to be scored    *
77 *            kbusyl = initial location in blank common of the consi-   *
78 *                     dered yield estimator (real*8 address)           *
79 *                     I T   I S   F O R  A D D R E S S  OF  1 !!!!!    *
80 *            neylbn = number of energy or other quantity intervals     *
81 *     eyllow/eylhgh = minimum and maximum energies (or other)          *
82 *     ayllow/aylhgh = minimum and maximum angles (or other)            *
83 *            deylbn = energy (or other) bin width                      *
84 *            pusryl = momentum of projectile to be used to define      *
85 *                    (possible) Lorentz transformations, Feynmann X    *
86 *                     etc.                                             *
87 *            ijusyl = projectile identity                              *
88 *            jtusyl = target     identity                              *
89 *        u,v,wusryl = laboratory projectile direction                  *
90 *        u,v,wcmuyl = cms        projectile direction                  *
91 *    etx,ety,etzuyl = eta for Lorentz transformation                   *
92 *            gamuyl = gamma for Lorentz transformation                 *
93 *            sqsuyl = cms energy for Lorentz transformation            *
94 *     iausyl,ieusyl = ausiliary arrays where itusyl is decoded         *
95 *                                                                      *
96 *----------------------------------------------------------------------*
97 *
98       PARAMETER ( MXUSYL = 1000 )
99       LOGICAL LUSRYL, LLNUYL, LSCUYL
100       CHARACTER*10 TITUYL
101       COMMON /USRYL/  EYLLOW(MXUSYL), EYLHGH(MXUSYL), DEYLBN(MXUSYL),
102      &                USNRYL(MXUSYL), SGUSYL(MXUSYL), AYLLOW(MXUSYL),
103      &                AYLHGH(MXUSYL), PUSRYL, UUSRYL, VUSRYL, WUSRYL,
104      &                ETXUYL, ETYUYL, ETZUYL, GAMUYL, SQSUYL, UCMUYL,
105      &                VCMUYL, WCMUYL, IJUSYL, JTUSYL,
106      &                NEYLBN(MXUSYL), NR1UYL(MXUSYL), NR2UYL(MXUSYL),
107      &                IXUSYL(MXUSYL), ITUSYL(MXUSYL), IDUSYL(MXUSYL),
108      &                KBUSYL(MXUSYL), IPUSYL(MXUSYL), IGMUYL(MXUSYL),
109      &                IEUSYL(MXUSYL), IAUSYL(MXUSYL), LLNUYL(MXUSYL),
110      &                NUSRYL, LUSRYL, LSCUYL
111       COMMON /USYCH/  TITUYL(MXUSYL)
112