EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
linit.F
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file linit.F
1 
2 C **********************************************************************
3 
4 
5  SUBROUTINE linit(LFILE,LEPIN,PLZ,PPZ,INTER)
6 
7  IMPLICIT NONE
8 
9 C...Initialize for an incoming lepton (type LEPIN, momentum pz=PLZ)
10 C...and target nucleon (momentum pz=PPZ) to interact via INTER.
11 C...Find maximum of differential cross section, calculate QCD event
12 C...probabilities or read them from logical file LFILE (if >0).
13 C...Numerical integration to obtain total cross-section.
14 
15  COMMON /lintrl/ psave(3,4,5),ksave(4),xmin,xmax,ymin,ymax,
16  &q2min,q2max,w2min,w2max,ilep,inu,ig,iz
17  REAL psave,xmin,xmax,ymin,ymax,q2min,q2max,w2min,w2max
18  INTEGER ksave,ilep,inu,ig,iz
19  SAVE /lintrl/
20 
21 *
22 * to avoid variable conflictions, a second keep element is necessary
23 * with the same common block name (see LPTOU2)
24 *
25  COMMON /leptou/ cut(14),lst(40),parl(30),
26  & x,y,w2,q2,u
27  REAL cut,parl,x,y,w2,q2,u
28  INTEGER lst
29  SAVE /leptou/
30 
31  COMMON /linter/ pari(50),ewqc(2,2,8),qc(8),zl(2,4),zq(2,8),pq(17)
32  REAL pari,ewqc,qc,zl,zq,pq
33  SAVE /linter/
34 
35  COMMON /lgrid/ nxx,nww,xx(31),ww(21),pqg(31,21,3),pqqb(31,21,2),
36  &qgmax(31,21,3),qqbmax(31,21,2),ycut(31,21),xtot(31,21),np
37  REAL xx,ww,pqg,pqqb,qgmax,qqbmax,ycut,xtot
38  INTEGER nxx,nww,np
39  SAVE /lgrid/
40 
41 
42  COMMON /loptim/ optx(4),opty(4),optq2(4),optw2(4),comfac
43  REAL optx,opty,optq2,optw2,comfac
44  SAVE /loptim/
45 
46  INTEGER nlupdm,nplbuf
47  parameter(nlupdm=4000,nplbuf=5)
48  common/lujets/n,k(nlupdm,5),p(nlupdm,nplbuf),v(nlupdm,5)
49  INTEGER n,k
50  REAL p,v
51  SAVE /lujets/
52 
53  common/ludat1/mstu(200),paru(200),mstj(200),parj(200)
54  INTEGER mstu,mstj
55  REAL paru,parj
56  SAVE /ludat1/
57 
58  common/ludat2/kchg(500,3),pmas(500,4),parf(2000),vckm(4,4)
59  INTEGER kchg
60  REAL pmas,parf,vckm
61  SAVE /ludat2/
62 
63  COMMON /lboost/ dbeta(2,3),stheta(2),sphi(2),pb(5),phir
64  DOUBLE PRECISION dbeta
65  REAL stheta,sphi,pb,phir
66  SAVE /lboost/
67 
68  COMMON /lminui/ xkin(4),ukin(4),wkin(4),ain(4),bin(4),
69  &maxfin,relup,relerr,reler2,fcnmax
70  REAL xkin,ukin,wkin,ain,bin,relerr,relup,reler2,fcnmax
71  INTEGER maxfin
72  SAVE /lminui/
73 
74  COMMON /lminuc/ namkin(4),nam(30)
75  CHARACTER*10 namkin,nam
76  SAVE /lminuc/
77 
78  COMMON /lpflag/ lst3
79  INTEGER lst3
80  SAVE /lpflag/
81 
82  COMMON /pypara/ ipy(80),pypar(80),pyvar(80)
83  REAL pypar,pyvar
84  INTEGER ipy
85  SAVE /pypara/
86 
87  common/pypars/mstp(200),parp(200),msti(200),paripy(200)
88  INTEGER mstp,msti
89  REAL parp,paripy
90  SAVE /pypars/
91 
92  INTEGER imxpdf
93  parameter(imxpdf=40)
94  COMMON /pepadm/cpdfnam(2,imxpdf),ipdfnam(2,imxpdf),
95  & iplst(10),cunpol,cpol
96  CHARACTER*256 cpdfnam,cunpol,cpol
97  INTEGER iplst,ipdfnam
98  SAVE /pepadm/
99 
100  common/maxfromhand/ fmaxfh
101  REAL fmaxfh
102  SAVE/maxfromhand/
103 
104  INTEGER inter,lfile,lepin,ncall,i,j,ifl
105  REAL plz,ppz,pi,pm2,roots
106  REAL ulmass,ulangl,umin,umax,s
107  INTEGER lqcd,ltm,ipmax,ip,iw,ix
108  REAL ti1,ti2
109 
110  INTEGER lstw(40)
111  REAL parlw(30)
112  DATA pi/3.1415927/,ncall/0/
113 
114 *PEPSI>>
115  external leptod ! MB, 15-Nov-2002, Load default PDF names
116 
117  DO i=1,imxpdf
118  IF(lst(15).eq.ipdfnam(1,i)) THEN
119  cunpol=cpdfnam(1,ipdfnam(2,i))
120  cpol =cpdfnam(2,ipdfnam(2,i))
121  ENDIF
122  ENDDO
123 
124  IF (lst(15).EQ.150) CALL setctq5(3)
125  IF (lst(15).EQ.151) CALL setctq5(1)
126  IF (lst(15).EQ.152) CALL setctq5(8)
127  IF (lst(15).EQ.173) CALL setctq6(1)
128  IF (lst(15).EQ.174) CALL setctq6(2)
129  IF (lst(15).EQ.175) CALL setctq6(3)
130  CALL pollinit(lfile,lepin,plz,ppz,inter)
131  IF (lst(40).NE.0) RETURN
132 *PEPSI<<
133 
134  ncall=ncall+1
135  lst3=lst(3)
136  IF(lst(18).GE.1) THEN
137 C...W, Z masses from theta-Weinberg, Fermi constant GF and rad. corr.
138  pmas(24,1)=sqrt(pi*parl(16)/(sqrt(2.)*parl(17)*parl(5)*
139  & (1.-parl(18))))
140  pmas(23,1)=pmas(24,1)/sqrt(1.-parl(5))
141  ENDIF
142 C...Couplings between Z0 and left/right-handed leptons and quarks.
143  zl(1,1)=-.5+parl(5)
144  zl(1,2)=parl(5)
145  zl(2,1)=zl(1,2)
146  zl(2,2)=zl(1,1)
147  zl(1,3)=0.5
148  zl(2,3)=0.
149  zl(1,4)=0.
150  zl(2,4)=0.5
151  DO 10 ifl=1,8
152  zq(1,ifl)=sign(0.5,qc(ifl))-qc(ifl)*parl(5)
153  10 zq(2,ifl)=-qc(ifl)*parl(5)
154 
155 C...Set initial state.
156  lst(23)=inter
157  ksave(1)=lepin
158  ksave(2)=2212
159  k(1,1)=21
160  k(1,2)=ksave(1)
161  k(1,3)=0
162  k(1,4)=0
163  k(1,5)=0
164  k(2,1)=21
165  k(2,2)=ksave(2)
166  k(2,3)=0
167  k(2,4)=0
168  k(2,5)=0
169  p(1,1)=0.
170  p(1,2)=0.
171  p(1,3)=plz
172  p(1,5)=ulmass(ksave(1))
173  p(1,4)=sqrt(p(1,3)**2+p(1,5)**2)
174  p(2,1)=0.
175  p(2,2)=0.
176  p(2,3)=ppz
177  p(2,5)=ulmass(ksave(2))
178  p(2,4)=sqrt(p(2,3)**2+p(2,5)**2)
179  n=2
180  lst(28)=3
181 C...Save momentum vectors of incoming particles
182  DO 20 i=1,2
183  DO 20 j=1,5
184  20 psave(3,i,j)=p(i,j)
185 C...Dot-product of initial particles, cms energy
186  parl(21)=2.*(dble(p(1,4))*dble(p(2,4))-dble(p(1,3))*dble(p(2,3)))
187  roots=sqrt((dble(p(1,4))+dble(p(2,4)))**2
188  & -(dble(p(1,3))+dble(p(2,3)))**2)
189  IF(lst(3).GE.4.OR.(lst(3).EQ.3.AND.ncall.EQ.1)) WRITE(6,1000)
190  &lepin,(p(1,j),j=1,3),parl(1),parl(2),(p(2,j),j=1,3),inter,roots
191  write(*,*) 'INTER,ROOT',inter,roots
192  IF(plz*ppz.GT.0.1) THEN
193  WRITE(6,1010)
194  stop
195  ENDIF
196 
197 C...Reduced header for Jetset/Pythia
198  mstu(12)=0
199  mstp(122)=0
200  IF(lst(3).GE.4.OR.(lst(3).EQ.3.AND.ncall.EQ.1))
201  &WRITE(6,1020) mstu(181),mstu(182),mstp(181),mstp(182)
202 C...If JETSET version before 7.402, problem with azimuthal dependence
203 C...in LUSHOW solved by chosing flat azimuthal dependence.
204  IF(mstu(181).LE.7.AND.mstu(182).LT.402) THEN
205  mstj(46)=0
206  WRITE(6,1030) mstj(46)
207  ENDIF
208 C...Initialize PYTHIA for parton densities.
209  IF(lst(15).GT.0) THEN
210 C...Set switches and parameters for parton densities in PYSTFU.
211  mstp(51)=lst(15)
212  mstp(52)=lst(16)
213  mstp(58)=lst(12)
214  ENDIF
215 
216  write(*,*) 'PYINIT not included !'
217 *HI CALL PYINIT('NONE','e-','p',ROOTS)
218 
219 
220 
221  parl(26)=parp(1)
222 CAE-- use Lambda from parton densities in initial cascade
223  pypar(21)=parp(1)
224 C...Reset PYTHIA 4.8 parameters from LEPTO parameters.
225  IF(mod(lst(8),10).EQ.3.OR.mod(lst(8),10).EQ.5) ipy(13)=0
226  IF(lst(35).NE.1.AND.
227  &(mod(lst(8),10).EQ.4.OR.mod(lst(8),10).EQ.5)) ipy(14)=0
228  ipy(8)=lst(12)
229 
230  IF(psave(3,1,3).LT.0.) THEN
231 C...Flip event to have initial lepton along +z axis
232  p(1,3)=-p(1,3)
233  p(2,3)=-p(2,3)
234  ENDIF
235 C...Boost parameters to cms of incoming particles
236  dbeta(1,1)=0.d0
237  dbeta(1,2)=0.d0
238  dbeta(1,3)=(dble(p(1,3))+dble(p(2,3)))/(dble(p(1,4))+dble(p(2,4)))
239  sphi(1)=0.d0
240  stheta(1)=0.d0
241  IF(lst(17).NE.0) THEN
242 C...For varying beam energies, transform to cms, lepton along +z axis.
243  CALL ludbrb(0,0,0.,0.,0.d0,0.d0,-dbeta(1,3))
244  sphi(1)=ulangl(p(1,1),p(1,2))
245  CALL ludbrb(0,0,0.,-sphi(1),0.d0,0.d0,0.d0)
246  stheta(1)=ulangl(p(1,3),p(1,1))
247  CALL ludbrb(0,0,-stheta(1),0.,0.d0,0.d0,0.d0)
248  lst(28)=2
249  ENDIF
250 
251 C...Effective limits on kinematic variables x, y, Q**2, W**2
252  pm2=p(2,5)**2
253  s=parl(21)
254  xmin=max(cut(1),0.)
255  xmax=min(cut(2),1.)
256  ymin=max(cut(3),0.)
257  ymax=min(cut(4),1.)
258  q2min=max(cut(5),0.)
259  q2max=min(cut(6),s)
260  w2min=max(cut(7),0.)
261  w2max=min(cut(8),s+pm2)
262  umin=max(cut(9),0.)
263  umax=min(cut(10),s/(2.*p(2,5)))
264  DO 40 i=1,2
265  xmin=max(xmin,q2min/(s*ymax),q2min/(2.*p(2,5)*umax),
266  &1.-(w2max-pm2)/max(s*ymin,1.e-22),
267  &1.-(w2max-pm2)/max(2.*p(2,5)*umin,1.e-22))
268  xmax=min(xmax,q2max/max(s*ymin,1.e-22),
269  &q2max/max(2.*p(2,5)*umin,1.e-22),
270  &1.-(w2min-pm2)/(s*ymax),1.-(w2min-pm2)/(2.*p(2,5)*umax))
271  ymin=max(ymin,q2min/(s*xmax),(w2min-pm2)/(s*(1.-xmin)),
272  &(w2min-pm2+q2min)/s,2.*p(2,5)*umin/s)
273  ymax=min(ymax,q2max/max(s*xmin,1.e-22),
274  &(w2max-pm2)/max(s*(1.-xmax),1.e-22),
275  &(w2max-pm2+q2max)/s,2.*p(2,5)*umax/s)
276  q2min=max(q2min,s*xmin*ymin,s*ymin-w2max+pm2,
277  &2.*p(2,5)*umin*xmin,(w2min-pm2)*xmin/(1.-xmin))
278  q2max=min(q2max,s*xmax*ymax,s*ymax-w2min+pm2,
279  &2.*p(2,5)*umax*xmax,(w2max-pm2)*xmax/max(1.-xmax,1.e-22))
280  w2min=max(w2min,s*(1.-xmax)*ymin+pm2,q2min*(1.-xmax)/xmax+pm2,
281  &s*ymin-q2max+pm2,2.*p(2,5)*umin*(1.-xmax)+pm2)
282  w2max=min(w2max,s*(1.-xmin)*ymax+pm2,
283  &q2max*(1.-xmin)/max(xmin,1.e-22)+pm2,
284  &s*ymax-q2min+pm2,2.*p(2,5)*umax*(1.-xmin)+pm2)
285 C UMIN=MAX(UMIN,....)
286 C UMAX=MIN(UMAX,....)
287  40 CONTINUE
288  IF(lst(3).GE.4.OR.(lst(3).EQ.3.AND.ncall.EQ.1)) WRITE(6,1050)
289  &cut,xmin,xmax,ymin,ymax,q2min,q2max,w2min,w2max,umin,umax
290  IF(xmax.LT.xmin.OR.ymax.LT.ymin.OR.q2max.LT.q2min.OR.
291  &w2max.LT.w2min) THEN
292  IF(lst(3).GE.1) WRITE(6,1100)
293  IF(lst(3).GE.2) THEN
294  WRITE(6,1900)
295  stop
296  ENDIF
297  ENDIF
298  IF(xmin.LT.1.e-10.OR.q2min.LT.1.e-01) THEN
299  IF(lst(3).GE.1) WRITE(6,1110)
300  IF(lst(3).GE.2) THEN
301  WRITE(6,1900)
302  stop
303  ENDIF
304  ENDIF
305 
306  pari(11)=(parl(1)-parl(2))/parl(1)
307  ksave(4)=lepin
308  ilep=1
309  IF(lepin.LT.0) ilep=2
310  inu=0
311  IF(iabs(lepin).EQ.12.OR.iabs(lepin).EQ.14
312  &.OR.iabs(lepin).EQ.16) inu=1
313  IF(inu.EQ.1) THEN
314 C...Set full polarisation for incoming neutrino.
315  parl(6)=-1.
316  IF(lepin.LT.0) parl(6)=1.
317  ENDIF
318  IF(lst(23).EQ.1.AND.inu.EQ.0) THEN
319 C...Electromagnetic interaction.
320  ksave(3)=22
321  ig=1
322  iz=0
323  ELSEIF(lst(23).EQ.2) THEN
324 C...Weak charged current, only one helicity state contributes.
325  IF(ksave(1).LT.0.AND.parl(6).LT.-0.99
326  & .OR.ksave(1).GT.0.AND.parl(6).GT.0.99) THEN
327  IF(lst(3).GE.1) WRITE(6,1150) lepin,parl(6)
328  IF(lst(3).GE.2) THEN
329  WRITE(6,1900)
330  stop
331  ENDIF
332  ENDIF
333  IF(mod(iabs(lepin),2).EQ.0) THEN
334  ksave(3)=isign(24,lepin)
335  ksave(4)=isign(iabs(lepin)-1,lepin)
336  ELSE
337  ksave(3)=isign(24,-lepin)
338  ksave(4)=isign(iabs(lepin)+1,lepin)
339  ENDIF
340  ELSEIF(lst(23).EQ.3.OR.(lst(23).EQ.4.AND.inu.EQ.1)) THEN
341 C...Weak neutral current.
342  ksave(3)=23
343  ig=0
344  iz=1
345  ELSEIF(lst(23).EQ.4.AND.inu.EQ.0) THEN
346 C...Neutral current, electromagnetic and weak with interference.
347  ksave(3)=23
348  ig=1
349  iz=1
350  ELSE
351  IF(lst(3).GE.1) WRITE(6,1200) inter,lepin
352  IF(lst(3).GE.2) THEN
353  WRITE(6,1900)
354  stop
355  ENDIF
356  ENDIF
357 
358 C...Choice of independent variables.
359  IF(lst(1).EQ.0) THEN
360  lst(31)=1
361  IF(inter.EQ.2.OR.inter.EQ.3) lst(31)=2
362  ELSE
363  lst(31)=iabs(lst(1))
364  ENDIF
365  IF(lst(31).LT.1.OR.lst(31).GT.3) THEN
366  IF(lst(3).GE.1) WRITE(6,1210) lst(1),lst(31)
367  IF(lst(3).GE.2) THEN
368  WRITE(6,1900)
369  stop
370  ENDIF
371  ENDIF
372  IF(lst(1).LT.0) THEN
373 C...User-defined optimization parameters.
374  IF(lst(3).GE.4.OR.(lst(3).EQ.3.AND.ncall.EQ.1))
375  & WRITE(6,1220) optx,opty,optq2,optw2
376  ELSE
377 C...Set optimization parameters.
378  DO 50 i=1,4
379  optx(i)=0.
380  opty(i)=0.
381  optq2(i)=0.
382  50 optw2(i)=0.
383  IF(inter.EQ.1) THEN
384  optx(2)=1.
385  opty(1)=1.
386  optq2(3)=1.
387  optw2(3)=1.
388  ELSEIF(inter.EQ.4) THEN
389  optx(1)=0.1
390  optx(2)=1.
391  opty(1)=1.
392  optq2(1)=0.5
393  optq2(2)=0.5
394  optq2(3)=1.
395  optw2(1)=0.5
396  optw2(2)=0.5
397  optw2(3)=1.
398  ELSE
399  optx(1)=1.
400  opty(1)=1.
401  optq2(1)=1.
402  optw2(1)=1.
403  ENDIF
404  ENDIF
405 
406 C...Initialize Monte Carlo estimate of cross section.
407  parl(24)=0.
408  pari(27)=0.
409  pari(28)=0.
410  pari(29)=0.
411  pari(30)=0.
412  pari(32)=0.
413  IF(lst(23).EQ.2) THEN
414 C...Constant factor GF**2/pi for CC, transformation to picobarn.
415  pari(31)=parl(17)**2/pi*0.39e+09
416  ELSE
417 C...Constant factor 2*pi*alpha**2 for NC, transformation to picobarn.
418  pari(31)=2.*pi*parl(16)**2*0.39e+09
419  ENDIF
420  IF(lst(3).GE.4.OR.(lst(3).EQ.3.AND.ncall.EQ.1))
421  &WRITE(6,1250) (i,lst(i),lst(i+10),parl(i),parl(i+10),i=1,10)
422 
423 C...Set up grid with longitudinal structure function, QCD & target mass;
424 C...only when photon exchange is included
425  lqcd=mod(lst(11),10)
426  ltm=mod(lst(11)/10,10)
427  IF(lst(11).NE.0.AND.(inter.EQ.1.OR.inter.EQ.4)) CALL fltabl
428 
429 C...Get integrated cross-section.
430  parl(23)=0.
431  IF(lst(10).GT.0) CALL lxsect
432  IF(lqcd.EQ.2.OR.ltm.EQ.2) THEN
433  WRITE(6,1300)
434  IF(lqcd.EQ.2) WRITE(6,1310)
435  IF(ltm .EQ.2) WRITE(6,1320)
436  WRITE(6,1330)
437  ENDIF
438 
439  IF(lst(2).EQ.1) THEN
440 C...Find max value of differential cross section for rejection.
441  ukin(1)=(xmax+xmin)/2.
442  wkin(1)=0.8*(xmax-xmin)/2.
443  ain(1)=xmin
444  bin(1)=xmax
445  IF(lst(31).EQ.1) THEN
446  ukin(2)=(q2max+q2min)/2.
447  wkin(2)=0.8*(q2max-q2min)/2.
448  ain(2)=q2min
449  bin(2)=q2max
450  namkin(2)=' Q**2'
451  ELSEIF(lst(31).EQ.2) THEN
452  ukin(2)=(ymax+ymin)/2.
453  wkin(2)=0.8*(ymax-ymin)/2.
454  ain(2)=ymin
455  bin(2)=ymax
456  namkin(2)=' y'
457  ELSEIF(lst(31).EQ.3) THEN
458  ukin(2)=(w2max+w2min)/2.
459  wkin(2)=0.8*(w2max-w2min)/2.
460  ain(2)=w2min
461  bin(2)=w2max
462  namkin(2)=' W**2'
463  ENDIF
464 C...Maximum obtained by minimizing -(diff. x-section).
465  CALL ltimex(ti1)
466  CALL lminew
467  CALL ltimex(ti2)
468  pari(lst(23))=fcnmax*1.1
469 CMM.. Maximum inserted by hand if MINUIT fails
470  IF(pari(lst(23)).EQ.0.0) pari(lst(23))=fmaxfh
471  IF(lst(3).GE.4.OR.(lst(3).EQ.3.AND.ncall.EQ.1))
472  & WRITE(6,1400) pari(lst(23)),ti2-ti1
473  ENDIF
474 
475  IF(lfile.GT.0.AND.lst(19).GE.0) THEN
476 C...Read QCD weights from file.
477  READ(lfile) lstw,parlw,nxx,nww,np,xx,ww
478  ipmax=2
479  IF(lstw(17).NE.0) ipmax=3
480  READ(lfile) (((pqg(ix,iw,ip),ix=1,nxx),iw=1,nww),ip=1,np),
481  & (((pqqb(ix,iw,ip),ix=1,nxx),iw=1,nww),ip=1,np),
482  & (((qgmax(ix,iw,ip),ix=1,nxx),iw=1,nww),ip=1,ipmax),
483  & (((qqbmax(ix,iw,ip),ix=1,nxx),iw=1,nww),ip=1,min(2,ipmax)),
484  & ycut
485  IF(np.NE.1) READ(lfile) xtot
486  CLOSE(lfile)
487 C...Reset parameters for matrix element integration.
488  parl(8)=parlw(8)
489  parl(9)=parlw(9)
490  parl(11)=parlw(11)
491  parl(12)=parlw(12)
492  parl(13)=parlw(13)
493 C...Check current parameter values against those used when
494 C...calculating weights.
495  IF(lst(12).NE.lstw(12).OR.lst(13).NE.lstw(13)
496  & .OR.lst(15).NE.lstw(15).OR.lst(16).NE.lstw(16)
497  & .OR.lst(17).NE.lstw(17).OR.lst(23).NE.lstw(23)
498  & .OR.abs(parl(1)-parlw(1)).GT.0.1.OR.abs(parl(2)-parlw(2)).GT.0.1
499  & .OR.abs(parl(5)-parlw(5)).GT.0.01
500  & .OR.abs(parl(6)-parlw(6)).GT.0.1) THEN
501  IF(lst(3).GE.1)
502  & WRITE(6,1500) lst(12),lstw(12),lst(13),lstw(13),lst(15),
503  & lstw(15),lst(16),lstw(16),lst(17),lstw(17),lst(23),lstw(23),
504  & parl(1),parlw(1),parl(2),parlw(2),parl(5),parlw(5),parl(6),
505  & parlw(6)
506  IF(lst(3).GE.2) THEN
507  WRITE(6,1900)
508  stop
509  ENDIF
510  ENDIF
511  ELSEIF((lst(19).GE.0.OR.lst(19).EQ.-10).AND.
512  &(lst(8).EQ.1.OR.lst(8)/10.EQ.1.OR.mod(lst(8),10).EQ.9)) THEN
513 C...Calculate weights if 1st order QCD from grid is requested.
514  CALL ltimex(ti1)
515  CALL lweits(lfile)
516  CALL ltimex(ti2)
517  IF(lst(3).GE.4.OR.(lst(3).EQ.3.AND.ncall.EQ.1))
518  & WRITE(6,1510) ti2-ti1
519  ENDIF
520 
521 C...Reset counters to zero for Monte Carlo estimate of cross section.
522  pari(27)=0.
523  pari(28)=0.
524  pari(29)=0.
525  pari(30)=0.
526  lst(32)=0
527  RETURN
528 
529  1000 FORMAT(' ',68('='),//,
530  &'A MONTE CARLO GENERATOR FOR DEEP INELASTIC LEPTON-'
531  &,'NUCLEON SCATTERING',//,
532  &'LEPTO version 6.5, April 20, 1996',/,68('='),//,
533  &'Lepton: type =',i3,5x,'momentum (px,py,pz) =',3f8.1,
534  &' GeV',//,'Target: A, Z =',2f3.0,2x,
535  &'momentum (px,py,pz) =',3f8.1,' GeV',//,
536  &'Interaction :',i3,14x,' CMS energy =',1pg12.4,' GeV',/68('='))
537  1010 FORMAT(' Warning: lepton and nucleon momenta in same direction',
538  &' not allowed.',/,10x,'Execution stopped.')
539  1020 FORMAT(/,' JETSET version ',i3,'.',i3,' is used.',/,
540  &' Parton densities in PYTHIA version ',i3,'.',i3,' are used.',/)
541  1030 FORMAT(' Warning (LINIT): JETSET version before 7.402, MSTJ(46)'
542  & ,' set to',i4,/,18x,'to avoid mismatch LEPTO<-->LUSHOW.',/)
543  1050 FORMAT(/,' User applied cuts (+ phase space) : ',1p,
544  & g12.4,' < x < ',g12.4,
545  &/,37x,g12.4,' < y < ',g12.4,
546  &/,37x,g12.4,' < Q**2 < ',g12.4,
547  &/,37x,g12.4,' < W**2 < ',g12.4,
548  &/,37x,g12.4,' < nu < ',g12.4,
549  &/,37x,g12.4,' < E'' < ',g12.4,
550  &/,37x,g12.4,' < theta < ',g12.4,/,
551  &/, ' Effective ranges (from above cuts): ',
552  & g12.4,' < x < ',g12.4,
553  &/,37x,g12.4,' < y < ',g12.4,
554  &/,37x,g12.4,' < Q**2 < ',g12.4,
555  &/,37x,g12.4,' < W**2 < ',g12.4,
556  &/,37x,g12.4,' < nu < ',g12.4)
557  1100 FORMAT(' Warning: effective upper limit of kinematical ',
558  &'variable(s) smaller than corresponding lower limit.')
559  1110 FORMAT(' Warning: lower limit in x and/or Q2 too small for ',
560  &'DIS formalism.')
561  1150 FORMAT(' Warning: weak charged current cross section zero for ',
562  &'specified lepton helicity; LEPIN, PARL(6) =',i3,f5.2)
563  1200 FORMAT(' Warning: unrecognized interaction in LINIT call: ',
564  &'INTER = ',i5,' for lepton LEPIN =',i5)
565  1210 FORMAT(' Warning: unallowed value of LST(1) =',i3,
566  &' and/or LST(31) =',i3)
567  1220 FORMAT(/,' User-defined optimization parameters:',
568  &/,5x,'OPTX(1...4) =',4g11.3,/,5x,'OPTY(1...4) =',4g11.3,
569  &/,5x,'OPYQ2(1...4) =',4g11.3,/,5x,'OPTW2(1...4) =',4g11.3,/)
570  1250 FORMAT(/,' Parameter values:',
571  &'LST(I+10)',8x,'PARL(I)',5x,'PARL(I+10)',1p,
572  &/,5x,55('-'),10(/,3i10,2g15.4),/)
573  1300 FORMAT(' Warning: cross section, PARL(23), excludes FL (see ',
574  &'LST(11)) from:')
575  1310 FORMAT(10x,'QCD, since evaluated event by event for LQCD=2')
576  1320 FORMAT(10x,'TM , since evaluated event by event for LTM =2')
577  1330 FORMAT(' Cross section in PARL(24) includes these contributions.')
578  1400 FORMAT(' Max of differential cross section (for weighting) =',
579  &e12.4,/,' obtained in ',f7.2,' seconds.',/)
580  1500 FORMAT(
581  &'with those used when calculating QCD weights.',
582  &'current value value for weights',/,
583  &/,' LST(12) ',i12,10x,i12,
584  &/,' LST(13) ',i12,10x,i12,
585  &/,' LST(15) ',i12,10x,i12,
586  &/,' LST(16) ',i12,10x,i12,
587  &/,' LST(17) ',i12,10x,i12,
588  &/,' LST(23) ',i12,10x,i12,
589  &/,' PARL(1) ',e12.4,10x,e12.4,
590  &/,' PARL(2) ',e12.4,10x,e12.4,
591  &/,' PARL(5) ',e12.4,10x,e12.4,
592  &/,' PARL(6) ',e12.4,10x,e12.4)
593  1510 FORMAT(/,' Time for calculating QCD weights =',f5.1,' seconds',/)
594  1900 FORMAT(' Execution stopped ',/)
595  END