34 #include "RunAction.hh"
35 #include "DetectorConstruction.hh"
36 #include "PhysicsList.hh"
38 #include "PrimaryGeneratorAction.hh"
53 fAnalysisManager(0), fDetector(det), fPhysics(phys), fKinematic(kin),
55 fEdeptot(0.), fEniel(0.), fNbPrimarySteps(0), fRange(0)
96 if (nbBins < nbmin) nbBins = nbmin;
106 if (nbofEvents == 0)
return;
116 G4cout <<
"\n The run consists of " << nbofEvents <<
" "<< particle <<
" of "
119 << material->
GetName() <<
" (density: "
129 if (rms>0.) rms = std::sqrt(rms);
else rms = 0.;
137 G4cout <<
" Mean number of primary steps = "<< nstep <<
G4endl;
151 if (tallyNumber > 0) {
153 G4cout <<
"\n---------------------------------------------------------\n";
154 G4cout <<
" Cumulated Doses : \tEdep \tEdep/Ebeam \tDose" <<
G4endl;
155 for (
G4int j=0; j < tallyNumber; ++j) {
159 G4cout <<
" tally " << j <<
": \t \t"
164 G4cout <<
"\n---------------------------------------------------------\n";
171 for (
G4int j=1; j<3; ++j) {
204 const G4String id[] = {
"h0",
"h1",
"h2",
"h3" };
207 "Edep (MeV/mm) along absorber ",
208 "Edep (MeV/mm) along absorber zoomed",
222 if (k == 1) activ =
true;
void EndOfRunAction(const G4Run *)
static constexpr double MeV
static constexpr double mm
const G4String & GetParticleName() const
G4ParticleGun * GetParticleGun()
G4Material * GetAbsorMaterial(G4int i)
G4StepLimiter * GetStepMaxProcess()
void BeginOfRunAction(const G4Run *)
G4double GetTallyMass(G4int n) const
G4int GetNumberOfEvent() const
const G4String & GetName() const
G4AnalysisManager * fAnalysisManager
G4int GetTallyNumber() const
The primary generator action class with particle gun.
PrimaryGeneratorAction * fKinematic
DetectorConstruction * fDetector
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
G4double GetParticleEnergy() const
static const G4double fac
G4GLOB_DLL std::ostream G4cout
G4ParticleDefinition * GetParticleDefinition() const
static void showEngineStatus()
Simple detector construction with a box volume placed in a world.
G4double GetDensity() const