34 #include "StackingAction.hh"
36 #include "DetectorConstruction.hh"
37 #include "RunAction.hh"
38 #include "HistoManager.hh"
40 #include "StackingMessenger.hh"
49 :fDetector(det),fStackMessenger(0)
66 delete fStackMessenger;
88 if ((track->
GetParentID() == 0) || neutral)
return status;
90 Run* run =
static_cast<Run*
>(
101 G4double safe = std::abs(position) - fZcav;
104 if (range < 0.8*safe) status =
fKill;
110 analysisManager->FillH1(1,position);
111 analysisManager->FillH1(2,energy);
113 analysisManager->FillH1(3,std::acos(direction.
z()));
G4ParticleDefinition * GetDefinition() const
G4int GetParentID() const
G4Material * GetWallMaterial()
const G4ThreeVector & GetPosition() const
void SumEsecond(G4double e)
G4double GetKineticEnergy() const
const G4ParticleDefinition const G4Material *G4double range
virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track *)
G4double GetRangeFromRestricteDEDX(G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=nullptr)
G4double GetCavityThickness()
static G4RunManager * GetRunManager()
const G4ThreeVector & GetMomentumDirection() const
G4ClassificationOfNewTrack
G4double energy(const ThreeVector &p, const G4double m)
Detector construction class to define materials and geometry.
G4double GetPDGCharge() const
G4CsvAnalysisManager G4AnalysisManager
G4Run * GetNonConstCurrentRun() const