5 SUBROUTINE HIJSET(EFRM,FRAME,PROJ,TARG,IAP,IZP,IAT,IZT)
6 CHARACTER FRAME*4,PROJ*4,TARG*4,EFRAME*4
7 DOUBLE PRECISION DD1,DD2,DD3,DD4
10 #include "hijcrdn.inc"
11 #include "hiparnt.inc"
13 #include "ludat1_hijing.inc"
14 EXTERNAL FNKICK,FNKICK2,FNSTRU,FNSTRUM,FNSTRUS
24 HINT1(8)=MAX(ULMASS_HIJING(2112),ULMASS_HIJING(2212))
30 ELSE IF(PROJ.EQ.'PBAR') THEN
32 ELSE IF(PROJ.EQ.'PI+') THEN
34 ELSE IF(PROJ.EQ.'PI-') THEN
36 ELSE IF(PROJ.EQ.'K+') THEN
38 ELSE IF(PROJ.EQ.'K-') THEN
40 ELSE IF(PROJ.EQ.'N') THEN
42 ELSE IF(PROJ.EQ.'NBAR') THEN
45 WRITE(6,*) PROJ, 'wrong or unavailable proj name'
48 HINT1(8)=ULMASS_HIJING(IHNT2(5))
53 ELSE IF(TARG.EQ.'PBAR') THEN
55 ELSE IF(TARG.EQ.'PI+') THEN
57 ELSE IF(TARG.EQ.'PI-') THEN
59 ELSE IF(TARG.EQ.'K+') THEN
61 ELSE IF(TARG.EQ.'K-') THEN
63 ELSE IF(TARG.EQ.'N') THEN
65 ELSE IF(TARG.EQ.'NBAR') THEN
68 WRITE(6,*) TARG,'wrong or unavailable targ name'
71 HINT1(9)=ULMASS_HIJING(IHNT2(6))
74 C...Switch off decay of pi0, K0S, Lambda, Sigma+-, Xi0-, Omega-.
75 IF(IHPR2(12).GT.0) THEN
76 CALL LUGIVE_HIJING('MDCY(C111,1)=0')
77 CALL LUGIVE_HIJING('MDCY(C310,1)=0')
78 CALL LUGIVE_HIJING('MDCY(C411,1)=0;MDCY(C-411,1)=0')
79 CALL LUGIVE_HIJING('MDCY(C421,1)=0;MDCY(C-421,1)=0')
80 CALL LUGIVE_HIJING('MDCY(C431,1)=0;MDCY(C-431,1)=0')
81 CALL LUGIVE_HIJING('MDCY(C511,1)=0;MDCY(C-511,1)=0')
82 CALL LUGIVE_HIJING('MDCY(C521,1)=0;MDCY(C-521,1)=0')
83 CALL LUGIVE_HIJING('MDCY(C531,1)=0;MDCY(C-531,1)=0')
84 CALL LUGIVE_HIJING('MDCY(C3122,1)=0;MDCY(C-3122,1)=0')
85 CALL LUGIVE_HIJING('MDCY(C3112,1)=0;MDCY(C-3112,1)=0')
86 CALL LUGIVE_HIJING('MDCY(C3212,1)=0;MDCY(C-3212,1)=0')
87 CALL LUGIVE_HIJING('MDCY(C3222,1)=0;MDCY(C-3222,1)=0')
88 CALL LUGIVE_HIJING('MDCY(C3312,1)=0;MDCY(C-3312,1)=0')
89 CALL LUGIVE_HIJING('MDCY(C3322,1)=0;MDCY(C-3322,1)=0')
90 CALL LUGIVE_HIJING('MDCY(C3334,1)=0;MDCY(C-3334,1)=0')
94 IF(IHPR2(10).EQ.0) THEN
103 C ******** set up for jetset
104 IF(FRAME.EQ.'LAB') THEN
108 HINT1(1)=SQRT(HINT1(8)**2+2.0*HINT1(9)*EFRM+HINT1(9)**2)
109 DD4=DSQRT(DD1**2-DD2**2)/(DD1+DD3)
111 HINT1(3)=0.5*DLOG((1.D0+DD4)/(1.D0-DD4))
112 DD4=DSQRT(DD1**2-DD2**2)/DD1
113 HINT1(4)=0.5*DLOG((1.D0+DD4)/(1.D0-DD4))
117 ELSE IF(FRAME.EQ.'CMS') THEN
124 DD4=DSQRT(1.D0-4.D0*DD2**2/DD1**2)
125 HINT1(4)=0.5*DLOG((1.D0+DD4)/(1.D0-DD4))
126 DD4=DSQRT(1.D0-4.D0*DD3**2/DD1**2)
127 HINT1(5)=-0.5*DLOG((1.D0+DD4)/(1.D0-DD4))
128 HINT1(6)=HINT1(1)/2.0
129 HINT1(7)=HINT1(1)/2.0
131 C ********define Lorentz transform to lab frame
133 C ********calculate the cross sections involved with
134 C nucleon collisions.
135 IF(IHNT2(1).GT.1) THEN
136 CALL HIJWDS(IHNT2(1),1,RMAX)
138 C ********set up Wood-Sax distr for proj.
140 IF(IHNT2(3).GT.1) THEN
141 CALL HIJWDS(IHNT2(3),2,RMAX)
143 C ********set up Wood-Sax distr for targ.
150 IF(HIDAT0(10,I).LE.HINT1(1)) GO TO 20
153 HIDAT(J)=HIDAT0(J,I-1)+(HIDAT0(J,I)-HIDAT0(J,I-1))
154 & *(HINT1(1)-HIDAT0(10,I-1))/(HIDAT0(10,I)-HIDAT0(10,I-1))
157 HIPR1(30)=2.0*HIDAT(5)
162 IF(IHPR2(5).NE.0) THEN
163 CALL HIFUN(3,0.0,36.0,FNKICK)
164 C ********booking for generating pt**2 for pt kick
166 CALL HIFUN(7,0.0,6.0,FNKICK2)
167 CALL HIFUN(4,0.0,1.0,FNSTRU)
168 CALL HIFUN(5,0.0,1.0,FNSTRUM)
169 CALL HIFUN(6,0.0,1.0,FNSTRUS)
170 C ********booking for x distribution of valence quarks
172 IF(FRAME.EQ.'LAB') EFRAME='Elab'
173 WRITE(6,100) EFRAME,EFRM,PROJ,IHNT2(1),IHNT2(2),
174 & TARG,IHNT2(3),IHNT2(4)
175 100 FORMAT(//10X,'**************************************************'/
177 & 10X,'* HIJING has been initialized at *'/
178 & 10X,'*',13X,A4,'= ',F10.2,' GeV/n',13X,'*'/
181 & A4,'(',I3,',',I3,')',' + ',A4,'(',I3,',',I3,')',7X,'*'/
182 & 10X,'**************************************************')