+PATCH,$CORR. +DECK,CORR3. Updates version: 5.03/00 to 5.03/03 +REP,*TITLE*,TITLE,1. CBGEANT 5.03/03 24/05/95 07.53.11 +REP,$VERSION,V5_03,1-2. *CMZ : 5.03/03 24/05/95 07.53.11 by Curtis A. Meyer *CMZ : 5.03/02 22/05/95 10.14.30 by Curtis A. Meyer *CMZ : 5.03/01 17/03/95 10.00.09 by Curtis A. Meyer *CMZ : 5.03/00 15/03/95 15.26.48 by Curtis A. Meyer *-- Author : Curtis A. Meyer 15/03/95 * *::> VERSION 5.03/03 24/05/95 07.53.11 * *> Release Version. * *::> VERSION 5.03/02 22/05/95 10.14.30 * *> Update from Fritz-Herbert and Mark Lakata: * *> BIRESO -- handle lo mass rho-meson which cannot * decay to eta-gamma * *> GUOUT -- Install environment variable GEANTEVENTSOUT, which * if defined is the output filename. * * *> UGNEWP -- Allow reading of particle definitions from the * file PARTICLEDEFS. Documentation is in the subroutine. * A small message will be printed if PARTICLEDEFS is not * defined, informing the user that standard particle * definitions have been used. * *::> VERSION 5.03/01 17/03/95 10.00.08 * *> Inclusion of Gas Target details from * Ch. Strassburger. * *> Clean up the automatic intsallation. * *> Other small changes. +ADD,$KUMACS,INSTALL,0. *CMZ : 5.03/01 16/03/95 10.47.07 by Curtis A. Meyer +REP,$KUMACS,INSTALL,52. FXGEANT = FALSE +ADD,CBBASE,GUOUT,0. *CMZ : 5.03/02 11/05/95 16.12.24 by F.-H.Heinsius +ADD,CBBASE,GUOUT,69. CHARACTER*255 CFILE +REP,CBBASE,GUOUT,106-107. C MTL addition begin CALL GETENVF('GEANTEVENTSOUT',CFILE) if (CFILE.EQ.' ') THEN CFILE = 'geant_events.out' ENDIF C MTL addition end OPEN(UNIT=59,FILE=CFILE,STATUS='UNKNOWN', & FORM='FORMATTED') * +ADD,CBBASE,UGNEWP,0. *CMZ : 5.03/03 24/05/95 07.53.04 by Curtis A. Meyer *CMZ : 5.03/02 11/05/95 16.49.49 by F.-H.Heinsius +REP,CBBASE,UGNEWP,19. * * 4/2/95 F.-H. Heinsius * This subroutine is now used to * read additional particle definitions from external file. * * File has to be defined by the environment variable (symbol on vms) * PARTICLEDEFS (Should be steered by card). * * Example for file PARTICLDEFS (remove the '*' in column 1): * '!' in coolumn 1 is comment character. * Everything is read in fortran free format (*). * you can repeat the 3 lines for every particle you define. * Warning: you should NOT define particle which are long-lived, * because these might get forwarded to FLUKA, which do not know * anything about new defined particles. * *! external file for private particle definitions *! *! id 'name' tracking-type (3=neut,4=charged) mass (GeV) charge life-time * 76 'ETP->PPG' 3 0.957770 0. 3.275E-21 *! decay mode (6 numbers, maximum 3 2-digit id's per decay) * 080901 5*0 *! branching ratio (6 numbers in percent) *100.0 5*0.0 *! *! end of file *! * Called from UGPART * INTEGER LOUT CHARACTER*255 FILE CHARACTER*80 CLINE PARAMETER (LOUT=6) INTEGER ID, ITYP, MODE(6) REAL RMASS, CHARGE, TIME, BR(6) CHARACTER*10 CNAME * decode filename FILE = ' ' CALL GETENVF('PARTICLEDEFS',FILE) C if file is read from card: C CALL UHTOC(XFPART,4,FILE,40) IF (FILE.EQ.' ') THEN * WRITE(LOUT,445) 445 FORMAT(' No User Particle definitions found -- default values',/, & ' are assumed for this run.') * ELSE * &SELF,IF=VAX,DECS OPEN (UNIT=12, FILE=FILE, STATUS='OLD', ACCESS='SEQUENTIAL', 1 FORM='FORMATTED', ERR=999, READONLY) * &SELF,IF=-VAX,IF=-DECS OPEN (UNIT=12, FILE=FILE, STATUS='OLD', ACCESS='SEQUENTIAL', 1 FORM='FORMATTED', ERR=999) &SELF. * WRITE (LOUT,1000) FILE 1000 FORMAT(' Read private particle definitions from file ',A) 10 CONTINUE READ(12,'(A)',ERR=900,END=900) CLINE IF (CLINE(1:1).EQ.'!') GOTO 10 READ(CLINE,*,ERR=900,END=900) ID, CNAME, ITYP, RMASS, & CHARGE, TIME 20 CONTINUE READ(12,'(A)',ERR=900,END=900) CLINE IF (CLINE(1:1).EQ.'!') GOTO 20 READ(CLINE,*,ERR=900,END=900) MODE 30 CONTINUE READ(12,'(A)',ERR=900,END=900) CLINE IF (CLINE(1:1).EQ.'!') GOTO 30 READ(CLINE,*,ERR=900,END=900) BR WRITE(LOUT,'(A,A)') &' Particle Options Mass Charge ', & ' Life Time' WRITE(LOUT,1020) ID, CNAME, ITYP, RMASS, CHARGE, TIME 1020 FORMAT(1X,I6,1X,A10,I5,9X,F11.7,1X,F5.1,9X,1PE11.5,/) WRITE(LOUT,'(5X,6F12.5)') BR WRITE(LOUT,'(5X,6I12)') MODE CALL GSPART(ID, CNAME, ITYP, RMASS, CHARGE, TIME, 0, 0) CALL GSDK(ID,BR,MODE) GOTO 10 900 CONTINUE CLOSE (UNIT=12, STATUS='KEEP',ERR=999) ENDIF 999 CONTINUE +ADD,CBKINE,BIRESO,0. *CMZ : 5.03/02 22/05/95 10.09.39 by Curtis A. Meyer +REP,CBKINE,BIRESO,118. ******* Begin changes (March 2, 1994) ******* The following line is commented out * IEORUN = 1 ******* * Mark Lakata's patch: Sometimes in wide resonances (for example rho) a * very low mass in chosen at the first vertex interaction. Since the * initial mass is too small for decays such as rho(770) -> eta(550) g, * this will never get resolved on the level of BIRESO-- the whole event * needs to be redone at the BIDCAY level. * * in this case, it appears that BIDCAY picked a mass less than 550 MeV for the * rho (which is about 3 sigmas from the mean) which could not possible decay * into eta(550) gamma. ******* The following was added: IEOTRI = 1 ******* End of changes (March 1, 1994) +ADD,CBKINE,KIVERT,0. *CMZU: 5.03/01 13/03/95 16.33.42 by Christoph Strassburger +ADD,CBKINE,KIVERT,49. C * C * Modified 13 March 95 C. Strassburger C * Put the right Crystal Barrel TGHP-stop-distribution in C * +REP,CBKINE,KIVERT,62-70. * SIGXHP,Y,ZCB Crystal Barrel Stop distribution for high presssure * gas target * REAL SIGX,SIGY,SIGZ REAL SIGXCB,SIGYCB,SIGZCB REAL SIGXHPCB,SIGYHPCB,SIGZHPCB * SAVE SIGX,SIGY,SIGZ SAVE SIGXCB,SIGYCB,SIGZCB SAVE SIGXHPCB,SIGYHPCB,SIGZHPCB * DATA SIGX,SIGY,SIGZ / 2.300,2.300,5.710 / DATA SIGXCB,SIGYCB,SIGZCB / 0.280,0.280,0.400 / DATA SIGXHPCB,SIGYHPCB,SIGZHPCB / 0.400,0.400,0.700 / +ADD,CBKINE,KIVERT,126. * ELSEIF (IP.EQ.6) THEN * * p-bar stop distribution for Crystal Barrel high press. gas target. * VERTEX(1)=SIGXHPCB*XRN1 VERTEX(2)=SIGYHPCB*XRN2 VERTEX(3)=SIGZHPCB*XRN3 * +ADD,CBMATE,MATERI,0. *CMZU: 5.03/01 15/03/95 10.17.28 by Christoph Strassburger +REP,CBMATE,MATERI,462-464. * H2 gas to H2 gas at 1 atm density : * DATA PFACT /12.0/ +REP,CBMATE,MATERI,525. H2DENS = PFACT * 0.0838 +ADD,PW,GETGHP,0. *CMZU: 5.03/01 14/03/95 11.52.56 by Christoph Strassburger +ADD,PW,GETGHP,21. *. * modified : Ulrike Thoma and Christoph Strassburger * *. * implementation of new high pressure * *. * gas target according to a sketch * *. * of Wolfgang Duennweber * *. * * +REP,PW,GETGHP,28-34. CALL ERRWRN(0,' TGHP GEOMETRY/MATERIALS from a sketch of WD$') * * Target * PAR(1) = 0. PAR(2) = 0.14 PAR(3) = 5.9 +REP,PW,GETGHP,45-50. *-- outer carbon-mylar vessel * PAR(1) = 0.14 PAR(2) = 0.15 PAR(3) = 6.0 CALL GSVOLU('THPO','TUBE',54,PAR,3,IVOL) +REP,PW,GETGHP,57-62. PAR(2) = 0.15 PAR(3) = 0.05 CALL GSVOLU('THPE','TUBE',53,PAR,3,IVOL) IF(IVOL.LE.0) CALL ERRMES(IVOL,'GETGHP : GSVOLU THPE failed$') CALL GSPOS('THPE',1,'TGHP',0.,0.,ZTARG-5.95,0,'ONLY') CALL GSPOS('THPE',2,'TGHP',0.,0.,ZTARG+5.95,0,'ONLY') +REP,OBSOLETE,00_PATCH,0-1. &PATCH,OBSOLETE,IF=NEVER. *CMZ : 5.03/01 16/03/95 08.59.09 by Curtis A. Meyer +ADD,DFILES,CARDFILE,0. *CMZ : 5.03/01 16/03/95 09.20.27 by Curtis A. Meyer +REP,DFILES,CARDFILE,8-21. RNDM 14 0 PRINT 'VERT' 'KINE' DEBUG 1 10 KINE 3 1. 0.0 3. 7. 9. 8. SETV 91 0. 0. 0.0 BWID 0.1 0.1 0.1 RAWD 20 'EVHD' 'RPWC' 'RJDC' 'RBCL' 'RBCF' 'RMCB' JDCD 1 JDC 'jdc1_15.dat' LUTF 'mcfera.lut' LUT2 'mc2282.lut' END STOP STOP <===Explanation Below This Line === RUNG 1 == Run Number 1 TRIG 100 == Produce 100 Events RNDM 14 0 == Use internal random sequence 14 PRINT 'VERT' 'KINE' == Debug info is VERT and KINE banks. DEBUG 1 10 == Print out Debug info on events 1 to 10. SETV 91 0. 0. 0. == Vertex type 91 at (0,0,0) BWID 0.1 0.1 0.1 == Vertex (sig_x,sig_y,sig_z)