31 #include "B1RunAction.hh"
32 #include "B1PrimaryGeneratorAction.hh"
33 #include "B1DetectorConstruction.hh"
83 accumulableManager->
Reset();
92 if (nofEvents == 0)
return;
96 accumulableManager->
Merge();
103 G4double rms = edep2 - edep*edep/nofEvents;
104 if (rms > 0.) rms = std::sqrt(rms);
else rms = 0.;
124 runCondition +=
" of ";
126 runCondition +=
G4BestUnit(particleEnergy,
"Energy");
134 <<
"--------------------End of Global Run-----------------------";
139 <<
"--------------------End of Local Run------------------------";
144 <<
" The run consists of " << nofEvents <<
" "<< runCondition
146 <<
" Cumulated dose per run, in scoring volume : "
149 <<
"------------------------------------------------------------"
G4Accumulable< G4double > fEdep
static G4RunManager * GetRunManager()
virtual void BeginOfRunAction(const G4Run *)
void AddEdep(G4double edep)
const G4String & GetParticleName() const
static constexpr double gray
Detector construction class to define materials and geometry.
G4Accumulable< G4double > fEdep2
G4int GetNumberOfEvent() const
static constexpr double milligray
G4LogicalVolume * GetScoringVolume() const
virtual void EndOfRunAction(const G4Run *)
G4bool RegisterAccumulable(G4Accumulable< T > &accumulable)
static G4AccumulableManager * Instance()
static constexpr double microgray
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
void SetRandomNumberStore(G4bool flag)
const G4ParticleGun * GetParticleGun() const
G4double GetParticleEnergy() const
G4GLOB_DLL std::ostream G4cout
G4ParticleDefinition * GetParticleDefinition() const
const G4VUserDetectorConstruction * GetUserDetectorConstruction() const
G4double GetMass(G4bool forced=false, G4bool propagate=true, G4Material *parMaterial=0)
const G4VUserPrimaryGeneratorAction * GetUserPrimaryGeneratorAction() const