34 #include "SteppingAction.hh"
35 #include "DetectorConstruction.hh"
36 #include "TrackingAction.hh"
37 #include "HistoManager.hh"
49 :fDetector(det), fTrackAction(TrAct),
74 Run* run =
static_cast<Run*
>(
108 analysisManager->FillH1(
id,steplen);
118 if (volume ==
fWall)
return;
128 analysisManager->FillH1(4,vertex.
z());
130 analysisManager->FillH1(5,ekin1);
136 analysisManager->FillH1(6,std::acos(-
fDirectionIn*normal));
137 analysisManager->FillH1(7,std::acos(-directionOut*normal));
const G4ThreeVector & GetVertexPosition() const
static G4RunManager * GetRunManager()
const DetectorConstruction * fDetector
G4ThreeVector fDirectionIn
CLHEP::Hep3Vector G4ThreeVector
G4StepPoint * GetPreStepPoint() const
G4VPhysicalVolume * fWall
static double normal(HepRandomEngine *eptr)
virtual G4VPhysicalVolume * GetVolume(G4int depth=0) const
void StepInWall(G4double s)
G4int GetCurrentStepNumber() const
virtual G4ThreeVector SurfaceNormal(const G4ThreeVector &p) const =0
G4ParticleDefinition * GetDefinition() const
const G4TouchableHandle & GetTouchableHandle() const
virtual G4VSolid * GetSolid(G4int depth=0) const
G4StepStatus GetStepStatus() const
void StepInCavity(G4double s)
G4VPhysicalVolume * fCavity
void AddEdepCavity(G4double de)
void AddTrakCavity(G4double dt)
G4double GetStepLength() const
const G4ThreeVector & GetPosition() const
G4Track * GetTrack() const
const G4String & GetProcessName() const
const G4ThreeVector & GetMomentumDirection() const
G4double GetTotalEnergyDeposit() const
G4CsvAnalysisManager G4AnalysisManager
G4StepPoint * GetPostStepPoint() const
void UserSteppingAction(const G4Step *)
TrackingAction * fTrackAction
G4double GetKineticEnergy() const
G4Run * GetNonConstCurrentRun() const
void FlowInCavity(G4int k, G4double e)
void CountProcesses(G4String procName)
G4VPhysicalVolume * GetWall()
const G4VProcess * GetProcessDefinedStep() const
G4VPhysicalVolume * GetCavity()
Simple detector construction with a box volume placed in a world.