2       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
   12       COMMON /paname/ btype(30)
 
   14       COMMON /nucimp/ prmom(5,248),tamom(5,248), prmfep,prmfen,tamfep,
 
   15      +tamfen, prefep,prefen,taefep,taefen, prepot(210),taepot(210),
 
   16      +prebin,taebin,fermod,etacou
 
   18       COMMON /dprin/  ipri,ipev,ippa,ipco,
init,iphkk,itopd,ipaupr
 
   20       LOGICAL intpt,fermp,ihadss,ihadsv,ihadvs,ihadvv,ihada, ipadis,
 
   22       COMMON /droppt/ intpt,fermp,ihadss,ihadsv,ihadvs,ihadvv,ihada,
 
   25       COMMON /hadthr/ ehadth,inthad
 
   27       COMMON /nshmak/ nnshma,npshma,ntshma,nshmac,nshma2
 
   29       COMMON /rejec/ irco1,irco2,irco3,irco4,irco5, irss11,irss12,
 
   30      +irss13,irss14, irsv11,irsv12,irsv13,irsv14, irvs11,irvs12,irvs13,
 
   31      +irvs14, irvv11,irvv12,irvv13,irvv14
 
   33       COMMON /dshm/ rash,rbsh,bmax,bstep,sigsh,rosh,gsh,
 
   34      *              bsite(0:1,200),nstatb,nsiteb
 
   37       COMMON /damp/   ca,ci,ga
 
   41       COMMON /diffra/ isingd,idiftp,ioudif,iflagd
 
   42       COMMON /nomije/ ptmije(10),nnmije(10)
 
   43       DATA ptmije /5.d0,7.d0,9.d0,11.d0,13.d0,15.d0,17.d0
 
   47       DATA irco1,irco2,irco3,irco4,irco5 /5*0/
 
   48       DATA irss11,irss12,irss13,irss14,irsv11,irsv12,irsv13,irsv14 /8*0/
 
   49       DATA irvs11,irvs12,irvs13,irvs14,irvv11,irvv12,irvv13,irvv14 /8*0/
 
   55       DATA taebin,prebin,fermod /2*0.0d0,0.6d0/
 
   57       DATA btype /
'PROTON  ' , 
'APROTON ' , 
'ELECTRON' , 
'POSITRON' ,
 
   58      +
'NEUTRIE ' , 
'ANEUTRIE' , 
'PHOTON  ' , 
'NEUTRON ' , 
'ANEUTRON' ,
 
   59      +
'MUON+   ' , 
'MUON-   ' , 
'KAONLONG' , 
'PION+   ' , 
'PION-   ' ,
 
   60      +
'KAON+   ' , 
'KAON-   ' , 
'LAMBDA  ' , 
'ALAMBDA ' , 
'KAONSHRT' ,
 
   61      +
'SIGMA-  ' , 
'SIGMA+  ' , 
'SIGMAZER' , 
'PIZERO  ' , 
'KAONZERO' ,
 
   62      +
'AKAONZER' , 
'RESERVED' , 
'BLANK   ' , 
'BLANK   ' , 
'BLANK   ' ,
 
   65       DATA ipri,ipev,ippa,ipco,
init,iphkk,itopd,ipaupr /0, 0, 0, -1, 0,
 
   68       DATA intpt, fermp, ihadss,ihadsv,ihadvs,ihadvv, ihada /.true.,
 
   69      +.true., 4*.false., .true./
 
   70       DATA ipadis, ishmal, lpauli /.false., .false., .true./
 
   75       DATA nstatb, nsiteb /2000, 200/
 
   79       DATA isingd,idiftp,ioudif,iflagd /0,0,0,0/
 
  100       IMPLICIT DOUBLE PRECISION(
a-h,o-
z)
 
  103       CHARACTER*8 projty,targty
 
  106       COMMON /user1/
title,projty,targty
 
  107       COMMON /user2/cmener,sdfrac,ptlar,istruf,isingd,idubld
 
  111       COMMON /colle/nevhad,nvers,ihadrz,nfile
 
  115       common/collis/
s,ijproj,ijtar,ptthr,ptthr2,iophrd,ijprlu,ijtalu
 
  122       common/booklt/btype(30),nbook(30)
 
  127        COMMON /polmn0/pdifr,phard,psoft,alfah,betah,
 
  128      *              sigtot,sigqel,sigel,sigine,sighin,sigd,sigdd
 
  132       COMMON /pomtyp/ipim,icon,isig,lmax,mmax,
nmax,difel,difnu
 
  137       COMMON /dropjj/dropjt,dropva
 
  138       COMMON /gluspl/nugluu,nsgluu
 
  140       COMMON /ptsamp/ isampt
 
  141       COMMON /stars/istar2,istar3
 
  142       COMMON /strufu/istrum,istrut
 
  143       COMMON /popcor/pdb,ajsdef 
 
  148       CHARACTER*8 codewd,sdum
 
  158  9    
FORMAT( 
' special code word was used ')
 
  236       IF(codewd.EQ.
'SIGMAPOM') 
THEN 
  255                    IF (itest.EQ.1)CALL 
pomdi 
  269       ELSEIF(codewd.EQ.
'GLUSPLIT') 
THEN 
  292       ELSEIF(codewd.EQ.
'PARTEV  ') 
THEN 
  295                 IF (
what(2).EQ.0.d0)npev=30
 
  297                 IF (
what(3).EQ.0.d0)nvers=1
 
  302                   IF(ipim.EQ.2)CALL 
prblm2(cmener)
 
  324       ELSEIF(codewd.EQ.
'SELHARD ') 
THEN 
  329         IF(
what(5).NE.0.d0)
THEN 
  331           IF(cmener.LT.2000.0d0.AND.isig.EQ.3)ptthr=
what(5)
 
  332           IF (cmener.GE.2000.0d0.AND.isig.EQ.3)
 
  333      *                   ptthr=0.25*
log(cmener/2000.)+2.
 
  334           IF(ptthr2.LT.ptthr)ptthr2=ptthr
 
  336             ptthr=2.1+0.15*(log10(cmener/50.))**3
 
  338           ELSEIF(istrut.EQ.2)
THEN 
  339             ptthr=2.5+0.12*(log10(cmener/50.))**3
 
  343  1244     
FORMAT (
' THRESHOLD PT FOR HARD SCATTERING PTTHR=',f12.2)
 
  358       ELSEIF(codewd.EQ.
'XSLAPT  ') 
THEN 
  373       ELSEIF(codewd.EQ.
'SAMPT   ') 
THEN 
  376         IF( isampt.LT.0 .OR. isampt.GT.4 ) isampt=0
 
  414       IMPLICIT DOUBLE PRECISION(
a-h,o-
z)
 
  417       common/booklt/btype(30),nbook(30)
 
  419       DATA btype /
'PROTON  ' , 
'APROTON ' , 
'ELECTRON' ,
 
  420      1            
