Skip to content

Commit 2c982b2

Browse files
author
William Quinn
committed
added more histograms to fill. Got rid of the mylar energy loss
1 parent 1723470 commit 2c982b2

File tree

3 files changed

+40
-10
lines changed

3 files changed

+40
-10
lines changed

SensitivityModule.cpp

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -230,15 +230,16 @@ SensitivityModule::process(datatools::things& workItem) {
230230
else if (first_bool[pos] && !second_bool[pos] && enter_vol_bool) {
231231
second_bool[pos] = true;
232232
}
233-
else if (first_bool[pos] && second_bool[pos] && !third_bool[pos] && exit_vol_bool) {
234-
third_bool[pos] = true;
235-
}
233+
// This should be uncommented to look at the effect of the mylar
234+
//else if (first_bool[pos] && second_bool[pos] && !third_bool[pos] && exit_vol_bool) {
235+
// third_bool[pos] = true;
236+
//}
236237

237-
// If the e has exited the foil, entered the mylar and existed the mylar
238+
// If the e has exited the foil
238239
// This is a candidate
239-
if (first_bool[pos] && second_bool[pos] && third_bool[pos]){
240+
if (first_bool[pos] && second_bool[pos]){
240241
//escaped_foil[pos] = true;
241-
simdata_.escaped_foil_ = true;
242+
if (simdata_.escaped_foil_){simdata_.escaped_foil_ = true;}else{simdata_.escaped_foil_ = false;}
242243
continue;
243244
}
244245

@@ -362,6 +363,6 @@ void SensitivityModule::ResetVars()
362363
simdata_.energy_loss_.clear();
363364
simdata_.displacement_.clear();
364365
simdata_.track_ids_.clear();
365-
simdata_.escaped_foil_ = false;
366+
simdata_.escaped_foil_ = true;
366367

367368
}

SensitivityModule.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ typedef struct SimDataStorage{
7878
std::vector<double> energy_loss_;
7979
std::vector<double> displacement_;
8080
std::vector<int> track_ids_;
81-
bool escaped_foil_;
81+
bool escaped_foil_ = true;
8282

8383

8484
}simdatastorage;

read_file.py

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,14 @@ def main():
5454
n_bins, min_energy, max_energy)
5555
summed_sim_energy_foil_hist = ROOT.TH1D("summed_sim_energy_foil_hist", "summed_sim_energy_foil_hist",
5656
n_bins, min_energy, max_energy)
57+
summed_sim_energy_foil_hist_same = ROOT.TH1D("summed_sim_energy_foil_hist_same", "summed_sim_energy_foil_hist_same",
58+
n_bins, min_energy, max_energy)
59+
summed_sim_energy_foil_hist_opposite = ROOT.TH1D("summed_sim_energy_foil_hist_opposite",
60+
"summed_sim_energy_foil_hist_opposite",
61+
n_bins, min_energy, max_energy)
62+
summed_sim_energy_foil_hist_rejected = ROOT.TH1D("summed_sim_energy_foil_hist_rejected",
63+
"summed_sim_energy_foil_hist_rejected",
64+
n_bins, min_energy, max_energy)
5765
summed_sim_energy_foil_hist_eff = ROOT.TH1D("summed_sim_energy_foil_hist_eff", "summed_sim_energy_foil_hist_eff",
5866
n_bins, min_energy, max_energy)
5967
displacement_hist = ROOT.TH1D("displacement_hist", "displacement_hist",
@@ -82,14 +90,15 @@ def main():
8290
previous_time = t
8391

8492
escape_event = True
93+
sides_event = True
8594
summed_vertex_energy = 0
8695
summed_foil_energy = 0
8796

8897
for index in range(len(event.og_energy)):
8998
vertex_energy = event.og_energy[index]
9099
energy_loss = event.energy_loss[index]
91100
foil_energy = vertex_energy - energy_loss
92-
if foil_energy == 0.0 or foil_energy < 0.0001:
101+
if foil_energy == 0.0:
93102
escape_event = False
94103
eff_energy_bin = int(vertex_energy/energy_bin_width)
95104
val = efficiency_hist.GetBinContent(eff_energy_bin)
@@ -108,9 +117,29 @@ def main():
108117
summed_vertex_energy += vertex_energy
109118
summed_foil_energy += foil_energy
110119

120+
index0 = np.where(np.array(list(event.step_track_id)) == event.track_ids[0])[0][-1]
121+
index1 = np.where(np.array(list(event.step_track_id)) == event.track_ids[1])[0][-1]
122+
last_x0 = list(event.step_stop_vertex_x)[index0]
123+
last_x1 = list(event.step_stop_vertex_x)[index1]
124+
125+
t = thickness/1000
126+
if abs(last_x0) < t / 2 and abs(last_x1) < t / 2:
127+
sides_event = False
128+
129+
if (last_x0 < 0 and last_x1 < 0) or (last_x0 > 0 and last_x1 > 0):
130+
case = 0
131+
else:
132+
case = 1
133+
111134
summed_sim_energy_vertex_hist.Fill(summed_vertex_energy)
112-
if escape_event:
135+
if escape_event and sides_event:
113136
summed_sim_energy_foil_hist.Fill(summed_foil_energy)
137+
if case == 0:
138+
summed_sim_energy_foil_hist_same.Fill(summed_foil_energy)
139+
if case == 1:
140+
summed_sim_energy_foil_hist_opposite.Fill(summed_foil_energy)
141+
else:
142+
summed_sim_energy_foil_hist_rejected.Fill(summed_foil_energy)
114143
summed_sim_energy_foil_hist_eff.Fill(summed_foil_energy)
115144

116145
i_event += 1

0 commit comments

Comments
 (0)