]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | *CMZ : 17/07/98 15.44.31 by Federico Carminati |
2 | *-- Author : | |
3 | C********************************************************************* | |
4 | C********************************************************************* | |
5 | C* ** | |
6 | C* May 1990 ** | |
7 | C* ** | |
8 | C* The Lund Monte Carlo for Jet Fragmentation and e+e- Physics ** | |
9 | C* ** | |
10 | C* JETSET version 7.3 ** | |
11 | C* ** | |
12 | C* Torbjorn Sjostrand ** | |
13 | C* ** | |
14 | C* CERN/TH, CH-1211 Geneva 23 ** | |
15 | C* BITNET/EARN address TORSJO@CERNVM ** | |
16 | C* Tel. +22 - 767 28 20 ** | |
17 | C* ** | |
18 | C* LUSHOW is written together with Mats Bengtsson ** | |
19 | C* ** | |
20 | C* A complete manual exists on a separate file ** | |
21 | C* Please report any program errors to the author! ** | |
22 | C* ** | |
23 | C* Copyright Torbjorn Sjostrand ** | |
24 | C* ** | |
25 | C* Modified by F. Antinori 5.12.91 for high multiplicity ** | |
26 | C********************************************************************* | |
27 | C********************************************************************* | |
28 | C * | |
29 | C List of subprograms in order of appearance, with main purpose * | |
30 | C (S = subroutine, F = function, B = block data) * | |
31 | C * | |
32 | C S LU1ENT to fill one entry (= parton or particle) * | |
33 | C S LU2ENT to fill two entries * | |
34 | C S LU3ENT to fill three entries * | |
35 | C S LU4ENT to fill four entries * | |
36 | C S LUJOIN to connect entries with colour flow information * | |
37 | C S LUGIVE to fill (or query) commonblock variables * | |
38 | C S LUEXEC to administrate fragmentation and decay chain * | |
39 | C S LUPREP to rearrange showered partons along strings * | |
40 | C S LUSTRF to do string fragmentation of jet system * | |
41 | C S LUINDF to do independent fragmentation of one or many jets * | |
42 | C S LUDECY to do the decay of a particle * | |
43 | C S LUKFDI to select parton and hadron flavours in fragm * | |
44 | C S LUPTDI to select transverse momenta in fragm * | |
45 | C S LUZDIS to select longitudinal scaling variable in fragm * | |
46 | C S LUSHOW to do timelike parton shower evolution * | |
47 | C S LUBOEI to include Bose-Einstein effects (crudely) * | |
48 | C F ULMASS to give the mass of a particle or parton * | |
49 | C S LUNAME to give the name of a particle or parton * | |
50 | C F LUCHGE to give three times the electric charge * | |
51 | C F LUCOMP to compress standard KF flavour code to internal KC * | |
52 | C S LUERRM to write error messages and abort faulty run * | |
53 | C F ULALPS to give the alpha_strong value * | |
54 | C F ULANGL to give the angle from known x and y components * | |
55 | C F RLU to provide a random number generator * | |
56 | C S RLUGET to save the state of the random number generator * | |
57 | C S RLUSET to set the state of the random number generator * | |
58 | C S LUROBO to rotate and/or boost an event * | |
59 | C S LUEDIT to remove unwanted entries from record * | |
60 | C S LULIST to list event record or particle data * | |
61 | C S LUUPDA to update particle data * | |
62 | C F KLU to provide integer-valued event information * | |
63 | C F PLU to provide real-valued event information * | |
64 | C S LUSPHE to perform sphericity analysis * | |
65 | C S LUTHRU to perform thrust analysis * | |
66 | C S LUCLUS to perform three-dimensional cluster analysis * | |
67 | C S LUCELL to perform cluster analysis in (eta, phi, E_T) * | |
68 | C S LUJMAS to give high and low jet mass of event * | |
69 | C S LUFOWO to give Fox-Wolfram moments * | |
70 | C S LUTABU to analyze events, with tabular output * | |
71 | C * | |
72 | C S LUEEVT to administrate the generation of an e+e- event * | |
73 | C S LUXTOT to give the total cross-section at given CM energy * | |
74 | C S LURADK to generate initial state photon radiation * | |
75 | C S LUXKFL to select flavour of primary qqbar pair * | |
76 | C S LUXJET to select (matrix element) jet multiplicity * | |
77 | C S LUX3JT to select kinematics of three-jet event * | |
78 | C S LUX4JT to select kinematics of four-jet event * | |
79 | C S LUXDIF to select angular orientation of event * | |
80 | C S LUONIA to perform generation of onium decay to gluons * | |
81 | C * | |
82 | C S LUHEPC to convert between /LUJETS/ and /HEPEVT/ records * | |
83 | C S LUTEST to test the proper functioning of the package * | |
84 | C B LUDATA to contain default values and particle data * | |
85 | C * | |
86 | C********************************************************************* | |
87 | ||
88 | SUBROUTINE LU1ENT(IP,KF,PE,THE,PHI) | |
89 | ||
90 | C...Purpose: to store one parton/particle in commonblock LUJETS. | |
91 | *KEEP,LUJETS. | |
92 | COMMON /LUJETS/ N,K(200000,5),P(200000,5),V(200000,5) | |
93 | SAVE /LUJETS/ | |
94 | *KEEP,LUDAT1. | |
95 | COMMON /LUDAT1/ MSTU(200),PARU(200),MSTJ(200),PARJ(200) | |
96 | SAVE /LUDAT1/ | |
97 | *KEEP,LUDAT2. | |
98 | COMMON /LUDAT2/ KCHG(500,3),PMAS(500,4),PARF(2000),VCKM(4,4) | |
99 | SAVE /LUDAT2/ | |
100 | *KEND. | |
101 | ||
102 | C...Standard checks. | |
103 | MSTU(28)=0 | |
104 | IF(MSTU(12).GE.1) CALL LULIST(0) | |
105 | IPA=MAX(1,IABS(IP)) | |
106 | IF(IPA.GT.MSTU(4)) CALL LUERRM(21, | |
107 | &'(LU1ENT:) writing outside LUJETS memory') | |
108 | KC=LUCOMP(KF) | |
109 | IF(KC.EQ.0) CALL LUERRM(12,'(LU1ENT:) unknown flavour code') | |
110 | ||
111 | C...Find mass. Reset K, P and V vectors. | |
112 | PM=0. | |
113 | IF(MSTU(10).EQ.1) PM=P(IPA,5) | |
114 | IF(MSTU(10).GE.2) PM=ULMASS(KF) | |
115 | DO 100 J=1,5 | |
116 | K(IPA,J)=0 | |
117 | P(IPA,J)=0. | |
118 | 100 V(IPA,J)=0. | |
119 | ||
120 | C...Store parton/particle in K and P vectors. | |
121 | K(IPA,1)=1 | |
122 | IF(IP.LT.0) K(IPA,1)=2 | |
123 | K(IPA,2)=KF | |
124 | P(IPA,5)=PM | |
125 | P(IPA,4)=MAX(PE,PM) | |
126 | PA=SQRT(P(IPA,4)**2-P(IPA,5)**2) | |
127 | P(IPA,1)=PA*SIN(THE)*COS(PHI) | |
128 | P(IPA,2)=PA*SIN(THE)*SIN(PHI) | |
129 | P(IPA,3)=PA*COS(THE) | |
130 | ||
131 | C...Set N. Optionally fragment/decay. | |
132 | N=IPA | |
133 | IF(IP.EQ.0) CALL LUEXEC | |
134 | ||
135 | RETURN | |
136 | END |