148 G4cout <<
"Histo: Histograms are booked and run has been started"
152 G4cout <<
"Histo: Histograms are not booked because file name is not set"
162 G4cout <<
"Histo: End of run actions are started" <<
G4endl;
166 G4cout<<
"========================================================"<<
G4endl;
168 if(
fNevt > 0) { x = 1.0/x; }
179 G4cout <<
"Number of events "
182 << std::setprecision(4) <<
"Average number of e- "
185 << std::setprecision(4) <<
"Average number of gamma "
188 << std::setprecision(4) <<
"Average number of e+ "
191 << std::setprecision(4) <<
"Average number of steps in the phantom "
194 << std::setprecision(4) <<
"Average number of e- steps in the target "
197 << std::setprecision(4) <<
"Average number of g produced in the target "
200 << std::setprecision(4) <<
"Average number of e- produced in the target "
203 << std::setprecision(4) <<
"Average number of g produced in the phantom "
206 << std::setprecision(4) <<
"Average number of e- produced in the phantom "
209 << std::setprecision(4) <<
"Total fGamma fluence in front of the phantom "
211 G4cout<<
"========================================================"<<
G4endl;
228 if(nr > 0.0) { nr = 1./nr; }
232 if(nr > 0.0) { nr = 1./nr; }
242 G4cout <<
"Histo::Save: FATAL ERROR writing ROOT file" <<
G4endl;
245 G4cout <<
"### Histo::Save: Histograms are saved" <<
G4endl;
261 G4cout <<
"Histo::bookHisto: ERROR open file <" << nam <<
">" <<
G4endl;
264 G4cout <<
"### Histo::Save: Opended file <" << nam <<
"> for "
269 "Energy deposit at radius (mm) normalised on 1st channel",
273 "Energy deposit at radius (mm) normalised to integral",
277 "Energy deposit (MeV/kg/electron) at radius (mm)",
284 "Energy profile (MeV/kg/electron) over Z (mm) at Central Voxel",
288 "Energy (MeV) of fGamma produced in the target",
301 "Gamma Energy Fluence (MeV/cm2) at radius(mm) in front of phantom",
360 G4cout <<
"TrackingAction: Primary "
364 <<
"; pos= " << pos <<
"; dir= " << dir <<
G4endl;
368 }
else if (0 < pid && particle ==
fElectron) {
370 G4cout <<
"TrackingAction: Secondary electron " <<
G4endl;
377 }
else if (0 < pid && particle ==
fPositron) {
379 G4cout <<
"TrackingAction: Secondary positron " <<
G4endl;
384 }
else if (0 < pid && particle ==
fGamma) {
386 G4cout <<
"TrackingAction: Secondary gamma; parentID= " << pid
422 G4cout <<
"Histo: edep(MeV)= " << edep/
MeV <<
" at binz= " << nzbin
423 <<
" r1= " << r1 <<
" z1= " << z1
424 <<
" r2= " << r2 <<
" z2= " << z2
425 <<
" r0= " << r0 <<
" z0= " << z0
468 G4double rr2 = r1 + dr*(zz2-zz1)/dz;
469 for(bin=bin1; bin<=bin2; bin++) {
483 rr2 = rr1 + dr*(zz2 - zz1)/dz;
void SetNumberDivR(G4int val)
void AddPhantomPhoton(const G4DynamicParticle *)
G4RootAnalysisManager * fAnalysisManager
G4int GetParentID() const
void AddPhantomGamma(G4double e, G4double r)
static Histo * GetPointer()
G4double GetKineticEnergy() const
G4int CreateH1(const G4String &name, const G4String &title, G4int nbins, G4double xmin, G4double xmax, const G4String &unitName="none", const G4String &fcnName="none", const G4String &binSchemeName="linear")
CLHEP::Hep3Vector G4ThreeVector
const G4DynamicParticle * GetDynamicParticle() const
G4VPhysicalVolume * fTarget2
G4VPhysicalVolume * fPhantom
void AddElectron(const G4DynamicParticle *)
G4VPhysicalVolume * fTarget1
const G4ParticleDefinition * fGamma
const G4String & GetParticleName() const
void ScoreNewTrack(const G4Track *aTrack)
void AddPhoton(const G4DynamicParticle *)
G4double GetKineticEnergy() const
G4GLOB_DLL std::ostream G4cout
const G4ParticleDefinition * fElectron
const G4ParticleDefinition * fPositron
G4VPhysicalVolume * fCheckVolume
const G4ParticleDefinition * GetParticleDefinition() const
const G4ThreeVector & GetVertexPosition() const
void AddTargetElectron(const G4DynamicParticle *)
static G4Positron * Positron()
const G4ThreeVector & GetMomentumDirection() const
G4bool FillH1(G4int id, G4double value, G4double weight=1.0)
T min(const T t1, const T t2)
brief Return the smallest of the two arguments
static G4RootAnalysisManager * Instance()
G4VPhysicalVolume * GetVolume() const
G4VPhysicalVolume * fGasVolume
void AddTargetPhoton(const G4DynamicParticle *)
static G4Electron * Electron()
void AddPhantomStep(G4double e, G4double r1, G4double z1, G4double r2, G4double z2, G4double r0, G4double z0)
std::vector< G4int > fHisto
G4RootAnalysisManager * fManager
tools::histo::h1d * GetH1(G4int id, G4bool warn=true, G4bool onlyIfActive=true) const
void AddPositron(const G4DynamicParticle *)
void AddPhantomElectron(const G4DynamicParticle *)
static const G4double pos