4 SUBROUTINE hijset(EFRM,FRAME,PROJ,TARG,IAP,IZP,IAT,IZT)
5 CHARACTER frame*8,
proj*8,
targ*8,eframe*8
6 DOUBLE PRECISION dd1,dd2,dd3,dd4
13 common/hijdat/hidat0(10,10),hidat(10)
15 common/ludat1/mstu(200),paru(200),mstj(200),parj(200)
32 ELSE IF(
proj.EQ.
'PBAR')
THEN
34 ELSE IF(
proj.EQ.
'PI+')
THEN
36 ELSE IF(
proj.EQ.
'PI-')
THEN
38 ELSE IF(
proj.EQ.
'K+')
THEN
40 ELSE IF(
proj.EQ.
'K-')
THEN
42 ELSE IF(
proj.EQ.
'N')
THEN
44 ELSE IF(
proj.EQ.
'NBAR')
THEN
47 WRITE(6,*)
proj,
'wrong or unavailable proj name'
55 ELSE IF(
targ.EQ.
'PBAR')
THEN
57 ELSE IF(
targ.EQ.
'PI+')
THEN
59 ELSE IF(
targ.EQ.
'PI-')
THEN
61 ELSE IF(
targ.EQ.
'K+')
THEN
63 ELSE IF(
targ.EQ.
'K-')
THEN
65 ELSE IF(
targ.EQ.
'N')
THEN
67 ELSE IF(
targ.EQ.
'NBAR')
THEN
70 WRITE(6,*)
targ,
'wrong or unavailable targ name'
80 IF(
ihpr2(12).GT.0)
THEN
81 CALL
lugive(
'MDCY(C111,1)=0')
82 CALL
lugive(
'MDCY(C310,1)=0')
83 CALL
lugive(
'MDCY(C3122,1)=0;MDCY(C-3122,1)=0')
84 CALL
lugive(
'MDCY(C3112,1)=0;MDCY(C-3112,1)=0')
85 CALL
lugive(
'MDCY(C3212,1)=0;MDCY(C-3212,1)=0')
86 CALL
lugive(
'MDCY(C3222,1)=0;MDCY(C-3222,1)=0')
87 CALL
lugive(
'MDCY(C3312,1)=0;MDCY(C-3312,1)=0')
88 CALL
lugive(
'MDCY(C3322,1)=0;MDCY(C-3322,1)=0')
89 CALL
lugive(
'MDCY(C3334,1)=0;MDCY(C-3334,1)=0')
91 IF (
ihpr2(12).EQ.1)
THEN
92 CALL
lugive(
'MDCY(C411,1)=0;MDCY(C-411,1)=0')
93 CALL
lugive(
'MDCY(C421,1)=0;MDCY(C-421,1)=0')
94 CALL
lugive(
'MDCY(C431,1)=0;MDCY(C-431,1)=0')
95 CALL
lugive(
'MDCY(C511,1)=0;MDCY(C-511,1)=0')
96 CALL
lugive(
'MDCY(C521,1)=0;MDCY(C-521,1)=0')
97 CALL
lugive(
'MDCY(C531,1)=0;MDCY(C-531,1)=0')
103 IF(
ihpr2(10).EQ.0)
THEN
113 IF(frame.EQ.
'LAB')
THEN
118 dd4=dsqrt(dd1**2-dd2**2)/(dd1+dd3)
120 hint1(3)=0.5*dlog((1.d0+dd4)/(1.d0-dd4))
121 dd4=dsqrt(dd1**2-dd2**2)/dd1
122 hint1(4)=0.5*dlog((1.d0+dd4)/(1.d0-dd4))
126 ELSE IF(frame.EQ.
'CMS')
THEN
133 dd4=dsqrt(1.d0-4.d0*dd2**2/dd1**2)
134 hint1(4)=0.5*dlog((1.d0+dd4)/(1.d0-dd4))
135 dd4=dsqrt(1.d0-4.d0*dd3**2/dd1**2)
136 hint1(5)=-0.5*dlog((1.d0+dd4)/(1.d0-dd4))
144 IF(
ihnt2(1).GT.1)
THEN
149 IF(
ihnt2(3).GT.1)
THEN
159 IF(hidat0(10,i).LE.
hint1(1)) go to 20
162 hidat(j)=hidat0(j,i-1)+(hidat0(j,i)-hidat0(j,i-1))
163 & *(
hint1(1)-hidat0(10,i-1))/(hidat0(10,i)-hidat0(10,i-1))
166 hipr1(30)=2.0*hidat(5)
171 IF(
ihpr2(5).NE.0)
THEN
181 IF(frame.EQ.
'LAB') eframe=
'Elab'
184 100
FORMAT(//10
x,
'****************************************
187 & 10
x,
'* HIJING has been initialized at *'/
188 & 10
x,
'*',13
x,a4,
'= ',f10.2,
' GeV/n',13
x,
'*'/
191 & a4,
'(',i3,
',',i3,
')',
' + ',a4,
'(',i3,
',',i3,
')',7
x,
'*'/
192 & 10
x,
'**************************************************')