34 #include "TrackingAction.hh"
36 #include "DetectorConstruction.hh"
38 #include "EventAction.hh"
39 #include "HistoManager.hh"
74 Run* run =
static_cast<Run*
>(
88 G4bool notabsor = (transmit || reflect);
101 G4bool charged = (charge != 0.);
102 G4bool neutral = !charged;
108 if (transmit && charged)
id = 10;
109 else if (transmit && neutral)
id = 20;
110 else if (reflect && charged)
id = 30;
111 else if (reflect && neutral)
id = 40;
113 if (
id>0) { analysisManager->
FillH1(
id, energy); }
119 G4int index = 0;
if (trackID > 1) index = 1;
130 if (transmit && charged)
id = 12;
131 else if (transmit && neutral)
id = 22;
132 else if (reflect && charged)
id = 32;
133 else if (reflect && neutral)
id = 42;
148 analysisManager->
FillH1(
id,theta,weight);
155 if (transmit && charged)
id = 11;
156 else if (reflect && charged)
id = 31;
157 else if (transmit && neutral)
id = 21;
158 else if (reflect && neutral)
id = 41;
161 G4double theta = std::acos(direction.
x());
167 analysisManager->
FillH1(
id,theta,weight);
174 if (transmit && charged)
id = 13;
175 else if (transmit && neutral)
id = 23;
176 else if (reflect && charged)
id = 33;
177 else if (reflect && neutral)
id = 43;
180 if (direction.
x() != 0.0) {
181 G4double tet = std::atan(direction.
y()/std::fabs(direction.
x()));
182 analysisManager->
FillH1(
id,tet);
185 tet = std::atan(direction.
z()/std::fabs(direction.
x()));
186 analysisManager->
FillH1(
id,tet);
193 if (transmit && energy > 0.0) {
196 analysisManager->
FillH1(14, y);
197 analysisManager->
FillH1(14,
z);
198 analysisManager->
FillH1(15, r);
203 if ((aTrack->
GetParentID() == 1) && charged && energy > 0.0) {
205 analysisManager->
FillH1(6, xVertex);
206 if (notabsor) analysisManager->
FillH1(7, xVertex);