'POSITRON' , 
'NEUTRIE ' , 
'ANEUTRIE' ,
 
  421      2            
'PHOTON  ' , 
'NEUTRON ' , 
'ANEUTRON' ,
 
  422      3            
'MUON+   ' , 
'MUON-   ' , 
'KAONLONG' ,
 
  423      4            
'PION+   ' , 
'PION-   ' , 
'KAON+   ' ,
 
  424      5            
'KAON-   ' , 
'LAMBDA  ' , 
'ALAMBDA ' ,
 
  425      6            
'KAONSHRT' , 
'SIGMA-  ' , 
'SIGMA+  ' ,
 
  426      7            
'SIGMAZER' , 
'PIZERO  ' , 
'KAONZERO' ,
 
  427      9            
'AKAONZER' , 
'        ' , 
'        ' ,
 
  431       DATA nbook / 2212      , -2212      ,  11        ,
 
  433      2             22        ,  2112      , -2112      ,
 
  436      5            -321       ,  3122      , -3122      ,
 
  437      6             310       ,  3114      ,  3224      ,
 
  455       IMPLICIT DOUBLE PRECISION(
a-h,o-
z)
 
  457       parameter( 
zero=0.d0, 
one=1.d0)
 
  458       parameter( alfa=0.56268
d-01, 
beta=0.17173
d+03 )
 
  459       parameter( acc = 0.0001d0 )
 
  460       COMMON /xsecpt/ ptcut,sigs,dsigh
 
  461       COMMON /sigma / sigsof,bs,zsof,sighar,
fill(7)
 
  462       COMMON /outlev/ioutpo,ioutpa,iouxev,ioucol
 
  464       common/collis/
s,ijproj,ijtar,ptthr,ptthr2,iophrd,ijprlu,ijtalu
 
  466       CHARACTER*8 projty,targty
 
  469       COMMON /user1/
title,projty,targty
 
  470       COMMON /user2/cmener,sdfrac,ptlar,istruf,isingd,idubld
 
  472       common/ptsamp/ isampt
 
  473       dimension pptt(50),dpptt(50)
 
  477       ptthr=2.5+0.12*(log10(cmener/50.))**3
 
  480       IF ( mode.EQ.0 ) 
THEN 
  482           pptt(ii)=ii*ptcut/50.
 
  487           aacucu=0.85*(ecm-400.)/600.
 
  488           sigs=(1.-aacucu)*sigsof
 
  500  5559     
FORMAT(
' SAMPPT:PTCUT,SIDSOF.SIGHATD,ISAMPT:',3e12.3,i5)
 
  502         IF( isampt.EQ.0 ) 
THEN 
  503           c  = dsigh/(2.*sigs*ptcut)
 
  505         IF( ioutpa.GE.1 )
WRITE(6,9010)mode,isampt,ptcut,sigs,dsigh,b
 
  506      * ,c,sigsof,sighar,rmin
 
  507         ELSEIF( isampt.EQ.1 ) 
THEN 
  511         IF( ioutpa.GE.1 )
WRITE(6,9010)mode,isampt,ptcut,sigs,dsigh,b
 
  512      * ,c,sigsof,sighar,rmin
 
  513         ELSEIF( isampt.EQ.2 ) 
THEN 
  515         IF( ioutpa.GE.1 )
WRITE(6,9010)mode,isampt,ptcut,sigs,dsigh,b
 
  516      * ,c,sigsof,sighar,rmin
 
  517         ELSEIF( isampt.EQ.3 ) 
THEN 
  519         IF( ioutpa.GE.1 )
WRITE(6,9010)mode,isampt,ptcut,sigs,dsigh,b
 
  520      * ,c,sigsof,sighar,rmin
 
  521         ELSEIF( isampt.EQ.4)
THEN 
  522           aaaa=ptcut**2*(sigsof+sighar)
 
  523           IF (aaaa.LE.0.00001d0) 
THEN 
  524             aaaa=abs(aaaa)+0.0002
 
  529           b  = 0.5*
bsofpt(acc,c,ptcut)
 
  530     IF( ioutpa.GE.1 )
WRITE(6,9010)mode,isampt,ptcut,sigs,dsigh,b
 
  531      * ,c,sigsof,sighar,rmin
 
  535         rmin = 
exp(b*ptcut**2)
 
  539         IF( ioutpa.GE.1 )
WRITE(6,9010)mode,isampt,ptcut,sigs,dsigh,b
 
  540      * ,c,sigsof,sighar,rmin
 
  541 9010  
FORMAT(
' SAMPPT MODE,ISAMPT,PTCUT,SIGS,DSIGH,B,C,SIGSOF',
 
  545       ELSEIF ( mode.EQ.1 ) 
THEN 
  546         IF( ioutpa.GE.1 )
WRITE(6,9010)mode,isampt,ptcut,sigs,dsigh,b
 
  547      * ,c,sigsof,sighar,rmin
 
  548         ptt   =
log(1.0-
rndm(v)*(1.0-rmin))/(b+0.00001d0)
 
  552         dpptt(iipt)=dpptt(iipt)+1./(
pt+0.000001d0)
 
  555       ELSEIF(mode.EQ.2)
THEN 
  557           dpptt(ii)=log10(1.
e-8+dpptt(ii))
 
  561   203   
FORMAT(
' PT DISTRIBUTION OF SOFT PARTONS AS SAMPLED IN BSOFPT')
 
  570      *
 FUNCTION bsofpt(ACC,CC,PPTCUT)
 
  571       IMPLICIT DOUBLE PRECISION(
a-h,o-
z)
 
  574       COMMON /bsoff1/c,ptcut
 
  575       COMMON /outlev/ioutpo,ioutpa,iouxev,ioucol
 
  577       dimension 
x(50),
y(50)
 
  605         IF (kkkk.EQ.0)go to 400
 
  608       IF(iouxev.GE.1)
WRITE(6,111)b1,b2
 
  619       IMPLICIT DOUBLE PRECISION(
a-h,o-
z)
 
  621       COMMON /bsoff1/c,ptcut
 
  624       df=c*ptcut**2*aaa-aaa
 
  634       IMPLICIT DOUBLE PRECISION(
a-h,o-
z)
 
  636       COMMON /bsoff1/c,ptcut
 
  642       bsof1=c*(aaa-1.)-b*aaa
 
  651      *
  FUNCTION rtsafe(FUNCD,X1,X2,XACC)
 
  652       IMPLICIT DOUBLE PRECISION(
a-h,o-
z)
 
  654       parameter(maxit=200,itepri=0)
 
  655       COMMON /outlev/ioutpo,ioutpa,iouxev,ioucol
 
  660       IF(fl*fh.GE.0.) pause 
'ROOT MUST BE BRACKETED' 
  686      *      .OR. abs(2.*
f).GT.abs(dxold*df) ) 
THEN 
  699         IF(abs(
dx).LT.xacc) 
RETURN 
  709       pause 
