Import Geant4 8.1.0 source tree
This commit is contained in:
@@ -15,7 +15,7 @@
|
||||
DATA VERTEX/3*0./
|
||||
DATA PLAB /3*0./
|
||||
*
|
||||
VERTEX(3) = - Z1 + 0.0001
|
||||
VERTEX(3) = - Z1 + 0.0001
|
||||
CALL GSVERT(VERTEX,0,0,0,0,NVERT)
|
||||
*
|
||||
JPA = LQ(JPART-IKINE)
|
||||
|
||||
@@ -49,19 +49,11 @@
|
||||
SER2C(I) = SER2C(I) + DRC**2
|
||||
|
||||
BIN = (FLOAT(I)-0.5)*DRX0
|
||||
CALL HFILL(10,BIN,100*DEDR(I)/(DRX0*PKINE(3)),1.)
|
||||
CALL HFILL(7,BIN,100*DEDR(I)/(DRX0*PKINE(3)),1.)
|
||||
BIN = FLOAT(I)*DRX0
|
||||
CALL HFILL(11,BIN,100*DRC /PKINE(3),1.)
|
||||
CALL HFILL(8,BIN,100*DRC /PKINE(3),1.)
|
||||
3 CONTINUE
|
||||
|
||||
* particle flux
|
||||
*
|
||||
DO 14 IPAT = 1,3
|
||||
DO 14 NPL = 1,NLTOT
|
||||
BIN = FLOAT(NPL)*DLX0
|
||||
CALL HFILL(6+IPAT,BIN,FNPAT(NPL,IPAT),1.)
|
||||
14 CONTINUE
|
||||
|
||||
*
|
||||
* energy deposited and track length
|
||||
*
|
||||
ESEEN = 100.*DLC/PKINE(3)
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
#include "pvolum.inc"
|
||||
#include "celoss.inc"
|
||||
*
|
||||
SAVE NLOLD
|
||||
*
|
||||
* *** Debug event and strore track for drawing
|
||||
IF (IDEBUG.NE.0) CALL GPCXYZ
|
||||
@@ -25,8 +24,9 @@
|
||||
*
|
||||
* *** Energy deposited
|
||||
IF (DESTEP.GT.0.)THEN
|
||||
NR = NUMBER(NLEVEL-1)
|
||||
NL = NUMBER(NLEVEL)
|
||||
radius = sqrt(vect(1)**2 + vect(2)**2)
|
||||
NR = 1 + radius/(DRX0*X0)
|
||||
NL = 1 + (Z1 + vect(3))/(DLX0*X0)
|
||||
DEDR(NR) = DEDR(NR) + DESTEP
|
||||
DEDL(NL) = DEDL(NL) + DESTEP
|
||||
ENDIF
|
||||
@@ -38,16 +38,7 @@
|
||||
ELSE
|
||||
STRNE = STRNE + STEP
|
||||
EDEPNE = EDEPNE + DESTEP
|
||||
ENDIF
|
||||
*
|
||||
* *** Particle's flux
|
||||
NL = NUMBER(NLEVEL)
|
||||
IF(SLENG.LE.0.) NLOLD = NL
|
||||
IF(NL.NE.NLOLD) THEN
|
||||
NPL = (NL + NLOLD)/2
|
||||
IF (IPART.LE.3) FNPAT(NPL,IPART) = FNPAT(NPL,IPART) + 1.
|
||||
NLOLD = NL
|
||||
ENDIF
|
||||
ENDIF
|
||||
*
|
||||
* *** energy of particles contributing to edep
|
||||
IF ((DESTEP).GT.0.)THEN
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
*
|
||||
#include "celoss.inc"
|
||||
*
|
||||
CALL VZERO(DEDL,5*NBIN)
|
||||
CALL VZERO(DEDL,2*NBIN)
|
||||
STRCH = 0.
|
||||
STRNE = 0.
|
||||
*
|
||||
|
||||
@@ -38,19 +38,20 @@
|
||||
*
|
||||
CALL GSMIXT( 1,'Air' , AAir , ZAir , 1.29E-3, 2,WAir)
|
||||
CALL GSMIXT( 2,'Water' , AH2O , ZH2O , 1.0 ,-2,WH2O)
|
||||
CALL GSMATE( 3,'Ar Liquid', 40.00, 18. , 1.39 ,14.0 ,84.0,0,0)
|
||||
CALL GSMATE( 4,'Aluminium', 26.98, 13. , 2.7 , 8.9 ,37.2,0,0)
|
||||
CALL GSMATE( 3,'Ar Liquid', 40.00, 18. , 1.39 ,14.0 ,84.0,0,0)
|
||||
CALL GSMATE( 4,'Aluminium', 26.98, 13. , 2.7 , 8.9 ,37.2,0,0)
|
||||
CALL GSMATE( 5,'Iron' , 55.85, 26. , 7.87 , 1.76,17.1,0,0)
|
||||
CALL GSMIXT( 6,'BGO' , ABGO , ZBGO , 7.1 ,-3,WBGO)
|
||||
CALL GSMIXT( 7,'PbWO' , APbWO, ZPbWO, 8.28 ,-3,WPbWO)
|
||||
CALL GSMIXT( 7,'PbWO4' , APbWO, ZPbWO, 8.28 ,-3,WPbWO)
|
||||
CALL GSMATE( 8,'Lead ' ,207.19, 82. ,11.35 ,0.56,18.5,0,0)
|
||||
CALL GSMATE( 9,'Tungsten' ,183.85, 74. ,19.30 ,0.35, 9.6,0,0)
|
||||
CALL GSMATE( 9,'Tungsten' ,183.85, 74. ,19.30 ,0.35, 9.6,0,0)
|
||||
*
|
||||
* *** Defines USER tracking media parameters
|
||||
FIELDM = 0.0
|
||||
IFIELD = 0
|
||||
TMAXFD = 10.0
|
||||
STEMAX = 1000.
|
||||
STEMAX = 1000.
|
||||
IF (stepmax.gt.0.) STEMAX = stepmax
|
||||
DEEMAX = 0.20
|
||||
EPSIL = 0.001
|
||||
STMIN = 0.010
|
||||
@@ -67,10 +68,7 @@
|
||||
PAR(1) = 0.
|
||||
PAR(2) = R1
|
||||
PAR(3) = Z1
|
||||
CALL GSVOLU( 'ECAL' , 'TUBE' , 1, PAR , 3 , IVOL )
|
||||
*
|
||||
CALL GSDVN( 'RING' , 'ECAL' , NRTOT , 1)
|
||||
CALL GSDVN( 'SLAB' , 'RING' , NLTOT , 3)
|
||||
CALL GSVOLU( 'ECAL' , 'TUBE' , 1 , PAR , 3 , IVOL)
|
||||
*
|
||||
* *** Close geometry banks. (obligatory system routine)
|
||||
CALL GGCLOS
|
||||
|
||||
@@ -22,14 +22,27 @@
|
||||
*
|
||||
* *** volumes and bins definition
|
||||
CALL FFKEY('BINS',NLTOT,4,'MIXED')
|
||||
*
|
||||
* *** max allowed step size
|
||||
CALL FFKEY('STEPMX',stepmax,1,'REAL')
|
||||
*
|
||||
* *** read data cards
|
||||
CALL GFFGO
|
||||
|
||||
*
|
||||
* *** check size of arrays
|
||||
if (NLTOT.gt.NBIN) then
|
||||
write (6,51) NLTOT, NBIN
|
||||
NLTOT = NBIN
|
||||
endif
|
||||
if (NRTOT.gt.NBIN) then
|
||||
write (6,52) NRTOT, NBIN
|
||||
NRTOT = NBIN
|
||||
endif
|
||||
51 FORMAT (/,5x,'warning (uginit): NLTOT= ',I3,' truncated to ',I3)
|
||||
52 FORMAT (/,5x,'warning (uginit): NRTOT= ',I3,' truncated to ',I3)
|
||||
*
|
||||
* *** achieve initialization
|
||||
NLTOT = MIN(NLTOT,NBIN)
|
||||
NRTOT = MIN(NRTOT,NBIN)
|
||||
CALL VZERO(SEL1,13*NBIN+8)
|
||||
CALL VZERO(SEL1,10*NBIN+8)
|
||||
*
|
||||
CALL GZINIT
|
||||
CALL GPART
|
||||
|
||||
@@ -13,11 +13,6 @@
|
||||
+ XSEL2(NBIN),XSEL2C(NBIN),XSER2(NBIN),XSER2C(NBIN)
|
||||
|
||||
DIMENSION EDIST(100),EDISTC(100)
|
||||
*
|
||||
CALL GLAST
|
||||
*
|
||||
* *** close HIGZ
|
||||
CALL HPLEND
|
||||
*
|
||||
* *** Normalize and print energy distribution
|
||||
XEVENT=IEVENT
|
||||
@@ -43,7 +38,7 @@
|
||||
XSER1C(I) = CNORM * SER1C(I)
|
||||
XSER2C(I) = CNORM*SQRT(ABS(XEVENT*SER2C(I) - SER1C(I)**2))
|
||||
3 CONTINUE
|
||||
CALL HPAK (12,XSER2C)
|
||||
CALL HPAK (9,XSER2C)
|
||||
*
|
||||
* *** total track length
|
||||
CNORM = 1./(XEVENT*X0)
|
||||
@@ -52,24 +47,26 @@
|
||||
XTRNE1 = CNORM*STRNE1
|
||||
XTRNE2 = CNORM*SQRT(ABS(XEVENT*STRNE2 - STRNE1**2))
|
||||
*
|
||||
* *** Print profiles
|
||||
* *** Print profiles (under condition iswit(2).gt.0)
|
||||
*
|
||||
PRINT 749
|
||||
PRINT 750
|
||||
PRINT 751
|
||||
DO 15 I=1,NLTOT
|
||||
B0 = (I-1)*DLX0
|
||||
B1 = I*DLX0
|
||||
PRINT 754,B0,B1,XSEL1(I),XSEL2(I),B1,XSEL1C(I),XSEL2C(I)
|
||||
15 CONTINUE
|
||||
if (iswit(2).gt.0) then
|
||||
PRINT 749
|
||||
PRINT 750
|
||||
PRINT 751
|
||||
DO 15 I=1,NLTOT
|
||||
B0 = (I-1)*DLX0
|
||||
B1 = I*DLX0
|
||||
PRINT 754,B0,B1,XSEL1(I),XSEL2(I),B1,XSEL1C(I),XSEL2C(I)
|
||||
15 CONTINUE
|
||||
|
||||
PRINT 760
|
||||
PRINT 751
|
||||
DO 16 I=1,NRTOT
|
||||
B0 = (I-1)*DRX0
|
||||
B1 = I*DRX0
|
||||
PRINT 754,B0,B1,XSER1(I),XSER2(I),B1,XSER1C(I),XSER2C(I)
|
||||
16 CONTINUE
|
||||
PRINT 760
|
||||
PRINT 751
|
||||
DO 16 I=1,NRTOT
|
||||
B0 = (I-1)*DRX0
|
||||
B1 = I*DRX0
|
||||
PRINT 754,B0,B1,XSER1(I),XSER2(I),B1,XSER1C(I),XSER2C(I)
|
||||
16 CONTINUE
|
||||
endif
|
||||
*
|
||||
* *** normalize histo of energy ditribution of contributing particles
|
||||
* and compute cumulative distribution
|
||||
@@ -90,21 +87,26 @@
|
||||
PRINT 774,EDEPCH
|
||||
PRINT 775,EDEPNE
|
||||
PRINT 772,XTRCH1,XTRCH2
|
||||
PRINT 773,XTRNE1,XTRNE2
|
||||
PRINT 773,XTRNE1,XTRNE2
|
||||
PRINT 749
|
||||
*
|
||||
* *** Save selected histograms
|
||||
IF (ISWIT(2).EQ.1) THEN
|
||||
CALL HRPUT(0,'testem2.paw','N')
|
||||
ENDIF
|
||||
CALL HRPUT(0,'testem2.hbook','N')
|
||||
*
|
||||
749 FORMAT(///)
|
||||
* *** terminaison
|
||||
CALL GLAST
|
||||
*
|
||||
* *** close HIGZ
|
||||
CALL HPLEND
|
||||
*
|
||||
749 FORMAT(//)
|
||||
750 FORMAT(15X,'LATERAL PROFILE',35X,'CUMULATIVE LATERAL PROFILE'/)
|
||||
751 FORMAT( 8X,'Bin',12X,' Mean ',5X,' rms',
|
||||
* 19X,'Bin', 9X,' Mean ',5X,' rms',/)
|
||||
754 FORMAT( 3X,F5.2,'->',F5.2,' radl: ',F7.2,'% ',F7.2,'%',
|
||||
* 13X, '0->',F5.2,' radl: ',F7.2,'% ',F7.2,'%')
|
||||
760 FORMAT(///,15X,'RADIAL PROFILE',35X,'CUMULATIVE RADIAL PROFILE'/)
|
||||
770 FORMAT(///,30X,'SUMMARY',/)
|
||||
770 FORMAT(/,30X,'SUMMARY',/)
|
||||
771 FORMAT( 25X,'energy deposit : ',F7.2,' % E0 +- ',F7.2,' % E0')
|
||||
772 FORMAT( 25X,'charged traklen: ',F7.2,' radl +- ',F7.2,' radl')
|
||||
773 FORMAT( 25X,'neutral traklen: ',F7.2,' radl +- ',F7.2,' radl')
|
||||
|
||||
@@ -9,15 +9,15 @@
|
||||
* *** Histograms for showers development
|
||||
*
|
||||
EDMIN=0.
|
||||
EDMAX=100.
|
||||
TRKMX=100.*PKINE(1)
|
||||
EDMAX=110.
|
||||
TRKMX=110.*PKINE(1)
|
||||
*
|
||||
CALL HBOOK1(1,'total energy deposition (in percent of E inc)'
|
||||
*,100,EDMIN,EDMAX,0.0)
|
||||
*,110,EDMIN,EDMAX,0.0)
|
||||
CALL HBOOK1(2,'total charged tracklengh (in radl)'
|
||||
*,100, 0. , TRKMX, 0.0)
|
||||
*,110, 0. , TRKMX, 0.0)
|
||||
CALL HBOOK1(3,'total neutral tracklengh (in radl)'
|
||||
*,100, 0. , 10*TRKMX, 0.0)
|
||||
*,110, 0. , 10*TRKMX, 0.0)
|
||||
*
|
||||
CALL HIDOPT(0,'STAT')
|
||||
*
|
||||
@@ -33,29 +33,20 @@
|
||||
CALL HBPROF(5,'cumul longit energy dep. (in percent of E inc)'
|
||||
*, NLTOT, ZMIN,ZMAX, 0., 100.,' ')
|
||||
CALL HBOOK1(6,'resolution: cumul L energy dep. (% of E inc)'
|
||||
*, NLTOT, ZMIN,ZMAX, 0.0)
|
||||
|
||||
*
|
||||
* *** Particle flux
|
||||
CALL HBPROF(7,'nb of gamma per plane'
|
||||
*, NLTOT, ZMIN,ZMAX, 0., 1.E+6,' ')
|
||||
CALL HBPROF(8,'nb of posit per plane'
|
||||
*, NLTOT, ZMIN,ZMAX, 0., 1.E+6,' ')
|
||||
CALL HBPROF(9,'nb of elect per plane'
|
||||
*, NLTOT, ZMIN,ZMAX, 0., 1.E+6,' ')
|
||||
*, NLTOT, ZMIN,ZMAX, 0.0)
|
||||
*
|
||||
* *** Radial profile
|
||||
RMAX=NRTOT*DRX0
|
||||
|
||||
CALL HBPROF(10,'radial energy profile (in percent of E inc)'
|
||||
CALL HBPROF(7,'radial energy profile (in percent of E inc)'
|
||||
*, NRTOT, 0.,RMAX, 0., 1000.,' ')
|
||||
*
|
||||
RMIN = 0.5*DRX0
|
||||
RMAX = RMIN + NRTOT*DRX0
|
||||
|
||||
CALL HBPROF(11,'cumul radial energy dep. (in percent of E inc)'
|
||||
CALL HBPROF(8,'cumul radial energy dep. (in percent of E inc)'
|
||||
*, NRTOT, RMIN,RMAX, 0., 100.,' ')
|
||||
CALL HBOOK1(12,'resolution: cumul R energy dep. (% of E inc)'
|
||||
CALL HBOOK1(9,'resolution: cumul R energy dep. (% of E inc)'
|
||||
*, NRTOT, RMIN,RMAX, 0.0)
|
||||
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user