Import Geant4 6.2.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 10:56:29 +02:00
parent 1d812b78b1
commit e083ffb441
1415 changed files with 111223 additions and 21207 deletions
@@ -16,13 +16,15 @@
if (histo(k)) call hfill (k,EdepAbs(k)/histUnit(k),0.,1.)
enddo
*
* cumul energy deposited and charged track length
* cumul energy deposited, charged track length and energy leakage
do k=1,NbAbsor
sumEdep(k) = sumEdep(k) + EdepAbs(k)
sumTrck(k) = sumTrck(k) + TrckAbs(k)
sumElea(k) = sumElea(k) + EleaAbs(k)/NbLayer
*
su2Edep(k) = su2Edep(k) + EdepAbs(k)**2
su2Trck(k) = su2Trck(k) + TrckAbs(k)**2
su2Elea(k) = su2Elea(k) + (EleaAbs(k)/NbLayer)**2
enddo
*
* *** print
@@ -6,6 +6,7 @@
#include "geant321/gcflag.inc"
#include "geant321/gckine.inc"
#include "geant321/gcking.inc"
#include "geant321/gconst.inc"
#include "geant321/gctrak.inc"
#include "geant321/gctmed.inc"
#include "calor.inc"
@@ -25,5 +26,12 @@
if (DESTEP.NE.0.) EdepAbs(NUMED) = EdepAbs(NUMED) + DESTEP
if (CHARGE*STEP.NE.0.) TrckAbs(NUMED) = TrckAbs(NUMED) + STEP
ENDIF
*
* *** Energy leakage from secondaries
IF ((NUMED.LE.NbAbsor).and.(INWVOL.EQ.2).and.(ISTAK.GT.0)) THEN
Eleav = gekin
if (ipart.eq.2) Eleav = gekin + 2*emass
EleaAbs(NUMED) = EleaAbs(NUMED) + Eleav
ENDIF
*
END
@@ -10,6 +10,7 @@
do k=1,NbAbsor
EdepAbs(k) = 0.
TrckAbs(k) = 0.
EleaAbs(k) = 0.
enddo
*
CALL GTREVE
@@ -70,8 +70,10 @@
do k=1,MaxAbs
sumEdep(k) = 0.
sumTrck(k) = 0.
sumElea(k) = 0.
su2Edep(k) = 0.
su2Trck(k) = 0.
su2Elea(k) = 0.
enddo
*
END
@@ -3,14 +3,14 @@
*
* Termination routine to print histograms and statistics
*
#include "geant321/gcflag.inc"
#include "geant321/gcflag.inc"
#include "geant321/gctrak.inc"
#include "calor.inc"
#include "celoss.inc"
#include "histo.inc"
*
CHARACTER*20 matnam
CHARACTER*4 unitm,unitr
CHARACTER*4 unitdm,unitdr,unitlm,unitlr
*
* *** mean energy deposit and track length
PRINT 749
@@ -23,10 +23,15 @@
rmsEdep = fnorm*sqrt(abs(IEVENT*su2Edep(k)-sumEdep(k)**2))
aveTrck = fnorm*sumTrck(k)
rmsTrck = fnorm*sqrt(abs(IEVENT*su2Trck(k)-sumTrck(k)**2))
aveElea = fnorm*sumElea(k)
rmsElea = fnorm*sqrt(abs(IEVENT*su2Elea(k)-sumElea(k)**2))
*
CALL GEVKEV (aveEdep,Emean,unitm)
CALL GEVKEV (rmsEdep,Erms ,unitr)
PRINT 752,k-1,matnam,Emean,unitm,Erms,unitr,aveTrck,rmsTrck
CALL GEVKEV (aveEdep,Edmean,unitdm)
CALL GEVKEV (rmsEdep,Edrms ,unitdr)
CALL GEVKEV (aveElea,Elmean,unitlm)
CALL GEVKEV (rmsElea,Elrms ,unitlr)
PRINT 752,k-1,matnam,Edmean,unitdm,Edrms,unitdr,aveTrck,rmsTrck
+ ,Elmean,unitlm,Elrms,unitlr
enddo
PRINT 749
*
@@ -44,7 +49,9 @@
* *** formats
749 FORMAT(/ ,60(1H-),/)
750 FORMAT(1X,'Nb of events:',I6)
751 FORMAT(1X,'AbsNo Material',5X,'Energy deposit',14X,'Trck length')
752 FORMAT(I5,3X,A10,F8.3,A4,' +- ',F6.2,A4,F9.3,' cm +- ',F6.2,' cm')
751 FORMAT(1X,'AbsNo Material',5X,'Energy deposit',14X,'Trck length',
+ 12X,'E leakage by secondaries')
752 FORMAT(I5,3X,A10,F8.3,A4,' +- ',F6.2,A4,F9.3,' cm +- ',F6.2,' cm',
+ F9.3,A4,' +- ',F6.2,A4)
*
END