'RTSAFE EXCEEDING MAXIMUM ITERATIONS' 
  711 9995  
FORMAT(
'  VR1,VR2:',2e12.5)
 
  712 9996  
FORMAT(
'  RTSAFE,XH,XL,DXOLD,F,DF IN LOOP 11 J=1,MAXIT')
 
  713 9997  
FORMAT(3
x,6e10.3)
 
  714 9998  
FORMAT(
'  RTSAFE: RTSAFE,F,DF =',3e12.5)
 
  715 9999  
FORMAT(
'  RTSAFE: F,DF =',2e12.5)
 
  721      *
  FUNCTION var(A,B,C,D)
 
  722       IMPLICIT DOUBLE PRECISION(
a-h,o-
z)
 
  724       parameter( ambmax = 1.0
d+38, epsi = 1.2
d-38, 
one=1.d0 )
 
  728       abl = log10( abl + epsi )
 
  731       ccl = log10( ccl + epsi )
 
  733       IF( rcheck .LE. 38.d0 ) 
THEN 
  736         var = ambmax*siab*sicc - 
d 
  738       IF( 
var .GT. 1.0
d+18 ) 
var = 1.0
e+18
 
  739       IF( 
var .LT. -1.0
d+18 ) 
var = -1.0
e+18
 
  744       IMPLICIT DOUBLE PRECISION(
a-h,o-
z)
 
  747       parameter(factor=1.6d0,ntry=50)
 
  749       IF(
x1.EQ.
x2)pause 
'You have to guess an initial range' 
  754         IF(
f1*
f2.LT.0.d0)
RETURN 
  755         IF(abs(
f1).LT.abs(
f2))
THEN 
  788       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
  792       parameter(amuamu=0.93149432d0)
 
  795       COMMON /hkkevt/ nhkk,nevhkk,isthkk(
nmxhkk),idhkk(
nmxhkk), jmohkk
 
  883       COMMON /delp/ delpx,delpy,delpz,delpe
 
  885       COMMON /tanuin/ tasuma,tasubi,tabi,tamasu,tama,taimma
 
  887       COMMON /nucc/   it,itz,ip,ipz,ijproj,ibproj,ijtarg,ibtarg
 
  889       COMMON /dprin/  ipri,ipev,ippa,ipco,
init,iphkk,itopd,ipaupr
 
  894       IF(help.GT.5.d0)phelp=help-5.
 
  909         IF(isthkk(i).EQ.11.OR.isthkk(i).EQ.13) 
THEN 
  914           pz=
pz - gam*phkk(3,i) - bgam*phkk(4,i)
 
  915           pe=pe - gam*phkk(4,i) - bgam*phkk(3,i)
 
  918         IF(isthkk(i).EQ.12.OR.isthkk(i).EQ.14) 
THEN 
  925         IF(isthkk(i).EQ.1) 
THEN 
  932         IF(isthkk(i).EQ.13.AND.jdahkk(2,i).EQ.0) 
THEN 
  937           pz=
pz + gam*phkk(3,i) + bgam*phkk(4,i)
 
  938           pe=pe + gam*phkk(4,i) + bgam*phkk(3,i)
 
  940         IF(isthkk(i).EQ.14.AND.jdahkk(2,i).EQ.0) 
THEN 
  947         IF(isthkk(i).EQ.16) 
THEN 
  953           eext=eext + phkk(4,i) - phkk(4,imo)
 
  955         IF(isthkk(i).EQ.15) 
THEN 
  961           pz=
pz + gam*phkk(3,i) + bgam*phkk(4,i)
 
  962           pe=pe + gam*phkk(4,i) + bgam*phkk(3,i)
 
  963           eext=eext + phkk(4,i) - phkk(4,imo)
 
  965         IF(isthkk(i).EQ.1) 
THEN 
  968         IF(isthkk(i).EQ.-1) 
THEN 
  969       eeem1=eeem1+phkk(4,i)
 
  971         IF(isthkk(i).EQ.1001) 
THEN 
  972       ee1001=ee1001+phkk(4,i)
 
  975       eee=eee1+eeem1+ee1001
 
  986       aip=aip+(ait*amuamu+1.
d-3*
energy(ait,aitz))/epnto
 
  992         IF(it.EQ.ip)tole=0.02
 
  995       IF(delle.GE.tole)irej=1
 
  998     IF(icheck.LE.100)
THEN 
  999           WRITE(6,
'(A,I5,E10.3,5F10.4)')
 
 1000      *    
' IP,EPN,AEEE,AEEEE,AEEE1,AEEEM1,AEE101:',
 
 1001      *    ip,epn,aeee,aeeee,aeee1,aeeem1,aee101
 
 1002           WRITE(6,
'(A,I5,E10.3,7E12.4)')
 
 1003      *    
' IP,EPN,EEE,EEEE,EEE1,EEEM1,EE1001,DELLE,ELLE:',
 
 1004      *    ip,epn,eee,eeee,eee1,eeem1,ee1001,delle,elle
 
 1020  1000 
FORMAT(
' CHECKF: PX,PY,PZ,PE,EEXT,EEXP',2f7.3,2e12.3,2f7.3
 
 1021      * / 8
x,
' DELPX/Y/Z/E',4f7.3,i10,
' IORIG')
 
 1027             IF(isthkk(i).EQ.11) 
THEN 
 1028               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1029      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1030      +        (vhkk(khkk,i),khkk=1,4)
 
 1033             IF(isthkk(i).EQ.12) 
THEN 
 1034               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1035      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1036      +        (vhkk(khkk,i),khkk=1,4)
 
 1039             IF(isthkk(i).EQ.1) 
THEN 
 1040               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1041      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1042      +        (vhkk(khkk,i),khkk=1,4)
 
 1044  1010 
FORMAT (i6,i4,5i6,9(1pe10.2))
 
 1046             IF(isthkk(i).EQ.16) 
THEN 
 1048               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1049      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1050      +        (vhkk(khkk,i),khkk=1,4)
 
 1063       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 1067       parameter(amuamu=0.93149432d0)
 
 1070       COMMON /hkkevt/ nhkk,nevhkk,isthkk(
nmxhkk),idhkk(
nmxhkk), jmohkk
 
 1158       COMMON /delp/ delpx,delpy,delpz,delpe
 
 1160       COMMON /tanuin/ tasuma,tasubi,tabi,tamasu,tama,taimma
 
 1162       COMMON /nucc/   it,itz,ip,ipz,ijproj,ibproj,ijtarg,ibtarg
 
 1164       COMMON /dprin/  ipri,ipev,ippa,ipco,
init,iphkk,itopd,ipaupr
 
 1169       IF(help.GT.5.d0)phelp=help-5.d0
 
 1170       pthelp=12.d0+phelp*5.d0
 
 1190         IF(isthkk(i).EQ.11.OR.isthkk(i).EQ.13) 
THEN 
 1195           pz=
