-------------------------------------------------------------------------- TO ALL USERS OF KTCLUS JET CLUSTERING PACKAGE: In the message following this should be an updated version of KTCLUS. The new features relative to the previous version are all in the hadron-hadron version of the algorithm: - It is now possible to vary the radius parameter, as discussed in S.D.Ellis and D.E.Soper, Phys.Rev.D48(1993)3160. This is accessed via a new routine KTCLUR. KTCLUS itself has been left unchanged to avoid conflict with previous versions. Calling KTCLUR with R=1 is identical to calling KTCLUS. R=1 is the theoretically preferred value. - There are several new routines (KTISUB, KTIJOI and KTIREC) for studying sub-jets within inclusive jets, as discussed in M.H.Seymour, Nuclear Physics B421 (1994) 545. There is also a minor bug fix in the boosting routines for ep - vectors close to, but not on, the z axis were not treated correctly. If you have given a copy of KTCLUS to anyone, please also give them this update. Or alternatively, please give me their address so that I can put them on the mailing list. Any problems/comments/questions/interesting results, let me know... Best Regards, Mike Seymour. -------------------------------------------------------------------------- Dear Krzysztof, I have added your address to the list of KTCLUS users, so I hope you have just got a message about it. I hope it is not too difficult to use. One thing that many people get confused by is the fact that there is redundency built in to the cutoffs you give the program: although there are two cutoffs ECUT and YCUT, the only combination that is important is ECUT**2*YCUT, so one can choose one's own convention about what you define as ECUT and YCUT separately. The routine KTCLUS (or alternatively KTCLUR) is the slowest. Everything is set up so that you only need to call that once, and then various other analysis routines can be called as many times as you want - they are much faster. Unfortunately this is not possible when varying the radius parameter, and KTCLUR must be called once for each value you are interested in. The same is also true for the recombination scheme used at the clustering stage, although the reconstruction of jet momenta can use any scheme without reclustering. There are a lot of different ways to use it, so below are a few examples of things you might like to try for your analysis. The first step uses the HEPEVT common block standard, the rest you should be able to transplant to any convention. Best Regards, Mike. INTEGER NMAX,NN,IHEP,I,NJET,NSUB,JET DOUBLE PRECISION PP,PJET REAL ECUT,Y,YCUT,RAD PARAMETER (NMAX=1000) DIMENSION JET(NMAX),Y(NMAX),PP(4,NMAX),PJET(4,NMAX) C---FIND FINAL STATE HADRONS AND PHOTONS NN=0 DO IHEP=1,NHEP IF (ISTHEP(IHEP).EQ.1 .AND. & (ABS(IDHEP(IHEP)).GT.100.OR.IDHEP(IHEP).EQ.22)) THEN NN=NN+1 IF (NN.GT.NMAX) STOP 'Too many particles!' DO I=1,4 PP(I,NN)=PHEP(I,IHEP) ENDDO ENDIF ENDDO C---CLUSTER THE EVENT (DEFINING ECUT AS 1, SO Y IS MEASURED IN GEV**2) C USING THE PT-SCHEME ECUT=1 CALL KTCLUS(4212,PP,NN,ECUT,Y,*999) C---RECONSTRUCT THE MOMENTA OF THE 4 HARDEST JETS C USING THE E-SCHEME (IE SIMPLE VECTOR ADDITION) C---NOTE THAT THE VALUE OF NJET SHOULD BE CHECKED AFTERWARDS, AS ONE C OCCASIONALLY ENCOUNTERS NON-MONOTIC SEQUENCES OF Y(). C ALTHOUGH THESE ARE EXTREMELY RARE, WE HAVEN'T DETERMINED EXACTLY C WHAT BEST TO DO ABOUT THEM YET! C---THE VALUES OF JET AND NSUB, TOGETHER WITH THE SECOND Y-SCALE C CAN BE IGNORED FOR SIMPLE ANALYSES YCUT=Y(4) CALL KTRECO(1,PP,NN,ECUT,YCUT,YCUT,PJET,JET,NJET,NSUB,*999) C---RECONSTRUCT THE MOMENTA OF ALL JETS REMAINING AFTER A K-PERP CUT C OF 20 GEV YCUT=20**2 CALL KTRECO(1,PP,NN,ECUT,YCUT,YCUT,PJET,JET,NJET,NSUB,*999) C---OR EQUIVALENTLY ECUT=20 YCUT=1 CALL KTRECO(1,PP,NN,ECUT,YCUT,YCUT,PJET,JET,NJET,NSUB,*999) C---RECONSTRUCT ALL INCLUSIVE JETS USING THE ELLIS AND SOPER METHOD C THESE ARE RETURNED IN ASCENDING PT-ORDER, SO PJET(*,NJET-I+1) IS C THE Ith HARDEST JET CALL KTINCL(1,PP,NN,PJET,JET,NJET,*999) C---NOW DO THAT AGAIN WITH A SMALLER RADIUS PARAMETER RAD=0.5 CALL KTCLUR(6,PP,NN,RAD,ECUT,Y,*999) CALL KTINCL(1,PP,NN,PJET,JET,NJET,*999) RETURN 999 STOP 'Error in one of the KTCLUS routines' END --------------------------------------------------------------------------