88{
89 G4int nofEvents = run->GetNumberOfEvent();
90 if (nofEvents == 0) return;
91
92
94 accumulableManager->Merge();
95
96
97
98 G4double edep =
fEdep.GetValue();
99 G4double edep2 =
fEdep2.GetValue();
100
101 G4double rms = edep2 - edep*edep/nofEvents;
102 if (rms > 0.) rms = std::sqrt(rms); else rms = 0.;
103
105 G4RunManager::GetRunManager()->GetUserDetectorConstruction());
107 G4double dose = edep/mass;
108 G4double rmsDose = rms/mass;
109
110
111
112
114 G4RunManager::GetRunManager()->GetUserPrimaryGeneratorAction());
116 if (generatorAction)
117 {
118 const G4ParticleGun* particleGun = generatorAction->GetParticleGun();
119 runCondition += particleGun->GetParticleDefinition()->GetParticleName();
120 runCondition += " of ";
121 G4double particleEnergy = particleGun->GetParticleEnergy();
122 runCondition +=
G4BestUnit(particleEnergy,
"Energy");
123 }
124
125
126
127 if (IsMaster()) {
129 G4double dosePerEvent = edepPerEvent/mass/gray;
131 }
132
137
138 G4cout
139 << G4endl
140 << "--------------------End of Global Run-----------------------";
141 }
142 else {
143 G4cout
144 << G4endl
145 << "--------------------End of Local Run------------------------";
146 }
147
148 G4cout
149 << G4endl
150 << " The run consists of " << nofEvents << " "<< runCondition
151 << G4endl
152 << " Cumulated dose per run, in scoring volume : "
154 << G4endl
155 << "------------------------------------------------------------"
156 << G4endl
157 << G4endl;
158}
Detector construction class to define materials and geometry.
G4LogicalVolume * GetScoringVolume() const
The primary generator action class with particle gun.