pz - gam*phkk(3,i) - bgam*phkk(4,i)
 
 1196           pe=pe - gam*phkk(4,i) - bgam*phkk(3,i)
 
 1199         IF(isthkk(i).EQ.12.OR.isthkk(i).EQ.14) 
THEN 
 1206         IF(isthkk(i).EQ.1) 
THEN 
 1213         IF(isthkk(i).EQ.13.AND.jdahkk(2,i).EQ.0) 
THEN 
 1218           pz=
pz + gam*phkk(3,i) + bgam*phkk(4,i)
 
 1219           pe=pe + gam*phkk(4,i) + bgam*phkk(3,i)
 
 1221         IF(isthkk(i).EQ.14.AND.jdahkk(2,i).EQ.0) 
THEN 
 1228         IF(isthkk(i).EQ.16) 
THEN 
 1234           eext=eext + phkk(4,i) - phkk(4,imo)
 
 1236         IF(isthkk(i).EQ.15) 
THEN 
 1242           pz=
pz + gam*phkk(3,i) + bgam*phkk(4,i)
 
 1243           pe=pe + gam*phkk(4,i) + bgam*phkk(3,i)
 
 1244           eext=eext + phkk(4,i) - phkk(4,imo)
 
 1246         IF(isthkk(i).EQ.1) 
THEN 
 1251         IF(isthkk(i).EQ.-1) 
THEN 
 1252       eeem1=eeem1+phkk(4,i)
 
 1256         IF(isthkk(i).EQ.1001) 
THEN 
 1257       ee1001=ee1001+phkk(4,i)
 
 1258       pz1001=pz1001+phkk(3,i)
 
 1259       px1001=px1001+phkk(1,i)
 
 1262       eee=eee1+eeem1+ee1001
 
 1263       pzpz=pz1+pzm1+pz1001
 
 1264       pxpx=px1+pxm1+px1001
 
 1275         IF(isthkk(i).EQ.1001) 
THEN 
 1276       phkk(3,i)=phkk(3,i)+delpz
 
 1277       phkk(4,i)=
