Geant4_10
uglast.F
Go to the documentation of this file.
1 
2  SUBROUTINE uglast
3 *
4 #include "geant321/gcflag.inc"
5 *
6 #include "runinfo.inc"
7 #include "histo.inc"
8 *
9  CHARACTER*4 unitm,unitr
10  dimension transmit(2),reflect(2)
11 *
12  CALL glast
13 *
14  IF(ievent.le.0) return
15 *
16  print 749
17  print 750,ievent
18 *
19  totevent = float(ievent)
20 *
21 * energy deposit
22  fmean = sedep/totevent
23  rms2 = sedep2/totevent-fmean**2
24  rms = 0.
25  if (rms2.gt.0.) rms = sqrt(rms2/totevent)
26 *
27  call gevkev(fmean,emean,unitm)
28  call gevkev(rms ,erms ,unitr)
29  print 752, emean,unitm,erms,unitr
30 *
31 * track length (charged)
32  fmean = strkch/totevent
33  rms2 = strkch2/totevent-fmean**2
34  rms = 0.
35  if (rms2.gt.0.) rms = sqrt(rms2/totevent)
36  print 753, fmean,rms
37 *
38 * track length (neutral)
39  fmean = strkne/totevent
40  rms2 = strkne2/totevent-fmean**2
41  rms = 0.
42  if (rms2.gt.0.) rms = sqrt(rms2/totevent)
43  print 754, fmean,rms
44 *
45 * number of steps (charged)
46  fmean = sstpch/totevent
47  rms2 = sstpch2/totevent-fmean**2
48  rms = 0.
49  if (rms2.gt.0.) rms = sqrt(rms2/totevent)
50  print 755, fmean,rms
51 *
52 * number of steps (neutral)
53  fmean = sstpne/totevent
54  rms2 = sstpne2/totevent-fmean**2
55  rms = 0.
56  if (rms2.gt.0.) rms = sqrt(rms2/totevent)
57  print 756, fmean,rms
58 *
59 * number of secondaries
60  gamma = ngamma/totevent
61  elect = nelect/totevent
62  posit = nposit/totevent
63  print 757, gamma,elect,posit
64 *
65 * transmission & reflection coefficients
66  transmit(1) = 100.*nbtransm(1)/totevent
67  transmit(2) = 100.*nbtransm(2)/totevent
68  reflect(1) = 100.*nbreflec(1)/totevent
69  reflect(1) = 100.*nbreflec(2)/totevent
70  print 761, transmit(2)
71  print 762, transmit(1)
72  print 763, reflect(2)
73  print 764, reflect(1)
74 *
75  print 749
76 *
77 *
78 * *** histograms
79 *
80  call hplend
81  call hrput(0,filename,'N')
82 *
83 * *** formats
84 *
85  749 FORMAT(/ ,80(1h=),/)
86  750 FORMAT(' Number of events = ', i7)
87 *
88  752 FORMAT(/,' Total energy deposit in absorber per event = ',
89  + f8.3,a4,' +- ',f6.2,a4)
90 *
91  753 FORMAT(/,' Total track length (charged) in absorber per event = ',
92  + f8.4,' cm +- ',f8.4, ' cm')
93  754 FORMAT( ' Total track length (neutral) in absorber per event = ',
94  + f8.4,' cm +- ',f8.4, ' cm')
95 *
96  755 FORMAT(/,' Number of steps (charged) in absorber per event = ',
97  + f7.3,' +- ',f7.3)
98  756 FORMAT( ' Number of steps (neutral) in absorber per event = ',
99  + f7.3,' +- ',f7.3)
100 *
101  757 FORMAT(/,' Number of secondaries per event : ',
102  + 'gammas = ',f8.3, '; electrons = ',f8.3,'; positrons =',f8.3)
103 *
104  761 FORMAT(/,' Nb of events with the primary particle transmitted = ',
105  + f6.2, ' %')
106  762 FORMAT( ' Nb of events with at least 1 particle transmitted ',
107  + '(same charge as primary) = ',f6.2, ' %')
108  763 FORMAT(/,' Nb of events with the primary particle reflected = ',
109  + f6.2, ' %')
110  764 FORMAT( ' Nb of events with at least 1 particle reflected ',
111  + '(same charge as primary) = ',f6.2, ' %')
112 *
113  END
subroutine uglast
Definition: uglast.F:2
double gamma() const
static c2_sqrt_p< float_type > & sqrt()
make a *new object
Definition: c2_factory.hh:142
G4double rms()
void print(const std::vector< T > &data)
Definition: DicomRun.hh:111