2 C*********************************************************************
4 SUBROUTINE LUJOIN(NJOIN,IJOIN)
6 C...Purpose: to connect a sequence of partons with colour flow indices,
7 C...as required for subsequent shower evolution (or other operations).
8 COMMON/LUJETS/N,K(4000,5),P(4000,5),V(4000,5)
9 COMMON/LUDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
10 COMMON/LUDAT2/KCHG(500,3),PMAS(500,4),PARF(2000),VCKM(4,4)
11 SAVE /LUJETS/,/LUDAT1/,/LUDAT2/
14 C...Check that partons are of right types to be connected.
15 IF(NJOIN.LT.2) GOTO 120
19 IF(I.LE.0.OR.I.GT.N) GOTO 120
20 IF(K(I,1).LT.1.OR.K(I,1).GT.3) GOTO 120
23 KQ=KCHG(KC,2)*ISIGN(1,K(I,2))
25 IF(IJN.NE.1.AND.IJN.NE.NJOIN.AND.KQ.NE.2) GOTO 120
26 IF(KQ.NE.2) KQSUM=KQSUM+KQ
29 IF(KQSUM.NE.0) GOTO 120
31 C...Connect the partons sequentially (closing for gluon loop).
33 IF(KQS.EQ.2) KCS=INT(4.5+RLU(0))
37 IF(IJN.NE.1) IP=IJOIN(IJN-1)
38 IF(IJN.EQ.1) IP=IJOIN(NJOIN)
39 IF(IJN.NE.NJOIN) IN=IJOIN(IJN+1)
40 IF(IJN.EQ.NJOIN) IN=IJOIN(1)
43 IF(IJN.EQ.1.AND.KQS.NE.2) K(I,9-KCS)=0
44 IF(IJN.EQ.NJOIN.AND.KQS.NE.2) K(I,KCS)=0
47 C...Error exit: no action taken.
50 &'(LUJOIN:) given entries can not be joined by one string')