sqrt(phkk(1,i)**2+phkk(2,i)**2+phkk(3,i)**2
 
 1279       ee1001=ee1001+phkk(4,i)
 
 1282       eee=eee1+eeem1+ee1001
 
 1290       bip=epn+(ait*amuamu+1.
d-3*
energy(ait,aitz))
 
 1296       IF(delle.GE.tole)irej=1
 
 1299     IF(icheck.LE.20)
THEN 
 1300           WRITE(6,
'(A,I5,E10.3,4F10.4)')
 
 1301      *    
' IP,EPN,PXPX,PX1,PXM1,PX1001:',
 
 1302      *    ip,epn,pxpx,px1,pxm1,px1001
 
 1303           WRITE(6,
'(A,I5,E10.3,6F10.4)')
 
 1304      *    
' IP,PPN,PZPZ,PZ1,PZM1,PZ1001,BIP,BMI:',
 
 1305      *    ip,ppn,pzpz,pz1,pzm1,pz1001,bip,bmi
 
 1306           WRITE(6,
'(A,I5,E10.3,5E12.4)')
 
 1307      *    
' IP,EPN,EEE,EEE1,EEEM1,EE1001,DELLE:',
 
 1308      *    ip,epn,eee,eee1,eeem1,ee1001,delle
 
 1324  1000 
FORMAT(
' CHECKF: PX,PY,PZ,PE,EEXT,EEXP',2f7.3,2e12.3,2f7.3
 
 1325      * / 8
x,
' DELPX/Y/Z/E',4f7.3,i10,
' IORIG')
 
 1331             IF(isthkk(i).EQ.11) 
THEN 
 1332               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1333      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1334      +        (vhkk(khkk,i),khkk=1,4)
 
 1337             IF(isthkk(i).EQ.12) 
THEN 
 1338               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1339      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1340      +        (vhkk(khkk,i),khkk=1,4)
 
 1343             IF(isthkk(i).EQ.1) 
THEN 
 1344               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1345      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1346      +        (vhkk(khkk,i),khkk=1,4)
 
 1348  1010 
FORMAT (i6,i4,5i6,9(1pe10.2))
 
 1350             IF(isthkk(i).EQ.16) 
THEN 
 1352               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1353      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1354      +        (vhkk(khkk,i),khkk=1,4)
 
 1366       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 1370       parameter(amuamu=0.93149432d0)
 
 1373       COMMON /hkkevt/ nhkk,nevhkk,isthkk(
nmxhkk),idhkk(
nmxhkk), jmohkk
 
 1460       COMMON /zentra/ icentr
 
 1462       COMMON /delp/ delpx,delpy,delpz,delpe
 
 1464       COMMON /tanuin/ tasuma,tasubi,tabi,tamasu,tama,taimma
 
 1466       COMMON /nucc/   it,itz,ip,ipz,ijproj,ibproj,ijtarg,ibtarg
 
 1468       COMMON /dprin/  ipri,ipev,ippa,ipco,
init,iphkk,itopd,ipaupr
 
 1473       IF(help.GT.5.d0)phelp=help-5.
 
 1488         IF(isthkk(i).EQ.11.OR.isthkk(i).EQ.13) 
THEN 
 1493           pz=
pz - gam*phkk(3,i) - bgam*phkk(4,i)
 
 1494           pe=pe - gam*phkk(4,i) - bgam*phkk(3,i)
 
 1497         IF(isthkk(i).EQ.12.OR.isthkk(i).EQ.14) 
THEN 
 1504         IF(isthkk(i).EQ.1) 
THEN 
 1511         IF(isthkk(i).EQ.13.AND.jdahkk(2,i).EQ.0) 
THEN 
 1516           pz=
pz + gam*phkk(3,i) + bgam*phkk(4,i)
 
 1517           pe=pe + gam*phkk(4,i) + bgam*phkk(3,i)
 
 1519         IF(isthkk(i).EQ.14.AND.jdahkk(2,i).EQ.0) 
THEN 
 1526         IF(isthkk(i).EQ.16) 
THEN 
 1532           eext=eext + phkk(4,i) - phkk(4,imo)
 
 1534         IF(isthkk(i).EQ.15) 
THEN 
 1540           pz=
pz + gam*phkk(3,i) + bgam*phkk(4,i)
 
 1541           pe=pe + gam*phkk(4,i) + bgam*phkk(3,i)
 
 1542           eext=eext + phkk(4,i) - phkk(4,imo)
 
 1544         IF(isthkk(i).EQ.1) 
THEN 
 1574       IF(ip.EQ.it.AND.it.GT.1)tole=0.05d0*ip
 
 1576       IF(epn.LE.5.d0)tole=3.d0*tole
 
 1578         IF (abs(
px).GT.pthelp.OR. abs(
py).GT.pthelp.OR. 
 
 1579      *  abs(
pz)/epn.GT.tole.
 
 1580      +  or. abs(pe)/epn.GT.tole) 
THEN 
 1583           IF(icheck.LE.50.AND.irej.EQ.1)
THEN  
 1584       WRITE(6,1000) 
px,
py,
pz,pe,eext,eexp,delpx,delpy,delpz,delpe,iorig
 
 1586  1000 
FORMAT(
' CHECKO: PX,PY,PZ,PE,EEXT,EEXP',2f7.3,2e12.3,2f7.3
 
 1587      * / 8
x,
' DELPX/Y/Z/E',4f7.3,i10,
' IORIG')
 
 1591       WRITE(6,1000) 
px,
py,
pz,pe,eext,eexp,delpx,delpy,delpz,delpe,iorig
 
 1595             IF(isthkk(i).EQ.11) 
THEN 
 1596               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1597      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1598      +        (vhkk(khkk,i),khkk=1,4)
 
 1601             IF(isthkk(i).EQ.12) 
THEN 
 1602               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1603      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1604      +        (vhkk(khkk,i),khkk=1,4)
 
 1607             IF(isthkk(i).EQ.1) 
THEN 
 1608               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1609      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1610      +        (vhkk(khkk,i),khkk=1,4)
 
 1612  1010 
FORMAT (i6,i4,5i6,9(1pe10.2))
 
 1614             IF(isthkk(i).EQ.16) 
THEN 
 1616               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1617      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1618      +        (vhkk(khkk,i),khkk=1,4)
 
 1625       WRITE(6,1000) 
px,
py,
pz,pe,eext,eexp,delpx,delpy,delpz,delpe,iorig
 
 1631       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 1637       COMMON /hkkevt/ nhkk,nevhkk,isthkk(
nmxhkk),idhkk(
nmxhkk), jmohkk
 
 1725       COMMON /delp/ delpx,delpy,delpz,delpe
 
 1727       COMMON /tanuin/ tasuma,tasubi,tabi,tamasu,tama,taimma
 
 1729       COMMON /dprin/  ipri,ipev,ippa,ipco,
init,iphkk,itopd,ipaupr
 
 1739         IF(isthkk(i).EQ.11.OR.isthkk(i).EQ.13) 
THEN 
 1744           pz=
pz - gam*phkk(3,i) - bgam*phkk(4,i)
 
 1745           pe=pe - gam*phkk(4,i) - bgam*phkk(3,i)
 
 1748         IF(isthkk(i).EQ.12.OR.isthkk(i).EQ.14) 
THEN 
 1755         IF(isthkk(i).EQ.1) 
THEN 
 1762         IF(isthkk(i).EQ.13.AND.jdahkk(1,i).EQ.0) 
THEN 
 1767           pz=
pz + gam*phkk(3,i) + bgam*phkk(4,i)
 
 1768           pe=pe + gam*phkk(4,i) + bgam*phkk(3,i)
 
 1770         IF(isthkk(i).EQ.14.AND.jdahkk(1,i).EQ.0) 
THEN 
 1777         IF(isthkk(i).EQ.16) 
THEN 
 1783           eext=eext + phkk(4,i) - phkk(4,imo)
 
 1785         IF(isthkk(i).EQ.15) 
THEN 
 1791           eext=eext + phkk(4,i) - phkk(4,imo)
 
 1798       WRITE(6,1000) 
px,
py,
pz,pe,eext,eexp,delpx,delpy,delpz,delpe
 
 1799  1000 
FORMAT(
' CHECKE: PX,PY,PZ,PE,EEXT,EEXP',6f7.3/ 8
x,
' DELPX/Y/Z/E',4
 
 1801       WRITE(6,
'(8X,A,6F8.3)') 
' TASUMA,TASUBI,TABI,TAMASU,TAMA,TAIMMA',
 
 1802      +tasuma,tasubi,tabi,tamasu,tama,taimma
 
 1804         IF (abs(
px).GT.0.004.OR. abs(
py).GT.0.004.OR. abs(
pz).GT.0.004.
 
 1805      +  or. abs(pe).GT.0.004) 
THEN 
 1809             IF(isthkk(i).EQ.11) 
THEN 
 1810               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1811      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1812      +        (vhkk(khkk,i),khkk=1,4)
 
 1815             IF(isthkk(i).EQ.12) 
THEN 
 1816               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1817      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1818      +        (vhkk(khkk,i),khkk=1,4)
 
 1821             IF(isthkk(i).EQ.1) 
THEN 
 1822               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1823      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1824      +        (vhkk(khkk,i),khkk=1,4)
 
 1826  1010 
FORMAT (i6,i4,5i6,9(1pe10.2))
 
 1828             IF(isthkk(i).EQ.16) 
THEN 
 1830               WRITE(6,1010) i,isthkk(i),idhkk(i),jmohkk(1,i),jmohkk
 
 1831      +        (2,i), jdahkk(1,i),jdahkk(2,i),(phkk(khkk,i),khkk=1,5),
 
 1832      +        (vhkk(khkk,i),khkk=1,4)
 
 1860       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 1867       DATA a1,a2,a3,a4,a5 /0.01575, 0.0178, 0.000710, 0.0237, 0.034/
 
 1870       IF(ia.LE.1.OR.
iz.EQ.0)
THEN 
 1875       ebind = a1*aa - a2*aa**0. 666667- a3*
iz*
iz*aa**(-0.333333) - a4
 
 1877       IF (
mod(ia,2).EQ.1) 
THEN 
 1879       ELSEIF (
mod(
iz,2).EQ.1) 
THEN 
 1891       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 1898       COMMON /hkkevt/ nhkk,nevhkk,isthkk(
nmxhkk),idhkk(
nmxhkk), jmohkk
 
 1996       COMMON /dpar/ aname(210),aam(210),ga(210),
tau(210),iich(210),
 
 1997      +iibar(210),k1(210),k2(210)
 
 2000       COMMON /factmo/ ifacto
 
 2002       COMMON /taufo/  taufor,ktauge,itauve,incmod
 
 2004       COMMON /hadthr/ ehadth,inthad
 
 2008       COMMON /nucc/   it,itz,ip,ipz,ijproj,ibproj,ijtarg,ibtarg
 
 2009       COMMON /nuccc/   jt,jtz,jp,jpz,jjproj,jbproj,jjtarg,jbtarg
 
 2011       COMMON /zentra/ icentr
 
 2013       COMMON /cmhico/ cmhis
 
 2015       COMMON /resona/ ireso
 
 2017       COMMON /xseadi/ xseacu,unon,unom,unosea, cvq,cdq,csea,ssmima,
 
 2024       COMMON /projk/ iprojk
 
 2026       COMMON /nucimp/ prmom(5,248),tamom(5,248), prmfep,prmfen,tamfep,
 
 2027      +tamfen, prefep,prefen,taefep,taefen, prepot(210),taepot(210),
 
 2028      +prebin,taebin,fermod,etacou
 
 2030        COMMON /recom/irecom
 
 2040       ppn=
sqrt((epn-aam(ijproj))*(epn+aam(ijproj)))
 
 2041       ibproj=iibar(ijproj)
 
 2044       jbproj=iibar(ijproj)
 
 2096       SUBROUTINE hadhad(EPN,PPN,NHKKH1,IHTAWW,ITTA,IREJFO)
 
 2097       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 2107       COMMON /hkkevt/ nhkk,nevhkk,isthkk(
nmxhkk),idhkk(
nmxhkk), jmohkk
 
 2195       COMMON /nucc/   it,itz,ip,ipz,ijproj,ibproj,ijtarg,ibtarg
 
 2207       COMMON /dpar/ aname(210),aam(210),ga(210),
tau(210),iich(210),
 
 2208      +iibar(210),k1(210),k2(210)
 
 2211       COMMON /dprin/  ipri,ipev,ippa,ipco,
init,iphkk,itopd,ipaupr
 
 2213       parameter(maxfin=10)
 
 2214       COMMON /dfinls/ itrh(maxfin),cxrh(maxfin),cyrh(maxfin), czrh
 
 2215      +(maxfin),elrh(maxfin),plrh(maxfin),irh
 
 2217       COMMON /nucimp/ prmom(5,248),tamom(5,248), prmfep,prmfen,tamfep,
 
 2218      +tamfen, prefep,prefen,taefep,taefen, prepot(210),taepot(210),
 
 2219      +prebin,taebin,fermod,etacou
 
 2226       IF(ipri.GE.2) 
WRITE(6,1001) ijproj,ijproj,ppn,epn,cccxp,cccyp,
 
 2227      +ccczp,ihtaww,itta,ieline
 
 2228  1001 
FORMAT(
' HADHAD 1:',
 
 2229      +
' IJPROJ,IJPROJ,PPN,EPN,CCCXP,CCCYP,CCCZP,IHTAWW,ITTA,IELINE'/ 2
 
 2230      +i3,2e12.3,3f7.3,3i4)
 
 2235       CALL 
sihnin(ijproj,itta,ppn,sight)
 
 2236       CALL 
sihnel(ijproj,itta,ppn,sighte)
 
 2237       sigtot=sight + sighte
 
 2238       IF (sigtot*
rndm(bb).LE.sighte)ieline=1
 
 2239       IF(ipri.GE.2) 
WRITE(6,1000) ijproj,ijproj,ppn,epn,cccxp,cccyp,
 
 2240      +ccczp,ihtaww,itta,ieline
 
 2241  1000 
FORMAT(
' HADHAD 2 nach si...:',
 
 2242      +
' IJPROJ,IJPROJ,PPN,EPN,CCCXP,CCCYP,CCCZP,IHTAWW,ITTA,IELINE'/ 2
 
 2243      +i3,2e12.3,3f7.3,3i4)
 
 2247       IF(ipri.GE.2) 
WRITE(6,1012) ijproj,ijproj,ppn,epn,cccxp,cccyp,
 
 2248      +ccczp,ihtaww,itta,ieline
 
 2249  1012 
FORMAT(
' HADHAD 12 loop:',
 
 2250      +
' IJPROJ,IJPROJ,PPN,EPN,CCCXP,CCCYP,CCCZP,IHTAWW,ITTA,IELINE'/ 2
 
 2251      +i3,2e12.3,3f7.3,3i4)
 
 2254           WRITE(6,
'(I3,5(1PE12.4),I5/3X,5(1PE12.4))') ii,elrh(ii),plrh
 
 2255      +    (ii),cxrh(ii),cyrh(ii),czrh(ii),itrh(ii), (phkk(jjj,nhkk),jjj
 
 2260       CALL 
fhad(ijproj,ijproj,ppn,epn,cccxp,cccyp,ccczp, ihtaww,itta,
 
 2265      + 
WRITE(6,
'(A)')
'  exit from hadhad with irejfo=1 ' 
 2271       IF (ihadha.LT.3)
THEN 
 2274           IF(itsec.EQ.1.AND.elrh(ii).LE.taefep+aam(itsec))     goto 12
 
 2275           IF(itsec.EQ.8.AND.elrh(ii).LE.taefen+aam(itsec))     goto 12
 
 2276           IF(iibar(itsec).NE.1.AND.elrh(ii)-aam(itsec)
 
 2277      +                                   .LE.taepot(itsec))  goto 12
 
 2282       IF (ipri.GE.2) 
WRITE (6,1010)irh,nhkkh1,ihtaww,itta
 
 2283  1010 
FORMAT (
' HADHAD IRH,NHKKH1,IHTAWW,ITTA = ',4i5)
 
 2287      +  
' HADHAD - PARTICLE TRANSFER FROM /FINLSP/ INTO /HKKEVT/',
 
 2288      +  
' II, ELRH, PLRH, CXRH, CYRH, CZRH / PHKK(1-5)' 
 2297            WRITE (6,
'(A,2I5)') .EQ.
' HADHAD:NHKKNMXHKK ',nhkk,
nmxhkk 
 2301           idhkk(nhkk)=
mpdgha(itsec)
 
 2303           jmohkk(2,nhkk)=ihtaww
 
 2306         phkk(1,nhkk)=plrh(ii)*cxrh(ii)
 
 2307         phkk(2,nhkk)=plrh(ii)*cyrh(ii)
 
 2308         phkk(3,nhkk)=plrh(ii)*czrh(ii)
 
 2309         phkk(4,nhkk)=elrh(ii)
 
 2310         IF(phkk(4,nhkk)-aam(itsec).LE.taepot(itsec).
 
 2311      +                                    and.iibar(itsec).EQ.1)
THEN 
 2316         phkk(5,nhkk)=aam(itrh(ii))
 
 2319           WRITE(6,
'(I3,5(1PE12.4),I5/3X,5(1PE12.4),I5)') 
 
 2321      +    (ii),cxrh(ii),cyrh(ii),czrh(ii),itrh(ii), (phkk(jjj,nhkk),jjj
 
 2324         vhkk(1,nhkk)=vhkk(1,ihtaww)
 
 2325         vhkk(2,nhkk)=vhkk(2,ihtaww)
 
 2326         vhkk(3,nhkk)=vhkk(3,ihtaww)
 
 2327         vhkk(4,nhkk)=vhkk(4,1)
 
 2330       jdahkk(1,1)=nhkkh1+1
 
 2332       jdahkk(1,ihtaww)=nhkkh1+1
 
 2333       jdahkk(2,ihtaww)=nhkk
 
 2337      + 
WRITE(6,
'(A)')
'  exit from hadhad with irejfo=0 ' 
 2341       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 2347       COMMON /hkkevt/ nhkk,nevhkk,isthkk(
nmxhkk),idhkk(
nmxhkk), jmohkk
 
 2447       COMMON /dpar/ aname(210),aam(210),ga(210),
tau(210),iich(210),
 
 2448      +iibar(210),k1(210),k2(210)
 
 2451       COMMON /nucc/   it,itz,ip,ipz,ijproj,ibproj,ijtarg,ibtarg
 
 2453       COMMON /dprin/  ipri,ipev,ippa,ipco,
init,iphkk,itopd,ipaupr
 
 2455       COMMON /chabai/chargi,barnui
 
 2456       COMMON /evappp/ievap
 
 2471         IF (isthkk(i).EQ.13)
THEN 
 2473       IF(idhkk(i).EQ.2212)chaeve=chaeve+1.d0
 
 2475         IF (isthkk(i).EQ.14)
THEN 
 2477       IF(idhkk(i).EQ.2212)chaeve=chaeve+1.d0
 
 2480       DO 521 i=nhkkh1,nhkk
 
 2481         IF (isthkk(i).EQ.1.OR.isthkk(i).EQ.15.OR.isthkk(i).EQ.16)
THEN 
 2484           IF (nrhkk.LE.0.OR.nrhkk.GT.410)
THEN 
 2485             WRITE(6,1389)nrhkk,i,idhkk(i),nhkkh1,nhkk
 
 2486  1389       
FORMAT (
' distr: NRHKK ERROR ',5i10)
 
 2491       chaeve=chaeve+ichhkk
 
 2495       ELSEIF(ievap.EQ.1)
THEN 
 2497         IF (isthkk(i).EQ.1)
THEN 
 2501       chaeve=chaeve+ichhkk
 
 2507         IF (isthkk(i).EQ.-1)
THEN 
 2508       IF(idhkk(i).EQ.2112)
THEN 
 2512       IF(idhkk(i).EQ.2212)
THEN 
 2518     IF((idhkk(i).EQ.80000).AND.(isthkk(i).NE.1000))
THEN 
 2519       chaeve=chaeve+idxres(i)
 
 2520       baeve=baeve+idres(i)
 
 2525       IF(ievl.LE.10)
WRITE(6,
'(2A,4F10.2)')
' Event charge and B-number',
 
 2526      * 
'=',chaeve,baeve,chargi,barnui
 
 2527       IF(chaeve-chargi.NE.0.d0.OR.baeve-barnui.NE.0.d0)
THEN 
 2529       IF(ievl.LE.1000)
WRITE(6,
'(2A,4F10.2)')
'Event charge and B-numb',
 
 2530      *
'(violated)  =',chaeve,baeve,chargi,barnui
 
 2541       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 2543       dimension 
pt(50,10),ypt(50,10)
 
 2549           pt(j,i)=j*dpt-dpt/2.
 
 2556       IF(ipt1.GT.50)ipt1=50
 
 2557       IF(ipt2.GT.50)ipt2=50
 
 2558       ypt(ipt1,ipt)=ypt(ipt1,ipt)+1.
 
 2559       ypt(ipt2,ipt)=ypt(ipt2,ipt)+1.
 
 2560       ypt(ipt1,10)=ypt(ipt1,10)+1.
 
 2561       ypt(ipt2,10)=ypt(ipt2,10)+1.
 
 2566           ypt(j,i)=ypt(j,i)/nevt
 
 2567           ypt(j,i)=log10(ypt(j,i)+1.
d-18)
 
 2579       SUBROUTINE hkkfil(IST,ID,M1,M2,PX,PY,PZ,E,NHKKAU,KORMO,ICALL)
 
 2581       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 2583       parameter(lout=6,llook=9)
 
 2584       parameter(tiny10=1.0
d-10,tiny4=1.0
d-3)
 
 2590       COMMON /hkkevt/ nhkk,nevhkk,isthkk(
nmxhkk),idhkk(
nmxhkk), jmohkk
 
 2677       COMMON /nncms/  gacms,bgcms,umo,pcm,eproj,pproj
 
 2678       COMMON /trafop/galab,bglab,blab
 
 2679       COMMON /projk/ iprojk
 
 2692          WRITE(lout,1000) nhkk
 
 2693  1000    
FORMAT(1
x,
'HKKFIL: NHKK exeeds NMXHKK = ',i7,
 
 2694      &             
'! program execution stopped..')
 
 2697       IF (m1.LT.0) mo1 = nhkk+m1
 
 2698       IF (m2.LT.0) mo2 = nhkk+m2
 
 2701       IF(kormo.EQ.999)
THEN 
 2702         jmohkk(1,nhkk) = mo1
 
 2703         jmohkk(2,nhkk) = mo2
 
 2705         jmohkk(1,nhkk)=nhkkau+kormo-1
 
 2708       IF(nhkk.LE.jmohkk(1,nhkk))
THEN 
 2710         WRITE(6,*)
' HKKFIL(IST,ID,M1,M2,PX,PY,PZ,E,NHKKAU,KORMO)',
 
 2711      *  nhkk,ist,id,m1,m2,
px,
py,
pz,
e,nhkkau,kormo,icall,jmohkk(1,nhkk)  
 
 2716          IF (jdahkk(1,mo1).NE.0) 
THEN 
 2717             jdahkk(2,mo1) = nhkk
 
 2719             jdahkk(1,mo1) = nhkk
 
 2721      jdahkk(1,mo1)=nhkkau
 
 2724          IF (jdahkk(1,mo2).NE.0) 
THEN 
 2725             jdahkk(2,mo2) = nhkk
 
 2727             jdahkk(1,mo2) = nhkk
 
 2729          jdahkk(1,mo2) = nhkkau
 
 2735       phkk(5,nhkk) = phkk(4,nhkk)**2-phkk(1,nhkk)**2-
 
 2736      &               phkk(2,nhkk)**2-phkk(3,nhkk)**2
 
 2737       IF ((phkk(5,nhkk).LT.0.0d0).AND.(abs(phkk(5,nhkk)).GT.tiny4))
 
 2738      &   
WRITE(lout,
'(1X,A,G10.3)')
 
 2739      &     
'HKKFIL: negative mass**2 ',phkk(5,nhkk)
 
 2740       phkk(5,nhkk) = 
sqrt(abs(phkk(5,nhkk)))
 
 2741       IF (ist.EQ.88888.OR.ist.EQ.88887.OR.ist.EQ.88889) 
THEN 
 2747             vhkk(i,nhkk) = vhkk(i,mo2)
 
 2749          vhkk(4,nhkk) = vhkk(3,mo2)/blab-vhkk(3,mo1)/bglab
 
 2753             vhkk(i,nhkk) = vhkk(i,mo1)
 
 2754             IF (iprojk.EQ.1) 
THEN 
 2755               whkk(i,nhkk) = whkk(i,mo1)
 
 2768       IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
 
 2774       common/
pyjets/
n,npad,k(4000,5),
p(4000,5),v(4000,5)
 
 2775       common/
pydat1/mstu(200),paru(200),mstj(200),parj(200)
 
 2776       common/pydat2/kchg(500,4),pmas(500,4),parf(2000),vckm(4,4)
 
 2777       common/
pydat3/mdcy(500,3),mdme(4000,2),brat(4000),kfdp(4000,5)
 
 2779       CHARACTER chap*16,chan*16,chad(5)*16
 
 2783         WRITE(mstu(11),6800)
 
 2787         IF(mstu(2).NE.0) kfmax=mstu(2)
 
 2792         IF(kc.EQ.0) goto 220
 
 2793         IF(mstu(14).EQ.0.AND.kf.GT.100.AND.kc.LE.100) goto 220
 
 2794         IF(mstu(14).GT.0.AND.kf.GT.100.AND.max(
mod(kf/1000,10),
 
 2795      &  
mod(kf/100,10)).GT.mstu(14)) goto 220
 
 2803         IF(kf.LE.100.AND.chap.EQ.
' '.AND.mdcy(kc,2).EQ.0) goto 220
 
 2808     idc2=mdcy(kc,2)+mdcy(kc,3)-1
 
 2809         WRITE(mstu(11),6900)kbam,
 
 2810      &  kf,kc,idc1,idc2,chap,chan,kchg(kc,1),kchg(kc,2),
 
 2811      &  kchg(kc,3),pm,pmas(kc,2),pmas(kc,3),pmas(kc,4),mdcy(kc,1)
 
 2813      &  kf,kc,idc1,idc2,chap,chan,kchg(kc,1),kchg(kc,2),
 
 2814      &  kchg(kc,3),pm,pmas(kc,2),pmas(kc,3),pmas(kc,4),mdcy(kc,1)
 
 2818         IF(kf.GT.100.AND.kc.LE.100) goto 220
 
 2819         DO 210 idc=mdcy(kc,2),mdcy(kc,2)+mdcy(kc,3)-1
 
 2822           CALL 
pyname(kfdp(idc,j),chad(j))
 
 2824       kbamdp(j)=
mcihad(kfdp(idc,j))
 
 2825       IF(kbamdp(j).EQ.26)kbamdp(j)=0
 
 2827         WRITE(26,7001) idc,mdme(idc,1),mdme(idc,2),brat(idc),
 
 2829   210   
WRITE(mstu(11),7000) idc,mdme(idc,1),mdme(idc,2),brat(idc),
 
 2832     IF(kabam.NE.410)
THEN 
 2833         WRITE(mstu(11),6900)kabam,
 
 2834      &  -kf,-kc,idc1,idc2,chan,chap,-kchg(kc,1),kchg(kc,2),
 
 2835      &  kchg(kc,3),pm,pmas(kc,2),pmas(kc,3),pmas(kc,4),mdcy(kc,1)
 
 2836         WRITE(26,6900)kabam,
 
 2837      &  -kf,-kc,idc1,idc2,chan,chap,-kchg(kc,1),kchg(kc,2),
 
 2838      &  kchg(kc,3),pm,pmas(kc,2),pmas(kc,3),pmas(kc,4),mdcy(kc,1)
 
 2839         DO 211 idc=mdcy(kc,2),mdcy(kc,2)+mdcy(kc,3)-1
 
 2843     IF(kcdp.LE.0.OR.kcdp.GT.500)
THEN 
 2849       IF(kchg(kcdp,3).EQ.0)kfdpm=kfdp(idc,j)
 
 2851       IF(kbamdp(j).EQ.26)kbamdp(j)=0
 
 2853           CALL 
pyname(kfdpm,chad(j))
 
 2855         WRITE(26,7001) idc,mdme(idc,1),mdme(idc,2),brat(idc),
 
 2857   211   
WRITE(mstu(11),7000) idc,mdme(idc,1),mdme(idc,2),brat(idc),
 
 2865  6800 
FORMAT(///30
x,
'Particle/parton data table'//1
x,
'BAM',
 
 2866      &1
x,
'ABAM',1
x,
'KF',1
x,
'KC',1
x,
'DCF',1
x,
'DCL',1
x,
 
 2867      &
'particle',8
x,
'antiparticle',6
x,
'chg  col  anti',8
x,
'mass',7
x,
 
 2868      &
'width',7
x,
'w-cut',5
x,
'lifetime',1
x,
'decay'/11
x,
'IDC',1
x,
'on/off',
 
 2869      &1
x,
'ME',3
x,
'Br.rat.',4
x,
'decay products')
 
 2870  6900 
FORMAT(/1
x,i4,i6,i4,2i5,a16,a16,3i3,1
x,f12.5,2(1
x,f11.5),
 
 2872  7000 
FORMAT(10
x,i4,2
x,i3,2
x,i3,2
x,f8.5,4
x,5a16)
 
 2873  7001 
FORMAT(10
x,i4,2
x,i3,2
x,i3,2
x,f8.5,4
x,5i5)
 
REAL *8 function bsof1(B)
 
subroutine checkn(EPN, PPN, IREJ, IORIG)
 
REAL *8 function bsofpt(ACC, CC, PPTCUT)
 
subroutine pyname(KF, CHAU)
 
DOUBLE PRECISION function rndm(RDUMMY)
 
typedef int(XMLCALL *XML_NotStandaloneHandler)(void *userData)
 
void fill(G4double x, G4double weight=1.)
 
subroutine hadhad(EPN, PPN, NHKKH1, IHTAWW, ITTA, IREJFO)
 
subroutine sihnin(IPROJ, ITAR, PO, SIIN)
 
DOUBLE PRECISION function ebind(IA, IZ)
 
G4int mod(G4int a, G4int b)
 
subroutine parpt(IFL, PT1, PT2, IPT, NEVT)
 
subroutine plot(X, Y, N, M, MM, XO, DX, YO, DY)
 
REAL *8 function var(A, B, C, D)
 
REAL *8 function rtsafe(FUNCD, X1, X2, XACC)
 
subroutine checkf(EPN, PPN, IREJ, IORIG)
 
subroutine fhad(IPRMOD, IPRO, PLAB, ELAB, CX, CY, CZ, ITHKK, ITTA, IELINE, IREJFH)
 
subroutine defaul(EPN, PPN)
 
subroutine samppt(MODE, PT)
 
const char * what(void) const 
 
subroutine title(NA, NB, NCA, NCB)
 
static c2_log_p< float_type > & log()
make a *new object 
 
subroutine checko(EPN, PPN, IREJ, IORIG)
 
subroutine dttest(CODEWD, WHAT, SDUM)
 
subroutine chebch(IREJ, NHKKH1)
 
G4double tau(G4double bet, G4double homega, G4double ef, G4double t)
 
static c2_sqrt_p< float_type > & sqrt()
make a *new object 
 
subroutine checke(EPN, PPN)
 
subroutine hkkfil(IST, ID, M1, M2, PX, PY, PZ, E, NHKKAU, KORMO, ICALL)
 
subroutine zbrac(FUNC, X1, X2, SUCCES)
 
subroutine bsofc1(B, F, DF)
 
subroutine sihnel(IPROJ, ITAR, POO, SIEL)
 
static c2_exp_p< float_type > & exp()
make a *new object