35 #include "TrackingAction.hh" 37 #include "DetectorConstruction.hh" 39 #include "HistoManager.hh" 65 G4double charge = track->GetDefinition()->GetPDGCharge();
69 if (charge == 0.0)
return;
70 if (position.
z() <
fZend)
return;
71 if (direction.
z() <= 0.)
return;
78 G4double ux = direction.
x(), uy = direction.
y(), uz = direction.
z();
81 analysisManager->FillH1(ih, thetax);
82 analysisManager->FillH1(ih, thetay);
89 dr = analysisManager->GetH1Width(ih);
90 rmin = ((int)(r/dr))*dr;
91 ds =
twopi*(rmin + 0.5*dr)*dr;
92 analysisManager->FillH1(ih, r, 1/ds);
97 dr = analysisManager->GetH1Width(ih);
98 rmin = ((int)(r/dr))*dr;
99 ds =
twopi*(rmin + 0.5*dr)*dr;
100 analysisManager->FillH1(ih, r, 1/(uz*ds));
104 Run* run =
static_cast<Run*
>(
114 G4double dtheta = analysisManager->GetH1Width(ih);
115 G4double unit = analysisManager->GetH1Unit(ih);
118 analysisManager->FillH1(ih, theta, weight);
126 G4double thetam = std::atan(r/dist);
128 G4double dtheta = analysisManager->GetH1Width(ih);
129 G4double unit = analysisManager->GetH1Unit(ih);
132 analysisManager->FillH1(ih, thetam, weight);
G4Run * GetNonConstCurrentRun() const
G4double GetThicknessWorld()
void PreUserTrackingAction(const G4Track *)
static const double twopi
ExG4HbookAnalysisManager G4AnalysisManager
void PostUserTrackingAction(const G4Track *)
static G4RunManager * GetRunManager()
Detector construction class to define materials and geometry.
G4double GetZdist_foil_detector()
void SumFluence(G4double, G4double)
DetectorConstruction * fDetector