4 C*******************************************************************
8 C Scatter two excited strings, JP from proj and JT from target *
9 C*******************************************************************
10 SUBROUTINE HIJSFT(JP,JT,JOUT,IERROR)
11 #include "hijcrdn.inc"
12 #include "hiparnt.inc"
14 #include "hijjet1.inc"
15 #include "hijjet2.inc"
16 #include "histrng.inc"
17 #include "dpmcom1.inc"
18 #include "dpmcom2.inc"
20 C*******************************************************************
22 C of hard scatterings preceding this soft collision.
24 C double diffrac 2=single diffrac, 3=non-single diffrac.
25 C*******************************************************************
31 IF(JP.GT.IHNT2(1) .OR. JT.GT.IHNT2(3)) RETURN
41 C ********total W+,W- and center-of-mass energy
43 IF(WP.LT.0.0 .OR. WM.LT.0.0) GO TO 1000
46 IF(EPP.LT.0.0) GO TO 1000
47 IF(EPM.LT.0.0) GO TO 1000
48 IF(ETP.LT.0.0) GO TO 1000
49 IF(ETM.LT.0.0) GO TO 1000
50 IF(EPP/(EPM+0.01).LE.ETP/(ETM+0.01)) RETURN
52 C ********For strings which does not follow a jet-prod,
53 C scatter only if Ycm(JP)>Ycm(JT). When jets
54 C are produced just before this collision
55 C this requirement has already be enforced
56 C (see SUBROUTINE HIJHRD)
73 IF(NFP(JP,10).EQ.1.OR.NFT(JT,10).EQ.1) THEN
74 IF(NFP(JP,10).EQ.1) THEN
75 PHI1=ULANGL_HIJING(PP(JP,10),PP(JP,11))
76 PPJET=SQRT(PP(JP,10)**2+PP(JP,11)**2)
81 IF(NFT(JT,10).EQ.1) THEN
82 PHI2=ULANGL_HIJING(PT(JT,10),PT(JT,11))
83 PTJET=SQRT(PT(JT,10)**2+PT(JT,11)**2)
88 IF(IHPR2(4).GT.0.AND.IHNT2(1).GT.1.AND.IHNT2(3).GT.1) THEN
89 IF(NFP(JP,10).EQ.0) THEN
91 ELSE IF(NFT(JT,10).EQ.0) THEN
94 PHI=(PHI1+PHI2-HIPR1(40))/2.0
96 BX=HINT1(19)*COS(HINT1(20))
97 BY=HINT1(19)*SIN(HINT1(20))
102 R1=MAX(1.2*IHNT2(1)**0.3333333,
103 & SQRT(XP0**2+YP0**2))
104 R2=MAX(1.2*IHNT2(3)**0.3333333,
105 & SQRT((XT0-BX)**2+(YT0-BY)**2))
106 IF(ABS(COS(PHI)).LT.1.0E-5) THEN
109 DD3=ABS(BY+SQRT(R2**2-(XP0-BX)**2)-YP0)
110 DD4=ABS(BY-SQRT(R2**2-(XP0-BX)**2)-YP0)
113 BB=2.0*SIN(PHI)*(COS(PHI)*YP0-SIN(PHI)*XP0)
114 CC=(YP0**2-R1**2)*COS(PHI)**2+XP0*SIN(PHI)*(
115 & XP0*SIN(PHI)-2.0*YP0*COS(PHI))
117 IF(DD.LT.0.0) GO TO 10
118 XX1=(-BB+SQRT(DD))/2.0
119 XX2=(-BB-SQRT(DD))/2.0
120 DD1=ABS((XX1-XP0)/COS(PHI))
121 DD2=ABS((XX2-XP0)/COS(PHI))
123 BB=2.0*SIN(PHI)*(COS(PHI)*(YT0-BY)-SIN(PHI)*XT0)-2.0*BX
124 CC=(BX**2+(YT0-BY)**2-R2**2)*COS(PHI)**2+XT0*SIN(PHI)
125 & *(XT0*SIN(PHI)-2.0*COS(PHI)*(YT0-BY))
126 & -2.0*BX*SIN(PHI)*(COS(PHI)*(YT0-BY)-SIN(PHI)*XT0)
128 IF(DD.LT.0.0) GO TO 10
129 XX1=(-BB+SQRT(DD))/2.0
130 XX2=(-BB-SQRT(DD))/2.0
131 DD3=ABS((XX1-XT0)/COS(PHI))
132 DD4=ABS((XX2-XT0)/COS(PHI))
136 IF(DD1.LT.HIPR1(13)) DD1=0.0
137 IF(DD2.LT.HIPR1(13)) DD2=0.0
138 IF(NFP(JP,10).EQ.1.AND.PPJET.GT.HIPR1(11)) THEN
139 DP1=DD1*HIPR1(14)/2.0
140 DP1=MIN(DP1,PPJET-HIPR1(11))
147 CTHEP=PP(JP,12)/SQRT(PP(JP,12)**2+PPJET**2)
148 DPZ1=DP1*CTHEP/SQRT(1.0-CTHEP**2)
149 DPE1=SQRT(DPX1**2+DPY1**2+DPZ1**2)
150 EPPPRM=PP(JP,4)+PP(JP,3)-DPE1-DPZ1
151 EPMPRM=PP(JP,4)-PP(JP,3)-DPE1+DPZ1
152 IF(EPPPRM.LE.0.0.OR.EPMPRM.LE.0.0) GO TO 15
159 PJPX(JP,NPJ(JP))=DPX1
160 PJPY(JP,NPJ(JP))=DPY1
161 PJPZ(JP,NPJ(JP))=DPZ1
162 PJPE(JP,NPJ(JP))=DPE1
164 PP(JP,3)=PP(JP,3)-DPZ1
165 PP(JP,4)=PP(JP,4)-DPE1
168 15 IF(NFT(JT,10).EQ.1.AND.PTJET.GT.HIPR1(11)) THEN
169 DP2=DD2*HIPR1(14)/2.0
170 DP2=MIN(DP2,PTJET-HIPR1(11))
177 CTHET=PT(JT,12)/SQRT(PT(JT,12)**2+PTJET**2)
178 DPZ2=DP2*CTHET/SQRT(1.0-CTHET**2)
179 DPE2=SQRT(DPX2**2+DPY2**2+DPZ2**2)
180 ETPPRM=PT(JT,4)+PT(JT,3)-DPE2-DPZ2
181 ETMPRM=PT(JT,4)-PT(JT,3)-DPE2+DPZ2
182 IF(ETPPRM.LE.0.0.OR.ETMPRM.LE.0.0) GO TO 16
189 PJTX(JT,NTJ(JT))=DPX2
190 PJTY(JT,NTJ(JT))=DPY2
191 PJTZ(JT,NTJ(JT))=DPZ2
192 PJTE(JT,NTJ(JT))=DPE2
194 PT(JT,3)=PT(JT,3)-DPZ2
195 PT(JT,4)=PT(JT,4)-DPE2
198 16 DPKC11=-(PP(JP,10)-PKC11)/2.0
199 DPKC12=-(PP(JP,11)-PKC12)/2.0
200 DPKC21=-(PT(JT,10)-PKC21)/2.0
201 DPKC22=-(PT(JT,11)-PKC22)/2.0
207 C ********If jet is quenched the pt from valence quark
208 C hard scattering has to reduced by d*kapa
211 10 PTP02=PP(JP,1)**2+PP(JP,2)**2
212 PTT02=PT(JT,1)**2+PT(JT,2)**2
214 AMQ=MAX(PP(JP,14)+PP(JP,15),PT(JT,14)+PT(JT,15))
216 C ********consider mass cut-off for strings which
217 C must also include quark's mass
221 IF(NFP(JP,5).LE.2.AND.NFP(JP,3).NE.0) THEN
222 AMP0=ULMASS_HIJING(NFP(JP,3))
223 NFDP=NFP(JP,3)+2*NFP(JP,3)/ABS(NFP(JP,3))
224 DPM0=ULMASS_HIJING(NFDP)
226 NFDP=NFDP-2*NFDP/ABS(NFDP)
227 DPM0=ULMASS_HIJING(NFDP)
233 IF(NFT(JT,5).LE.2.AND.NFT(JT,3).NE.0) THEN
234 AMT0=ULMASS_HIJING(NFT(JT,3))
235 NFDT=NFT(JT,3)+2*NFT(JT,3)/ABS(NFT(JT,3))
236 DTM0=ULMASS_HIJING(NFDT)
238 NFDT=NFDT-2*NFDT/ABS(NFDT)
239 DTM0=ULMASS_HIJING(NFDT)
243 AMPN=SQRT(AMP0**2+PTP02)
244 AMTN=SQRT(AMT0**2+PTT02)
245 SNN=(AMPN+AMTN)**2+0.001
247 IF(SW.LT.SNN+0.001) GO TO 4000
248 C ********Scatter only if SW>SNN
249 C*****give some PT kick to the two exited strings******************
250 20 SWPTN=4.0*(MAX(AMP0,AMT0)**2+MAX(PTP02,PTT02))
251 SWPTD=4.0*(MAX(DPM0,DTM0)**2+MAX(PTP02,PTT02))
252 SWPTX=4.0*(AMX**2+MAX(PTP02,PTT02))
255 ELSE IF(SW.GT.SWPTN .AND. SW.LE.SWPTD
256 & .AND.NPJ(JP).EQ.0.AND.NTJ(JT).EQ.0) THEN
257 PKCMX=SQRT(SW/4.0-MAX(AMP0,AMT0)**2)
258 & -SQRT(MAX(PTP02,PTT02))
259 ELSE IF(SW.GT.SWPTD .AND. SW.LE.SWPTX
260 & .AND.NPJ(JP).EQ.0.AND.NTJ(JT).EQ.0) THEN
261 PKCMX=SQRT(SW/4.0-MAX(DPM0,DTM0)**2)
262 & -SQRT(MAX(PTP02,PTT02))
263 ELSE IF(SW.GT.SWPTX) THEN
264 PKCMX=SQRT(SW/4.0-AMX**2)-SQRT(MAX(PTP02,PTT02))
266 C ********maximun PT kick
267 C*********************************************************
269 IF(NFP(JP,10).EQ.1.OR.NFT(JT,10).EQ.1) THEN
270 IF(PKC1.GT.PKCMX) THEN
274 DPKC11=-(PP(JP,10)-PKC11)/2.0
275 DPKC12=-(PP(JP,11)-PKC12)/2.0
277 IF(PKC2.GT.PKCMX) THEN
281 DPKC21=-(PT(JT,10)-PKC21)/2.0
282 DPKC22=-(PT(JT,11)-PKC22)/2.0
286 NFP(JP,10)=-NFP(JP,10)
287 NFT(JT,10)=-NFT(JT,10)
290 C ********If the valence quarks had a hard-collision
291 C the pt kick is the pt from hard-collision.
293 IF(IHPR2(13).NE.0 .AND. RLU_HIJING(0).LE.HIDAT(4)) I_SNG=1
294 IF((NFP(JP,5).EQ.3 .OR.NFT(JT,5).EQ.3).OR.
295 & (NPJ(JP).NE.0.OR.NFP(JP,10).NE.0).OR.
296 & (NTJ(JT).NE.0.OR.NFT(JT,10).NE.0)) I_SNG=0
298 C ********decite whether to have single-diffractive
299 IF(IHPR2(5).EQ.0) THEN
300 PKC=HIPR1(2)*SQRT(-ALOG(1.0-RLU_HIJING(0)
301 & *(1.0-EXP(-PKCMX**2/HIPR1(2)**2))))
304 PKC=HIRND2(3,0.0,PKCMX**2)
307 & PKC=HIPR1(2)*SQRT(-ALOG(EXP(-HIPR1(20)**2/HIPR1(2)**2)
308 & -RLU_HIJING(0)*(EXP(-HIPR1(20)**2/HIPR1(2)**2)-
309 & EXP(-PKCMX**2/HIPR1(2)**2))))
311 IF(I_SNG.EQ.1) PKC=0.65*SQRT(
312 & -ALOG(1.0-RLU_HIJING(0)*(1.0-EXP(-PKCMX**2/0.65**2))))
313 C ********select PT kick
314 30 PHI0=2.0*HIPR1(40)*RLU_HIJING(0)
321 40 PP11=PP(JP,1)+PKC11-DPKC1
322 PP12=PP(JP,2)+PKC12-DPKC2
323 PT11=PT(JT,1)+PKC21-DPKC1
324 PT12=PT(JT,2)+PKC22-DPKC2
328 AMPN=SQRT(AMP0**2+PTP2)
329 AMTN=SQRT(AMT0**2+PTT2)
330 SNN=(AMPN+AMTN)**2+0.001
331 C***************************************
335 C****************************************
343 & WRITE(6,*) 'Error occured in Pt kick section of HIJSFT'
346 C******************************************************************
347 AMPD=SQRT(DPM0**2+PTP2)
348 AMTD=SQRT(DTM0**2+PTT2)
350 AMPX=SQRT(AMX**2+PTP2)
351 AMTX=SQRT(AMX**2+PTT2)
362 C ********CM energy if proj=N,targ=N*
365 C ********CM energy if proj=N*,targ=N
373 C ********CM energy if proj=delta, targ=delta
374 C****************There are many different cases**********
375 c IF(IHPR2(15).EQ.1) GO TO 500
377 C ********to have DPM type soft interactions
380 IF(SW.GT.SXX+0.001) THEN
388 c**** 5/30/1998 this is identical to the above statement. Added to
389 c**** avoid questional branching to block.
390 IF((NFP(JP,5).EQ.3 .AND.NFT(JT,5).EQ.3).OR.
391 & (NPJ(JP).NE.0.OR.NFP(JP,10).NE.0).OR.
392 & (NTJ(JT).NE.0.OR.NFT(JT,10).NE.0)) THEN
399 C ********do not allow excited strings to have
401 IF(RLU_HIJING(0).GT.0.5.OR.(NFT(JT,5).GT.2.OR.
402 & NTJ(JT).NE.0.OR.NFT(JT,10).NE.0)) THEN
415 C ********have single diffractive collision
417 ELSE IF(SW.GT.MAX(SPDTX,SPXTD)+0.001 .AND.
418 & SW.LE.SXX+0.001) THEN
419 IF(((NPJ(JP).EQ.0.AND.NTJ(JT).EQ.0.AND.
420 & RLU_HIJING(0).GT.0.5).OR.(NPJ(JP).EQ.0
421 & .AND.NTJ(JT).NE.0)).AND.NFP(JP,5).LE.2) THEN
427 ELSE IF(NTJ(JT).EQ.0.AND.NFT(JT,5).LE.2) THEN
435 ELSE IF(SW.GT.MIN(SPDTX,SPXTD)+0.001.AND.
436 & SW.LE.MAX(SPDTX,SPXTD)+0.001) THEN
437 IF(SPDTX.LE.SPXTD.AND.NPJ(JP).EQ.0
438 & .AND.NFP(JP,5).LE.2) THEN
444 ELSE IF(SPDTX.GT.SPXTD.AND.NTJ(JT).EQ.0
445 & .AND.NFT(JT,5).LE.2) THEN
452 c*** 5/30/1998 added to avoid questional branching to another block
453 c*** this is identical to the statement following the next ELSE IF
454 IF(((NPJ(JP).EQ.0.AND.NTJ(JT).EQ.0
455 & .AND.RLU_HIJING(0).GT.0.5).OR.(NPJ(JP).EQ.0
456 & .AND.NTJ(JT).NE.0)).AND.NFP(JP,5).LE.2) THEN
462 ELSE IF(NTJ(JT).EQ.0.AND.NFT(JT,5).LE.2) THEN
470 ELSE IF(SW.GT.MAX(SPNTX,SPXTN)+0.001 .AND.
471 & SW.LE.MIN(SPDTX,SPXTD)+0.001) THEN
472 IF(((NPJ(JP).EQ.0.AND.NTJ(JT).EQ.0
473 & .AND.RLU_HIJING(0).GT.0.5).OR.(NPJ(JP).EQ.0
474 & .AND.NTJ(JT).NE.0)).AND.NFP(JP,5).LE.2) THEN
480 ELSE IF(NTJ(JT).EQ.0.AND.NFT(JT,5).LE.2) THEN
488 ELSE IF(SW.GT.MIN(SPNTX,SPXTN)+0.001 .AND.
489 & SW.LE.MAX(SPNTX,SPXTN)+0.001) THEN
490 IF(SPNTX.LE.SPXTN.AND.NPJ(JP).EQ.0
491 & .AND.NFP(JP,5).LE.2) THEN
497 ELSEIF(SPNTX.GT.SPXTN.AND.NTJ(JT).EQ.0
498 & .AND.NFT(JT,5).LE.2) THEN
506 ELSE IF(SW.LE.MIN(SPNTX,SPXTN)+0.001 .AND.
507 & (NPJ(JP).NE.0 .OR.NTJ(JT).NE.0)) THEN
509 ELSE IF(SW.LE.MIN(SPNTX,SPXTN)+0.001 .AND.
510 & NFP(JP,5).GT.2.AND.NFT(JT,5).GT.2) THEN
512 ELSE IF(SW.GT.SDD+0.001.AND.SW.LE.
513 & MIN(SPNTX,SPXTN)+0.001) THEN
519 ELSE IF(SW.GT.MAX(SPNTD,SPDTN)+0.001
520 & .AND. SW.LE.SDD+0.001) THEN
521 IF(RLU_HIJING(0).GT.0.5) THEN
534 ELSE IF(SW.GT.MIN(SPNTD,SPDTN)+0.001
535 & .AND. SW.LE.MAX(SPNTD,SPDTN)+0.001) THEN
536 IF(SPNTD.GT.SPDTN) THEN
549 ELSE IF(SW.LE.MIN(SPNTD,SPDTN)+0.001) THEN
556 WRITE(6,*) ' Error in HIJSFT: There is no path to here'
559 C*************** elastic scattering ***************
560 C this is like elastic, both proj and targ mass
562 C***************************************************
563 100 NFP5=MAX(2,NFP(JP,5))
564 NFT5=MAX(2,NFT(JT,5))
567 IF(BB1**2.LT.4.0*D1 .OR. BB2**2.LT.4.0*D2) THEN
569 IF(MISS.GT.100.OR.PKC.EQ.0.0) GO TO 3000
573 IF(RLU_HIJING(0).LT.0.5) THEN
574 X1=(BB1-SQRT(BB1**2-4.0*D1))/2.0
575 X2=(BB2-SQRT(BB2**2-4.0*D2))/2.0
577 X1=(BB1+SQRT(BB1**2-4.0*D1))/2.0
578 X2=(BB2+SQRT(BB2**2-4.0*D2))/2.0
583 C********** Single diffractive ***********************
584 C either proj or targ's mass is fixed
585 C*****************************************************
586 220 NFP5=MAX(2,NFP(JP,5))
590 IF(BB2**2.LT.4.0*D2) THEN
592 IF(MISS.GT.100.OR.PKC.EQ.0.0) GO TO 3000
596 XMIN=(BB2-SQRT(BB2**2-4.0*D2))/2.0
597 XMAX=(BB2+SQRT(BB2**2-4.0*D2))/2.0
599 222 X2=HIRND2(6,XMIN,XMAX)
601 IF(X2*(1.0-X1).LT.(D2+1.E-4/SW)) THEN
603 IF(MISS4.LE.1000) GO TO 222
608 C ********Fix proj mass*********
610 NFT5=MAX(2,NFT(JT,5))
613 IF(BB1**2.LT.4.0*D1) THEN
615 IF(MISS.GT.100.OR.PKC.EQ.0.0) GO TO 3000
619 XMIN=(BB1-SQRT(BB1**2-4.0*D1))/2.0
620 XMAX=(BB1+SQRT(BB1**2-4.0*D1))/2.0
622 242 X1=HIRND2(6,XMIN,XMAX)
624 IF(X1*(1.0-X2).LT.(D1+1.E-4/SW)) THEN
626 IF(MISS4.LE.1000) GO TO 242
631 C ********Fix targ mass*********
633 C*************non-single diffractive**********************
634 C both proj and targ may not be fixed in mass
635 C*********************************************************
641 IF(BB1**2.LT.4.0*D1 .OR. BB2**2.LT.4.0*D2) THEN
643 IF(MISS.GT.100.OR.PKC.EQ.0.0) GO TO 3000
647 XMIN1=(BB1-SQRT(BB1**2-4.0*D1))/2.0
648 XMAX1=(BB1+SQRT(BB1**2-4.0*D1))/2.0
649 XMIN2=(BB2-SQRT(BB2**2-4.0*D2))/2.0
650 XMAX2=(BB2+SQRT(BB2**2-4.0*D2))/2.0
652 410 X1=HIRND2(4,XMIN1,XMAX1)
653 X2=HIRND2(4,XMIN2,XMAX2)
654 IF(NFP(JP,5).EQ.3.OR.NFT(JT,5).EQ.3) THEN
655 X1=HIRND2(6,XMIN1,XMAX1)
656 X2=HIRND2(6,XMIN2,XMAX2)
659 IF(ABS(NFP(JP,1)*NFP(JP,2)).GT.1000000.OR.
660 & ABS(NFP(JP,1)*NFP(JP,2)).LT.100) THEN
661 X1=HIRND2(5,XMIN1,XMAX1)
663 IF(ABS(NFT(JT,1)*NFT(JT,2)).GT.1000000.OR.
664 & ABS(NFT(JT,1)*NFT(JT,2)).LT.100) THEN
665 X2=HIRND2(5,XMIN2,XMAX2)
667 c IF(IOPMAIN.EQ.3) X1=HIRND2(6,XMIN1,XMAX1)
668 c IF(IOPMAIN.EQ.2) X2=HIRND2(6,XMIN2,XMAX2)
669 C ********For q-qbar or (qq)-(qq)bar system use symetric
670 C distribution, for q-(qq) or qbar-(qq)bar use
671 C unsymetrical distribution
673 IF(ABS(NFP(JP,1)*NFP(JP,2)).GT.1000000) X1=1.0-X1
676 IF(XXP.LT.(D1+1.E-4/SW) .OR. XXT.LT.(D2+1.E-4/SW)) THEN
678 IF(MISS4.LE.1000) GO TO 410
682 C***************************************************
683 C***************************************************
685 IF(X1*(1.0-X2).LT.(AMPN**2-1.E-4)/SW.OR.
686 & X2*(1.0-X1).LT.(AMTN**2-1.E-4)/SW) THEN
688 IF(MISS.GT.100.OR.PKC.EQ.0.0) GO TO 2000
697 PP(JP,3)=(EPP-EPM)/2.0
698 PP(JP,4)=(EPP+EPM)/2.0
699 IF(EPP*EPM-PTP2.LT.0.0) GO TO 6000
700 PP(JP,5)=SQRT(EPP*EPM-PTP2)
704 PT(JT,3)=(ETP-ETM)/2.0
705 PT(JT,4)=(ETP+ETM)/2.0
706 IF(ETP*ETM-PTT2.LT.0.0) GO TO 6000
707 PT(JT,5)=SQRT(ETP*ETM-PTT2)
710 C*****recoil PT from hard-inter is shared by two end-partons
717 IF(ABS(NFP(JP,1)*NFP(JP,2)).GT.1000000.OR.
718 & ABS(NFP(JP,1)*NFP(JP,2)).LT.100) THEN
721 IF(ABS(NFT(JT,1)*NFT(JT,2)).GT.1000000.OR.
722 & ABS(NFT(JT,1)*NFT(JT,2)).LT.100) THEN
725 IF((KICKDIP.EQ.0.AND.RLU_HIJING(0).LT.0.5)
726 & .OR.(KICKDIP.NE.0.AND.RLU_HIJING(0)
727 & .LT.0.5/(1.0+(PKC11**2+PKC12**2)/HIPR1(22)**2))) THEN
728 PP(JP,6)=(PP(JP,1)-PP(JP,6)-PP(JP,8)-DPKC1)/2.0+PP(JP,6)
729 PP(JP,7)=(PP(JP,2)-PP(JP,7)-PP(JP,9)-DPKC2)/2.0+PP(JP,7)
730 PP(JP,8)=(PP(JP,1)-PP(JP,6)-PP(JP,8)-DPKC1)/2.0
732 PP(JP,9)=(PP(JP,2)-PP(JP,7)-PP(JP,9)-DPKC2)/2.0
735 PP(JP,8)=(PP(JP,1)-PP(JP,6)-PP(JP,8)-DPKC1)/2.0+PP(JP,8)
736 PP(JP,9)=(PP(JP,2)-PP(JP,7)-PP(JP,9)-DPKC2)/2.0+PP(JP,9)
737 PP(JP,6)=(PP(JP,1)-PP(JP,6)-PP(JP,8)-DPKC1)/2.0
739 PP(JP,7)=(PP(JP,2)-PP(JP,7)-PP(JP,9)-DPKC2)/2.0
742 PP(JP,1)=PP(JP,6)+PP(JP,8)
743 PP(JP,2)=PP(JP,7)+PP(JP,9)
744 C ********pt kick for proj
747 IF((KICKDIT.EQ.0.AND.RLU_HIJING(0).LT.0.5)
748 & .OR.(KICKDIT.NE.0.AND.RLU_HIJING(0)
749 & .LT.0.5/(1.0+(PKC21**2+PKC22**2)/HIPR1(22)**2))) THEN
750 PT(JT,6)=(PT(JT,1)-PT(JT,6)-PT(JT,8)-DPKC1)/2.0+PT(JT,6)
751 PT(JT,7)=(PT(JT,2)-PT(JT,7)-PT(JT,9)-DPKC2)/2.0+PT(JT,7)
752 PT(JT,8)=(PT(JT,1)-PT(JT,6)-PT(JT,8)-DPKC1)/2.0
754 PT(JT,9)=(PT(JT,2)-PT(JT,7)-PT(JT,9)-DPKC2)/2.0
757 PT(JT,8)=(PT(JT,1)-PT(JT,6)-PT(JT,8)-DPKC1)/2.0+PT(JT,8)
758 PT(JT,9)=(PT(JT,2)-PT(JT,7)-PT(JT,9)-DPKC2)/2.0+PT(JT,9)
759 PT(JT,6)=(PT(JT,1)-PT(JT,6)-PT(JT,8)-DPKC1)/2.0
761 PT(JT,7)=(PT(JT,2)-PT(JT,7)-PT(JT,9)-DPKC2)/2.0
764 PT(JT,1)=PT(JT,6)+PT(JT,8)
765 PT(JT,2)=PT(JT,7)+PT(JT,9)
766 C ********pt kick for targ
768 IF(NPJ(JP).NE.0) NFP(JP,5)=3
769 IF(NTJ(JT).NE.0) NFT(JT,5)=3
770 C ********jets must be connected to string
771 IF(EPP/(EPM+0.0001).LT.ETP/(ETM+0.0001).AND.
772 & ABS(NFP(JP,1)*NFP(JP,2)).LT.1000000)THEN
775 PP(JP,JSB)=PT(JT,JSB)
778 NFP(JP,JSB)=NFT(JT,JSB)
781 C ********when Ycm(JP)<Ycm(JT) after the collision
782 C exchange the positions of the two
786 C**************************************************
787 C**************************************************
789 IF(IHPR2(10).EQ.0) RETURN
790 WRITE(6,*) ' Fatal HIJSFT start error,abandon this event'
791 WRITE(6,*) ' PROJ E+,E-,W+',EPP,EPM,WP
792 WRITE(6,*) ' TARG E+,E-,W-',ETP,ETM,WM
793 WRITE(6,*) ' W+*W-, (APN+ATN)^2',SW,SNN
796 IF(IHPR2(10).EQ.0) RETURN
797 WRITE(6,*) ' (2)energy partition fail,'
798 WRITE(6,*) ' HIJSFT not performed, but continue'
799 WRITE(6,*) ' MP1,MPN',X1*(1.0-X2)*SW,AMPN**2
800 WRITE(6,*) ' MT2,MTN',X2*(1.0-X1)*SW,AMTN**2
803 IF(IHPR2(10).EQ.0) RETURN
804 WRITE(6,*) ' (3)something is wrong with the pt kick, '
805 WRITE(6,*) ' HIJSFT not performed, but continue'
806 WRITE(6,*) ' D1=',D1,' D2=',D2,' SW=',SW
807 WRITE(6,*) ' HISTORY NFP5=',NFP(JP,5),' NFT5=',NFT(JT,5)
808 WRITE(6,*) ' THIS COLLISON NFP5=',NFP5, ' NFT5=',NFT5
809 WRITE(6,*) ' # OF JET IN PROJ',NPJ(JP),' IN TARG',NTJ(JT)
812 IF(IHPR2(10).EQ.0) RETURN
813 WRITE(6,*) ' (4)unable to choose process, but not harmful'
814 WRITE(6,*) ' HIJSFT not performed, but continue'
815 WRITE(6,*) ' PTP=',SQRT(PTP2),' PTT=',SQRT(PTT2),' SW=',SW
816 WRITE(6,*) ' AMCUT=',AMX,' JP=',JP,' JT=',JT
817 WRITE(6,*) ' HISTORY NFP5=',NFP(JP,5),' NFT5=',NFT(JT,5)
820 IF(IHPR2(10).EQ.0) RETURN
821 WRITE(6,*) ' energy partition failed(5),for limited try'
822 WRITE(6,*) ' HIJSFT not performed, but continue'
823 WRITE(6,*) ' NFP5=',NFP5,' NFT5=',NFT5
824 WRITE(6,*) ' D1',D1,' X1(1-X2)',X1*(1.0-X2)
825 WRITE(6,*) ' D2',D2,' X2(1-X1)',X2*(1.0-X1)
829 IF(MISS.LT.100) GO TO 30
831 IF(IHPR2(10).EQ.0) RETURN
832 WRITE(6,*) ' ERROR OCCURED, HIJSFT NOT PERFORMED'
833 WRITE(6,*) ' Abort this event'
834 WRITE(6,*) 'MTP,PTP2',EPP*EPM,PTP2,' MTT,PTT2',ETP*ETM,PTT2