| 1 | SUBROUTINE EGSINI | 
|---|
| 2 |  | 
|---|
| 3 | C--------------------------------------------------------------------- | 
|---|
| 4 | C  E(LECTRON) G(AMMA) S(HOWER) INI(TIALIZATION) | 
|---|
| 5 | C | 
|---|
| 6 | C  INITIALIZES EGS4 PACKAGE | 
|---|
| 7 | C  THIS SUBROUTINE IS CALLED FROM START | 
|---|
| 8 | C | 
|---|
| 9 | C  DESIGN  : D. HECK   IK3  FZK KARLSRUHE | 
|---|
| 10 | C--------------------------------------------------------------------- | 
|---|
| 11 |  | 
|---|
| 12 | *KEEP,ATMOS. | 
|---|
| 13 | COMMON /ATMOS/   AATM,BATM,CATM,DATM | 
|---|
| 14 | DOUBLE PRECISION AATM(5),BATM(5),CATM(5),DATM(5) | 
|---|
| 15 | *KEND. | 
|---|
| 16 | COMMON/BOUNDS/ECUT(6),PCUT(6),VACDST | 
|---|
| 17 | *KEEP,ELABCT. | 
|---|
| 18 | COMMON /ELABCT/  ELCUT | 
|---|
| 19 | DOUBLE PRECISION ELCUT(4) | 
|---|
| 20 | *KEND. | 
|---|
| 21 | COMMON/GEOM/ZALTIT,BOUND(6),NEWOBS,OBSLVL(10) | 
|---|
| 22 | COMMON /MEDIA/ NMED, RLC,RLDU,RLDUI,RHO,MSGE,MGE,MSEKE,MEKE,MLEKE, | 
|---|
| 23 | *MCMFP,MRANGE,IRAYLM,HBARO(6),HBAROI(6) | 
|---|
| 24 | CHARACTER MEDIA*24 | 
|---|
| 25 | COMMON/MEDIAC/MEDIA | 
|---|
| 26 | DOUBLE PRECISION PRRMMU | 
|---|
| 27 | COMMON/MUON/PRRMMU,RMMU,RMMUT2 | 
|---|
| 28 | COMMON/MISC/KMPI,KMPO,DUNIT,NOSCAT,MED(6),RHOR(6),IRAYLR(6) | 
|---|
| 29 | *KEEP,OBSPAR. | 
|---|
| 30 | COMMON /OBSPAR/  OBSLEV,THCKOB,XOFF,YOFF,THETAP,PHIP, | 
|---|
| 31 | *                 THETPR,PHIPR,NOBSLV | 
|---|
| 32 | DOUBLE PRECISION OBSLEV(10),THCKOB(10),XOFF(10),YOFF(10), | 
|---|
| 33 | *                 THETAP,THETPR(2),PHIP,PHIPR(2) | 
|---|
| 34 | INTEGER          NOBSLV | 
|---|
| 35 | *KEEP,PAM. | 
|---|
| 36 | COMMON /PAM/     PAMA,SIGNUM | 
|---|
| 37 | DOUBLE PRECISION PAMA(6000),SIGNUM(6000) | 
|---|
| 38 | *KEEP,PARPAR. | 
|---|
| 39 | COMMON /PARPAR/  CURPAR,SECPAR,PRMPAR,OUTPAR,C, | 
|---|
| 40 | *                 E00,E00PN,PTOT0,PTOT0N,THICKH,ITYPE,LEVL | 
|---|
| 41 | DOUBLE PRECISION CURPAR(14),SECPAR(14),PRMPAR(14),OUTPAR(14), | 
|---|
| 42 | *                 C(50),E00,E00PN,PTOT0,PTOT0N,THICKH | 
|---|
| 43 | INTEGER          ITYPE,LEVL | 
|---|
| 44 | *KEND. | 
|---|
| 45 | DOUBLE PRECISION PI0MSQ | 
|---|
| 46 | COMMON/PION/PI0MSQ,PITHR,PICMAS,PI0MAS,AMASK0,AMASKC,AMASPR,AMASNT | 
|---|
| 47 | *KEEP,REJECT. | 
|---|
| 48 | COMMON /REJECT/  AVNREJ, | 
|---|
| 49 | *                 ALTMIN,ANEXP,THICKA,THICKD,CUTLN,EONCUT, | 
|---|
| 50 | *                 FNPRIM | 
|---|
| 51 | DOUBLE PRECISION AVNREJ(10) | 
|---|
| 52 | REAL             ALTMIN(10),ANEXP(10),THICKA(10),THICKD(10), | 
|---|
| 53 | *                 CUTLN,EONCUT | 
|---|
| 54 | LOGICAL          FNPRIM | 
|---|
| 55 | *KEEP,RUNPAR. | 
|---|
| 56 | COMMON /RUNPAR/  FIXHEI,THICK0,HILOECM,HILOELB, | 
|---|
| 57 | *                 STEPFC,NRRUN,NSHOW,PATAPE,MONIIN, | 
|---|
| 58 | *                 MONIOU,MDEBUG,NUCNUC, | 
|---|
| 59 | *                 CETAPE, | 
|---|
| 60 | *                 SHOWNO,ISHW,NOPART,NRECS,NBLKS,MAXPRT,NDEBDL, | 
|---|
| 61 | *                 N1STTR,MDBASE, | 
|---|
| 62 | *                 DEBDEL,DEBUG,FDECAY,FEGS,FIRSTI,FIXINC,FIXTAR, | 
|---|
| 63 | *                 FIX1I,FMUADD,FNKG,FPRINT,FDBASE | 
|---|
| 64 | *                ,GHEISH,GHESIG | 
|---|
| 65 | COMMON /RUNPAC/  DSN,HOST,USER | 
|---|
| 66 | DOUBLE PRECISION FIXHEI,THICK0,HILOECM,HILOELB | 
|---|
| 67 | REAL             STEPFC | 
|---|
| 68 | INTEGER          NRRUN,NSHOW,PATAPE,MONIIN,MONIOU,MDEBUG,NUCNUC, | 
|---|
| 69 | *                 SHOWNO,ISHW,NOPART,NRECS,NBLKS,MAXPRT,NDEBDL, | 
|---|
| 70 | *                 N1STTR,MDBASE | 
|---|
| 71 | INTEGER          CETAPE | 
|---|
| 72 | CHARACTER*79     DSN | 
|---|
| 73 | CHARACTER*20     HOST,USER | 
|---|
| 74 |  | 
|---|
| 75 | LOGICAL          DEBDEL,DEBUG,FDECAY,FEGS,FIRSTI,FIXINC,FIXTAR, | 
|---|
| 76 | *                 FIX1I,FMUADD,FNKG,FPRINT,FDBASE | 
|---|
| 77 | *                ,GHEISH,GHESIG | 
|---|
| 78 | *KEND. | 
|---|
| 79 | COMMON/THRESH/RMT2,RMSQ,ESCD2,AP,API,AE,UP,UE,TE,THMOLL | 
|---|
| 80 | DOUBLE PRECISION PZERO,PRM,PRMT2,RMI,VC | 
|---|
| 81 | COMMON/USEFUL/PZERO,PRM,PRMT2,RMI,VC,RM,MEDIUM,MEDOLD,IBLOBE,ICALL | 
|---|
| 82 | COMMON/ACLOCK/NCLOCK,JCLOCK | 
|---|
| 83 | CHARACTER MEDARR*24 | 
|---|
| 84 | DATA MEDARR/'AIR-NTP                 '/ | 
|---|
| 85 | C--------------------------------------------------------------------- | 
|---|
| 86 |  | 
|---|
| 87 | IF((DEBUG))WRITE(MDEBUG,* )'EGSINI:' | 
|---|
| 88 | C***  INITIALISATION BEFORE THE FIRST CALL OF EGS4 | 
|---|
| 89 | ICALL = 1 | 
|---|
| 90 | IF (( DEBUG )) THEN | 
|---|
| 91 | KMPO = MDEBUG | 
|---|
| 92 | ELSE | 
|---|
| 93 | KMPO = MONIOU | 
|---|
| 94 | END IF | 
|---|
| 95 | WRITE(KMPO,10) | 
|---|
| 96 | 10     FORMAT (' START AIR SHOWER SUBROUTINE EGS4 VERSION 64S (OCT 94)'/ | 
|---|
| 97 | *  ' MU+MU- PAIRS ARE FORMED IN ANALOGY WITH E+E- PAIRS. THIS IS ', | 
|---|
| 98 | *  'CERTAINLY NOT'/' CORRECT BECAUSE OF DIFFERENT FORM FACTORS. T', | 
|---|
| 99 | *  'HEREFORE TREAT MUON PAIRS WITH CAUTION.') | 
|---|
| 100 | C***  SET PARTICLE MASSES AND PHYSICAL CONSTANTS | 
|---|
| 101 | RM = PAMA(2)*1.D3 | 
|---|
| 102 | RMT2 = 2.*RM | 
|---|
| 103 | RMSQ = RM**2 | 
|---|
| 104 | PRRMMU = PAMA(5)*1.D3 | 
|---|
| 105 | RMMU = PRRMMU | 
|---|
| 106 | RMMUT2 = 2.*RMMU | 
|---|
| 107 | PICMAS = PAMA(8)*1.D3 | 
|---|
| 108 | PI0MAS = PAMA(7)*1.D3 | 
|---|
| 109 | PI0MSQ = PI0MAS**2 | 
|---|
| 110 | AMASKC = PAMA(11)*1.D3 | 
|---|
| 111 | AMASK0 = PAMA(10)*1.D3 | 
|---|
| 112 | AMASPR = PAMA(14)*1.D3 | 
|---|
| 113 | AMASNT = PAMA(13)*1.D3 | 
|---|
| 114 | C***  INVERSE OF VELOCITY OF LIGHT | 
|---|
| 115 | VC = 1.D0/C(25) | 
|---|
| 116 | C***  PION-PRODUCTION THRESHOLD | 
|---|
| 117 | PITHR = 152.0 | 
|---|
| 118 | C***  NMED AND DUNIT DEFAULT TO 1,I.E. ONE MEDIUM AND WE WORK IN CM | 
|---|
| 119 | MEDIUM=1 | 
|---|
| 120 | DO 21 I=1,24 | 
|---|
| 121 | MEDIA(I:I)=MEDARR(I:I) | 
|---|
| 122 | 21    CONTINUE | 
|---|
| 123 | 22    CONTINUE | 
|---|
| 124 | C***  BOUNDARY 1= TOP OF ATMOSPHERE (SEE SUBROUTINE HOWFAR) | 
|---|
| 125 | BOUND(1)=11300000. | 
|---|
| 126 | BOUND(2)= 4000000. | 
|---|
| 127 | BOUND(3)= 1000000. | 
|---|
| 128 | BOUND(4)= 400000. | 
|---|
| 129 | BOUND(5)= 0. | 
|---|
| 130 | BOUND(6)= -0. | 
|---|
| 131 | MED(1)=0 | 
|---|
| 132 | MED(6)=0 | 
|---|
| 133 | C***  VACUUM IN REGIONS 1 AND 6, AIR IN REGION 2 TO 5 | 
|---|
| 134 | DO 31 IRL=2,5 | 
|---|
| 135 | MED(IRL)= 1 | 
|---|
| 136 | C ***  VALUE OF BARO-HEIGHT FROM HILLAS, PRIV. COMMUN. (AUG 1988) | 
|---|
| 137 | HBARO(IRL)=CATM(6-IRL) | 
|---|
| 138 | HBAROI(IRL)=1./HBARO(IRL) | 
|---|
| 139 | RHOR(IRL) =BATM(6-IRL)*HBAROI(IRL) | 
|---|
| 140 | C ***  NEEDED FOR REGION 2 TO 5 SINCE NO TRANSPORT ELSEWHERE | 
|---|
| 141 | C ***  ECUT IS TOTAL ENERGY | 
|---|
| 142 | C ***  TERMINATE ELECTRON HISTORIES AT ECUT (GEV TO MEV CONVERTED) | 
|---|
| 143 | ECUT(IRL)=1000.D0*ELCUT(3)+RM | 
|---|
| 144 | C ***  TERMINATE PHOTON HISTORIES AT PCUT (GEV TO MEV CONVERTED) | 
|---|
| 145 | PCUT(IRL)=1000.D0*ELCUT(4) | 
|---|
| 146 | 31    CONTINUE | 
|---|
| 147 | 32    CONTINUE | 
|---|
| 148 | OPEN(UNIT=KMPI,FILE='EGSDAT2',STATUS='OLD') | 
|---|
| 149 | C***  PICK UP CROSS SECTION DATA FOR AIR-NTP FROM UNIT KMPI=12 | 
|---|
| 150 | CALL HATCH | 
|---|
| 151 | CLOSE(UNIT=KMPI) | 
|---|
| 152 | C***  INVERTED PHOTON THRESHOLD | 
|---|
| 153 | API=1./AP | 
|---|
| 154 | WRITE(KMPO,40) (AE-RM)*.001,AP*.001,ECUT(2)*.001,PCUT(2)*.001 | 
|---|
| 155 | 40    FORMAT (' ELECTRONS CAN BE CREATED AND ANY ELECTRON FOLLOWED DO', | 
|---|
| 156 | *  'WN TO'/T40,F8.4,' GEV KINETIC ENERGY'/' GAMMAS CAN BE CREATED', | 
|---|
| 157 | *  ' AND ANY GAMMA FOLLOWED DOWN TO'/T40,F8.4,' GEV ENERGY'/' ELE', | 
|---|
| 158 | *  'CTRON HISTORIES ARE TERMINATED AT',F10.4,' GEV'/' GAMMA HISTO', | 
|---|
| 159 | *  'RIES ARE TERMINATED AT   ',F10.4,' GEV'/) | 
|---|
| 160 | cc    IF((DEBUG.OR.(JCLOCK.GT.1)))WRITE(KMPO,50) | 
|---|
| 161 | cc50  FORMAT (7X,' PART|TOT.ENERGY|ANGLE Z|ANGLE X|ALTITUDE|', | 
|---|
| 162 | cc   * '  TIME  |  POS. X  |  POS. Y  |GENER|',/,8X,'ICLE|', | 
|---|
| 163 | cc   * '  (GEV)   |COSTHET| (RAD) |  (CM)  | (MSEC) |   (CM)   |', | 
|---|
| 164 | cc   * '   (CM)   |ATION|') | 
|---|
| 165 | C***  CALCULATE THE LAYER THICKNESS BELOW EACH DETECTOR | 
|---|
| 166 | DO 61 IDET=1,NOBSLV | 
|---|
| 167 | C ***  NECESSARY BECAUSE OF DOUBLE PRECIS. | 
|---|
| 168 | OBSLVL(IDET)=OBSLEV(IDET) | 
|---|
| 169 | DO 71 JREG=2,5 | 
|---|
| 170 | IF (OBSLVL(IDET).GE.BOUND(JREG)) THEN | 
|---|
| 171 | KREG=JREG | 
|---|
| 172 | GO TO 80 | 
|---|
| 173 | END IF | 
|---|
| 174 | 71     CONTINUE | 
|---|
| 175 | 72     CONTINUE | 
|---|
| 176 | WRITE(KMPO,90) IDET,OBSLVL(IDET)*0.01 | 
|---|
| 177 | 90     FORMAT (' EGS4  :', ' DETECTOR ',I2,' AT ',E10.3,' M IS OUT OF A | 
|---|
| 178 | *TMOSPHERE') | 
|---|
| 179 | STOP | 
|---|
| 180 | 80     THICKD(IDET)=EXP(-OBSLVL(IDET)*HBAROI(KREG)) | 
|---|
| 181 | THICKA(IDET)=RHOR(KREG)*HBARO(KREG)*(1.-THICKD(IDET)) | 
|---|
| 182 | C ***  MIN ALTITUDE FOR REJECT IS OBSERVATION LEVEL+3*36.6 G/CM**2 | 
|---|
| 183 | ALTMIN(IDET)=-HBARO(KREG)*LOG(MAX(1.E-37,(1.-(THICKA(IDET)+109.8 | 
|---|
| 184 | *  )* HBAROI(KREG)/RHOR(KREG)))) | 
|---|
| 185 | ALTMIN(IDET)=MIN(ALTMIN(IDET),BOUND(1)) | 
|---|
| 186 | 61    CONTINUE | 
|---|
| 187 | 62    CONTINUE | 
|---|
| 188 | RETURN | 
|---|
| 189 | END | 
|---|