All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
init_branches.cxx
Go to the documentation of this file.
3 
4 namespace single_photon
5 {
6  //Process of initialize branches:
7  //ClearBranches, ResizeBranches, CreateBranches
8 
9  void ClearMeta(var_all& vars){
10  //------------ Event related Variables -------------
11  vars.m_event_number = -99;
12  vars.m_subrun_number = -99;
13  vars.m_run_number = -99;
14  vars.m_test_matched_hits = 0;
15 
16  vars.m_pot_per_event = 0;
17  vars.m_pot_per_subrun = vars.m_subrun_pot;
19 
20  vars.m_genie_spline_weight = 1.0;
21 
22  //------------ Vertex related Variables -------------
23  vars.m_reco_vertex_size = 0;
24  vars.m_vertex_pos_x=-99999;
25  vars.m_vertex_pos_y=-99999;
26  vars.m_vertex_pos_z=-99999;
27  vars.m_vertex_pos_tick=-9999;
28  vars.m_vertex_pos_wire_p0=-9999;
29  vars.m_vertex_pos_wire_p1=-9999;
30  vars.m_vertex_pos_wire_p2=-9999;
31  vars.m_reco_vertex_in_SCB = -9999;
32  vars.m_reco_vertex_dist_to_SCB = -9999;
34  vars.m_reco_vertex_dist_to_CPA= -9999;
35 
36 // vars.m_reco_vertex_to_nearest_dead_wire_plane0=-99999;
37 // vars.m_reco_vertex_to_nearest_dead_wire_plane1=-99999;
38 // vars.m_reco_vertex_to_nearest_dead_wire_plane2=-99999;
39 
40  vars.m_reco_slice_objects = 0;
41  }
42 
43 
45 
46  //true_eventweight_tree
47 // vars.true_eventweight_tree->Branch("mcweight", "std::map<std::string, std::vector<double>>",&vars.fmcweight);
48 
49  //run_subrun_tree
50  vars.run_subrun_tree->Branch("run",&vars.m_run,"run/I");
51  vars.run_subrun_tree->Branch("subrun",&vars.m_subrun,"subrun/I");
52  vars.run_subrun_tree->Branch("subrun_pot",&vars.m_subrun_pot,"subrun_pot/D");
53  vars.run_subrun_tree->Branch("subrun_counts",&vars.m_subrun_counts,"subrun_counts/I");
54 
55  //pot_tree
56  vars.pot_tree->Branch("number_of_events",&vars.m_number_of_events,"number_of_events/I");
57  vars.pot_tree->Branch("number_of_vertices",&vars.m_number_of_vertices,"number_of_vertices/I");
58  vars.pot_tree->Branch("POT",&vars.m_pot_count,"POT/D");
59 
60  //vars.vertex_tree -- part of it
61  // --------------------- Event Related variables ------------
62  vars.vertex_tree->Branch("run_number", &vars.m_run_number, "run_number/I");
63  vars.vertex_tree->Branch("subrun_number", &vars.m_subrun_number, "subrun_number/I");
64  vars.vertex_tree->Branch("event_number", &vars.m_event_number, "event_number/I");
65 
66  vars.vertex_tree->Branch("pot_per_event",&vars.m_pot_per_event,"pot_per_event/D");
67  vars.vertex_tree->Branch("pot_per_subrun",&vars.m_pot_per_subrun,"pot_per_subrun/D");
68  vars.vertex_tree->Branch("number_of_events_in_subrun",&vars.m_number_of_events_in_subrun,"number_of_events_in_subrun/D");
69 
70 
71  vars.vertex_tree->Branch("genie_spline_weight", &vars.m_genie_spline_weight, "genie_spline_weight/D");
72  vars.vertex_tree->Branch("genie_CV_tune_weight", &vars.m_genie_CV_tune_weight, "genie_CV_tune_weight/D");
73 
74  vars.vertex_tree->Branch("photonu_weight_low", &vars.m_photonu_weight_low, "photonu_weight_low/D");
75  vars.vertex_tree->Branch("photonu_weight_high", &vars.m_photonu_weight_high, "photonu_weight_high/D");
76 
77  vars.vertex_tree->Branch("test_matched_hits", &vars.m_test_matched_hits, "test_matched_hits/I");
78 
79  // --------------------- Vertex Related variables ------------
80  vars.vertex_tree->Branch("reco_vertex_size", &vars.m_reco_vertex_size);
81  vars.vertex_tree->Branch("reco_vertex_x", &vars.m_vertex_pos_x);
82  vars.vertex_tree->Branch("reco_vertex_y", &vars.m_vertex_pos_y);
83  vars.vertex_tree->Branch("reco_vertex_z", &vars.m_vertex_pos_z);
84  vars.vertex_tree->Branch("reco_vertex_in_SCB", &vars.m_reco_vertex_in_SCB);
85  vars.vertex_tree->Branch("reco_vertex_dist_to_SCB",&vars.m_reco_vertex_dist_to_SCB);
86  vars.vertex_tree->Branch("reco_vertex_dist_to_active_TPC",&vars.m_reco_vertex_dist_to_active_TPC);
87  vars.vertex_tree->Branch("reco_vertex_dist_to_CPA",&vars.m_reco_vertex_dist_to_CPA);
88 // vars.vertex_tree->Branch("reco_vertex_to_nearest_dead_wire_plane0",&vars.m_reco_vertex_to_nearest_dead_wire_plane0);
89 // vars.vertex_tree->Branch("reco_vertex_to_nearest_dead_wire_plane1",&vars.m_reco_vertex_to_nearest_dead_wire_plane1);
90 // vars.vertex_tree->Branch("reco_vertex_to_nearest_dead_wire_plane2",&vars.m_reco_vertex_to_nearest_dead_wire_plane2);
91 
92  vars.vertex_tree->Branch("reco_slice_objects", &vars.m_reco_slice_objects, "reco_slice_objects/I");
93 
94  vars.vertex_tree->Branch("vars.m_flash_optfltr_pe_beam",&vars.m_flash_optfltr_pe_beam);
95  vars.vertex_tree->Branch("vars.m_flash_optfltr_pe_veto",&vars.m_flash_optfltr_pe_veto);
96  vars.vertex_tree->Branch("vars.m_flash_optfltr_pe_veto_tot",&vars.m_flash_optfltr_pe_veto_tot);
97  vars.vertex_tree->Branch("vars.m_flash_optfltr_pe_beavars.m_tot",&vars.m_flash_optfltr_pe_beam_tot);
98  }
99 
100  //isolation.h
101  void ClearIsolation(var_all& vars){
102  vars.m_isolation_min_dist_trk_shr.clear();
104 
109 
114 
117 
120  }
121 
123  vars.vertex_tree->Branch("isolation_min_dist_trk_shr", &vars.m_isolation_min_dist_trk_shr);
124  vars.vertex_tree->Branch("isolation_min_dist_trk_unassoc", &vars.m_isolation_min_dist_trk_unassoc);
125 
126  vars.vertex_tree->Branch("isolation_num_shr_hits_win_1cm_trk", &vars.m_isolation_num_shr_hits_win_1cm_trk);
127  vars.vertex_tree->Branch("isolation_num_shr_hits_win_2cm_trk", &vars.m_isolation_num_shr_hits_win_2cm_trk);
128  vars.vertex_tree->Branch("isolation_num_shr_hits_win_5cm_trk", &vars.m_isolation_num_shr_hits_win_5cm_trk);
129  vars.vertex_tree->Branch("isolation_num_shr_hits_win_10cm_trk", &vars.m_isolation_num_shr_hits_win_10cm_trk);
130 
131  vars.vertex_tree->Branch("isolation_num_unassoc_hits_win_1cm_trk", &vars.m_isolation_num_unassoc_hits_win_1cm_trk);
132  vars.vertex_tree->Branch("isolation_num_unassoc_hits_win_2cm_trk", &vars.m_isolation_num_unassoc_hits_win_2cm_trk);
133  vars.vertex_tree->Branch("isolation_num_unassoc_hits_win_5cm_trk", &vars.m_isolation_num_unassoc_hits_win_5cm_trk);
134  vars.vertex_tree->Branch("isolation_num_unassoc_hits_win_10cm_trk", &vars.m_isolation_num_unassoc_hits_win_10cm_trk);
135 
136 
137  vars.vertex_tree->Branch("isolation_nearest_shr_hit_to_trk_wire", &vars.m_isolation_nearest_shr_hit_to_trk_wire);
138  vars.vertex_tree->Branch("isolation_nearest_shr_hit_to_trk_time", &vars.m_isolation_nearest_shr_hit_to_trk_time);
139 
140  vars.vertex_tree->Branch("isolation_nearest_unassoc_hit_to_trk_wire", &vars.m_isolation_nearest_unassoc_hit_to_trk_wire);
141  vars.vertex_tree->Branch("isolation_nearest_unassoc_hit_to_trk_time", &vars.m_isolation_nearest_unassoc_hit_to_trk_time);
142 
143  }
144 
145  //second_shower_search.h
150 
151  vars.m_sss_num_candidates = 0;
152 
153  vars.m_sss_candidate_in_nu_slice.clear();
154  vars.m_sss_candidate_num_hits.clear();
155  vars.m_sss_candidate_num_wires.clear();
156  vars.m_sss_candidate_num_ticks.clear();
157  vars.m_sss_candidate_plane.clear();
158  vars.m_sss_candidate_PCA.clear();
159  vars.m_sss_candidate_mean_ADC.clear();
160  vars.m_sss_candidate_ADC_RMS.clear();
162  vars.m_sss_candidate_fit_slope.clear();
163  vars.m_sss_candidate_veto_score.clear();
164  vars.m_sss_candidate_fit_constant.clear();
165  vars.m_sss_candidate_mean_tick.clear();
166  vars.m_sss_candidate_max_tick.clear();
167  vars.m_sss_candidate_min_tick.clear();
168  vars.m_sss_candidate_min_wire.clear();
169  vars.m_sss_candidate_max_wire.clear();
170  vars.m_sss_candidate_mean_wire.clear();
171  vars.m_sss_candidate_min_dist.clear();
173  vars.m_sss_candidate_energy.clear();
174  vars.m_sss_candidate_angle_to_shower.clear();
176  vars.m_sss_candidate_matched.clear();
178  vars.m_sss_candidate_pdg.clear();
179  vars.m_sss_candidate_parent_pdg.clear();
180  vars.m_sss_candidate_trackid.clear();
181  vars.m_sss_candidate_true_energy.clear();
183  vars.m_sss_candidate_remerge.clear();
184  }
185 
187 
188  vars.m_sss3d_num_showers = 0;
189  vars.m_sss3d_shower_start_x.clear();
190  vars.m_sss3d_shower_start_y.clear();
191  vars.m_sss3d_shower_start_z.clear();
192  vars.m_sss3d_shower_dir_x.clear();
193  vars.m_sss3d_shower_dir_y.clear();
194  vars.m_sss3d_shower_dir_z.clear();
195  vars.m_sss3d_shower_length.clear();
196  vars.m_sss3d_shower_conversion_dist.clear();
197  vars.m_sss3d_shower_invariant_mass.clear();
199  vars.m_sss3d_shower_impact_parameter.clear();
200  vars.m_sss3d_shower_energy_max.clear();
201  vars.m_sss3d_shower_score.clear();
202  vars.m_sss3d_slice_nu.clear();
203  vars.m_sss3d_slice_clear_cosmic.clear();
204  vars.m_sss3d_shower_ioc_ratio.clear();
205  }
206 
207  void ClearStubs(var_all& vars){
213  vars.m_trackstub_candidate_num_hits.clear();
214  vars.m_trackstub_candidate_num_wires.clear();
215  vars.m_trackstub_candidate_num_ticks.clear();
216  vars.m_trackstub_candidate_plane.clear();
217  vars.m_trackstub_candidate_PCA.clear();
218  vars.m_trackstub_candidate_mean_ADC.clear();
219  vars.m_trackstub_candidate_ADC_RMS.clear();
221  vars.m_trackstub_candidate_mean_tick.clear();
222  vars.m_trackstub_candidate_max_tick.clear();
223  vars.m_trackstub_candidate_min_tick.clear();
224  vars.m_trackstub_candidate_min_wire.clear();
225  vars.m_trackstub_candidate_max_wire.clear();
226  vars.m_trackstub_candidate_mean_wire.clear();
227  vars.m_trackstub_candidate_min_dist.clear();
238  vars.m_trackstub_candidate_energy.clear();
239  vars.m_trackstub_candidate_remerge.clear();
240  vars.m_trackstub_candidate_matched.clear();
242  vars.m_trackstub_candidate_pdg.clear();
244  vars.m_trackstub_candidate_trackid.clear();
247 
251  }
252 
254  vars.vertex_tree->Branch("sss_num_unassociated_hits",&vars.m_sss_num_unassociated_hits,"sss_num_unassociated_hits/I");
255  vars.vertex_tree->Branch("sss_num_unassociated_hits_below_threshold",&vars.m_sss_num_unassociated_hits_below_threshold,"sss_num_unassociated_hits_below_threshold/I");
256  vars.vertex_tree->Branch("sss_num_associated_hits",&vars.m_sss_num_associated_hits,"sss_num_associated_hits/I");
257 
258  vars.vertex_tree->Branch("sss_num_candidates",&vars.m_sss_num_candidates,"sss_num_candidates/I");
259  vars.vertex_tree->Branch("sss_candidate_veto_score",&vars.m_sss_candidate_veto_score);
260  vars.vertex_tree->Branch("sss_candidate_in_nu_slice", &vars.m_sss_candidate_in_nu_slice);
261  vars.vertex_tree->Branch("sss_candidate_num_hits",&vars.m_sss_candidate_num_hits);
262  vars.vertex_tree->Branch("sss_candidate_num_wires",&vars.m_sss_candidate_num_wires);
263  vars.vertex_tree->Branch("sss_candidate_num_ticks",&vars.m_sss_candidate_num_ticks);
264  vars.vertex_tree->Branch("sss_candidate_plane",&vars.m_sss_candidate_plane);
265  vars.vertex_tree->Branch("sss_candidate_PCA",&vars.m_sss_candidate_PCA);
266  vars.vertex_tree->Branch("sss_candidate_mean_ADC",&vars.m_sss_candidate_mean_ADC);
267  vars.vertex_tree->Branch("sss_candidate_ADC_RMS", &vars.m_sss_candidate_ADC_RMS);
268  vars.vertex_tree->Branch("sss_candidate_impact_parameter",&vars.m_sss_candidate_impact_parameter);
269  vars.vertex_tree->Branch("sss_candidate_fit_slope",&vars.m_sss_candidate_fit_slope);
270  vars.vertex_tree->Branch("sss_candidate_fit_constant",&vars.m_sss_candidate_fit_constant);
271  vars.vertex_tree->Branch("sss_candidate_mean_tick",&vars.m_sss_candidate_mean_tick);
272  vars.vertex_tree->Branch("sss_candidate_max_tick",&vars.m_sss_candidate_max_tick);
273  vars.vertex_tree->Branch("sss_candidate_min_tick",&vars.m_sss_candidate_min_tick);
274  vars.vertex_tree->Branch("sss_candidate_mean_wire",&vars.m_sss_candidate_mean_wire);
275  vars.vertex_tree->Branch("sss_candidate_max_wire",&vars.m_sss_candidate_max_wire);
276  vars.vertex_tree->Branch("sss_candidate_min_wire",&vars.m_sss_candidate_min_wire);
277  vars.vertex_tree->Branch("sss_candidate_min_dist",&vars.m_sss_candidate_min_dist);
278  vars.vertex_tree->Branch("sss_candidate_wire_tick_based_length", &vars.m_sss_candidate_wire_tick_based_length);
279  vars.vertex_tree->Branch("sss_candidate_energy",&vars.m_sss_candidate_energy);
280  vars.vertex_tree->Branch("sss_candidate_angle_to_shower",&vars.m_sss_candidate_angle_to_shower);
281  vars.vertex_tree->Branch("sss_candidate_closest_neighbour",&vars.m_sss_candidate_closest_neighbour);
282  vars.vertex_tree->Branch("sss_candidate_remerge",&vars.m_sss_candidate_remerge);
283 
284  vars.vertex_tree->Branch("sss_candidate_matched",&vars.m_sss_candidate_matched);
285  vars.vertex_tree->Branch("sss_candidate_pdg",&vars.m_sss_candidate_pdg);
286  vars.vertex_tree->Branch("sss_candidate_parent_pdg",&vars.m_sss_candidate_parent_pdg);
287  vars.vertex_tree->Branch("sss_candidate_trackid",&vars.m_sss_candidate_trackid);
288  vars.vertex_tree->Branch("sss_candidate_true_energy", &vars.m_sss_candidate_true_energy);
289  vars.vertex_tree->Branch("sss_candidate_overlay_fraction",&vars.m_sss_candidate_overlay_fraction);
290  vars.vertex_tree->Branch("sss_candidate_matched_energy_fraction_best_plane", &vars.m_sss_candidate_matched_energy_fraction_best_plane);
291 
292 
293  vars.vertex_tree->Branch("sss3d_ioc_ranked_en",&vars.m_sss3d_ioc_ranked_en);
294  vars.vertex_tree->Branch("sss3d_ioc_ranked_conv",&vars.m_sss3d_ioc_ranked_conv);
295  vars.vertex_tree->Branch("sss3d_ioc_ranked_invar",&vars.m_sss3d_ioc_ranked_invar);
296  vars.vertex_tree->Branch("sss3d_ioc_ranked_implied_invar",&vars.m_sss3d_ioc_ranked_implied_invar);
297  vars.vertex_tree->Branch("sss3d_ioc_ranked_ioc",&vars.m_sss3d_ioc_ranked_ioc);
298  vars.vertex_tree->Branch("sss3d_ioc_ranked_opang",&vars.m_sss3d_ioc_ranked_opang);
299  vars.vertex_tree->Branch("sss3d_ioc_ranked_implied_opang",&vars.m_sss3d_ioc_ranked_implied_opang);
300  vars.vertex_tree->Branch("sss3d_ioc_ranked_id",&vars.m_sss3d_ioc_ranked_id);
301 
302  vars.vertex_tree->Branch("sss3d_invar_ranked_en",&vars.m_sss3d_invar_ranked_en);
303  vars.vertex_tree->Branch("sss3d_invar_ranked_conv",&vars.m_sss3d_invar_ranked_conv);
304  vars.vertex_tree->Branch("sss3d_invar_ranked_invar",&vars.m_sss3d_invar_ranked_invar);
305  vars.vertex_tree->Branch("sss3d_invar_ranked_implied_invar",&vars.m_sss3d_invar_ranked_implied_invar);
306  vars.vertex_tree->Branch("sss3d_invar_ranked_ioc",&vars.m_sss3d_invar_ranked_ioc);
307  vars.vertex_tree->Branch("sss3d_invar_ranked_opang",&vars.m_sss3d_invar_ranked_opang);
308  vars.vertex_tree->Branch("sss3d_invar_ranked_implied_opang",&vars.m_sss3d_invar_ranked_implied_opang);
309  vars.vertex_tree->Branch("sss3d_invar_ranked_id",&vars.m_sss3d_invar_ranked_id);
310 
311 
312  vars.vertex_tree->Branch("sss2d_ioc_ranked_en",&vars.m_sss2d_ioc_ranked_en);
313  vars.vertex_tree->Branch("sss2d_ioc_ranked_conv",&vars.m_sss2d_ioc_ranked_conv);
314  vars.vertex_tree->Branch("sss2d_ioc_ranked_ioc",&vars.m_sss2d_ioc_ranked_ioc);
315  vars.vertex_tree->Branch("sss2d_ioc_ranked_pca",&vars.m_sss2d_ioc_ranked_pca);
316  vars.vertex_tree->Branch("sss2d_ioc_ranked_invar",&vars.m_sss2d_ioc_ranked_invar);
317  vars.vertex_tree->Branch("sss2d_ioc_ranked_angle_to_shower",&vars.m_sss2d_ioc_ranked_angle_to_shower);
318  vars.vertex_tree->Branch("sss2d_ioc_ranked_num_planes",&vars.m_sss2d_ioc_ranked_num_planes);
319 
320  vars.vertex_tree->Branch("sss2d_invar_ranked_en",&vars.m_sss2d_invar_ranked_en);
321  vars.vertex_tree->Branch("sss2d_invar_ranked_conv",&vars.m_sss2d_invar_ranked_conv);
322  vars.vertex_tree->Branch("sss2d_invar_ranked_ioc",&vars.m_sss2d_invar_ranked_ioc);
323  vars.vertex_tree->Branch("sss2d_invar_ranked_pca",&vars.m_sss2d_invar_ranked_pca);
324  vars.vertex_tree->Branch("sss2d_invar_ranked_invar",&vars.m_sss2d_invar_ranked_invar);
325  vars.vertex_tree->Branch("sss2d_invar_ranked_angle_to_shower",&vars.m_sss2d_invar_ranked_angle_to_shower);
326  vars.vertex_tree->Branch("sss2d_invar_ranked_num_planes",&vars.m_sss2d_invar_ranked_num_planes);
327 
328  vars.vertex_tree->Branch("sss2d_conv_ranked_en",&vars.m_sss2d_conv_ranked_en);
329  vars.vertex_tree->Branch("sss2d_conv_ranked_conv",&vars.m_sss2d_conv_ranked_conv);
330  vars.vertex_tree->Branch("sss2d_conv_ranked_ioc",&vars.m_sss2d_conv_ranked_ioc);
331  vars.vertex_tree->Branch("sss2d_conv_ranked_pca",&vars.m_sss2d_conv_ranked_pca);
332  vars.vertex_tree->Branch("sss2d_conv_ranked_invar",&vars.m_sss2d_conv_ranked_invar);
333  vars.vertex_tree->Branch("sss2d_conv_ranked_angle_to_shower",&vars.m_sss2d_conv_ranked_angle_to_shower);
334  vars.vertex_tree->Branch("sss2d_conv_ranked_num_planes",&vars.m_sss2d_conv_ranked_num_planes);
335 
336  }
337 
339  vars.vertex_tree->Branch("sss3d_num_showers",&vars.m_sss3d_num_showers,"sss3d_num_showers/I");
340 
341  vars.vertex_tree->Branch("sss3d_shower_start_x",&vars.m_sss3d_shower_start_x);
342  vars.vertex_tree->Branch("sss3d_shower_start_y",&vars.m_sss3d_shower_start_y);
343  vars.vertex_tree->Branch("sss3d_shower_start_z",&vars.m_sss3d_shower_start_z);
344  vars.vertex_tree->Branch("sss3d_shower_dir_x",&vars.m_sss3d_shower_dir_x);
345  vars.vertex_tree->Branch("sss3d_shower_dir_y",&vars.m_sss3d_shower_dir_y);
346  vars.vertex_tree->Branch("sss3d_shower_dir_z",&vars.m_sss3d_shower_dir_z);
347 
348  vars.vertex_tree->Branch("sss3d_shower_length",&vars.m_sss3d_shower_length);
349  vars.vertex_tree->Branch("sss3d_shower_conversion_dist",&vars.m_sss3d_shower_conversion_dist);
350  vars.vertex_tree->Branch("sss3d_shower_invariant_mass",&vars.m_sss3d_shower_invariant_mass);
351  vars.vertex_tree->Branch("sss3d_shower_implied_invariant_mass",&vars.m_sss3d_shower_implied_invariant_mass);
352  vars.vertex_tree->Branch("sss3d_shower_impact_parameter",&vars.m_sss3d_shower_impact_parameter);
353  vars.vertex_tree->Branch("sss3d_shower_ioc_ratio",&vars.m_sss3d_shower_ioc_ratio);
354  vars.vertex_tree->Branch("sss3d_shower_energy_max",&vars.m_sss3d_shower_energy_max);
355  vars.vertex_tree->Branch("sss3d_shower_score",&vars.m_sss3d_shower_score);
356  vars.vertex_tree->Branch("sss3d_slice_nu",&vars.m_sss3d_slice_nu);
357  vars.vertex_tree->Branch("sss3d_slice_clear_cosmic",&vars.m_sss3d_slice_clear_cosmic);
358  }
359 
361 
362  vars.vertex_tree->Branch("trackstub_num_unassociated_hits",&vars.m_trackstub_num_unassociated_hits,"trackstub_num_unassociated_hits/I");
363  vars.vertex_tree->Branch("trackstub_unassociated_hits_below_threshold",&vars.m_trackstub_unassociated_hits_below_threshold,"trackstub_unassociated_hits_below_threshold/I");
364  vars.vertex_tree->Branch("trackstub_associated_hits",&vars.m_trackstub_associated_hits,"trackstub_associated_hits/I");
365  vars.vertex_tree->Branch("trackstub_num_candidates", &vars.m_trackstub_num_candidates, "trackstub_num_candidates/I");
366  vars.vertex_tree->Branch("trackstub_candidate_in_nu_slice", &vars.m_trackstub_candidate_in_nu_slice);
367  vars.vertex_tree->Branch("trackstub_candidate_num_hits", &vars.m_trackstub_candidate_num_hits);
368  vars.vertex_tree->Branch("trackstub_candidate_num_wires", &vars.m_trackstub_candidate_num_wires);
369  vars.vertex_tree->Branch("trackstub_candidate_num_ticks", &vars.m_trackstub_candidate_num_ticks);
370  vars.vertex_tree->Branch("trackstub_candidate_plane", &vars.m_trackstub_candidate_plane);
371  vars.vertex_tree->Branch("trackstub_candidate_PCA", &vars.m_trackstub_candidate_PCA);
372  vars.vertex_tree->Branch("trackstub_candidate_mean_ADC", &vars.m_trackstub_candidate_mean_ADC);
373  vars.vertex_tree->Branch("trackstub_candidate_ADC_RMS", &vars.m_trackstub_candidate_ADC_RMS);
374  vars.vertex_tree->Branch("trackstub_candidate_veto_score", &vars.m_trackstub_candidate_veto_score);
375  vars.vertex_tree->Branch("trackstub_candidate_mean_tick", &vars.m_trackstub_candidate_mean_tick);
376  vars.vertex_tree->Branch("trackstub_candidate_max_tick", &vars.m_trackstub_candidate_max_tick);
377  vars.vertex_tree->Branch("trackstub_candidate_min_tick", &vars.m_trackstub_candidate_min_tick);
378  vars.vertex_tree->Branch("trackstub_candidate_min_wire", &vars.m_trackstub_candidate_min_wire);
379  vars.vertex_tree->Branch("trackstub_candidate_max_wire", &vars.m_trackstub_candidate_max_wire);
380  vars.vertex_tree->Branch("trackstub_candidate_mean_wire", &vars.m_trackstub_candidate_mean_wire);
381  vars.vertex_tree->Branch("trackstub_candidate_min_dist", &vars.m_trackstub_candidate_min_dist);
382  vars.vertex_tree->Branch("trackstub_candidate_min_impact_parameter_to_shower", &vars.m_trackstub_candidate_min_impact_parameter_to_shower);
383  vars.vertex_tree->Branch("trackstub_candidate_min_conversion_dist_to_shower_start", &vars.m_trackstub_candidate_min_conversion_dist_to_shower_start);
384  vars.vertex_tree->Branch("trackstub_candidate_min_ioc_to_shower_start", &vars.m_trackstub_candidate_min_ioc_to_shower_start);
385  vars.vertex_tree->Branch("trackstub_candidate_ioc_based_length", &vars.m_trackstub_candidate_ioc_based_length);
386  vars.vertex_tree->Branch("trackstub_candidate_wire_tick_based_length", &vars.m_trackstub_candidate_wire_tick_based_length);
387  vars.vertex_tree->Branch("trackstub_candidate_mean_ADC_first_half", &vars.m_trackstub_candidate_mean_ADC_first_half);
388  vars.vertex_tree->Branch("trackstub_candidate_mean_ADC_second_half", &vars.m_trackstub_candidate_mean_ADC_second_half);
389  vars.vertex_tree->Branch("trackstub_candidate_mean_ADC_first_to_second_ratio", &vars.m_trackstub_candidate_mean_ADC_first_to_second_ratio);
390  vars.vertex_tree->Branch("trackstub_candidate_track_angle_wrt_shower_direction", &vars.m_trackstub_candidate_track_angle_wrt_shower_direction);
391  vars.vertex_tree->Branch("trackstub_candidate_linear_fit_chi2", &vars.m_trackstub_candidate_linear_fit_chi2);
392  vars.vertex_tree->Branch("trackstub_candidate_energy", &vars.m_trackstub_candidate_energy);
393  vars.vertex_tree->Branch("trackstub_candidate_remerge", &vars.m_trackstub_candidate_remerge);
394  vars.vertex_tree->Branch("trackstub_candidate_matched", &vars.m_trackstub_candidate_matched);
395  vars.vertex_tree->Branch("trackstub_candidate_matched_energy_fraction_best_plane", &vars.m_trackstub_candidate_matched_energy_fraction_best_plane);
396  vars.vertex_tree->Branch("trackstub_candidate_pdg", &vars.m_trackstub_candidate_pdg);
397  vars.vertex_tree->Branch("trackstub_candidate_parent_pdg", &vars.m_trackstub_candidate_parent_pdg);
398  vars.vertex_tree->Branch("trackstub_candidate_trackid", &vars.m_trackstub_candidate_trackid);
399  vars.vertex_tree->Branch("trackstub_candidate_true_energy", &vars.m_trackstub_candidate_true_energy);
400  vars.vertex_tree->Branch("trackstub_candidate_overlay_fraction", &vars.m_trackstub_candidate_overlay_fraction);
401 
402 
403  vars.vertex_tree->Branch("trackstub_num_candidate_groups", &vars.m_trackstub_num_candidate_groups, "trackstub_num_candidate_groups/I");
404  vars.vertex_tree->Branch("grouped_trackstub_candidate_indices", &vars.m_grouped_trackstub_candidate_indices);
405  vars.vertex_tree->Branch("trackstub_candidate_group_timeoverlap_fraction", &vars.m_trackstub_candidate_group_timeoverlap_fraction);
406 
407  }
408 
409 // void ResizeSecondShowers(size_t size){}
410 
411  //analyze_OpFlashes.h
412  void ClearFlashes(var_all& vars){
413  vars.m_reco_num_flashes =0;
415  vars.m_reco_flash_total_pe.clear();
416  vars.m_reco_flash_time.clear();
417  vars.m_reco_flash_time_width.clear();
418  vars.m_reco_flash_abs_time.clear();
419  vars.m_reco_flash_frame.clear();
420  vars.m_reco_flash_ycenter.clear();
421  vars.m_reco_flash_ywidth.clear();
422  vars.m_reco_flash_zcenter.clear();
423  vars.m_reco_flash_zwidth.clear();
425  vars.m_reco_flash_time_in_beamgate.clear();
428  vars.m_CRT_veto_nhits = -999;
429  vars.m_CRT_veto_hit_PE.clear();
430  vars.m_CRT_min_hit_time = -999;
431  vars.m_CRT_min_hit_PE = -999;
432  vars.m_CRT_min_hit_x = -999;
433  vars.m_CRT_min_hit_y = -999;
434  vars.m_CRT_min_hit_z = -999;
435  vars.m_CRT_hits_time.clear();
436  vars.m_CRT_hits_PE.clear();
437  vars.m_CRT_hits_x.clear();
438  vars.m_CRT_hits_y.clear();
439  vars.m_CRT_hits_z.clear();
440  vars.m_CRT_dt = -999;
441 
442  }
443 
445 // vars.vertex_tree->Branch("beamgate_flash_start",&vars.m_beamgate_flash_start,"beamgate_flash_start/D");
446 // vars.vertex_tree->Branch("beamgate_flash_end",&vars.m_beamgate_flash_end,"beamgate_flash_end/D");
447  vars.vertex_tree->Branch("reco_num_flashes",&vars.m_reco_num_flashes,"reco_num_flashes/I");
448  vars.vertex_tree->Branch("reco_num_flashes_in_beamgate",&vars.m_reco_num_flashes_in_beamgate,"reco_num_flashes_in_beamgate/I");
449  vars.vertex_tree->Branch("reco_flash_total_pe", &vars.m_reco_flash_total_pe);
450  vars.vertex_tree->Branch("reco_flash_time", &vars.m_reco_flash_time);
451  vars.vertex_tree->Branch("reco_flash_time_width",&vars.m_reco_flash_time_width);
452  vars.vertex_tree->Branch("reco_flash_abs_time",&vars.m_reco_flash_abs_time);
453  vars.vertex_tree->Branch("reco_flash_frame",&vars.m_reco_flash_frame);
454  vars.vertex_tree->Branch("reco_flash_ycenter",&vars.m_reco_flash_ycenter);
455  vars.vertex_tree->Branch("reco_flash_ywidth",&vars.m_reco_flash_ywidth);
456  vars.vertex_tree->Branch("reco_flash_zcenter",&vars.m_reco_flash_zcenter);
457  vars.vertex_tree->Branch("reco_flash_zwidth",&vars.m_reco_flash_zwidth);
458  vars.vertex_tree->Branch("reco_flash_total_pe_in_beamgate", &vars.m_reco_flash_total_pe_in_beamgate);
459  vars.vertex_tree->Branch("reco_flash_time_in_beamgate", &vars.m_reco_flash_time_in_beamgate);
460  vars.vertex_tree->Branch("reco_flash_ycenter_in_beamgate",&vars.m_reco_flash_ycenter_in_beamgate);
461  vars.vertex_tree->Branch("reco_flash_zcenter_in_beamgate",&vars.m_reco_flash_zcenter_in_beamgate);
462 
463  vars.vertex_tree->Branch("CRT_veto_nhits",&vars.m_CRT_veto_nhits,"CRT_veto_nhits/I");
464  vars.vertex_tree->Branch("CRT_veto_hit_PE",&vars.m_CRT_veto_hit_PE);
465  vars.vertex_tree->Branch("CRT_dt",& vars.m_CRT_dt," CRT_dt/D");
466  vars.vertex_tree->Branch("CRT_min_hit_time",&vars.m_CRT_min_hit_time,"CRT_min_hit_time/D");
467  vars.vertex_tree->Branch("CRT_min_hit_PE",&vars.m_CRT_min_hit_PE,"CRT_min_hit_PE/D");
468  vars.vertex_tree->Branch("CRT_min_hit_x",&vars.m_CRT_min_hit_x,"CRT_min_hit_x/D");
469  vars.vertex_tree->Branch("CRT_min_hit_y",&vars.m_CRT_min_hit_y,"CRT_min_hit_y/D");
470  vars.vertex_tree->Branch("CRT_min_hit_z",&vars.m_CRT_min_hit_z,"CRT_min_hit_z/D");
471  vars.vertex_tree->Branch("CRT_hits_time",&vars.m_CRT_hits_time);
472  vars.vertex_tree->Branch("CRT_hits_PE",&vars.m_CRT_hits_PE);
473  vars.vertex_tree->Branch("CRT_hits_x",&vars.m_CRT_hits_x);
474  vars.vertex_tree->Branch("CRT_hits_y",&vars.m_CRT_hits_y);
475  vars.vertex_tree->Branch("CRT_hits_z",&vars.m_CRT_hits_z);
476  }
477 
478  void ResizeFlashes(size_t size, var_all& vars){
479  vars.m_reco_flash_total_pe.resize(size);
480  vars.m_reco_flash_time.resize(size);
481  vars.m_reco_flash_time_width.resize(size);
482  vars.m_reco_flash_abs_time.resize(size);
483  vars.m_reco_flash_frame.resize(size);
484  vars.m_reco_flash_ycenter.resize(size);
485  vars.m_reco_flash_ywidth.resize(size);
486  vars.m_reco_flash_zcenter.resize(size);
487  vars.m_reco_flash_zwidth.resize(size);
488  vars.m_reco_flash_total_pe_in_beamgate.resize(size);
489  vars.m_reco_flash_time_in_beamgate.resize(size);
490  vars.m_reco_flash_ycenter_in_beamgate.resize(size);
491  vars.m_reco_flash_zcenter_in_beamgate.resize(size);
492  vars.m_CRT_veto_hit_PE.resize(size);
493 
494  vars.m_CRT_hits_time.resize(size);
495  vars.m_CRT_hits_PE.resize(size);
496  vars.m_CRT_hits_x.resize(size);
497  vars.m_CRT_hits_y.resize(size);
498  vars.m_CRT_hits_z.resize(size);
499  }
500 
501  //analyze_Tracks.h
502  void ClearTracks(var_all& vars){
503  vars.m_reco_asso_tracks=0;
504  vars.m_reco_track_length.clear();
505  vars.m_reco_track_num_daughters.clear();
507  vars.m_reco_track_dirx.clear();
508  vars.m_reco_track_diry.clear();
509  vars.m_reco_track_dirz.clear();
510  vars.m_reco_track_startx.clear();
511  vars.m_reco_track_starty.clear();
512  vars.m_reco_track_startz.clear();
513  vars.m_reco_track_endx.clear();
514  vars.m_reco_track_endy.clear();
515  vars.m_reco_track_endz.clear();
518  vars.m_reco_track_end_dist_to_CPA.clear();
519  vars.m_reco_track_start_dist_to_CPA.clear();
520  vars.m_reco_track_end_dist_to_SCB.clear();
521  vars.m_reco_track_start_dist_to_SCB.clear();
522  vars.m_reco_track_end_in_SCB.clear();
523  vars.m_reco_track_start_in_SCB.clear();
524 
525  vars.m_reco_track_theta_yz.clear();
526  vars.m_reco_track_phi_yx.clear();
527 
528  vars.m_reco_track_calo_energy_plane0.clear();
529  vars.m_reco_track_calo_energy_plane1.clear();
530  vars.m_reco_track_calo_energy_plane2.clear();
531  vars.m_reco_track_calo_energy_max.clear();
532 
533  vars.m_reco_track_num_trajpoints.clear();
534  vars.m_reco_track_num_spacepoints.clear();
538 
542 
543  vars.m_reco_track_spacepoint_chi.clear();
545 
546  vars.m_reco_track_best_calo_plane.clear();
547 
558  vars.m_reco_track_dEdx_best_plane.clear();
559 
560 
561  vars.m_reco_track_mean_dEdx_p0.clear();
564  vars.m_reco_track_good_calo_p0.clear();
565  vars.m_reco_track_trunc_dEdx_p0.clear();
566  vars.m_reco_track_mean_trunc_dEdx_p0.clear();
569  vars.m_reco_track_trunc_PIDA_p0.clear();
570  vars.m_reco_track_resrange_p0.clear();
571  vars.m_reco_track_dEdx_p0.clear();
572 
573  vars.m_reco_track_mean_dEdx_p1.clear();
576  vars.m_reco_track_good_calo_p1.clear();
577  vars.m_reco_track_trunc_dEdx_p1.clear();
578  vars.m_reco_track_mean_trunc_dEdx_p1.clear();
581  vars.m_reco_track_trunc_PIDA_p1.clear();
582  vars.m_reco_track_resrange_p1.clear();
583  vars.m_reco_track_dEdx_p1.clear();
584 
585  vars.m_reco_track_mean_dEdx_p2.clear();
588  vars.m_reco_track_good_calo_p2.clear();
589  vars.m_reco_track_trunc_dEdx_p2.clear();
590  vars.m_reco_track_mean_trunc_dEdx_p2.clear();
593  vars.m_reco_track_trunc_PIDA_p2.clear();
594  vars.m_reco_track_resrange_p2.clear();
595  vars.m_reco_track_dEdx_p2.clear();
596 
597  vars.m_reco_track_num_calo_hits_p1.clear();
598  vars.m_reco_track_num_calo_hits_p0.clear();
599  vars.m_reco_track_num_calo_hits_p2.clear();
600 
601  vars.m_sim_track_matched.clear();
602  vars.m_sim_track_overlay_fraction.clear();
603  vars.m_sim_track_energy.clear();
604  vars.m_sim_track_kinetic_energy.clear();
605  vars.m_sim_track_mass.clear();
606  vars.m_sim_track_pdg.clear();
607  vars.m_sim_track_origin.clear();
608  vars.m_sim_track_parent_pdg.clear();
609  vars.m_sim_track_process.clear();
610  vars.m_sim_track_startx.clear();
611  vars.m_sim_track_starty.clear();
612  vars.m_sim_track_startz.clear();
613  vars.m_sim_track_endx.clear();
614  vars.m_sim_track_endy.clear();
615  vars.m_sim_track_endz.clear();
616  vars.m_sim_track_length.clear();
617 
618  vars.m_sim_track_px.clear();
619  vars.m_sim_track_py.clear();
620  vars.m_sim_track_pz.clear();
621  vars.m_sim_track_trackID.clear();
622 
623  // PID
633  vars.m_reco_track_pid_chi2_mu_plane0.clear();
634  vars.m_reco_track_pid_chi2_mu_plane1.clear();
635  vars.m_reco_track_pid_chi2_mu_plane2.clear();
636  vars.m_reco_track_pid_chi2_p_plane0.clear();
637  vars.m_reco_track_pid_chi2_p_plane1.clear();
638  vars.m_reco_track_pid_chi2_p_plane2.clear();
639  vars.m_reco_track_pid_pida_plane0.clear();
640  vars.m_reco_track_pid_pida_plane1.clear();
641  vars.m_reco_track_pid_pida_plane2.clear();
643 
644 // vars.m_reco_track_end_to_nearest_dead_wire_plane0.clear();
645 // vars.m_reco_track_end_to_nearest_dead_wire_plane1.clear();
646 // vars.m_reco_track_end_to_nearest_dead_wire_plane2.clear();
647 
648  vars.m_reco_track_sliceId.clear();
649  vars.m_reco_track_nuscore.clear();
650  vars.m_reco_track_isclearcosmic.clear();
651  vars.m_reco_track_trackscore.clear();
652  vars.m_reco_track_pfparticle_pdg.clear();
653  vars.m_reco_track_is_nuslice.clear();
654 
655  vars.m_sim_track_sliceId.clear();
656  vars.m_sim_track_nuscore.clear();
657  vars.m_sim_track_isclearcosmic.clear();
658  }
659 
661  vars.vertex_tree->Branch("reco_asso_tracks",&vars.m_reco_asso_tracks,"reco_asso_tracks/I");
662  vars.vertex_tree->Branch("reco_track_num_daughters",&vars.m_reco_track_num_daughters);
663  vars.vertex_tree->Branch("reco_track_daughter_trackscore",&vars.m_reco_track_daughter_trackscore);
664  vars.vertex_tree->Branch("reco_track_displacement", &vars.m_reco_track_length);
665  vars.vertex_tree->Branch("reco_track_dirx", &vars.m_reco_track_dirx);
666  vars.vertex_tree->Branch("reco_track_diry", &vars.m_reco_track_diry);
667  vars.vertex_tree->Branch("reco_track_dirz", &vars.m_reco_track_dirz);
668  vars.vertex_tree->Branch("reco_track_startx", &vars.m_reco_track_startx);
669  vars.vertex_tree->Branch("reco_track_starty", &vars.m_reco_track_starty);
670  vars.vertex_tree->Branch("reco_track_startz", &vars.m_reco_track_startz);
671 
672  vars.vertex_tree->Branch("reco_track_endx", &vars.m_reco_track_endx);
673  vars.vertex_tree->Branch("reco_track_endy", &vars.m_reco_track_endy);
674  vars.vertex_tree->Branch("reco_track_endz", &vars.m_reco_track_endz);
675  vars.vertex_tree->Branch("reco_track_end_dist_to_active_TPC", &vars.m_reco_track_end_dist_to_active_TPC);
676  vars.vertex_tree->Branch("reco_track_start_dist_to_active_TPC", &vars.m_reco_track_start_dist_to_active_TPC);
677  vars.vertex_tree->Branch("reco_track_end_dist_to_CPA", &vars.m_reco_track_end_dist_to_CPA);
678  vars.vertex_tree->Branch("reco_track_start_dist_to_CPA", &vars.m_reco_track_start_dist_to_CPA);
679  vars.vertex_tree->Branch("reco_track_end_dist_to_SCB", &vars.m_reco_track_end_dist_to_SCB);
680  vars.vertex_tree->Branch("reco_track_start_dist_to_SCB", &vars.m_reco_track_start_dist_to_SCB);
681  vars.vertex_tree->Branch("reco_track_end_in_SCB", &vars.m_reco_track_end_in_SCB);
682  vars.vertex_tree->Branch("reco_track_start_in_SCB", &vars.m_reco_track_start_in_SCB);
683 
684 
685  vars.vertex_tree->Branch("reco_track_theta_yz", &vars.m_reco_track_theta_yz);
686  vars.vertex_tree->Branch("reco_track_phi_yx", &vars.m_reco_track_phi_yx);
687 
688  vars.vertex_tree->Branch("reco_track_calo_energy_plane0", &vars.m_reco_track_calo_energy_plane0);
689  vars.vertex_tree->Branch("reco_track_calo_energy_plane1", &vars.m_reco_track_calo_energy_plane1);
690  vars.vertex_tree->Branch("reco_track_calo_energy_plane2", &vars.m_reco_track_calo_energy_plane2);
691  vars.vertex_tree->Branch("reco_track_calo_energy_max", &vars.m_reco_track_calo_energy_max);
692 
693  vars.vertex_tree->Branch("reco_track_num_trajpoints", &vars.m_reco_track_num_trajpoints);
694  vars.vertex_tree->Branch("reco_track_num_spacepoints", &vars.m_reco_track_num_spacepoints);
695  vars.vertex_tree->Branch("reco_track_proton_kinetic_energy", &vars.m_reco_track_proton_kinetic_energy);
696  vars.vertex_tree->Branch("reco_track_ordered_energy_index", &vars.m_reco_track_ordered_energy_index);
697  vars.vertex_tree->Branch("reco_track_ordered_displacement_index", &vars.m_reco_track_ordered_displacement_index);
698  vars.vertex_tree->Branch("i_trk", &vars.m_reco_track_ordered_displacement_index);
699 
700  vars.vertex_tree->Branch("reco_track_spacepoint_principal0",&vars.m_reco_track_spacepoint_principal0);
701  vars.vertex_tree->Branch("reco_track_spacepoint_principal1",&vars.m_reco_track_spacepoint_principal1);
702  vars.vertex_tree->Branch("reco_track_spacepoint_principal2",&vars.m_reco_track_spacepoint_principal2);
703 
704  vars.vertex_tree->Branch("reco_track_spacepoint_chi",&vars.m_reco_track_spacepoint_chi);
705  vars.vertex_tree->Branch("reco_track_spacepoint_max_dist",&vars.m_reco_track_spacepoint_max_dist);
706 
707  vars.vertex_tree->Branch("reco_track_best_calo_plane",&vars.m_reco_track_best_calo_plane);
708 
709  vars.vertex_tree->Branch("reco_track_mean_dEdx_best_plane",&vars.m_reco_track_mean_dEdx_best_plane);
710  vars.vertex_tree->Branch("reco_track_mean_dEdx_plane0",&vars.m_reco_track_mean_dEdx_p0);
711  vars.vertex_tree->Branch("reco_track_mean_dEdx_plane1",&vars.m_reco_track_mean_dEdx_p1);
712  vars.vertex_tree->Branch("reco_track_mean_dEdx_plane2",&vars.m_reco_track_mean_dEdx_p2);
713 
714  vars.vertex_tree->Branch("reco_track_mean_dEdx_start_half_best_plane",&vars.m_reco_track_mean_dEdx_end_half_best_plane);
715  vars.vertex_tree->Branch("reco_track_mean_dEdx_start_half_plane0",&vars.m_reco_track_mean_dEdx_end_half_p0);
716  vars.vertex_tree->Branch("reco_track_mean_dEdx_start_half_plane1",&vars.m_reco_track_mean_dEdx_end_half_p1);
717  vars.vertex_tree->Branch("reco_track_mean_dEdx_start_half_plane2",&vars.m_reco_track_mean_dEdx_end_half_p2);
718 
719  vars.vertex_tree->Branch("reco_track_mean_dEdx_end_half_best_plane",&vars.m_reco_track_mean_dEdx_start_half_best_plane);
720  vars.vertex_tree->Branch("reco_track_mean_dEdx_end_half_plane0",&vars.m_reco_track_mean_dEdx_start_half_p0);
721  vars.vertex_tree->Branch("reco_track_mean_dEdx_end_half_plane1",&vars.m_reco_track_mean_dEdx_start_half_p1);
722  vars.vertex_tree->Branch("reco_track_mean_dEdx_end_half_plane2",&vars.m_reco_track_mean_dEdx_start_half_p2);
723 
724  vars.vertex_tree->Branch("reco_track_good_calo_best_plane",&vars.m_reco_track_good_calo_best_plane);
725  vars.vertex_tree->Branch("reco_track_good_calo_plane0",&vars.m_reco_track_good_calo_p0);
726  vars.vertex_tree->Branch("reco_track_good_calo_plane1",&vars.m_reco_track_good_calo_p1);
727  vars.vertex_tree->Branch("reco_track_good_calo_plane2",&vars.m_reco_track_good_calo_p2);
728 
729  vars.vertex_tree->Branch("reco_track_trunc_dEdx_best_plane",&vars.m_reco_track_trunc_dEdx_best_plane);
730  vars.vertex_tree->Branch("reco_track_trunc_dEdx_plane0",&vars.m_reco_track_trunc_dEdx_p0);
731  vars.vertex_tree->Branch("reco_track_trunc_dEdx_plane1",&vars.m_reco_track_trunc_dEdx_p1);
732  vars.vertex_tree->Branch("reco_track_trunc_dEdx_plane2",&vars.m_reco_track_trunc_dEdx_p2);
733 
734  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_best_plane",&vars.m_reco_track_mean_trunc_dEdx_best_plane);
735  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_plane0",&vars.m_reco_track_mean_trunc_dEdx_p0);
736  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_plane1",&vars.m_reco_track_mean_trunc_dEdx_p1);
737  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_plane2",&vars.m_reco_track_mean_trunc_dEdx_p2);
738 
739  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_start_half_best_plane",&vars.m_reco_track_mean_trunc_dEdx_end_half_best_plane);
740  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_start_half_plane0",&vars.m_reco_track_mean_trunc_dEdx_end_half_p0);
741  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_start_half_plane1",&vars.m_reco_track_mean_trunc_dEdx_end_half_p1);
742  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_start_half_plane2",&vars.m_reco_track_mean_trunc_dEdx_end_half_p2);
743 
744  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_end_half_best_plane",&vars.m_reco_track_mean_trunc_dEdx_start_half_best_plane);
745  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_end_half_plane0",&vars.m_reco_track_mean_trunc_dEdx_start_half_p0);
746  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_end_half_plane1",&vars.m_reco_track_mean_trunc_dEdx_start_half_p1);
747  vars.vertex_tree->Branch("reco_track_mean_trunc_dEdx_end_half_plane2",&vars.m_reco_track_mean_trunc_dEdx_start_half_p2);
748 
749  vars.vertex_tree->Branch("reco_track_trunc_PIDA_best_plane",&vars.m_reco_track_trunc_PIDA_best_plane);
750  vars.vertex_tree->Branch("reco_track_trunc_PIDA_plane0",&vars.m_reco_track_trunc_PIDA_p0);
751  vars.vertex_tree->Branch("reco_track_trunc_PIDA_plane1",&vars.m_reco_track_trunc_PIDA_p1);
752  vars.vertex_tree->Branch("reco_track_trunc_PIDA_plane2",&vars.m_reco_track_trunc_PIDA_p2);
753 
754  vars.vertex_tree->Branch("reco_track_resrange_best_plane",&vars.m_reco_track_resrange_best_plane);
755  vars.vertex_tree->Branch("reco_track_resrange_plane0",&vars.m_reco_track_resrange_p0);
756  vars.vertex_tree->Branch("reco_track_resrange_plane1",&vars.m_reco_track_resrange_p1);
757  vars.vertex_tree->Branch("reco_track_resrange_plane2",&vars.m_reco_track_resrange_p2);
758 
759  vars.vertex_tree->Branch("reco_track_dEdx_best_plane",&vars.m_reco_track_dEdx_best_plane);
760  vars.vertex_tree->Branch("reco_track_dEdx_plane0",&vars.m_reco_track_dEdx_p0);
761  vars.vertex_tree->Branch("reco_track_dEdx_plane1",&vars.m_reco_track_dEdx_p1);
762  vars.vertex_tree->Branch("reco_track_dEdx_plane2",&vars.m_reco_track_dEdx_p2);
763 
764  vars.vertex_tree->Branch("reco_track_num_calo_hits_plane0",&vars.m_reco_track_num_calo_hits_p0);
765  vars.vertex_tree->Branch("reco_track_num_calo_hits_plane1",&vars.m_reco_track_num_calo_hits_p1);
766  vars.vertex_tree->Branch("reco_track_num_calo_hits_plane2",&vars.m_reco_track_num_calo_hits_p2);
767 
768 
769 
770  vars.vertex_tree->Branch("reco_track_pid_bragg_likelihood_mu_plane0",&vars.m_reco_track_pid_bragg_likelihood_mu_plane0);
771  vars.vertex_tree->Branch("reco_track_pid_bragg_likelihood_mu_plane1",&vars.m_reco_track_pid_bragg_likelihood_mu_plane1);
772  vars.vertex_tree->Branch("reco_track_pid_bragg_likelihood_mu_plane2",&vars.m_reco_track_pid_bragg_likelihood_mu_plane2);
773  vars.vertex_tree->Branch("reco_track_pid_bragg_likelihood_p_plane0",&vars.m_reco_track_pid_bragg_likelihood_p_plane0);
774  vars.vertex_tree->Branch("reco_track_pid_bragg_likelihood_p_plane1",&vars.m_reco_track_pid_bragg_likelihood_p_plane1);
775  vars.vertex_tree->Branch("reco_track_pid_bragg_likelihood_p_plane2",&vars.m_reco_track_pid_bragg_likelihood_p_plane2);
776  vars.vertex_tree->Branch("reco_track_pid_bragg_likelihood_mip_plane0",&vars.m_reco_track_pid_bragg_likelihood_mip_plane0);
777  vars.vertex_tree->Branch("reco_track_pid_bragg_likelihood_mip_plane1",&vars.m_reco_track_pid_bragg_likelihood_mip_plane1);
778  vars.vertex_tree->Branch("reco_track_pid_bragg_likelihood_mip_plane2",&vars.m_reco_track_pid_bragg_likelihood_mip_plane2);
779  vars.vertex_tree->Branch("reco_track_pid_chi2_mu_plane0",&vars.m_reco_track_pid_chi2_mu_plane0);
780  vars.vertex_tree->Branch("reco_track_pid_chi2_mu_plane1",&vars.m_reco_track_pid_chi2_mu_plane1);
781  vars.vertex_tree->Branch("reco_track_pid_chi2_mu_plane2",&vars.m_reco_track_pid_chi2_mu_plane2);
782  vars.vertex_tree->Branch("reco_track_pid_chi2_p_plane0",&vars.m_reco_track_pid_chi2_p_plane0);
783  vars.vertex_tree->Branch("reco_track_pid_chi2_p_plane1",&vars.m_reco_track_pid_chi2_p_plane1);
784  vars.vertex_tree->Branch("reco_track_pid_chi2_p_plane2",&vars.m_reco_track_pid_chi2_p_plane2);
785  vars.vertex_tree->Branch("reco_track_pid_pida_plane0",&vars.m_reco_track_pid_pida_plane0);
786  vars.vertex_tree->Branch("reco_track_pid_pida_plane1",&vars.m_reco_track_pid_pida_plane1);
787  vars.vertex_tree->Branch("reco_track_pid_pida_plane2",&vars.m_reco_track_pid_pida_plane2);
788  vars.vertex_tree->Branch("reco_track_pid_three_plane_proton_pid",&vars.m_reco_track_pid_three_plane_proton_pid);
789 
790 // vars.vertex_tree->Branch("reco_track_end_to_nearest_dead_wire_plane0",&vars.m_reco_track_end_to_nearest_dead_wire_plane0);
791 // vars.vertex_tree->Branch("reco_track_end_to_nearest_dead_wire_plane1",&vars.m_reco_track_end_to_nearest_dead_wire_plane1);
792 // vars.vertex_tree->Branch("reco_track_end_to_nearest_dead_wire_plane2",&vars.m_reco_track_end_to_nearest_dead_wire_plane2);
793 
794  vars.vertex_tree->Branch("reco_track_sliceId",& vars.m_reco_track_sliceId);
795  vars.vertex_tree->Branch("reco_track_nuscore",& vars.m_reco_track_nuscore);
796  vars.vertex_tree->Branch("reco_track_isclearcosmic",& vars.m_reco_track_isclearcosmic);
797  vars.vertex_tree->Branch("reco_track_trackscore",& vars.m_reco_track_trackscore);
798  vars.vertex_tree->Branch("reco_track_pfparticle_pdg",& vars.m_reco_track_pfparticle_pdg);
799  vars.vertex_tree->Branch("reco_track_is_nuslice",& vars.m_reco_track_is_nuslice);
800 
801  vars.vertex_tree->Branch("sim_track_matched",&vars.m_sim_track_matched);
802  vars.vertex_tree->Branch("sim_track_overlay_fraction",&vars.m_sim_track_overlay_fraction);
803  vars.vertex_tree->Branch("sim_track_energy",&vars.m_sim_track_energy);
804  vars.vertex_tree->Branch("sim_track_kinetic_energy",&vars.m_sim_track_kinetic_energy);
805  vars.vertex_tree->Branch("sim_track_mass",&vars.m_sim_track_mass);
806  vars.vertex_tree->Branch("sim_track_pdg",&vars.m_sim_track_pdg);
807  vars.vertex_tree->Branch("sim_track_parent_pdg",&vars.m_sim_track_parent_pdg);
808  vars.vertex_tree->Branch("sim_track_origin",&vars.m_sim_track_origin);
809  vars.vertex_tree->Branch("sim_track_process",&vars.m_sim_track_process);
810  vars.vertex_tree->Branch("sim_track_startx",&vars.m_sim_track_startx);
811  vars.vertex_tree->Branch("sim_track_starty",&vars.m_sim_track_starty);
812  vars.vertex_tree->Branch("sim_track_startz",&vars.m_sim_track_startz);
813  vars.vertex_tree->Branch("sim_track_px",&vars.m_sim_track_px);
814  vars.vertex_tree->Branch("sim_track_py",&vars.m_sim_track_py);
815  vars.vertex_tree->Branch("sim_track_pz",&vars.m_sim_track_pz);
816  vars.vertex_tree->Branch("sim_track_endx",&vars.m_sim_track_endx);
817  vars.vertex_tree->Branch("sim_track_endy",&vars.m_sim_track_endy);
818  vars.vertex_tree->Branch("sim_track_endz",&vars.m_sim_track_endz);
819  vars.vertex_tree->Branch("sim_track_length",&vars.m_sim_track_length);
820 
821  vars.vertex_tree->Branch("sim_track_trackID",&vars.m_sim_track_trackID);
822 
823  vars.vertex_tree->Branch("sim_track_sliceId",& vars.m_sim_track_sliceId);
824  vars.vertex_tree->Branch("sim_track_nuscore",& vars.m_sim_track_nuscore);
825  vars.vertex_tree->Branch("sim_track_isclearcosmic",& vars.m_sim_track_isclearcosmic);
826  }
827 
828  void ResizeTracks(size_t size, var_all& vars){
829  vars.m_reco_track_length.resize(size);
830  vars.m_reco_track_dirx.resize(size);
831  vars.m_reco_track_num_daughters.resize(size);
832  vars.m_reco_track_daughter_trackscore.resize(size);
833 
834  vars.m_reco_track_diry.resize(size);
835  vars.m_reco_track_dirz.resize(size);
836  vars.m_reco_track_endx.resize(size);
837  vars.m_reco_track_endy.resize(size);
838  vars.m_reco_track_endz.resize(size);
839  vars.m_reco_track_end_dist_to_active_TPC.resize(size);
840  vars.m_reco_track_start_dist_to_active_TPC.resize(size);
841  vars.m_reco_track_end_dist_to_CPA.resize(size);
842  vars.m_reco_track_start_dist_to_CPA.resize(size);
843  vars.m_reco_track_end_dist_to_SCB.resize(size);
844  vars.m_reco_track_start_dist_to_SCB.resize(size);
845  vars.m_reco_track_end_in_SCB.resize(size);
846  vars.m_reco_track_start_in_SCB.resize(size);
847 
848  vars.m_reco_track_calo_energy_plane0.resize(size);
849  vars.m_reco_track_calo_energy_plane1.resize(size);
850  vars.m_reco_track_calo_energy_plane2.resize(size);
851  vars.m_reco_track_calo_energy_max.resize(size);
852 
853 
854 
855  vars.m_reco_track_startx.resize(size);
856  vars.m_reco_track_starty.resize(size);
857  vars.m_reco_track_startz.resize(size);
858  vars.m_reco_track_num_trajpoints.resize(size);
859  vars.m_reco_track_num_spacepoints.resize(size);
860  vars.m_reco_track_proton_kinetic_energy.resize(size);
861  vars.m_reco_track_ordered_energy_index.resize(size);
862  vars.m_reco_track_ordered_displacement_index.resize(size);
863 
864 
865  vars.m_reco_track_spacepoint_principal0.resize(size);
866  vars.m_reco_track_spacepoint_principal1.resize(size);
867  vars.m_reco_track_spacepoint_principal2.resize(size);
868 
869  vars.m_reco_track_spacepoint_chi.resize(size);
870  vars.m_reco_track_spacepoint_max_dist.resize(size);
871 
872  vars.m_reco_track_theta_yz.resize(size);
873  vars.m_reco_track_phi_yx.resize(size);
874 
875  vars.m_reco_track_best_calo_plane.resize(size);
876 
877  vars.m_reco_track_mean_dEdx_best_plane.resize(size);
880  vars.m_reco_track_good_calo_best_plane.resize(size);
881  vars.m_reco_track_trunc_dEdx_best_plane.resize(size);
882  vars.m_reco_track_mean_trunc_dEdx_best_plane.resize(size);
885  vars.m_reco_track_trunc_PIDA_best_plane.resize(size);
886  vars.m_reco_track_resrange_best_plane.resize(size);
887  vars.m_reco_track_dEdx_best_plane.resize(size);
888 
889 
890  vars.m_reco_track_mean_dEdx_p0.resize(size);
891  vars.m_reco_track_mean_dEdx_start_half_p0.resize(size);
892  vars.m_reco_track_mean_dEdx_end_half_p0.resize(size);
893  vars.m_reco_track_good_calo_p0.resize(size);
894  vars.m_reco_track_trunc_dEdx_p0.resize(size);
895  vars.m_reco_track_mean_trunc_dEdx_p0.resize(size);
898  vars.m_reco_track_trunc_PIDA_p0.resize(size);
899  vars.m_reco_track_resrange_p0.resize(size);
900  vars.m_reco_track_dEdx_p0.resize(size);
901 
902  vars.m_reco_track_mean_dEdx_p1.resize(size);
903  vars.m_reco_track_mean_dEdx_start_half_p1.resize(size);
904  vars.m_reco_track_mean_dEdx_end_half_p1.resize(size);
905  vars.m_reco_track_good_calo_p1.resize(size);
906  vars.m_reco_track_trunc_dEdx_p1.resize(size);
907  vars.m_reco_track_mean_trunc_dEdx_p1.resize(size);
910  vars.m_reco_track_trunc_PIDA_p1.resize(size);
911  vars.m_reco_track_resrange_p1.resize(size);
912  vars.m_reco_track_dEdx_p1.resize(size);
913 
914  vars.m_reco_track_mean_dEdx_p2.resize(size);
915  vars.m_reco_track_mean_dEdx_start_half_p2.resize(size);
916  vars.m_reco_track_mean_dEdx_end_half_p2.resize(size);
917  vars.m_reco_track_good_calo_p2.resize(size);
918  vars.m_reco_track_trunc_dEdx_p2.resize(size);
919  vars.m_reco_track_mean_trunc_dEdx_p2.resize(size);
922  vars.m_reco_track_trunc_PIDA_p2.resize(size);
923  vars.m_reco_track_resrange_p2.resize(size);
924  vars.m_reco_track_dEdx_p2.resize(size);
925 
926  vars.m_reco_track_num_calo_hits_p1.resize(size);
927  vars.m_reco_track_num_calo_hits_p0.resize(size);
928  vars.m_reco_track_num_calo_hits_p2.resize(size);
929 
930 
931 
932  vars.m_sim_track_matched.resize(size);
933  vars.m_sim_track_energy.resize(size);
934  vars.m_sim_track_mass.resize(size);
935  vars.m_sim_track_kinetic_energy.resize(size);
936  vars.m_sim_track_pdg.resize(size);
937  vars.m_sim_track_parent_pdg.resize(size);
938  vars.m_sim_track_origin.resize(size);
939  vars.m_sim_track_process.resize(size);
940  vars.m_sim_track_startx.resize(size);
941  vars.m_sim_track_starty.resize(size);
942  vars.m_sim_track_startz.resize(size);
943  vars.m_sim_track_endx.resize(size);
944  vars.m_sim_track_endy.resize(size);
945  vars.m_sim_track_endz.resize(size);
946  vars.m_sim_track_length.resize(size);
947 
948  vars.m_sim_track_px.resize(size);
949  vars.m_sim_track_py.resize(size);
950  vars.m_sim_track_pz.resize(size);
951  vars.m_sim_track_trackID.resize(size);
952  vars.m_sim_track_overlay_fraction.resize(size);
953 
963  vars.m_reco_track_pid_chi2_mu_plane0.resize(size);
964  vars.m_reco_track_pid_chi2_mu_plane1.resize(size);
965  vars.m_reco_track_pid_chi2_mu_plane2.resize(size);
966  vars.m_reco_track_pid_chi2_p_plane0.resize(size);
967  vars.m_reco_track_pid_chi2_p_plane1.resize(size);
968  vars.m_reco_track_pid_chi2_p_plane2.resize(size);
969  vars.m_reco_track_pid_pida_plane0.resize(size);
970  vars.m_reco_track_pid_pida_plane1.resize(size);
971  vars.m_reco_track_pid_pida_plane2.resize(size);
972  vars.m_reco_track_pid_three_plane_proton_pid.resize(size);
973 
974 // vars.m_reco_track_end_to_nearest_dead_wire_plane0.resize(size);
975 // vars.m_reco_track_end_to_nearest_dead_wire_plane1.resize(size);
976 // vars.m_reco_track_end_to_nearest_dead_wire_plane2.resize(size);
977 
978  vars.m_reco_track_sliceId.resize(size);
979  vars.m_reco_track_nuscore.resize(size);
980  vars.m_reco_track_isclearcosmic.resize(size);
981  vars.m_reco_track_trackscore.resize(size);
982  vars.m_reco_track_pfparticle_pdg.resize(size);
983  vars.m_reco_track_is_nuslice.resize(size);
984 
985  vars.m_sim_track_sliceId.resize(size);
986  vars.m_sim_track_nuscore.resize(size);
987  vars.m_sim_track_isclearcosmic.resize(size);
988  }
989 
990  //analyze_Shower.h
991  void ClearShowers(var_all& vars){
992  vars.m_reco_asso_showers=0;
993  vars.m_reco_shower_num_daughters.clear();
995 
996  vars.m_reco_shower3d_exists.clear();
997 
998  vars.m_reco_shower3d_startx.clear();
999  vars.m_reco_shower3d_starty.clear();
1000  vars.m_reco_shower3d_startz.clear();
1001  vars.m_reco_shower3d_dirx.clear();
1002  vars.m_reco_shower3d_diry.clear();
1003  vars.m_reco_shower3d_dirz.clear();
1004  vars.m_reco_shower3d_theta_yz.clear();
1005  vars.m_reco_shower3d_phi_yx.clear();
1007  vars.m_reco_shower3d_impact_parameter.clear();
1008  vars.m_reco_shower3d_implied_dirx.clear();
1009  vars.m_reco_shower3d_implied_diry.clear();
1010  vars.m_reco_shower3d_implied_dirz.clear();
1011  vars.m_reco_shower3d_openingangle.clear();
1012  vars.m_reco_shower3d_length.clear();
1013 
1014  vars.m_reco_shower3d_energy_plane0.clear();
1015  vars.m_reco_shower3d_energy_plane1.clear();
1016  vars.m_reco_shower3d_energy_plane2.clear();
1017  vars.m_reco_shower3d_dEdx_plane0.clear();
1018  vars.m_reco_shower3d_dEdx_plane1.clear();
1019  vars.m_reco_shower3d_dEdx_plane2.clear();
1020 
1021 
1022  vars.m_reco_shower_startx.clear();
1023  vars.m_reco_shower_starty.clear();
1025  vars.m_reco_shower_start_dist_to_CPA.clear();
1026  vars.m_reco_shower_start_dist_to_SCB.clear();
1027  vars.m_reco_shower_start_in_SCB.clear();
1029  vars.m_reco_shower_end_dist_to_SCB.clear();
1030 
1031  vars.m_reco_shower_dirx.clear();
1032  vars.m_reco_shower_diry.clear();
1033  vars.m_reco_shower_dirz.clear();
1034  vars.m_reco_shower_theta_yz.clear();
1035  vars.m_reco_shower_phi_yx.clear();
1036  vars.m_reco_shower_conversion_distance.clear();
1037  vars.m_reco_shower_impact_parameter.clear();
1038  vars.m_reco_shower_implied_dirx.clear();
1039  vars.m_reco_shower_implied_diry.clear();
1040  vars.m_reco_shower_implied_dirz.clear();
1041  vars.m_reco_shower_openingangle.clear();
1042  vars.m_reco_shower_length.clear();
1046  vars.m_reco_shower_num_hits_plane0.clear();
1047  vars.m_reco_shower_num_hits_plane1.clear();
1048  vars.m_reco_shower_num_hits_plane2.clear();
1052 
1053  vars.m_reco_shower_kalman_exists.clear();
1061 
1062  vars.m_sim_shower_energy.clear();
1063  vars.m_sim_shower_matched.clear();
1064  vars.m_sim_shower_kinetic_energy.clear();
1065  vars.m_sim_shower_mass.clear();
1066  vars.m_sim_shower_pdg.clear();
1067  vars.m_sim_shower_trackID.clear();
1068  vars.m_sim_shower_parent_pdg.clear();
1069  vars.m_sim_shower_parent_trackID.clear();
1070  vars.m_sim_shower_origin.clear();
1071  vars.m_sim_shower_process.clear();
1072  vars.m_sim_shower_end_process.clear();
1073  vars.m_sim_shower_start_x.clear();
1074  vars.m_sim_shower_start_y.clear();
1075  vars.m_sim_shower_start_z.clear();
1076  vars.m_sim_shower_vertex_x.clear();
1077  vars.m_sim_shower_vertex_y.clear();
1078  vars.m_sim_shower_vertex_z.clear();
1079  vars.m_sim_shower_is_true_shower.clear();
1080  vars.m_sim_shower_best_matched_plane.clear();
1084  vars.m_sim_shower_overlay_fraction.clear();
1085  vars.m_sim_shower_px.clear();
1086  vars.m_sim_shower_py.clear();
1087  vars.m_sim_shower_pz.clear();
1088  vars.m_sim_shower_sliceId.clear();
1089  vars.m_sim_shower_nuscore.clear();
1090  vars.m_sim_shower_isclearcosmic.clear();
1091  vars.m_sim_shower_is_nuslice.clear();
1092 
1093 
1094 
1096  vars.m_reco_shower_energy_max.clear();
1097  vars.m_reco_shower_energy_plane0.clear();
1098  vars.m_reco_shower_energy_plane1.clear();
1099  vars.m_reco_shower_energy_plane2.clear();
1100 
1105 
1106  vars.m_reco_shower_plane0_nhits.clear();
1107  vars.m_reco_shower_plane1_nhits.clear();
1108  vars.m_reco_shower_plane2_nhits.clear();
1109  vars.m_reco_shower_plane0_meanRMS.clear();
1110  vars.m_reco_shower_plane1_meanRMS.clear();
1111  vars.m_reco_shower_plane2_meanRMS.clear();
1112 
1113  vars.m_reco_shower_hit_tick.clear();
1114  vars.m_reco_shower_hit_wire.clear();
1115  vars.m_reco_shower_hit_plane.clear();
1116  vars.m_reco_shower_spacepoint_x.clear();
1117  vars.m_reco_shower_spacepoint_y.clear();
1118  vars.m_reco_shower_spacepoint_z.clear();
1119 
1120 
1121  vars.m_reco_shower_dQdx_plane0.clear();
1122  vars.m_reco_shower_dQdx_plane2.clear();
1123  vars.m_reco_shower_dQdx_plane2.clear();
1124  vars.m_reco_shower_dEdx_plane0.clear();
1125  vars.m_reco_shower_dEdx_plane1.clear();
1126  vars.m_reco_shower_dEdx_plane2.clear();
1127  vars.m_reco_shower_dEdx_plane0_median.clear();
1128  vars.m_reco_shower_dEdx_plane1_median.clear();
1129  vars.m_reco_shower_dEdx_plane2_median.clear();
1130 
1134 
1135  vars.m_reco_shower_dEdx_amalgamated.clear();
1137 
1138 
1139  vars.m_reco_shower_dQdx_plane0_median.clear();
1140  vars.m_reco_shower_dQdx_plane1_median.clear();
1141  vars.m_reco_shower_dQdx_plane2_median.clear();
1142 
1143  vars.m_reco_shower_dEdx_plane0_mean.clear();
1144  vars.m_reco_shower_dEdx_plane1_mean.clear();
1145  vars.m_reco_shower_dEdx_plane2_mean.clear();
1146  vars.m_reco_shower_dEdx_plane0_max.clear();
1147  vars.m_reco_shower_dEdx_plane1_max.clear();
1148  vars.m_reco_shower_dEdx_plane2_max.clear();
1149  vars.m_reco_shower_dEdx_plane0_min.clear();
1150  vars.m_reco_shower_dEdx_plane1_min.clear();
1151  vars.m_reco_shower_dEdx_plane2_min.clear();
1152 
1153  vars.m_reco_shower_dEdx_plane0_nhits.clear();
1154  vars.m_reco_shower_dEdx_plane1_nhits.clear();
1155  vars.m_reco_shower_dEdx_plane2_nhits.clear();
1156 
1157 // vars.m_reco_shower_start_to_nearest_dead_wire_plane0.clear();
1158 // vars.m_reco_shower_start_to_nearest_dead_wire_plane1.clear();
1159 // vars.m_reco_shower_start_to_nearest_dead_wire_plane2.clear();
1160 
1165 
1168 
1169  vars.m_reco_shower_sliceId.clear();
1170  vars.m_reco_shower_nuscore.clear();
1171  vars.m_reco_shower_isclearcosmic.clear();
1172  vars.m_reco_shower_is_nuslice.clear();
1173  vars.m_reco_shower_trackscore.clear();
1174  vars.m_reco_shower_pfparticle_pdg.clear();
1175 
1176  }
1177 
1179  vars.vertex_tree->Branch("reco_asso_showers",&vars.m_reco_asso_showers,"reco_asso_showers/I");
1180  vars.vertex_tree->Branch("reco_shower_num_daughters",&vars.m_reco_shower_num_daughters);
1181  vars.vertex_tree->Branch("reco_shower_daughter_trackscore",&vars.m_reco_shower_daughter_trackscore);
1182 
1183  vars.vertex_tree->Branch("reco_shower_length", &vars.m_reco_shower_length);
1184  vars.vertex_tree->Branch("reco_shower_opening_angle", &vars.m_reco_shower_openingangle);
1185  vars.vertex_tree->Branch("reco_shower_dirx", &vars.m_reco_shower_dirx);
1186  vars.vertex_tree->Branch("reco_shower_diry", &vars.m_reco_shower_diry);
1187  vars.vertex_tree->Branch("reco_shower_dirz", &vars.m_reco_shower_dirz);
1188  vars.vertex_tree->Branch("reco_shower_startx", &vars.m_reco_shower_startx);
1189  vars.vertex_tree->Branch("reco_shower_starty", &vars.m_reco_shower_starty);
1190  vars.vertex_tree->Branch("reco_shower_startz", &vars.m_reco_shower_startz);
1191  vars.vertex_tree->Branch("reco_shower_start_dist_to_active_TPC", &vars.m_reco_shower_start_dist_to_active_TPC);
1192  vars.vertex_tree->Branch("reco_shower_start_dist_to_CPA", &vars.m_reco_shower_start_dist_to_CPA);
1193  vars.vertex_tree->Branch("reco_shower_start_dist_to_SCB", &vars.m_reco_shower_start_dist_to_SCB);
1194  vars.vertex_tree->Branch("reco_shower_start_in_SCB", &vars.m_reco_shower_start_in_SCB);
1195  vars.vertex_tree->Branch("reco_shower_end_dist_to_active_TPC", &vars.m_reco_shower_end_dist_to_active_TPC);
1196  vars.vertex_tree->Branch("reco_shower_end_dist_to_SCB", &vars.m_reco_shower_end_dist_to_SCB);
1197 
1198 
1199  vars.vertex_tree->Branch("reco_shower_theta_yz",&vars.m_reco_shower_theta_yz);
1200  vars.vertex_tree->Branch("reco_shower_phi_yx",&vars.m_reco_shower_phi_yx);
1201  vars.vertex_tree->Branch("reco_shower_conversion_distance",& vars.m_reco_shower_conversion_distance);
1202  vars.vertex_tree->Branch("reco_shower_impact_parameter",& vars.m_reco_shower_impact_parameter);
1203  vars.vertex_tree->Branch("reco_shower_implied_dirx", &vars.m_reco_shower_implied_dirx);
1204  vars.vertex_tree->Branch("reco_shower_implied_diry", &vars.m_reco_shower_implied_diry);
1205  vars.vertex_tree->Branch("reco_shower_implied_dirz", &vars.m_reco_shower_implied_dirz);
1206 
1207  vars.vertex_tree->Branch("reco_shower_delaunay_num_triangles_plane0",&vars.m_reco_shower_delaunay_num_triangles_plane0);
1208  vars.vertex_tree->Branch("reco_shower_delaunay_num_triangles_plane1",&vars.m_reco_shower_delaunay_num_triangles_plane1);
1209  vars.vertex_tree->Branch("reco_shower_delaunay_num_triangles_plane2",&vars.m_reco_shower_delaunay_num_triangles_plane2);
1210  vars.vertex_tree->Branch("reco_shower_num_hits_plane0",&vars.m_reco_shower_num_hits_plane0);
1211  vars.vertex_tree->Branch("reco_shower_num_hits_plane1",&vars.m_reco_shower_num_hits_plane1);
1212  vars.vertex_tree->Branch("reco_shower_num_hits_plane2",&vars.m_reco_shower_num_hits_plane2);
1213  vars.vertex_tree->Branch("reco_shower_delaunay_area_plane0",&vars.m_reco_shower_delaunay_area_plane0);
1214  vars.vertex_tree->Branch("reco_shower_delaunay_area_plane1",&vars.m_reco_shower_delaunay_area_plane1);
1215  vars.vertex_tree->Branch("reco_shower_delaunay_area_plane2",&vars.m_reco_shower_delaunay_area_plane2);
1216  //the calorimetry info
1217  vars.vertex_tree->Branch("reco_shower_energy_max",&vars.m_reco_shower_energy_max);
1218  vars.vertex_tree->Branch("reco_shower_energy_plane0",&vars.m_reco_shower_energy_plane0);
1219  vars.vertex_tree->Branch("reco_shower_energy_plane1",&vars.m_reco_shower_energy_plane1);
1220  vars.vertex_tree->Branch("reco_shower_energy_plane2",&vars.m_reco_shower_energy_plane2);
1221  vars.vertex_tree->Branch("reco_shower_plane0_nhits",&vars.m_reco_shower_plane0_nhits);
1222  vars.vertex_tree->Branch("reco_shower_plane1_nhits",&vars.m_reco_shower_plane1_nhits);
1223  vars.vertex_tree->Branch("reco_shower_plane2_nhits",&vars.m_reco_shower_plane2_nhits);
1224  vars.vertex_tree->Branch("reco_shower_plane0_meanRMS",&vars.m_reco_shower_plane0_meanRMS);
1225  vars.vertex_tree->Branch("reco_shower_plane1_meanRMS",&vars.m_reco_shower_plane1_meanRMS);
1226  vars.vertex_tree->Branch("reco_shower_plane2_meanRMS",&vars.m_reco_shower_plane2_meanRMS);
1227 
1228  vars.vertex_tree->Branch("reco_shower_reclustered_energy_plane0",&vars.m_reco_shower_reclustered_energy_plane0);
1229  vars.vertex_tree->Branch("reco_shower_reclustered_energy_plane1",&vars.m_reco_shower_reclustered_energy_plane1);
1230  vars.vertex_tree->Branch("reco_shower_reclustered_energy_plane2",&vars.m_reco_shower_reclustered_energy_plane2);
1231  vars.vertex_tree->Branch("reco_shower_reclustered_energy_max",&vars.m_reco_shower_reclustered_energy_max);
1232 
1233  vars.vertex_tree->Branch("reco_shower_hit_tick",&vars.m_reco_shower_hit_tick);
1234  vars.vertex_tree->Branch("reco_shower_hit_wire",&vars.m_reco_shower_hit_wire);
1235  vars.vertex_tree->Branch("reco_shower_hit_plane",&vars.m_reco_shower_hit_plane);
1236 
1237  vars.vertex_tree->Branch("reco_shower_spacepoint_x",&vars.m_reco_shower_spacepoint_x);
1238  vars.vertex_tree->Branch("reco_shower_spacepoint_y",&vars.m_reco_shower_spacepoint_y);
1239  vars.vertex_tree->Branch("reco_shower_spacepoint_z",&vars.m_reco_shower_spacepoint_z);
1240 
1241  vars.vertex_tree->Branch("reco_shower_ordered_energy_index",&vars.m_reco_shower_ordered_energy_index);
1242  vars.vertex_tree->Branch("i_shr",&vars.m_reco_shower_ordered_energy_index);
1243  vars.vertex_tree->Branch("reco_shower_dQdx_plane0",&vars.m_reco_shower_dQdx_plane0);
1244  vars.vertex_tree->Branch("reco_shower_dQdx_plane1",&vars.m_reco_shower_dQdx_plane1);
1245  vars.vertex_tree->Branch("reco_shower_dQdx_plane2",&vars.m_reco_shower_dQdx_plane2);
1246  vars.vertex_tree->Branch("reco_shower_dEdx_plane0",&vars.m_reco_shower_dEdx_plane0);
1247  vars.vertex_tree->Branch("reco_shower_dEdx_plane1",&vars.m_reco_shower_dEdx_plane1);
1248  vars.vertex_tree->Branch("reco_shower_dEdx_plane2",&vars.m_reco_shower_dEdx_plane2);
1249  vars.vertex_tree->Branch("reco_shower_dEdx_plane0_median",&vars.m_reco_shower_dEdx_plane0_median);
1250  vars.vertex_tree->Branch("reco_shower_dEdx_plane1_median",&vars.m_reco_shower_dEdx_plane1_median);
1251  vars.vertex_tree->Branch("reco_shower_dEdx_plane2_median",&vars.m_reco_shower_dEdx_plane2_median);
1252 
1253  vars.vertex_tree->Branch("reco_shower_angle_wrt_wires_plane0",& vars.m_reco_shower_angle_wrt_wires_plane0);
1254  vars.vertex_tree->Branch("reco_shower_angle_wrt_wires_plane1",& vars.m_reco_shower_angle_wrt_wires_plane1);
1255  vars.vertex_tree->Branch("reco_shower_angle_wrt_wires_plane2",& vars.m_reco_shower_angle_wrt_wires_plane2);
1256 
1257  vars.vertex_tree->Branch("reco_shower_dEdx_amalgamated",&vars.m_reco_shower_dEdx_amalgamated);
1258  vars.vertex_tree->Branch("reco_shower_dEdx_amalgamated_nhits",&vars.m_reco_shower_dEdx_amalgamated_nhits);
1259 
1260 
1261  vars.vertex_tree->Branch("reco_shower_dQdx_plane0_median",&vars.m_reco_shower_dQdx_plane0_median);
1262  vars.vertex_tree->Branch("reco_shower_dQdx_plane1_median",&vars.m_reco_shower_dQdx_plane1_median);
1263  vars.vertex_tree->Branch("reco_shower_dQdx_plane2_median",&vars.m_reco_shower_dQdx_plane2_median);
1264 
1265  vars.vertex_tree->Branch("reco_shower_dEdx_plane0_mean",&vars.m_reco_shower_dEdx_plane0_mean);
1266  vars.vertex_tree->Branch("reco_shower_dEdx_plane1_mean",&vars.m_reco_shower_dEdx_plane1_mean);
1267  vars.vertex_tree->Branch("reco_shower_dEdx_plane2_mean",&vars.m_reco_shower_dEdx_plane2_mean);
1268  vars.vertex_tree->Branch("reco_shower_dEdx_plane0_max",&vars.m_reco_shower_dEdx_plane0_max);
1269  vars.vertex_tree->Branch("reco_shower_dEdx_plane1_max",&vars.m_reco_shower_dEdx_plane1_max);
1270  vars.vertex_tree->Branch("reco_shower_dEdx_plane2_max",&vars.m_reco_shower_dEdx_plane2_max);
1271  vars.vertex_tree->Branch("reco_shower_dEdx_plane0_min",&vars.m_reco_shower_dEdx_plane0_min);
1272  vars.vertex_tree->Branch("reco_shower_dEdx_plane1_min",&vars.m_reco_shower_dEdx_plane1_min);
1273  vars.vertex_tree->Branch("reco_shower_dEdx_plane2_min",&vars.m_reco_shower_dEdx_plane2_min);
1274  vars.vertex_tree->Branch("reco_shower_dEdx_plane0_nhits",&vars.m_reco_shower_dEdx_plane0_nhits);
1275  vars.vertex_tree->Branch("reco_shower_dEdx_plane1_nhits",&vars.m_reco_shower_dEdx_plane1_nhits);
1276  vars.vertex_tree->Branch("reco_shower_dEdx_plane2_nhits",&vars.m_reco_shower_dEdx_plane2_nhits);
1277 
1278 // vars.vertex_tree->Branch("reco_shower_start_to_nearest_dead_wire_plane0",&vars.m_reco_shower_start_to_nearest_dead_wire_plane0);
1279 // vars.vertex_tree->Branch("reco_shower_start_to_nearest_dead_wire_plane1",&vars.m_reco_shower_start_to_nearest_dead_wire_plane1);
1280 // vars.vertex_tree->Branch("reco_shower_start_to_nearest_dead_wire_plane2",&vars.m_reco_shower_start_to_nearest_dead_wire_plane2);
1281 
1282  vars.vertex_tree->Branch("reco_shower_flash_shortest_distz",&vars.m_reco_shower_flash_shortest_distz);
1283  vars.vertex_tree->Branch("reco_shower_flash_shortest_disty",&vars.m_reco_shower_flash_shortest_disty);
1284  vars.vertex_tree->Branch("reco_shower_flash_shortest_distyz",&vars.m_reco_shower_flash_shortest_distyz);
1285  vars.vertex_tree->Branch("reco_shower_flash_shortest_index_z",&vars.m_reco_shower_flash_shortest_index_z);
1286  vars.vertex_tree->Branch("reco_shower_flash_shortest_index_y",&vars.m_reco_shower_flash_shortest_index_y);
1287  vars.vertex_tree->Branch("reco_shower_flash_shortest_index_yz",&vars.m_reco_shower_flash_shortest_index_yz);
1288 
1289  vars.vertex_tree->Branch("reco_shower_sliceId",& vars.m_reco_shower_sliceId);
1290  vars.vertex_tree->Branch("reco_shower_nuscore",& vars.m_reco_shower_nuscore);
1291  vars.vertex_tree->Branch("reco_shower_isclearcosmic",& vars.m_reco_shower_isclearcosmic);
1292  vars.vertex_tree->Branch("reco_shower_is_nuslice", & vars.m_reco_shower_is_nuslice);
1293  vars.vertex_tree->Branch("reco_shower_trackscore", & vars.m_reco_shower_trackscore);
1294  vars.vertex_tree->Branch("reco_shower_pfparticle_pdg", & vars.m_reco_shower_pfparticle_pdg);
1295 
1296 
1297  vars.vertex_tree->Branch("reco_shower3d_exists", &vars.m_reco_shower3d_exists);
1298  vars.vertex_tree->Branch("reco_shower3d_length", &vars.m_reco_shower3d_length);
1299  vars.vertex_tree->Branch("reco_shower3d_opening_angle", &vars.m_reco_shower3d_openingangle);
1300  vars.vertex_tree->Branch("reco_shower3d_dirx", &vars.m_reco_shower3d_dirx);
1301  vars.vertex_tree->Branch("reco_shower3d_diry", &vars.m_reco_shower3d_diry);
1302  vars.vertex_tree->Branch("reco_shower3d_dirz", &vars.m_reco_shower3d_dirz);
1303  vars.vertex_tree->Branch("reco_shower3d_startx", &vars.m_reco_shower3d_startx);
1304  vars.vertex_tree->Branch("reco_shower3d_starty", &vars.m_reco_shower3d_starty);
1305  vars.vertex_tree->Branch("reco_shower3d_startz", &vars.m_reco_shower3d_startz);
1306  vars.vertex_tree->Branch("reco_shower3d_theta_yz",&vars.m_reco_shower3d_theta_yz);
1307  vars.vertex_tree->Branch("reco_shower3d_phi_yx",&vars.m_reco_shower3d_phi_yx);
1308  vars.vertex_tree->Branch("reco_shower3d_conversion_distance",& vars.m_reco_shower3d_conversion_distance);
1309  vars.vertex_tree->Branch("reco_shower3d_impact_parameter",& vars.m_reco_shower3d_impact_parameter);
1310  vars.vertex_tree->Branch("reco_shower3d_implied_dirx", &vars.m_reco_shower3d_implied_dirx);
1311  vars.vertex_tree->Branch("reco_shower3d_implied_diry", &vars.m_reco_shower3d_implied_diry);
1312  vars.vertex_tree->Branch("reco_shower3d_implied_dirz", &vars.m_reco_shower3d_implied_dirz);
1313 
1314  vars.vertex_tree->Branch("reco_shower3d_energy_plane0", &vars.m_reco_shower3d_energy_plane0);
1315  vars.vertex_tree->Branch("reco_shower3d_energy_plane1", &vars.m_reco_shower3d_energy_plane1);
1316  vars.vertex_tree->Branch("reco_shower3d_energy_plane2", &vars.m_reco_shower3d_energy_plane2);
1317  vars.vertex_tree->Branch("reco_shower3d_dEdx_plane0", &vars.m_reco_shower3d_dEdx_plane0);
1318  vars.vertex_tree->Branch("reco_shower3d_dEdx_plane1", &vars.m_reco_shower3d_dEdx_plane1);
1319  vars.vertex_tree->Branch("reco_shower3d_dEdx_plane2", &vars.m_reco_shower3d_dEdx_plane2);
1320 
1321  vars.vertex_tree->Branch("reco_shower_kalman_exists",&vars.m_reco_shower_kalman_exists);
1322  vars.vertex_tree->Branch("reco_shower_kalman_dEdx_plane0_median",&vars.m_reco_shower_kalman_median_dEdx_plane0);
1323  vars.vertex_tree->Branch("reco_shower_kalman_dEdx_plane1_median",&vars.m_reco_shower_kalman_median_dEdx_plane1);
1324  vars.vertex_tree->Branch("reco_shower_kalman_dEdx_plane2_median",&vars.m_reco_shower_kalman_median_dEdx_plane2);
1325  vars.vertex_tree->Branch("reco_shower_kalman_dEdx_allplane_median",&vars.m_reco_shower_kalman_median_dEdx_allplane);
1326 
1327  vars.vertex_tree->Branch("reco_shower_kalman_dEdx_plane0_mean",&vars.m_reco_shower_kalman_mean_dEdx_plane0);
1328  vars.vertex_tree->Branch("reco_shower_kalman_dEdx_plane1_mean",&vars.m_reco_shower_kalman_mean_dEdx_plane1);
1329  vars.vertex_tree->Branch("reco_shower_kalman_dEdx_plane2_mean",&vars.m_reco_shower_kalman_mean_dEdx_plane2);
1330 
1331 
1332  vars.vertex_tree->Branch("sim_shower_matched",&vars.m_sim_shower_matched);
1333  vars.vertex_tree->Branch("sim_shower_energy",&vars.m_sim_shower_energy);
1334  vars.vertex_tree->Branch("sim_shower_kinetic_energy",&vars.m_sim_shower_kinetic_energy);
1335  vars.vertex_tree->Branch("sim_shower_mass",&vars.m_sim_shower_mass);
1336  vars.vertex_tree->Branch("sim_shower_pdg",&vars.m_sim_shower_pdg);
1337  vars.vertex_tree->Branch("sim_shower_trackID",&vars.m_sim_shower_trackID);
1338  vars.vertex_tree->Branch("sim_shower_parent_pdg",&vars.m_sim_shower_parent_pdg);
1339  vars.vertex_tree->Branch("sim_shower_parent_trackID",&vars.m_sim_shower_parent_trackID);
1340  vars.vertex_tree->Branch("sim_shower_origin",&vars.m_sim_shower_origin);
1341  vars.vertex_tree->Branch("sim_shower_process",&vars.m_sim_shower_process);
1342  vars.vertex_tree->Branch("sim_shower_end_process",&vars.m_sim_shower_end_process);
1343  vars.vertex_tree->Branch("sim_shower_start_x",&vars.m_sim_shower_start_x);
1344  vars.vertex_tree->Branch("sim_shower_start_y",&vars.m_sim_shower_start_y);
1345  vars.vertex_tree->Branch("sim_shower_start_z",&vars.m_sim_shower_start_z);
1346  vars.vertex_tree->Branch("sim_shower_vertex_x",&vars.m_sim_shower_vertex_x);
1347  vars.vertex_tree->Branch("sim_shower_vertex_y",&vars.m_sim_shower_vertex_y);
1348  vars.vertex_tree->Branch("sim_shower_vertex_z",&vars.m_sim_shower_vertex_z);
1349  vars.vertex_tree->Branch("sim_shower_px",&vars.m_sim_shower_px);
1350  vars.vertex_tree->Branch("sim_shower_py",&vars.m_sim_shower_py);
1351  vars.vertex_tree->Branch("sim_shower_pz",&vars.m_sim_shower_pz);
1352 
1353  vars.vertex_tree->Branch("sim_shower_is_true_shower",&vars.m_sim_shower_is_true_shower);
1354  vars.vertex_tree->Branch("sim_shower_best_matched_plane",&vars.m_sim_shower_best_matched_plane);
1355  vars.vertex_tree->Branch("sim_shower_matched_energy_fraction_plane0",&vars.m_sim_shower_matched_energy_fraction_plane0);
1356  vars.vertex_tree->Branch("sim_shower_matched_energy_fraction_plane1",&vars.m_sim_shower_matched_energy_fraction_plane1);
1357  vars.vertex_tree->Branch("sim_shower_matched_energy_fraction_plane2",&vars.m_sim_shower_matched_energy_fraction_plane2);
1358  vars.vertex_tree->Branch("sim_shower_overlay_fraction",&vars.m_sim_shower_overlay_fraction);
1359  vars.vertex_tree->Branch("sim_shower_sliceId", & vars.m_sim_shower_sliceId);
1360  vars.vertex_tree->Branch("sim_shower_nuscore", & vars.m_sim_shower_nuscore);
1361  vars.vertex_tree->Branch("sim_shower_isclearcosmic", & vars.m_sim_shower_isclearcosmic);
1362  vars.vertex_tree->Branch("sim_shower_is_nusclice", & vars.m_sim_shower_is_nuslice);
1363  }
1364 
1365  void ResizeShowers(size_t size, var_all& vars){
1366  vars.m_reco_shower_num_daughters.resize(size);
1367  vars.m_reco_shower_daughter_trackscore.resize(size);
1368 
1369  vars.m_reco_shower_kalman_exists.resize(size);
1370  vars.m_reco_shower_kalman_median_dEdx_plane0.resize(size);
1371  vars.m_reco_shower_kalman_median_dEdx_plane1.resize(size);
1372  vars.m_reco_shower_kalman_median_dEdx_plane2.resize(size);
1374  vars.m_reco_shower_kalman_mean_dEdx_plane0.resize(size);
1375  vars.m_reco_shower_kalman_mean_dEdx_plane1.resize(size);
1376  vars.m_reco_shower_kalman_mean_dEdx_plane2.resize(size);
1377 
1378  vars.m_reco_shower_reclustered_energy_plane0.resize(size);
1379  vars.m_reco_shower_reclustered_energy_plane1.resize(size);
1380  vars.m_reco_shower_reclustered_energy_plane2.resize(size);
1381  vars.m_reco_shower_reclustered_energy_max.resize(size);
1382 
1383 
1384  vars.m_reco_shower3d_exists.resize(size);
1385  vars.m_reco_shower3d_startx.resize(size);
1386  vars.m_reco_shower3d_starty.resize(size);
1387  vars.m_reco_shower3d_startz.resize(size);
1388  vars.m_reco_shower3d_dirx.resize(size);
1389  vars.m_reco_shower3d_diry.resize(size);
1390  vars.m_reco_shower3d_dirz.resize(size);
1391  vars.m_reco_shower3d_theta_yz.resize(size);
1392  vars.m_reco_shower3d_phi_yx.resize(size);
1393  vars.m_reco_shower3d_conversion_distance.resize(size);
1394  vars.m_reco_shower3d_openingangle.resize(size);
1395  vars.m_reco_shower3d_length.resize(size);
1396  vars.m_reco_shower3d_impact_parameter.resize(size);
1397  vars.m_reco_shower3d_implied_dirx.resize(size);
1398  vars.m_reco_shower3d_implied_diry.resize(size);
1399  vars.m_reco_shower3d_implied_dirz.resize(size);
1400  vars.m_reco_shower3d_energy_plane0.resize(size);
1401  vars.m_reco_shower3d_energy_plane1.resize(size);
1402  vars.m_reco_shower3d_energy_plane2.resize(size);
1403  vars.m_reco_shower3d_dEdx_plane0.resize(size);
1404  vars.m_reco_shower3d_dEdx_plane1.resize(size);
1405  vars.m_reco_shower3d_dEdx_plane2.resize(size);
1406 
1407  vars.m_reco_shower_start_dist_to_active_TPC.resize(size);
1408  vars.m_reco_shower_start_dist_to_CPA.resize(size);
1409  vars.m_reco_shower_start_dist_to_SCB.resize(size);
1410  vars.m_reco_shower_start_in_SCB.resize(size);
1411 
1412  vars.m_reco_shower_end_dist_to_active_TPC.resize(size);
1413  vars.m_reco_shower_end_dist_to_SCB.resize(size);
1414 
1415 
1416  vars.m_reco_shower_startx.resize(size);
1417  vars.m_reco_shower_starty.resize(size);
1418  vars.m_reco_shower_startz.resize(size);
1419  vars.m_reco_shower_dirx.resize(size);
1420  vars.m_reco_shower_diry.resize(size);
1421  vars.m_reco_shower_dirz.resize(size);
1422  vars.m_reco_shower_theta_yz.resize(size);
1423  vars.m_reco_shower_phi_yx.resize(size);
1424  vars.m_reco_shower_conversion_distance.resize(size);
1425  vars.m_reco_shower_openingangle.resize(size);
1426  vars.m_reco_shower_length.resize(size);
1427  vars.m_reco_shower_impact_parameter.resize(size);
1428  vars.m_reco_shower_implied_dirx.resize(size);
1429  vars.m_reco_shower_implied_diry.resize(size);
1430  vars.m_reco_shower_implied_dirz.resize(size);
1434  vars.m_reco_shower_num_hits_plane0.resize(size);
1435  vars.m_reco_shower_num_hits_plane1.resize(size);
1436  vars.m_reco_shower_num_hits_plane2.resize(size);
1437  vars.m_reco_shower_delaunay_area_plane0.resize(size);
1438  vars.m_reco_shower_delaunay_area_plane1.resize(size);
1439  vars.m_reco_shower_delaunay_area_plane2.resize(size);
1440 
1441  vars.m_reco_shower_energy_max.resize(size);
1442  vars.m_reco_shower_energy_plane0.resize(size);
1443  vars.m_reco_shower_energy_plane1.resize(size);
1444  vars.m_reco_shower_energy_plane2.resize(size);
1445 
1446  vars.m_reco_shower_plane0_nhits.resize(size);
1447  vars.m_reco_shower_plane1_nhits.resize(size);
1448  vars.m_reco_shower_plane2_nhits.resize(size);
1449 
1450  vars.m_reco_shower_plane0_meanRMS.resize(size);
1451  vars.m_reco_shower_plane1_meanRMS.resize(size);
1452  vars.m_reco_shower_plane2_meanRMS.resize(size);
1453 
1454 
1455 
1456  vars.m_reco_shower_ordered_energy_index.resize(size);
1457  vars.m_reco_shower_dQdx_plane0.resize(size);
1458  vars.m_reco_shower_dQdx_plane1.resize(size);
1459  vars.m_reco_shower_dQdx_plane2.resize(size);
1460  vars.m_reco_shower_dEdx_plane0.resize(size);
1461  vars.m_reco_shower_dEdx_plane1.resize(size);
1462  vars.m_reco_shower_dEdx_plane2.resize(size);
1463  vars.m_reco_shower_dEdx_plane0_median.resize(size);
1464  vars.m_reco_shower_dEdx_plane1_median.resize(size);
1465  vars.m_reco_shower_dEdx_plane2_median.resize(size);
1466 
1467  vars.m_reco_shower_angle_wrt_wires_plane0.resize(size);
1468  vars.m_reco_shower_angle_wrt_wires_plane1.resize(size);
1469  vars.m_reco_shower_angle_wrt_wires_plane2.resize(size);
1470 
1471  vars.m_reco_shower_dEdx_amalgamated.resize(size);
1472  vars.m_reco_shower_dEdx_amalgamated_nhits.resize(size);
1473 
1474  vars.m_reco_shower_dQdx_plane0_median.resize(size);
1475  vars.m_reco_shower_dQdx_plane1_median.resize(size);
1476  vars.m_reco_shower_dQdx_plane2_median.resize(size);
1477 
1478  vars.m_reco_shower_dEdx_plane0_min.resize(size);
1479  vars.m_reco_shower_dEdx_plane1_min.resize(size);
1480  vars.m_reco_shower_dEdx_plane2_min.resize(size);
1481  vars.m_reco_shower_dEdx_plane0_max.resize(size);
1482  vars.m_reco_shower_dEdx_plane1_max.resize(size);
1483  vars.m_reco_shower_dEdx_plane2_max.resize(size);
1484  vars.m_reco_shower_dEdx_plane0_mean.resize(size);
1485  vars.m_reco_shower_dEdx_plane1_mean.resize(size);
1486  vars.m_reco_shower_dEdx_plane2_mean.resize(size);
1487 
1488 
1489 
1490 
1491  vars.m_reco_shower_dEdx_plane0_nhits.resize(size);
1492  vars.m_reco_shower_dEdx_plane1_nhits.resize(size);
1493  vars.m_reco_shower_dEdx_plane2_nhits.resize(size);
1494 
1495 // vars.m_reco_shower_start_to_nearest_dead_wire_plane0.resize(size);
1496 // vars.m_reco_shower_start_to_nearest_dead_wire_plane1.resize(size);
1497 // vars.m_reco_shower_start_to_nearest_dead_wire_plane2.resize(size);
1498 
1499  vars.m_reco_shower_flash_shortest_distz.resize(size);
1500  vars.m_reco_shower_flash_shortest_index_z.resize(size);
1501  vars.m_reco_shower_flash_shortest_disty.resize(size);
1502  vars.m_reco_shower_flash_shortest_index_y.resize(size);
1503 
1504  vars.m_reco_shower_flash_shortest_distyz.resize(size);
1505  vars.m_reco_shower_flash_shortest_index_yz.resize(size);
1506 
1507  vars.m_reco_shower_sliceId.resize(size);
1508  vars.m_reco_shower_nuscore.resize(size);
1509  vars.m_reco_shower_isclearcosmic.resize(size);
1510  vars.m_reco_shower_is_nuslice.resize(size);
1511  vars.m_reco_shower_trackscore.resize(size);
1512  vars.m_reco_shower_pfparticle_pdg.resize(size);
1513 
1514 
1515  vars.m_sim_shower_energy.resize(size);
1516  vars.m_sim_shower_matched.resize(size);
1517  vars.m_sim_shower_kinetic_energy.resize(size);
1518  vars.m_sim_shower_mass.resize(size);
1519  vars.m_sim_shower_pdg.resize(size);
1520  vars.m_sim_shower_trackID.resize(size);
1521  vars.m_sim_shower_parent_pdg.resize(size);
1522  vars.m_sim_shower_parent_trackID.resize(size);
1523  vars.m_sim_shower_origin.resize(size);
1524  vars.m_sim_shower_process.resize(size);
1525  vars.m_sim_shower_end_process.resize(size);
1526  vars.m_sim_shower_start_x.resize(size);
1527  vars.m_sim_shower_start_y.resize(size);
1528  vars.m_sim_shower_start_z.resize(size);
1529  vars.m_sim_shower_vertex_x.resize(size);
1530  vars.m_sim_shower_vertex_y.resize(size);
1531  vars.m_sim_shower_vertex_z.resize(size);
1532  vars.m_sim_shower_is_true_shower.resize(size);
1533  vars.m_sim_shower_best_matched_plane.resize(size);
1537  vars.m_sim_shower_overlay_fraction.resize(size);
1538  vars.m_sim_shower_px.resize(size);
1539  vars.m_sim_shower_py.resize(size);
1540  vars.m_sim_shower_pz.resize(size);
1541  vars.m_sim_shower_sliceId.resize(size);
1542  vars.m_sim_shower_nuscore.resize(size);
1543  vars.m_sim_shower_isclearcosmic.resize(size);
1544  vars.m_sim_shower_is_nuslice.resize(size);
1545  }
1546 
1547  //analyze_MCTruth.h
1548  void ClearMCTruths(var_all& vars){
1549  vars.m_mctruth_num = 0;
1550  vars.m_mctruth_origin = -99;
1551  vars.m_mctruth_mode = -99;
1552  vars.m_mctruth_interaction_type = -99;
1553  vars.m_mctruth_nu_vertex_x = -9999;
1554  vars.m_mctruth_nu_vertex_y = -9999;
1555  vars.m_mctruth_nu_vertex_z = -9999;
1556  vars.m_mctruth_reco_vertex_dist = -9999;
1557  vars.m_mctruth_ccnc = -99;
1558  vars.m_mctruth_qsqr = -99;
1559  vars.m_mctruth_nu_E = -99;
1560  vars.m_mctruth_nu_pdg = 0;
1561  vars.m_mctruth_lepton_pdg = 0;
1563  vars.m_mctruth_daughters_pdg.clear();
1564  vars.m_mctruth_daughters_E.clear();
1565 
1566  vars.m_mctruth_daughters_status_code.clear();
1567  vars.m_mctruth_daughters_trackID.clear();
1569  vars.m_mctruth_daughters_px.clear();
1570  vars.m_mctruth_daughters_py.clear();
1571  vars.m_mctruth_daughters_pz.clear();
1572  vars.m_mctruth_daughters_startx.clear();
1573  vars.m_mctruth_daughters_starty.clear();
1574  vars.m_mctruth_daughters_startz.clear();
1575  vars.m_mctruth_daughters_time.clear();
1576  vars.m_mctruth_daughters_endx.clear();
1577  vars.m_mctruth_daughters_endy.clear();
1578  vars.m_mctruth_daughters_endz.clear();
1579  vars.m_mctruth_daughters_endtime.clear();
1580  vars.m_mctruth_daughters_process.clear();
1581  vars.m_mctruth_daughters_end_process.clear();
1582 
1583 
1586 
1590 
1593  vars.m_mctruth_num_exiting_pi0 =0;
1599 
1601 
1604 
1606 
1607  vars.m_mctruth_exiting_pi0_E.clear();
1608  vars.m_mctruth_exiting_pi0_mom.clear();
1609  vars.m_mctruth_exiting_pi0_px.clear();
1610  vars.m_mctruth_exiting_pi0_py.clear();
1611  vars.m_mctruth_exiting_pi0_pz.clear();
1612 
1617  vars.m_mctruth_pi0_leading_photon_end = {-9999,-9999,-9999};
1618  vars.m_mctruth_pi0_leading_photon_start = {-9999,-9999,-9999};
1619  vars.m_mctruth_pi0_subleading_photon_end = {-9999,-9999,-9999};
1620  vars.m_mctruth_pi0_subleading_photon_start = {-9999,-9999,-9999};
1623  vars.m_mctruth_pi0_leading_photon_mom = {-9999,-9999,-9999};
1624  vars.m_mctruth_pi0_subleading_photon_mom = {-9999,-9999,-9999};
1625 
1627 
1629  vars.m_mctruth_exiting_photon_trackID.clear();
1631  vars.m_mctruth_exiting_photon_energy.clear();
1632  vars.m_mctruth_exiting_photon_px.clear();
1633  vars.m_mctruth_exiting_photon_py.clear();
1634  vars.m_mctruth_exiting_photon_pz.clear();
1635 
1637  vars.m_mctruth_exiting_proton_trackID.clear();
1639  vars.m_mctruth_exiting_proton_energy.clear();
1640  vars.m_mctruth_exiting_proton_px.clear();
1641  vars.m_mctruth_exiting_proton_py.clear();
1642  vars.m_mctruth_exiting_proton_pz.clear();
1643 
1645  vars.m_mctruth_exiting_neutron_trackID.clear();
1647  vars.m_mctruth_exiting_neutron_energy.clear();
1648  vars.m_mctruth_exiting_neutron_px.clear();
1649  vars.m_mctruth_exiting_neutron_py.clear();
1650  vars.m_mctruth_exiting_neutron_pz.clear();
1651  }
1652 
1654  vars.vertex_tree->Branch("mctruth_num",&vars.m_mctruth_num);
1655  vars.vertex_tree->Branch("mctruth_origin",&vars.m_mctruth_origin);
1656  vars.vertex_tree->Branch("mctruth_nu_pdg",&vars.m_mctruth_nu_pdg);
1657  vars.vertex_tree->Branch("mctruth_nu_E",&vars.m_mctruth_nu_E);
1658 
1659  vars.vertex_tree->Branch("mctruth_nu_vertex_x",&vars.m_mctruth_nu_vertex_x);
1660  vars.vertex_tree->Branch("mctruth_nu_vertex_y",&vars.m_mctruth_nu_vertex_y);
1661  vars.vertex_tree->Branch("mctruth_nu_vertex_z",&vars.m_mctruth_nu_vertex_z);
1662  vars.vertex_tree->Branch("mctruth_reco_vertex_dist",&vars.m_mctruth_reco_vertex_dist);
1663 
1664  vars.vertex_tree->Branch("mctruth_lepton_pdg",&vars.m_mctruth_lepton_pdg);
1665  vars.vertex_tree->Branch("mctruth_lepton_E",&vars.m_mctruth_lepton_E);
1666  vars.vertex_tree->Branch("mctruth_mode",&vars.m_mctruth_mode);
1667  vars.vertex_tree->Branch("mctruth_qsqr",&vars.m_mctruth_qsqr);
1668  vars.vertex_tree->Branch("mctruth_cc_or_nc",&vars.m_mctruth_ccnc);
1669  vars.vertex_tree->Branch("mctruth_interaction_type",&vars.m_mctruth_interaction_type);
1670 
1671  vars.vertex_tree->Branch("mctruth_num_daughter_particles",&vars.m_mctruth_num_daughter_particles);
1672  vars.vertex_tree->Branch("mctruth_daughters_pdg",&vars.m_mctruth_daughters_pdg);
1673  vars.vertex_tree->Branch("mctruth_daughters_E",&vars.m_mctruth_daughters_E);
1674  vars.vertex_tree->Branch("mctruth_daughters_status_code",&vars.m_mctruth_daughters_status_code);
1675  vars.vertex_tree->Branch("mctruth_daughters_trackID",&vars.m_mctruth_daughters_trackID);
1676  vars.vertex_tree->Branch("mctruth_daughters_mother_trackID",&vars.m_mctruth_daughters_mother_trackID);
1677  vars.vertex_tree->Branch("mctruth_daughters_px",&vars.m_mctruth_daughters_px);
1678  vars.vertex_tree->Branch("mctruth_daughters_py",&vars.m_mctruth_daughters_py);
1679  vars.vertex_tree->Branch("mctruth_daughters_pz",&vars.m_mctruth_daughters_pz);
1680  vars.vertex_tree->Branch("mctruth_daughters_startx",&vars.m_mctruth_daughters_startx);
1681  vars.vertex_tree->Branch("mctruth_daughters_starty",&vars.m_mctruth_daughters_starty);
1682  vars.vertex_tree->Branch("mctruth_daughters_startz",&vars.m_mctruth_daughters_startz);
1683  vars.vertex_tree->Branch("mctruth_daughters_time",&vars.m_mctruth_daughters_time);
1684  vars.vertex_tree->Branch("mctruth_daughters_endx",&vars.m_mctruth_daughters_endx);
1685  vars.vertex_tree->Branch("mctruth_daughters_endy",&vars.m_mctruth_daughters_endy);
1686  vars.vertex_tree->Branch("mctruth_daughters_endz",&vars.m_mctruth_daughters_endz);
1687  vars.vertex_tree->Branch("mctruth_daughters_endtime",&vars.m_mctruth_daughters_endtime);
1688  vars.vertex_tree->Branch("mctruth_daughters_process",&vars.m_mctruth_daughters_process);
1689  vars.vertex_tree->Branch("mctruth_daughters_end_process",&vars.m_mctruth_daughters_end_process);
1690 
1691 
1692 
1693 
1694  vars.vertex_tree->Branch("mctruth_num_exiting_protons",&vars.m_mctruth_num_exiting_protons);
1695  vars.vertex_tree->Branch("mctruth_num_exiting_photons",&vars.m_mctruth_num_exiting_photons);
1696  vars.vertex_tree->Branch("mctruth_num_exiting_neutrons",&vars.m_mctruth_num_exiting_neutrons);
1697  vars.vertex_tree->Branch("mctruth_num_exiting_pi0",&vars.m_mctruth_num_exiting_pi0);
1698  vars.vertex_tree->Branch("mctruth_num_exiting_pipm",&vars.m_mctruth_num_exiting_pipm);
1699  vars.vertex_tree->Branch("mctruth_num_exiting_delta0",&vars.m_mctruth_num_exiting_delta0);
1700  vars.vertex_tree->Branch("mctruth_num_exiting_deltapm",&vars.m_mctruth_num_exiting_deltapm);
1701  vars.vertex_tree->Branch("mctruth_num_exiting_deltapp",&vars.m_mctruth_num_exiting_deltapp);
1702 
1703  vars.vertex_tree->Branch("mctruth_leading_exiting_proton_energy",&vars.m_mctruth_leading_exiting_proton_energy);
1704  vars.vertex_tree->Branch("mctruth_is_delta_radiative",&vars.m_mctruth_is_delta_radiative);
1705  vars.vertex_tree->Branch("mctruth_delta_radiative_1g1p_or_1g1n",&vars.m_mctruth_delta_radiative_1g1p_or_1g1n);
1706  vars.vertex_tree->Branch("mctruth_delta_photon_energy",&vars.m_mctruth_delta_photon_energy);
1707  vars.vertex_tree->Branch("mctruth_delta_proton_energy",&vars.m_mctruth_delta_proton_energy);
1708  vars.vertex_tree->Branch("mctruth_delta_neutron_energy",&vars.m_mctruth_delta_neutron_energy);
1709  vars.vertex_tree->Branch("mctruth_exiting_delta0_num_daughters",&vars.m_mctruth_exiting_delta0_num_daughters);
1710 
1711  vars.vertex_tree->Branch("mctruth_exiting_photon_trackID",&vars.m_mctruth_exiting_photon_trackID);
1712  vars.vertex_tree->Branch("mctruth_exiting_photon_mother_trackID",&vars.m_mctruth_exiting_photon_mother_trackID);
1713  vars.vertex_tree->Branch("mctruth_exiting_photon_from_delta_decay",&vars.m_mctruth_exiting_photon_from_delta_decay);
1714  vars.vertex_tree->Branch("mctruth_exiting_photon_energy",&vars.m_mctruth_exiting_photon_energy);
1715  vars.vertex_tree->Branch("mctruth_exiting_photon_px",&vars.m_mctruth_exiting_photon_px);
1716  vars.vertex_tree->Branch("mctruth_exiting_photon_py",&vars.m_mctruth_exiting_photon_py);
1717  vars.vertex_tree->Branch("mctruth_exiting_photon_pz",&vars.m_mctruth_exiting_photon_pz);
1718 
1719  vars.vertex_tree->Branch("mctruth_exiting_proton_trackID",&vars.m_mctruth_exiting_proton_trackID);
1720  vars.vertex_tree->Branch("mctruth_exiting_proton_mother_trackID",&vars.m_mctruth_exiting_proton_mother_trackID);
1721  vars.vertex_tree->Branch("mctruth_exiting_proton_from_delta_decay",&vars.m_mctruth_exiting_proton_from_delta_decay);
1722  vars.vertex_tree->Branch("mctruth_exiting_proton_energy",&vars.m_mctruth_exiting_proton_energy);
1723  vars.vertex_tree->Branch("mctruth_exiting_proton_px",&vars.m_mctruth_exiting_proton_px);
1724  vars.vertex_tree->Branch("mctruth_exiting_proton_py",&vars.m_mctruth_exiting_proton_py);
1725  vars.vertex_tree->Branch("mctruth_exiting_proton_pz",&vars.m_mctruth_exiting_proton_pz);
1726 
1727  vars.vertex_tree->Branch("mctruth_exiting_neutron_trackID",&vars.m_mctruth_exiting_neutron_trackID);
1728  vars.vertex_tree->Branch("mctruth_exiting_neutron_mother_trackID",&vars.m_mctruth_exiting_neutron_mother_trackID);
1729  vars.vertex_tree->Branch("mctruth_exiting_neutron_from_delta_decay",&vars.m_mctruth_exiting_neutron_from_delta_decay);
1730  vars.vertex_tree->Branch("mctruth_exiting_neutron_energy",&vars.m_mctruth_exiting_neutron_energy);
1731  vars.vertex_tree->Branch("mctruth_exiting_neutron_px",&vars.m_mctruth_exiting_neutron_px);
1732  vars.vertex_tree->Branch("mctruth_exiting_neutron_py",&vars.m_mctruth_exiting_neutron_py);
1733  vars.vertex_tree->Branch("mctruth_exiting_neutron_pz",&vars.m_mctruth_exiting_neutron_pz);
1734 
1735 
1736  vars.vertex_tree->Branch("mctruth_is_reconstructable_1g1p",&vars.m_mctruth_is_reconstructable_1g1p);
1737 
1738  vars.vertex_tree->Branch("mctruth_is_reconstructable_1g1p",&vars.m_mctruth_is_reconstructable_1g1p);
1739  vars.vertex_tree->Branch("mctruth_num_reconstructable_protons",&vars.m_mctruth_num_reconstructable_protons);
1740 
1741  vars.vertex_tree->Branch("mctruth_pi0_leading_photon_energy",&vars.m_mctruth_pi0_leading_photon_energy);
1742  vars.vertex_tree->Branch("mctruth_pi0_leading_photon_mom",&vars.m_mctruth_pi0_leading_photon_mom);
1743  vars.vertex_tree->Branch("mctruth_pi0_leading_photon_start",&vars.m_mctruth_pi0_leading_photon_start);
1744  vars.vertex_tree->Branch("mctruth_pi0_leading_photon_end",&vars.m_mctruth_pi0_leading_photon_end);
1745  vars.vertex_tree->Branch("mctruth_pi0_leading_photon_exiting_TPC",&vars.m_mctruth_pi0_leading_photon_exiting_TPC);
1746  vars.vertex_tree->Branch("mctruth_pi0_subleading_photon_energy",&vars.m_mctruth_pi0_subleading_photon_energy);
1747  vars.vertex_tree->Branch("mctruth_pi0_subleading_photon_mom",&vars.m_mctruth_pi0_subleading_photon_mom);
1748  vars.vertex_tree->Branch("mctruth_pi0_subleading_photon_end_process",&vars.m_mctruth_pi0_subleading_photon_end_process);
1749  vars.vertex_tree->Branch("mctruth_pi0_subleading_photon_start",&vars.m_mctruth_pi0_subleading_photon_start);
1750  vars.vertex_tree->Branch("mctruth_pi0_subleading_photon_end",&vars.m_mctruth_pi0_subleading_photon_end);
1751  vars.vertex_tree->Branch("mctruth_pi0_subleading_photon_exiting_TPC",&vars.m_mctruth_pi0_subleading_photon_exiting_TPC);
1752 
1753 
1754  vars.vertex_tree->Branch("mctruth_exiting_pi0_E",&vars.m_mctruth_exiting_pi0_E);
1755  vars.vertex_tree->Branch("mctruth_exiting_pi0_mom",&vars.m_mctruth_exiting_pi0_mom);
1756  vars.vertex_tree->Branch("mctruth_exiting_pi0_px",&vars.m_mctruth_exiting_pi0_px);
1757  vars.vertex_tree->Branch("mctruth_exiting_pi0_py",&vars.m_mctruth_exiting_pi0_py);
1758  vars.vertex_tree->Branch("mctruth_exiting_pi0_pz",&vars.m_mctruth_exiting_pi0_pz);
1759  }
1760 
1761  void ResizeMCTruths(size_t size, var_all& vars){
1762  vars.m_mctruth_daughters_pdg.resize(size);
1763  vars.m_mctruth_daughters_E.resize(size);
1764  vars.m_mctruth_daughters_status_code.resize(size);
1765  vars.m_mctruth_daughters_trackID.resize(size);
1766  vars.m_mctruth_daughters_mother_trackID.resize(size);
1767  vars.m_mctruth_daughters_px.resize(size);
1768  vars.m_mctruth_daughters_py.resize(size);
1769  vars.m_mctruth_daughters_pz.resize(size);
1770  vars.m_mctruth_daughters_startx.resize(size);
1771  vars.m_mctruth_daughters_starty.resize(size);
1772  vars.m_mctruth_daughters_startz.resize(size);
1773  vars.m_mctruth_daughters_time.resize(size);
1774  vars.m_mctruth_daughters_endx.resize(size);
1775  vars.m_mctruth_daughters_endy.resize(size);
1776  vars.m_mctruth_daughters_endz.resize(size);
1777  vars.m_mctruth_daughters_endtime.resize(size);
1778  vars.m_mctruth_daughters_end_process.resize(size);
1779  vars.m_mctruth_daughters_process.resize(size);
1780  }
1781 
1782  //analyze_EventWeight.h
1784  vars.m_mcflux_nu_pos_x=-9999;
1785  vars.m_mcflux_nu_pos_y=-9999;
1786  vars.m_mcflux_nu_pos_z=-9999;
1787  vars.m_mcflux_nu_mom_x=-9999;
1788  vars.m_mcflux_nu_mom_y=-9999;
1789  vars.m_mcflux_nu_mom_z=-9999;
1790  vars.m_mcflux_nu_mom_z=-9999;
1791  vars.m_mcflux_nu_mom_E=-9999;
1792  vars.m_mcflux_ntype=0;
1793  vars.m_mcflux_ptype=0;
1794  vars.m_mcflux_nimpwt=-9999;
1795  vars.m_mcflux_dk2gen=-9999;
1796  vars.m_mcflux_nenergyn=-9999;
1797  vars.m_mcflux_tpx=-9999;
1798  vars.m_mcflux_tpy=-9999;
1799  vars.m_mcflux_tpz=-9999;
1800  vars.m_mcflux_vx=-9999;
1801  vars.m_mcflux_vy=-9999;
1802  vars.m_mcflux_vz=-9999;
1803  vars.m_mcflux_tptype=0;
1804  vars.m_mctruth_nparticles=0;
1805 // vars.fmcweight.clear();
1806 
1807  //vars.m_mctruth_particles_track_ID[];
1808  //vars.m_mctruth_particles_pdg_code[];
1809  //vars.m_mctruth_particles_mother[];
1810  //vars.m_mctruth_particles_status_code[];
1811  //vars.m_mctruth_particles_num_daughters[]; //other similar variables
1812  //vars.m_mctruth_particles_daughters[];
1813  //vars.m_mctruth_particles_Gvx.clear();
1814  //vars.m_mctruth_particles_Gvy.clear();
1815  //vars.m_mctruth_particles_Gvz.clear();
1816  //vars.m_mctruth_particles_Gvt.clear();
1817  //vars.m_mctruth_particles_px0.clear();
1818  //vars.m_mctruth_particles_py0.clear();
1819  //vars.m_mctruth_particles_pz0.clear();
1820  //vars.m_mctruth_particles_e0.clear();
1821  ////int vars.m_mctruth_particles_rescatter.clear();
1822  //vars.m_mctruth_particles_polx.clear();
1823  //vars.m_mctruth_particles_poly.clear();
1824  //vars.m_mctruth_particles_polz.clear();
1825 
1826  //int vars.m_mctruth_neutrino_CCNC;
1827  //int vars.m_mctruth_neutrino_mode: "vars.m_mctruth_neutrino_mode" //declared in mctruth vars
1828  //vars.m_mctruth_neutrino_interactionType: "vars.m_mctruth_neutrino_interactionType"
1829  //int vars.m_mctruth_neutrino_target.clear();
1830  //int vars.m_mctruth_neutrino_nucleon.clear();
1831  //int vars.m_mctruth_neutrino_quark.clear();
1832  //vars.m_mctruth_neutrino_w.clear();
1833  //vars.m_mctruth_neutrino_x.clear();
1834  //vars.m_mctruth_neutrino_y.clear();
1835  //vars.m_mctruth_neutrino_QSqr: "vars.m_mctruth_neutrino_QSqr"
1836  vars.m_gtruth_is_sea_quark=false;
1837  vars.m_gtruth_tgt_pdg=0;
1838  vars.m_gtruth_tgt_Z = -9999;
1839  vars.m_gtruth_tgt_A = -9999;
1840  vars.m_gtruth_tgt_p4_x = -9999;
1841  vars.m_gtruth_tgt_p4_y = -9999;
1842  vars.m_gtruth_tgt_p4_z = -9999;
1843  vars.m_gtruth_tgt_p4_E = -9999;
1844  vars.m_gtruth_weight=-9999;
1845  vars.m_gtruth_probability=-9999;
1846  vars.m_gtruth_xsec=-9999;
1847  vars.m_gtruth_diff_xsec=-9999;
1848  vars.m_gtruth_gphase_space=-9999;
1849  vars.m_gtruth_vertex_x=-9999;
1850  vars.m_gtruth_vertex_y=-9999;
1851  vars.m_gtruth_vertex_z=-9999;
1852  vars.m_gtruth_vertex_T=-9999;
1853  vars.m_gtruth_gscatter=-9999;
1854  vars.m_gtruth_gint=-9999;
1855  vars.m_gtruth_res_num=-9999;
1856  vars.m_gtruth_num_piplus=-9999;
1857  vars.m_gtruth_num_pi0=-9999;
1858  vars.m_gtruth_num_piminus=-9999;
1859  vars.m_gtruth_num_proton=-9999;
1860  vars.m_gtruth_num_neutron=-9999;
1861  vars.m_gtruth_is_charm=false;
1862  vars.m_gtruth_is_strange=false;
1863  vars.m_gtruth_charm_hadron_pdg = -9999;
1864  vars.m_gtruth_strange_hadron_pdg = -9999;
1865  vars.m_gtruth_decay_mode = -9999;
1866  vars.m_gtruth_gx=-9999;
1867  vars.m_gtruth_gy=-9999;
1868  vars.m_gtruth_gy=-9999;
1869  vars.m_gtruth_gt=-9999;
1870  vars.m_gtruth_gw=-9999;
1871  vars.m_gtruth_gQ2=-9999;
1872  vars.m_gtruth_gq2=-9999;
1873  vars.m_gtruth_probe_pdg=0;
1874  vars.m_gtruth_probe_p4_x=-9999;
1875  vars.m_gtruth_probe_p4_y=-9999;
1876  vars.m_gtruth_probe_p4_z=-9999;
1877  vars.m_gtruth_probe_p4_E=-9999;
1878  vars.m_gtruth_hit_nuc_p4_x=-9999;
1879  vars.m_gtruth_hit_nuc_p4_y=-9999;
1880  vars.m_gtruth_hit_nuc_p4_z=-9999;
1881  vars.m_gtruth_hit_nuc_p4_E=-9999;
1882  vars.m_gtruth_hit_nuc_pos=-9999;
1883  vars.m_gtruth_fs_had_syst_p4_x=-9999;
1884  vars.m_gtruth_fs_had_syst_p4_y=-9999;
1885  vars.m_gtruth_fs_had_syst_p4_z=-9999;
1886  vars.m_gtruth_fs_had_syst_p4_E=-9999;
1887  }
1888 
1890  //-----------------run info
1891  vars.eventweight_tree->Branch("run", &vars.m_run_number_eventweight);
1892  vars.eventweight_tree->Branch("subrun", &vars.m_subrun_number_eventweight);
1893  vars.eventweight_tree->Branch("event", &vars.m_event_number_eventweight);
1894  //------------------mcflux
1895  vars.eventweight_tree->Branch("MCFlux_NuPosX", &vars.m_mcflux_nu_pos_x );
1896  vars.eventweight_tree->Branch("MCFlux_NuPosY", &vars.m_mcflux_nu_pos_y );
1897  vars.eventweight_tree->Branch("MCFlux_NuPosZ", &vars.m_mcflux_nu_pos_z );
1898  vars.eventweight_tree->Branch("MCFlux_NuMomX", &vars.m_mcflux_nu_mom_x);
1899  vars.eventweight_tree->Branch("MCFlux_NuMomY", &vars.m_mcflux_nu_mom_y );
1900  vars.eventweight_tree->Branch("MCFlux_NuMomZ", &vars.m_mcflux_nu_mom_z);
1901  vars.eventweight_tree->Branch("MCFlux_NuMomE", &vars.m_mcflux_nu_mom_E);
1902  vars.eventweight_tree->Branch("MCFlux_ntype", &vars.m_mcflux_ntype );
1903  vars.eventweight_tree->Branch("MCFlux_ptype", &vars.m_mcflux_ptype );
1904  vars.eventweight_tree->Branch("MCFlux_nimpwt", &vars.m_mcflux_nimpwt );
1905  vars.eventweight_tree->Branch("MCFlux_dk2gen", &vars.m_mcflux_dk2gen );
1906  vars.eventweight_tree->Branch("MCFlux_nenergyn", &vars.m_mcflux_nenergyn);
1907  vars.eventweight_tree->Branch("MCFlux_tpx", &vars.m_mcflux_tpx );
1908  vars.eventweight_tree->Branch("MCFlux_tpy", &vars.m_mcflux_tpy );
1909  vars.eventweight_tree->Branch("MCFlux_tpz", &vars.m_mcflux_tpz );
1910  vars.eventweight_tree->Branch("MCFlux_vx", &vars.m_mcflux_vx);
1911  vars.eventweight_tree->Branch("MCFlux_vy", &vars.m_mcflux_vy );
1912  vars.eventweight_tree->Branch("MCFlux_vz", &vars.m_mcflux_vz );
1913  vars.eventweight_tree->Branch("MCFlux_tptype", & vars.m_mcflux_tptype );
1914  //---------------mctruth
1915  vars.eventweight_tree->Branch("MCTruth_NParticles", &vars.m_mctruth_nparticles);
1916  //vars.eventweight_tree->Branch("MCTruth_particles_TrackId", &vars.m_mctruth_particles_track_Id, "vars.m_mctruth_particles_track_Id[vars.m_mctruth_nparticles]/I" );
1917  vars.eventweight_tree->Branch("MCTruth_particles_TrackId", &vars.m_mctruth_particles_track_Id, "MCTruth_particles_TrackId[MCTruth_NParticles]/I" );
1918  //vars.eventweight_tree->Branch("MCTruth_particles_TrackId", &vars.m_mctruth_particles_track_Id);
1919  vars.eventweight_tree->Branch("MCTruth_particles_PdgCode", &vars.m_mctruth_particles_pdg_code, "MCTruth_particles_PdgCode[MCTruth_NParticles]/I" );
1920  vars.eventweight_tree->Branch("MCTruth_particles_Mother", &vars.m_mctruth_particles_mother, "MCTruth_particles_Mother[MCTruth_NParticles]/I" );
1921  vars.eventweight_tree->Branch("MCTruth_particles_StatusCode", &vars.m_mctruth_particles_status_code, "MCTruth_particles_StatusCode[MCTruth_NParticles]/I");
1922  vars.eventweight_tree->Branch("MCTruth_particles_NumberDaughters", &vars.m_mctruth_particles_num_daughters ,"MCTruth_particles_NumberDaughters[MCTruth_NParticles]/I" );
1923  vars.eventweight_tree->Branch("MCTruth_particles_Daughters", &vars.m_mctruth_particles_daughters,"MCTruth_particles_Daughters[MCTruth_NParticles][100]" );
1924  vars.eventweight_tree->Branch("MCTruth_particles_Gvx", &vars.m_mctruth_particles_Gvx,"MCTruth_particles_Gvx[MCTruth_NParticles]/D");
1925  vars.eventweight_tree->Branch("MCTruth_particles_Gvy", &vars.m_mctruth_particles_Gvy,"MCTruth_particles_Gvy[MCTruth_NParticles]/D" );
1926  vars.eventweight_tree->Branch("MCTruth_particles_Gvz", &vars.m_mctruth_particles_Gvz,"MCTruth_particles_Gvz[MCTruth_NParticles]/D" );
1927  vars.eventweight_tree->Branch("MCTruth_particles_Gvt", &vars.m_mctruth_particles_Gvt,"MCTruth_particles_Gvt[MCTruth_NParticles]/D" );
1928  vars.eventweight_tree->Branch("MCTruth_particles_px0", &vars.m_mctruth_particles_px0, "MCTruth_particles_px0[MCTruth_NParticles]/D" );
1929  vars.eventweight_tree->Branch("MCTruth_particles_py0", &vars.m_mctruth_particles_py0, "MCTruth_particles_py0[MCTruth_NParticles]/D" );
1930  vars.eventweight_tree->Branch("MCTruth_particles_pz0", &vars.m_mctruth_particles_pz0, "MCTruth_particles_pz0[MCTruth_NParticles]/D" );
1931  vars.eventweight_tree->Branch("MCTruth_particles_e0", &vars.m_mctruth_particles_e0, "MCTruth_particles_e0[MCTruth_NParticles]/D" );
1932  vars.eventweight_tree->Branch("MCTruth_particles_Rescatter", &vars.m_mctruth_particles_rescatter,"MCTruth_particles_Rescatter[MCTruth_NParticles]/I" );
1933  vars.eventweight_tree->Branch("MCTruth_particles_polx", &vars.m_mctruth_particles_polx, "MCTruth_particles_polx[MCTruth_NParticles]/D" );
1934  vars.eventweight_tree->Branch("MCTruth_particles_poly", &vars.m_mctruth_particles_poly, "MCTruth_particles_poly[MCTruth_NParticles]/D" );
1935  vars.eventweight_tree->Branch("MCTruth_particles_polz", &vars.m_mctruth_particles_polz, "MCTruth_particles_polz[MCTruth_NParticles]/D");
1936  vars.eventweight_tree->Branch("MCTruth_neutrino_CCNC", &vars.m_mctruth_neutrino_ccnc );
1937  vars.eventweight_tree->Branch("MCTruth_neutrino_mode", &vars.m_mctruth_neutrino_mode );
1938  vars.eventweight_tree->Branch("MCTruth_neutrino_interactionType", &vars.m_mctruth_neutrino_interaction_type );
1939  vars.eventweight_tree->Branch("MCTruth_neutrino_target", &vars.m_mctruth_neutrino_target );
1940  vars.eventweight_tree->Branch("MCTruth_neutrino_nucleon", &vars.m_mctruth_neutrino_nucleon );
1941  vars.eventweight_tree->Branch("MCTruth_neutrino_quark", &vars.m_mctruth_neutrino_quark );
1942  vars.eventweight_tree->Branch("MCTruth_neutrino_W", &vars.m_mctruth_neutrino_w );
1943  vars.eventweight_tree->Branch("MCTruth_neutrino_X", &vars.m_mctruth_neutrino_x );
1944  vars.eventweight_tree->Branch("MCTruth_neutrino_Y", &vars.m_mctruth_neutrino_y );
1945  vars.eventweight_tree->Branch("MCTruth_neutrino_QSqr", &vars.m_mctruth_neutrino_qsqr );
1946 
1947  //---------------------gtruth
1948  vars.eventweight_tree->Branch("GTruth_IsSeaQuark", &vars.m_gtruth_is_sea_quark );
1949  vars.eventweight_tree->Branch("GTruth_tgtPDG", &vars.m_gtruth_tgt_pdg );
1950  vars.eventweight_tree->Branch("GTruth_tgtA", &vars.m_gtruth_tgt_A );
1951  vars.eventweight_tree->Branch("GTruth_tgtZ", &vars.m_gtruth_tgt_Z );
1952  vars.eventweight_tree->Branch("GTruth_TgtP4x", &vars.m_gtruth_tgt_p4_x );
1953  vars.eventweight_tree->Branch("GTruth_TgtP4y", &vars.m_gtruth_tgt_p4_y );
1954  vars.eventweight_tree->Branch("GTruth_TgtP4z", &vars.m_gtruth_tgt_p4_z );
1955  vars.eventweight_tree->Branch("GTruth_TgtP4E", &vars.m_gtruth_tgt_p4_E );
1956  vars.eventweight_tree->Branch("GTruth_weight", &vars.m_gtruth_weight );
1957  vars.eventweight_tree->Branch("GTruth_probability", &vars.m_gtruth_probability );
1958  vars.eventweight_tree->Branch("GTruth_Xsec", &vars.m_gtruth_xsec );
1959  vars.eventweight_tree->Branch("GTruth_DiffXsec", &vars.m_gtruth_diff_xsec );
1960  vars.eventweight_tree->Branch("GTruth_GPhaseSpace", &vars.m_gtruth_gphase_space );
1961  vars.eventweight_tree->Branch("GTruth_vertexX", &vars.m_gtruth_vertex_x );
1962  vars.eventweight_tree->Branch("GTruth_vertexY", &vars.m_gtruth_vertex_y );
1963  vars.eventweight_tree->Branch("GTruth_vertexZ", &vars.m_gtruth_vertex_z );
1964  vars.eventweight_tree->Branch("GTruth_vertexT", &vars.m_gtruth_vertex_T );
1965  vars.eventweight_tree->Branch("GTruth_Gscatter", &vars.m_gtruth_gscatter );
1966  vars.eventweight_tree->Branch("GTruth_Gint", &vars.m_gtruth_gint );
1967  vars.eventweight_tree->Branch("GTruth_ResNum", &vars.m_gtruth_res_num);
1968  vars.eventweight_tree->Branch("GTruth_NumPiPlus", &vars.m_gtruth_num_piplus);
1969  vars.eventweight_tree->Branch("GTruth_NumPi0", &vars.m_gtruth_num_pi0);
1970  vars.eventweight_tree->Branch("GTruth_NumPiMinus", &vars.m_gtruth_num_piminus);
1971  vars.eventweight_tree->Branch("GTruth_NumProton", &vars.m_gtruth_num_proton );
1972  vars.eventweight_tree->Branch("GTruth_NumNeutron", &vars.m_gtruth_num_neutron );
1973  vars.eventweight_tree->Branch("GTruth_IsCharm", &vars.m_gtruth_is_charm );
1974  vars.eventweight_tree->Branch("GTruth_IsStrange", &vars.m_gtruth_is_strange );
1975  vars.eventweight_tree->Branch("GTruth_StrangeHadronPDG", &vars.m_gtruth_strange_hadron_pdg );
1976  vars.eventweight_tree->Branch("GTruth_CharmHadronPDG", &vars.m_gtruth_charm_hadron_pdg );
1977  vars.eventweight_tree->Branch("GTruth_DecayMode",&vars.m_gtruth_decay_mode);
1978  vars.eventweight_tree->Branch("GTruth_gX", &vars.m_gtruth_gx );
1979  vars.eventweight_tree->Branch("GTruth_gY", &vars.m_gtruth_gy );
1980  vars.eventweight_tree->Branch("GTruth_gT", &vars.m_gtruth_gt );
1981  vars.eventweight_tree->Branch("GTruth_gW", &vars.m_gtruth_gw );
1982  vars.eventweight_tree->Branch("GTruth_gQ2", &vars.m_gtruth_gQ2 );
1983  vars.eventweight_tree->Branch("GTruth_gq2", &vars.m_gtruth_gq2 );
1984  vars.eventweight_tree->Branch("GTruth_ProbePDG", &vars.m_gtruth_probe_pdg );
1985  vars.eventweight_tree->Branch("GTruth_ProbeP4x", &vars.m_gtruth_probe_p4_x );
1986  vars.eventweight_tree->Branch("GTruth_ProbeP4y", &vars.m_gtruth_probe_p4_y );
1987  vars.eventweight_tree->Branch("GTruth_ProbeP4z", &vars.m_gtruth_probe_p4_z );
1988  vars.eventweight_tree->Branch("GTruth_ProbeP4E", &vars.m_gtruth_probe_p4_E );
1989  vars.eventweight_tree->Branch("GTruth_HitNucP4x", &vars.m_gtruth_hit_nuc_p4_x );
1990  vars.eventweight_tree->Branch("GTruth_HitNucP4y", &vars.m_gtruth_hit_nuc_p4_y );
1991  vars.eventweight_tree->Branch("GTruth_HitNucP4z", &vars.m_gtruth_hit_nuc_p4_z );
1992  vars.eventweight_tree->Branch("GTruth_HitNucP4E", &vars.m_gtruth_hit_nuc_p4_E );
1993  vars.eventweight_tree->Branch("GTruth_HitNucPos", &vars.m_gtruth_hit_nuc_pos );
1994  vars.eventweight_tree->Branch("GTruth_FShadSystP4x", &vars.m_gtruth_fs_had_syst_p4_x );
1995  vars.eventweight_tree->Branch("GTruth_FShadSystP4y", &vars.m_gtruth_fs_had_syst_p4_y );
1996  vars.eventweight_tree->Branch("GTruth_FShadSystP4z", &vars.m_gtruth_fs_had_syst_p4_z );
1997  vars.eventweight_tree->Branch("GTruth_FShadSystP4E", &vars.m_gtruth_fs_had_syst_p4_E );
1998  }
1999 
2000  //analyze_Geant4.h
2002 
2003  vars.m_geant4_pdg.clear();
2004  vars.m_geant4_trackid.clear();
2005  vars.m_geant4_mother.clear();
2006  vars.m_geant4_statuscode.clear();
2007  vars.m_geant4_E.clear();
2008  vars.m_geant4_mass.clear();
2009  vars.m_geant4_px.clear();
2010  vars.m_geant4_py.clear();
2011  vars.m_geant4_pz.clear();
2012  vars.m_geant4_dx.clear();
2013  vars.m_geant4_dy.clear();
2014  vars.m_geant4_dz.clear();
2015 
2016  vars.m_geant4_vx.clear();
2017  vars.m_geant4_vy.clear();
2018  vars.m_geant4_vz.clear();
2019  vars.m_geant4_process.clear();
2020  vars.m_geant4_end_process.clear();
2021 
2022  vars.m_geant4_costheta.clear();
2023  }
2024 
2026  vars.geant4_tree->Branch("geant4_pdg",&vars.m_geant4_pdg);
2027  vars.geant4_tree->Branch("geant4_trackid",&vars.m_geant4_trackid);
2028  vars.geant4_tree->Branch("geant4_mother",&vars.m_geant4_mother);
2029  vars.geant4_tree->Branch("geant4_statuscode",&vars.m_geant4_statuscode);
2030  vars.geant4_tree->Branch("geant4_E",&vars.m_geant4_E);
2031  vars.geant4_tree->Branch("geant4_mass",&vars.m_geant4_mass);
2032  vars.geant4_tree->Branch("geant4_px", &vars.m_geant4_px);
2033  vars.geant4_tree->Branch("geant4_py", &vars.m_geant4_py);
2034  vars.geant4_tree->Branch("geant4_pz", &vars.m_geant4_pz);
2035 
2036  vars.geant4_tree->Branch("geant4_dx", &vars.m_geant4_dx);
2037  vars.geant4_tree->Branch("geant4_dy", &vars.m_geant4_dy);
2038  vars.geant4_tree->Branch("geant4_dz", &vars.m_geant4_dz);
2039 
2040  vars.geant4_tree->Branch("geant4_vx", &vars.m_geant4_vx);
2041  vars.geant4_tree->Branch("geant4_vy", &vars.m_geant4_vy);
2042  vars.geant4_tree->Branch("geant4_vz", &vars.m_geant4_vz);
2043  vars.geant4_tree->Branch("geant4_costheta",&vars.m_geant4_costheta);
2044 
2045  vars.geant4_tree->Branch("geant4_end_process", &vars.m_geant4_end_process);
2046  vars.geant4_tree->Branch("geant4_process", &vars.m_geant4_process);
2047  }
2048 
2049  //analyze_Slice.h
2050  void ClearSlices(var_all& vars){
2051  vars.m_reco_slice_num = 0;
2052  vars.m_reco_slice_nuscore.clear();
2054  //std::vector<double> vars.m_matched_signal_shower_conversion_length;
2055  vars.m_matched_signal_shower_true_E.clear();
2056  vars.m_matched_signal_shower_nuscore.clear();
2057  vars.m_matched_signal_shower_sliceId.clear();
2059  vars.m_matched_signal_shower_num = 0;
2063 
2064  vars.m_reco_slice_num_pfps.clear();
2065  vars.m_reco_slice_num_showers.clear();
2066  vars.m_reco_slice_num_tracks.clear();
2067 
2068 
2069  vars.m_matched_signal_track_true_E.clear();
2070  vars.m_matched_signal_track_nuscore.clear();
2071  vars.m_matched_signal_track_sliceId.clear();
2073  vars.m_matched_signal_track_is_nuslice.clear();
2076 
2077 
2078  vars.m_matched_signal_track_num = 0;
2079 
2080 
2081  //int vars.m_matched_signal_total_num_slices;
2082 
2083  vars.m_reco_1g1p_is_same_slice = false;
2084  vars.m_reco_1g1p_is_multiple_slices = false;
2085  vars.m_reco_1g1p_is_nuslice = false;
2086  vars.m_reco_1g0p_is_nuslice = false;
2087  vars.m_reco_1g1p_nuscore = -999;
2088  vars.m_reco_1g0p_nuscore = -999;
2089  vars.m_is_matched_1g1p = false;
2090  vars.m_is_matched_1g0p = false;
2091  vars.m_no_matched_showers = false;
2092  vars.m_multiple_matched_showers = false;
2093  vars.m_multiple_matched_tracks = false;
2094 
2095 
2096  /* vars.m_reco_slice_shower_num_matched_signal = -999;
2097  vars.m_reco_slice_track_num_matched_signal = -999;
2098  vars.m_reco_slice_shower_matched_sliceId.clear();
2099  vars.m_reco_slice_track_matched_sliceId.clear();
2100  vars.m_reco_slice_shower_matched_energy.clear();
2101  vars.m_reco_slice_track_matched_energy.clear();
2102  vars.m_reco_slice_shower_matched_conversion.clear();
2103  vars.m_reco_slice_shower_matched_overlay_frac.clear();
2104  */
2105  }
2106 
2107 
2109  vars.vertex_tree->Branch("reco_slice_nuscore",&vars.m_reco_slice_nuscore);
2110  vars.vertex_tree->Branch("reco_slice_num",&vars.m_reco_slice_num);
2111  vars.vertex_tree->Branch("reco_slice_shower_num_matched_signal",& vars.m_reco_slice_shower_num_matched_signal);
2112  vars.vertex_tree->Branch("reco_slice_track_num_matched_signal",& vars.m_reco_slice_track_num_matched_signal);
2113 
2114  vars.ncdelta_slice_tree->Branch("matched_signal_shower_overlay_fraction", &vars.m_matched_signal_shower_overlay_fraction);
2115  //std::vector<double> vars.m_matched_signal_shower_conversion_length;
2116  vars.ncdelta_slice_tree->Branch("matched_signal_shower_true_E", &vars.m_matched_signal_shower_true_E);
2117  vars.ncdelta_slice_tree->Branch("matched_signal_shower_nuscore", &vars.m_matched_signal_shower_nuscore);
2118  vars.ncdelta_slice_tree->Branch("matched_signal_shower_sliceId", &vars.m_matched_signal_shower_sliceId);
2119  vars.ncdelta_slice_tree->Branch("matched_signal_shower_is_clearcosmic", &vars.m_matched_signal_shower_is_clearcosmic);
2120  vars.ncdelta_slice_tree->Branch("matched_signal_shower_num", &vars.m_matched_signal_shower_num);
2121  vars.ncdelta_slice_tree->Branch("matched_signal_shower_is_nuslice", &vars.m_matched_signal_shower_is_nuslice);
2122  vars.ncdelta_slice_tree->Branch("matched_signal_shower_tracks_in_slice", &vars.m_matched_signal_shower_tracks_in_slice);
2123  vars.ncdelta_slice_tree->Branch("matched_signal_shower_showers_in_slice", &vars.m_matched_signal_shower_showers_in_slice);
2124 
2125  vars.ncdelta_slice_tree->Branch("reco_slice_num_pfps", & vars.m_reco_slice_num_pfps);
2126  vars.ncdelta_slice_tree->Branch("reco_slice_num_showers", & vars.m_reco_slice_num_showers);
2127  vars.ncdelta_slice_tree->Branch("reco_slice_num_tracks", & vars.m_reco_slice_num_tracks);
2128 
2129  // vars.ncdelta_slice_tree->Branch("matched_signal_track_overlay_fraction", &vars.m_matched_signal_track_overlay_fraction);
2130  vars.ncdelta_slice_tree->Branch("matched_signal_track_true_E", &vars.m_matched_signal_track_true_E);
2131  vars.ncdelta_slice_tree->Branch("matched_signal_track_nuscore", &vars.m_matched_signal_track_nuscore);
2132  vars.ncdelta_slice_tree->Branch("matched_signal_track_sliceId", &vars.m_matched_signal_track_sliceId);
2133  vars.ncdelta_slice_tree->Branch("matched_signal_track_is_clearcosmic", &vars.m_matched_signal_track_is_clearcosmic);
2134  vars.ncdelta_slice_tree->Branch("matched_signal_track_num", &vars.m_matched_signal_track_num);
2135  vars.ncdelta_slice_tree->Branch("matched_signal_track_is_nuslice", &vars.m_matched_signal_track_is_nuslice);
2136  vars.ncdelta_slice_tree->Branch("matched_signal_track_tracks_in_slice", &vars.m_matched_signal_track_tracks_in_slice);
2137  vars.ncdelta_slice_tree->Branch("matched_signal_track_showers_in_slice", &vars.m_matched_signal_track_showers_in_slice);
2138 
2139  //int vars.m_matched_signal_total_num_slices;
2140  vars.ncdelta_slice_tree->Branch("reco_1g1p_is_same_slice",&vars.m_reco_1g1p_is_same_slice);
2141  vars.ncdelta_slice_tree->Branch("reco_1g1p_is_nuslice",&vars.m_reco_1g1p_is_nuslice);
2142  vars.ncdelta_slice_tree->Branch("reco_1g1p_is_multiple_slices",&vars.m_reco_1g1p_is_multiple_slices);
2143  vars.ncdelta_slice_tree->Branch("reco_1g1p_nuscore",&vars.m_reco_1g1p_nuscore);
2144  vars.ncdelta_slice_tree->Branch("is_matched_1g1p",&vars.m_is_matched_1g1p);
2145 
2146  vars.ncdelta_slice_tree->Branch("reco_1g0p_nuscore",&vars.m_reco_1g0p_nuscore);
2147  vars.ncdelta_slice_tree->Branch("reco_1g0p_is_nuslice",&vars.m_reco_1g0p_is_nuslice);
2148  vars.ncdelta_slice_tree->Branch("is_matched_1g0p",&vars.m_is_matched_1g0p);
2149 
2150  vars.ncdelta_slice_tree->Branch("no_matched_showers",& vars.m_no_matched_showers);
2151  vars.ncdelta_slice_tree->Branch("multiple_matched_showers",& vars.m_multiple_matched_showers);
2152  vars.ncdelta_slice_tree->Branch("multiple_matched_tracks",& vars.m_multiple_matched_tracks);
2153  }
2154 
2155  void ResizeSlices(size_t size, var_all& vars){
2156  vars.m_reco_slice_nuscore.resize(size,-999);
2157  vars.m_reco_slice_num_pfps.resize(size,0);
2158  vars.m_reco_slice_num_showers.resize(size,0);
2159  vars.m_reco_slice_num_tracks.resize(size,0);
2160  }
2161 
2162  void Save_EventMeta( art::Event &evt, var_all& vars){
2163 
2164  //Some event based properties
2165  vars.m_subrun_counts++;
2166  vars.m_number_of_events++;
2167  vars.m_run_number = evt.run();
2168  vars.m_subrun_number = evt.subRun();
2169  vars.m_event_number = evt.id().event();
2170  }
2171 
2172  //set the vertex for now;
2173  void Save_PFParticleInfo( std::vector<PandoraPFParticle> PPFPs, var_all& vars, para_all& paras){
2174 
2175  int pfp_size = PPFPs.size();
2176 
2177  for(int index = 0; index < pfp_size; index++){
2178 
2179  PandoraPFParticle* temp_p = &PPFPs[index];
2180  if(!(vars.pfp_w_bestnuID == temp_p->get_SliceID() && temp_p->get_IsNeutrino()) ) continue;
2181  vars.m_vertex_pos_x = temp_p->get_Vertex_pos()[0];
2182  vars.m_vertex_pos_y = temp_p->get_Vertex_pos()[1];
2183  vars.m_vertex_pos_z = temp_p->get_Vertex_pos()[2];
2184 // std::cout<<"Best NuScore is found, define the vertice as: ("<<temp_p->get_Vertex_pos()[0]<<","<<temp_p->get_Vertex_pos()[1]<<","<<temp_p->get_Vertex_pos()[2]<<")"<<std::endl;
2185 
2186  std::vector<double> tmp = {vars.m_vertex_pos_x, vars.m_vertex_pos_y, vars.m_vertex_pos_z};
2189  vars.m_reco_vertex_dist_to_CPA = distToCPA(tmp, paras);
2190 
2191  if(temp_p->get_IsNeutrino() ){
2192  vars.m_reco_slice_num++;
2193  vars.m_reco_slice_nuscore.push_back(temp_p->get_NuScore());
2194 
2195  }
2196  }
2197 
2198  //resize slice variables size;
2199  // this->ResizeSlices(vars.m_reco_slice_num);
2200  }
2201 }
std::vector< double > m_sim_shower_vertex_x
Definition: variables.h:870
std::vector< double > m_reco_shower_dEdx_plane1_max
Definition: variables.h:1023
std::vector< double > m_sss_candidate_PCA
Definition: variables.h:207
std::vector< double > m_sss_candidate_overlay_fraction
Definition: variables.h:232
std::vector< double > m_sss3d_shower_start_z
Definition: variables.h:240
std::vector< bool > m_matched_signal_track_is_clearcosmic
Definition: variables.h:1101
std::vector< double > m_sss3d_shower_invariant_mass
Definition: variables.h:247
std::vector< double > m_reco_shower_dEdx_plane2_min
Definition: variables.h:1027
TTree * ncdelta_slice_tree
Definition: variables.h:322
void CreateShowerBranches(var_all &vars)
std::vector< double > m_trackstub_candidate_PCA
Definition: variables.h:362
std::vector< int > m_reco_shower_flash_shortest_index_yz
Definition: variables.h:822
std::vector< double > m_reco_flash_zcenter
Definition: variables.h:407
double m_gtruth_fs_had_syst_p4_z
Definition: variables.h:540
std::vector< double > m_reco_track_spacepoint_chi
Definition: variables.h:612
std::vector< double > m_reco_shower_kalman_median_dEdx_plane2
Definition: variables.h:844
std::vector< int > m_reco_shower_hit_plane
Definition: variables.h:1007
std::vector< double > m_sim_track_startx
Definition: variables.h:702
std::vector< double > m_trackstub_candidate_mean_ADC_first_to_second_ratio
Definition: variables.h:380
std::vector< double > m_mctruth_daughters_time
Definition: variables.h:917
std::vector< double > m_mctruth_exiting_photon_pz
Definition: variables.h:946
std::vector< double > m_mctruth_exiting_pi0_py
Definition: variables.h:970
std::vector< int > m_mctruth_daughters_status_code
Definition: variables.h:908
std::vector< double > m_trackstub_candidate_max_wire
Definition: variables.h:370
std::vector< int > m_mctruth_daughters_pdg
Definition: variables.h:906
std::vector< double > m_reco_track_spacepoint_principal2
Definition: variables.h:610
std::vector< int > m_reco_track_pfparticle_pdg
Definition: variables.h:684
double m_mctruth_particles_polx[100]
Definition: variables.h:479
double m_mctruth_particles_e0[100]
Definition: variables.h:477
std::vector< double > m_sss_candidate_wire_tick_based_length
Definition: variables.h:221
std::vector< double > m_reco_track_mean_dEdx_best_plane
Definition: variables.h:633
std::vector< double > m_reco_track_spacepoint_principal0
Definition: variables.h:608
std::vector< int > m_reco_slice_num_showers
Definition: variables.h:1075
std::vector< double > m_reco_shower_nuscore
Definition: variables.h:836
std::vector< double > m_reco_track_pid_bragg_likelihood_mu_plane0
Definition: variables.h:1044
std::vector< double > m_trackstub_candidate_linear_fit_chi2
Definition: variables.h:382
std::vector< double > m_sss_candidate_closest_neighbour
Definition: variables.h:224
std::vector< int > m_trackstub_candidate_in_nu_slice
Definition: variables.h:357
std::vector< double > m_reco_track_mean_trunc_dEdx_start_half_p1
Definition: variables.h:657
void CreateEventWeightBranches(var_all &vars)
std::vector< double > m_reco_shower_theta_yz
Definition: variables.h:794
std::vector< double > m_isolation_num_shr_hits_win_10cm_trk
Definition: variables.h:735
std::vector< std::vector< double > > m_reco_track_trunc_dEdx_p0
Definition: variables.h:623
std::vector< double > m_mctruth_pi0_leading_photon_mom
Definition: variables.h:983
void CreateFlashBranches(var_all &vars)
std::vector< double > m_sim_shower_py
Definition: variables.h:875
std::vector< int > m_mctruth_exiting_photon_from_delta_decay
Definition: variables.h:942
void ClearFlashes(var_all &vars)
int m_mctruth_delta_radiative_1g1p_or_1g1n
Definition: variables.h:934
std::vector< double > m_sss_candidate_ADC_RMS
Definition: variables.h:209
std::vector< double > m_isolation_min_dist_trk_shr
Definition: variables.h:722
std::vector< double > m_isolation_nearest_shr_hit_to_trk_wire
Definition: variables.h:727
std::vector< int > m_reco_shower_num_hits_plane2
Definition: variables.h:831
std::vector< bool > m_reco_shower_isclearcosmic
Definition: variables.h:837
std::vector< double > m_sss3d_shower_dir_x
Definition: variables.h:241
std::vector< int > m_sim_track_origin
Definition: variables.h:701
std::vector< double > m_reco_track_pid_chi2_mu_plane0
Definition: variables.h:1056
double m_gtruth_hit_nuc_p4_z
Definition: variables.h:535
std::vector< double > m_reco_shower_plane0_nhits
Definition: variables.h:1000
void CreateSecondShowerBranches3D(var_all &vars)
std::vector< double > m_geant4_px
Definition: variables.h:178
std::vector< int > m_reco_shower_delaunay_num_triangles_plane0
Definition: variables.h:806
void ClearMCTruths(var_all &vars)
std::vector< double > m_trackstub_candidate_track_angle_wrt_shower_direction
Definition: variables.h:381
std::vector< double > m_sss_candidate_fit_constant
Definition: variables.h:213
double m_mctruth_particles_py0[100]
Definition: variables.h:475
std::vector< double > m_reco_track_calo_energy_max
Definition: variables.h:596
std::vector< int > m_mctruth_exiting_proton_trackID
Definition: variables.h:948
double m_sss2d_conv_ranked_angle_to_shower
Definition: variables.h:301
double m_gtruth_hit_nuc_p4_E
Definition: variables.h:536
std::vector< double > m_reco_shower_startz
Definition: variables.h:783
std::vector< double > m_reco_flash_total_pe_in_beamgate
Definition: variables.h:409
std::vector< double > m_mctruth_daughters_endz
Definition: variables.h:920
std::vector< int > m_sss_candidate_remerge
Definition: variables.h:225
std::vector< double > m_trackstub_candidate_mean_tick
Definition: variables.h:366
std::vector< double > m_geant4_dz
Definition: variables.h:186
std::vector< int > m_sss_candidate_plane
Definition: variables.h:206
std::vector< double > m_trackstub_candidate_mean_ADC_first_half
Definition: variables.h:378
int m_mctruth_particles_status_code[100]
Definition: variables.h:467
std::vector< double > m_reco_track_pid_bragg_likelihood_mu_plane2
Definition: variables.h:1046
std::vector< int > m_geant4_statuscode
Definition: variables.h:175
std::vector< double > m_reco_track_mean_trunc_dEdx_best_plane
Definition: variables.h:637
std::vector< double > m_sss3d_shower_implied_invariant_mass
Definition: variables.h:250
double m_mctruth_leading_exiting_proton_energy
Definition: variables.h:932
std::vector< double > m_reco_track_pid_chi2_p_plane2
Definition: variables.h:1061
std::vector< double > m_matched_signal_shower_overlay_fraction
Definition: variables.h:1086
std::vector< double > m_sss_candidate_impact_parameter
Definition: variables.h:210
std::vector< double > m_mctruth_pi0_subleading_photon_end
Definition: variables.h:979
std::vector< double > m_reco_shower_plane1_nhits
Definition: variables.h:1001
double m_sss3d_ioc_ranked_invar
Definition: variables.h:263
std::vector< double > m_reco_track_end_dist_to_SCB
Definition: variables.h:589
std::vector< int > m_sss_candidate_num_wires
Definition: variables.h:204
std::vector< bool > m_sim_shower_is_nuslice
Definition: variables.h:887
std::vector< double > m_reco_shower_dEdx_plane2_nhits
Definition: variables.h:1041
std::vector< double > m_reco_shower3d_implied_dirz
Definition: variables.h:769
std::vector< std::vector< double > > m_reco_track_dEdx_p1
Definition: variables.h:628
std::vector< double > m_reco_shower_impact_parameter
Definition: variables.h:801
std::vector< double > m_reco_shower_dEdx_plane1_min
Definition: variables.h:1026
std::vector< double > m_sss3d_shower_start_x
Definition: variables.h:238
double m_sss3d_invar_ranked_en
Definition: variables.h:271
std::vector< double > m_reco_shower_end_dist_to_SCB
Definition: variables.h:789
std::vector< double > m_reco_track_trunc_PIDA_p0
Definition: variables.h:650
std::vector< double > m_trackstub_candidate_group_timeoverlap_fraction
Definition: variables.h:396
std::vector< int > m_trackstub_candidate_remerge
Definition: variables.h:384
std::vector< double > m_reco_track_pid_bragg_likelihood_p_plane2
Definition: variables.h:1049
std::vector< double > m_sss_candidate_veto_score
Definition: variables.h:212
void ClearGeant4Branches(var_all &vars)
: fill event weight related variables
std::vector< double > m_sss3d_shower_energy_max
Definition: variables.h:256
std::vector< int > m_trackstub_candidate_plane
Definition: variables.h:361
double m_mctruth_particles_pz0[100]
Definition: variables.h:476
void CreateTrackBranches(var_all &vars)
std::vector< double > m_reco_track_daughter_trackscore
Definition: variables.h:574
std::vector< double > m_reco_shower_dEdx_plane1_nhits
Definition: variables.h:1040
double m_mctruth_nu_vertex_y
Definition: variables.h:895
std::vector< double > m_reco_track_mean_trunc_dEdx_end_half_p0
Definition: variables.h:649
std::vector< double > m_sim_shower_pz
Definition: variables.h:876
std::vector< int > m_reco_track_good_calo_p0
Definition: variables.h:646
int m_mctruth_pi0_subleading_photon_exiting_TPC
Definition: variables.h:978
bool m_reco_1g1p_is_multiple_slices
Definition: variables.h:1114
double m_genie_CV_tune_weight
Definition: variables.h:565
double m_gtruth_fs_had_syst_p4_y
Definition: variables.h:539
std::vector< double > m_mctruth_exiting_photon_energy
Definition: variables.h:943
int m_trackstub_num_unassociated_hits
Definition: variables.h:351
std::vector< double > m_sss_candidate_angle_to_shower
Definition: variables.h:223
std::vector< double > m_reco_track_startx
Definition: variables.h:579
void CreateSecondShowerBranches(var_all &vars)
std::vector< double > m_geant4_dy
Definition: variables.h:185
std::vector< double > m_reco_shower_dEdx_plane0_nhits
Definition: variables.h:1039
std::vector< std::vector< double > > m_reco_shower_dEdx_plane0
Definition: variables.h:1016
double m_mctruth_reco_vertex_dist
Definition: variables.h:897
void ClearSecondShowers(var_all &vars)
std::vector< int > m_reco_shower_delaunay_num_triangles_plane2
Definition: variables.h:808
std::vector< double > m_mctruth_exiting_pi0_pz
Definition: variables.h:971
double m_mctruth_particles_poly[100]
Definition: variables.h:480
std::vector< double > m_isolation_num_unassoc_hits_win_10cm_trk
Definition: variables.h:748
std::vector< double > m_mctruth_exiting_proton_pz
Definition: variables.h:954
std::vector< int > m_reco_track_good_calo_p1
Definition: variables.h:655
std::vector< int > m_reco_shower_flash_shortest_index_y
Definition: variables.h:821
std::vector< double > m_reco_shower_dQdx_plane0_median
Definition: variables.h:1036
double m_sss2d_conv_ranked_conv
Definition: variables.h:297
std::vector< double > m_reco_shower3d_energy_plane1
Definition: variables.h:772
std::vector< double > m_sim_shower_vertex_z
Definition: variables.h:872
std::vector< int > m_mctruth_daughters_mother_trackID
Definition: variables.h:910
std::vector< double > m_reco_shower_implied_dirx
Definition: variables.h:802
std::vector< double > m_reco_shower_flash_shortest_disty
Definition: variables.h:817
std::vector< int > m_trackstub_candidate_pdg
Definition: variables.h:387
std::vector< double > m_reco_track_pid_chi2_p_plane1
Definition: variables.h:1060
double m_mctruth_particles_Gvt[100]
Definition: variables.h:473
int m_mctruth_neutrino_interaction_type
Definition: variables.h:484
std::vector< int > m_reco_shower_num_daughters
Definition: variables.h:749
std::vector< int > m_matched_signal_track_showers_in_slice
Definition: variables.h:1105
std::vector< double > m_mctruth_exiting_neutron_py
Definition: variables.h:961
double m_sss2d_ioc_ranked_invar
Definition: variables.h:292
std::vector< double > m_reco_track_theta_yz
Definition: variables.h:598
std::vector< double > m_sim_track_energy
Definition: variables.h:694
std::vector< int > m_sss_candidate_trackid
Definition: variables.h:230
std::vector< double > m_CRT_hits_y
Definition: variables.h:560
std::vector< double > m_mctruth_exiting_pi0_mom
Definition: variables.h:968
std::vector< int > m_sss_candidate_num_hits
Definition: variables.h:203
std::vector< double > m_reco_track_mean_trunc_dEdx_end_half_best_plane
Definition: variables.h:639
std::vector< int > m_sim_track_parent_pdg
Definition: variables.h:698
void CreateGeant4Branches(var_all &vars)
std::vector< int > m_trackstub_candidate_parent_pdg
Definition: variables.h:388
double m_sss2d_invar_ranked_en
Definition: variables.h:304
std::vector< std::vector< double > > m_reco_shower_dQdx_plane1
Definition: variables.h:1014
std::vector< double > m_reco_track_end_dist_to_active_TPC
Definition: variables.h:585
std::vector< double > m_isolation_nearest_unassoc_hit_to_trk_time
Definition: variables.h:743
std::vector< std::string > m_sim_track_process
Definition: variables.h:700
std::vector< double > m_isolation_num_unassoc_hits_win_1cm_trk
Definition: variables.h:744
std::vector< double > m_mctruth_exiting_proton_energy
Definition: variables.h:951
std::vector< int > m_reco_track_best_calo_plane
Definition: variables.h:632
std::size_t size(FixedBins< T, C > const &) noexcept
Definition: FixedBins.h:561
double m_mctruth_particles_px0[100]
Definition: variables.h:474
std::vector< double > m_reco_track_phi_yx
Definition: variables.h:599
std::vector< int > m_reco_track_num_calo_hits_p2
Definition: variables.h:674
std::vector< double > m_reco_track_pid_chi2_mu_plane2
Definition: variables.h:1058
std::vector< double > m_isolation_nearest_unassoc_hit_to_trk_wire
Definition: variables.h:742
std::vector< double > m_reco_shower_dEdx_plane2_median
Definition: variables.h:1030
double m_mctruth_delta_photon_energy
Definition: variables.h:935
std::vector< std::vector< double > > m_reco_track_dEdx_p2
Definition: variables.h:670
std::vector< int > m_reco_track_num_daughters
Definition: variables.h:573
std::vector< double > m_reco_shower3d_startz
Definition: variables.h:755
std::vector< double > m_reco_track_trunc_PIDA_best_plane
Definition: variables.h:640
std::vector< double > m_reco_shower3d_dEdx_plane2
Definition: variables.h:777
std::vector< int > m_reco_shower_delaunay_num_triangles_plane1
Definition: variables.h:807
std::vector< std::vector< double > > m_reco_track_dEdx_best_plane
Definition: variables.h:622
std::vector< double > m_reco_shower_dQdx_plane2_median
Definition: variables.h:1038
int m_trackstub_num_candidate_groups
Definition: variables.h:394
std::vector< double > m_reco_track_mean_dEdx_p0
Definition: variables.h:643
std::vector< double > m_reco_track_diry
Definition: variables.h:577
std::vector< std::vector< double > > m_reco_track_resrange_p1
Definition: variables.h:627
std::vector< double > m_reco_shower3d_phi_yx
Definition: variables.h:760
std::vector< int > m_sim_track_trackID
Definition: variables.h:713
std::vector< double > m_reco_shower3d_energy_plane0
Definition: variables.h:771
std::vector< double > m_reco_flash_time
Definition: variables.h:401
std::vector< double > m_mctruth_daughters_startz
Definition: variables.h:916
double m_reco_vertex_dist_to_SCB
Definition: variables.h:426
std::vector< int > m_sim_track_sliceId
Definition: variables.h:718
std::vector< int > m_mctruth_exiting_neutron_trackID
Definition: variables.h:956
std::vector< std::vector< double > > m_reco_track_resrange_p0
Definition: variables.h:624
std::vector< bool > m_reco_shower_is_nuslice
Definition: variables.h:838
std::vector< double > m_reco_track_pid_bragg_likelihood_mip_plane0
Definition: variables.h:1050
std::vector< double > m_reco_track_mean_dEdx_start_half_p0
Definition: variables.h:644
std::vector< double > m_mctruth_pi0_subleading_photon_mom
Definition: variables.h:984
std::vector< double > m_sim_track_py
Definition: variables.h:706
double m_sss3d_invar_ranked_implied_opang
Definition: variables.h:277
std::vector< double > m_reco_track_pid_chi2_p_plane0
Definition: variables.h:1059
std::vector< double > m_reco_track_mean_dEdx_end_half_p1
Definition: variables.h:654
std::vector< double > m_reco_track_dirz
Definition: variables.h:578
int m_trackstub_unassociated_hits_below_threshold
Definition: variables.h:352
std::vector< double > m_reco_shower_delaunay_area_plane2
Definition: variables.h:834
std::vector< double > m_sim_shower_matched_energy_fraction_plane2
Definition: variables.h:882
std::vector< double > m_reco_track_mean_dEdx_end_half_best_plane
Definition: variables.h:635
std::vector< int > m_sss_candidate_pdg
Definition: variables.h:228
std::vector< double > m_trackstub_candidate_veto_score
Definition: variables.h:365
std::vector< int > m_reco_flash_frame
Definition: variables.h:404
std::vector< int > m_mctruth_exiting_neutron_mother_trackID
Definition: variables.h:957
std::vector< int > m_matched_signal_shower_tracks_in_slice
Definition: variables.h:1093
std::vector< double > m_isolation_num_unassoc_hits_win_2cm_trk
Definition: variables.h:746
std::vector< double > m_reco_shower_kalman_mean_dEdx_plane1
Definition: variables.h:847
std::vector< double > m_reco_shower_startx
Definition: variables.h:781
std::vector< double > m_isolation_num_unassoc_hits_win_5cm_trk
Definition: variables.h:747
std::vector< double > m_geant4_vx
Definition: variables.h:181
int m_mctruth_pi0_leading_photon_exiting_TPC
Definition: variables.h:977
std::vector< double > m_mctruth_exiting_proton_py
Definition: variables.h:953
std::vector< double > m_trackstub_candidate_min_dist
Definition: variables.h:372
std::vector< double > m_sim_track_endy
Definition: variables.h:709
std::vector< double > m_reco_track_starty
Definition: variables.h:580
std::vector< double > m_sim_shower_vertex_y
Definition: variables.h:871
std::vector< double > m_mctruth_exiting_photon_py
Definition: variables.h:945
std::vector< double > m_reco_shower_reclustered_energy_plane0
Definition: variables.h:993
std::vector< double > m_sss3d_shower_score
Definition: variables.h:257
void CreateStubBranches(var_all &vars)
std::vector< double > m_sim_shower_matched_energy_fraction_plane0
Definition: variables.h:879
void Save_EventMeta(art::Event &evt, var_all &vars)
std::vector< double > m_reco_shower_energy_plane2
Definition: variables.h:991
std::vector< int > m_reco_track_start_in_SCB
Definition: variables.h:592
std::vector< double > m_reco_track_spacepoint_principal1
Definition: variables.h:609
double m_sss3d_ioc_ranked_en
Definition: variables.h:261
std::vector< double > m_trackstub_candidate_ADC_RMS
Definition: variables.h:364
std::vector< double > m_reco_shower_dirz
Definition: variables.h:793
std::vector< double > m_trackstub_candidate_min_tick
Definition: variables.h:368
bool m_mctruth_is_reconstructable_1g1p
Definition: variables.h:964
std::vector< double > m_sim_shower_start_z
Definition: variables.h:869
std::vector< double > m_reco_track_proton_kinetic_energy
Definition: variables.h:603
std::vector< double > m_reco_shower_implied_diry
Definition: variables.h:803
double m_flash_optfltr_pe_veto_tot
Definition: variables.h:827
void ClearEventWeightBranches(var_all &vars)
std::vector< double > m_sim_track_kinetic_energy
Definition: variables.h:696
double m_mctruth_particles_Gvz[100]
Definition: variables.h:472
std::vector< double > m_sim_shower_kinetic_energy
Definition: variables.h:856
std::vector< int > m_mctruth_exiting_proton_mother_trackID
Definition: variables.h:949
int m_mctruth_num_daughter_particles
Definition: variables.h:905
std::vector< int > m_sim_shower_best_matched_plane
Definition: variables.h:878
std::vector< double > m_geant4_py
Definition: variables.h:179
std::vector< double > m_isolation_min_dist_trk_unassoc
Definition: variables.h:738
std::vector< double > m_reco_track_mean_dEdx_end_half_p0
Definition: variables.h:645
std::vector< double > m_sim_track_endx
Definition: variables.h:708
std::vector< int > m_trackstub_candidate_trackid
Definition: variables.h:389
int m_sss_num_unassociated_hits_below_threshold
Definition: variables.h:194
std::vector< double > m_geant4_vy
Definition: variables.h:182
double m_sss3d_ioc_ranked_opang
Definition: variables.h:266
std::vector< double > m_matched_signal_track_nuscore
Definition: variables.h:1099
std::vector< double > m_reco_shower_flash_shortest_distyz
Definition: variables.h:818
std::vector< int > m_reco_shower_start_in_SCB
Definition: variables.h:787
std::vector< double > m_reco_track_mean_trunc_dEdx_start_half_p2
Definition: variables.h:666
std::vector< bool > m_reco_track_is_nuslice
Definition: variables.h:685
std::vector< double > m_reco_shower_reclustered_energy_plane2
Definition: variables.h:996
std::vector< size_t > m_reco_track_ordered_energy_index
Definition: variables.h:606
std::vector< double > m_reco_flash_time_in_beamgate
Definition: variables.h:410
std::vector< double > m_trackstub_candidate_mean_ADC_second_half
Definition: variables.h:379
std::vector< int > m_mctruth_exiting_neutron_from_delta_decay
Definition: variables.h:958
std::vector< double > m_reco_track_spacepoint_max_dist
Definition: variables.h:613
std::vector< double > m_reco_track_pid_bragg_likelihood_p_plane1
Definition: variables.h:1048
std::vector< double > m_sss_candidate_true_energy
Definition: variables.h:231
std::vector< double > m_mctruth_daughters_pz
Definition: variables.h:913
std::vector< int > m_mctruth_exiting_proton_from_delta_decay
Definition: variables.h:950
std::vector< std::string > m_geant4_process
Definition: variables.h:187
std::vector< bool > m_matched_signal_shower_is_nuslice
Definition: variables.h:1092
std::vector< double > m_reco_shower3d_theta_yz
Definition: variables.h:759
std::vector< double > m_sim_track_endz
Definition: variables.h:710
std::vector< double > m_reco_track_start_dist_to_CPA
Definition: variables.h:588
std::vector< int > m_mctruth_exiting_delta0_num_daughters
Definition: variables.h:938
std::vector< double > m_reco_flash_time_width
Definition: variables.h:402
std::vector< double > m_sss3d_shower_conversion_dist
Definition: variables.h:245
std::vector< double > m_trackstub_candidate_matched_energy_fraction_best_plane
Definition: variables.h:386
std::vector< double > m_reco_shower_spacepoint_x
Definition: variables.h:1009
std::vector< double > m_reco_shower_angle_wrt_wires_plane1
Definition: variables.h:1032
std::vector< int > m_reco_track_sliceId
Definition: variables.h:680
std::vector< double > m_sss3d_shower_length
Definition: variables.h:244
std::vector< double > m_reco_track_calo_energy_plane2
Definition: variables.h:595
double m_gtruth_hit_nuc_p4_y
Definition: variables.h:534
std::vector< double > m_mctruth_daughters_py
Definition: variables.h:912
std::vector< int > m_matched_signal_track_tracks_in_slice
Definition: variables.h:1104
double m_sss3d_ioc_ranked_ioc
Definition: variables.h:265
double m_mctruth_nu_vertex_x
Definition: variables.h:894
std::vector< double > m_reco_shower_energy_max
Definition: variables.h:988
std::vector< double > m_reco_shower_plane2_nhits
Definition: variables.h:1002
std::vector< int > m_matched_signal_shower_showers_in_slice
Definition: variables.h:1094
std::vector< double > m_sim_shower_energy
Definition: variables.h:855
std::vector< int > m_sim_shower_matched
Definition: variables.h:853
std::vector< double > m_geant4_dx
Definition: variables.h:184
double m_mctruth_particles_Gvx[100]
Definition: variables.h:470
std::vector< double > m_reco_track_mean_dEdx_p1
Definition: variables.h:652
std::vector< double > m_reco_shower3d_length
Definition: variables.h:763
std::vector< double > m_reco_shower_kalman_exists
Definition: variables.h:841
double m_reco_vertex_dist_to_active_TPC
Definition: variables.h:427
std::vector< double > m_reco_track_nuscore
Definition: variables.h:681
std::vector< double > m_reco_shower_dEdx_plane0_max
Definition: variables.h:1022
double m_sss2d_ioc_ranked_ioc
Definition: variables.h:290
std::vector< double > m_reco_shower_dEdx_amalgamated
Definition: variables.h:1034
std::vector< double > m_sim_shower_matched_energy_fraction_plane1
Definition: variables.h:881
double m_gtruth_fs_had_syst_p4_E
Definition: variables.h:541
std::vector< double > m_CRT_hits_x
Definition: variables.h:559
double m_mctruth_pi0_subleading_photon_energy
Definition: variables.h:975
std::vector< double > m_reco_shower_end_dist_to_active_TPC
Definition: variables.h:788
std::vector< double > m_isolation_nearest_shr_hit_to_trk_time
Definition: variables.h:728
std::vector< double > m_sss3d_shower_ioc_ratio
Definition: variables.h:254
std::vector< double > m_reco_shower_length
Definition: variables.h:798
int m_mctruth_particles_daughters[100][100]
Definition: variables.h:469
double m_mctruth_delta_proton_energy
Definition: variables.h:936
void CreateMCTruthBranches(var_all &vars)
double m_sss3d_ioc_ranked_implied_invar
Definition: variables.h:264
std::vector< double > m_reco_track_calo_energy_plane1
Definition: variables.h:594
std::vector< double > m_mctruth_exiting_proton_px
Definition: variables.h:952
std::vector< double > m_reco_shower_delaunay_area_plane1
Definition: variables.h:833
std::vector< int > m_reco_shower_num_hits_plane1
Definition: variables.h:830
std::vector< double > m_sss3d_shower_dir_y
Definition: variables.h:242
std::vector< double > m_sss_candidate_energy
Definition: variables.h:222
std::vector< double > m_reco_shower_plane2_meanRMS
Definition: variables.h:1005
std::vector< double > m_reco_track_trunc_PIDA_p1
Definition: variables.h:659
std::vector< double > m_mctruth_pi0_subleading_photon_start
Definition: variables.h:980
std::vector< double > m_reco_shower_reclustered_energy_max
Definition: variables.h:992
std::vector< double > m_mctruth_daughters_endx
Definition: variables.h:918
std::vector< double > m_geant4_pz
Definition: variables.h:180
std::vector< double > m_sim_shower_px
Definition: variables.h:874
std::vector< double > m_geant4_vz
Definition: variables.h:183
std::vector< double > m_reco_shower_dEdx_plane1_mean
Definition: variables.h:1020
std::vector< double > m_reco_track_mean_trunc_dEdx_p1
Definition: variables.h:656
int m_reco_slice_track_num_matched_signal
Definition: variables.h:1069
std::vector< double > m_reco_shower_flash_shortest_distz
Definition: variables.h:816
std::vector< double > m_reco_shower3d_dEdx_plane0
Definition: variables.h:775
std::vector< double > m_trackstub_candidate_overlay_fraction
Definition: variables.h:391
std::vector< int > m_reco_track_good_calo_best_plane
Definition: variables.h:636
std::vector< double > m_reco_track_mean_dEdx_p2
Definition: variables.h:661
double m_sss3d_ioc_ranked_conv
Definition: variables.h:262
std::vector< double > m_CRT_veto_hit_PE
Definition: variables.h:547
std::vector< double > m_reco_shower_dEdx_plane2_max
Definition: variables.h:1024
double m_gtruth_hit_nuc_p4_x
Definition: variables.h:533
int m_reco_slice_shower_num_matched_signal
Definition: variables.h:1068
std::vector< int > m_reco_shower_flash_shortest_index_z
Definition: variables.h:820
std::vector< int > m_reco_track_end_in_SCB
Definition: variables.h:591
std::vector< double > m_sim_track_startz
Definition: variables.h:704
std::vector< double > m_reco_shower_daughter_trackscore
Definition: variables.h:750
std::vector< double > m_reco_shower3d_implied_dirx
Definition: variables.h:767
std::vector< double > m_reco_shower_implied_dirz
Definition: variables.h:804
void CreateSliceBranches(var_all &vars)
std::vector< std::vector< double > > m_reco_shower_dEdx_plane2
Definition: variables.h:1018
std::vector< std::string > m_mctruth_daughters_process
Definition: variables.h:922
std::vector< double > m_reco_shower_energy_plane1
Definition: variables.h:990
std::vector< double > m_reco_shower_dEdx_plane0_mean
Definition: variables.h:1019
std::vector< int > m_sim_track_pdg
Definition: variables.h:697
double m_sss2d_invar_ranked_invar
Definition: variables.h:308
std::vector< double > m_sim_shower_mass
Definition: variables.h:857
std::vector< double > m_sss_candidate_mean_tick
Definition: variables.h:214
std::vector< double > m_reco_shower3d_implied_diry
Definition: variables.h:768
std::vector< double > m_reco_shower_starty
Definition: variables.h:782
std::vector< double > m_trackstub_candidate_max_tick
Definition: variables.h:367
std::vector< double > m_sss_candidate_max_wire
Definition: variables.h:218
std::vector< double > m_sss_candidate_min_dist
Definition: variables.h:220
std::vector< double > m_reco_track_dirx
Definition: variables.h:576
int distToSCB(double &dist, std::vector< double > &vec, para_all &paras)
double m_sss2d_invar_ranked_conv
Definition: variables.h:305
std::vector< int > m_reco_shower_dEdx_amalgamated_nhits
Definition: variables.h:1035
std::vector< int > m_reco_shower_sliceId
Definition: variables.h:835
std::vector< int > m_trackstub_candidate_num_ticks
Definition: variables.h:360
double m_mctruth_neutrino_qsqr
Definition: variables.h:491
std::vector< double > m_reco_shower3d_openingangle
Definition: variables.h:762
int m_sss2d_conv_ranked_num_planes
Definition: variables.h:302
std::vector< std::vector< double > > m_grouped_trackstub_candidate_indices
Definition: variables.h:395
double m_sss2d_invar_ranked_ioc
Definition: variables.h:306
std::vector< std::vector< double > > m_reco_shower_dQdx_plane0
Definition: variables.h:1013
double distToCPA(std::vector< double > &vec, para_all &paras)
void ClearSecondShowers3D(var_all &vars)
double m_sss3d_invar_ranked_ioc
Definition: variables.h:275
std::vector< double > m_reco_shower_plane1_meanRMS
Definition: variables.h:1004
std::vector< double > m_reco_track_mean_dEdx_start_half_best_plane
Definition: variables.h:634
std::vector< double > m_reco_shower_kalman_mean_dEdx_plane2
Definition: variables.h:848
std::vector< int > m_sss3d_slice_nu
Definition: variables.h:258
std::vector< int > m_reco_slice_num_pfps
Definition: variables.h:1074
std::vector< double > m_reco_track_pid_three_plane_proton_pid
Definition: variables.h:1062
std::vector< double > m_reco_flash_ycenter_in_beamgate
Definition: variables.h:411
std::vector< double > m_reco_track_mean_trunc_dEdx_p2
Definition: variables.h:665
int m_mctruth_num_reconstructable_protons
Definition: variables.h:963
std::vector< double > m_sim_shower_nuscore
Definition: variables.h:885
std::vector< double > m_reco_track_mean_trunc_dEdx_end_half_p2
Definition: variables.h:667
std::vector< double > m_reco_shower_start_dist_to_active_TPC
Definition: variables.h:784
double m_sss3d_invar_ranked_opang
Definition: variables.h:276
std::vector< double > m_reco_track_endz
Definition: variables.h:584
std::vector< double > m_sim_track_pz
Definition: variables.h:707
std::vector< double > m_sss_candidate_matched_energy_fraction_best_plane
Definition: variables.h:227
std::vector< double > m_trackstub_candidate_wire_tick_based_length
Definition: variables.h:377
std::vector< double > m_reco_shower_kalman_median_dEdx_plane1
Definition: variables.h:843
std::vector< std::vector< double > > m_reco_shower_dQdx_plane2
Definition: variables.h:1015
std::vector< double > m_reco_flash_ywidth
Definition: variables.h:406
std::vector< double > m_sim_shower_start_y
Definition: variables.h:868
std::vector< double > m_reco_track_trackscore
Definition: variables.h:683
std::vector< double > m_geant4_E
Definition: variables.h:176
std::vector< double > m_reco_track_endx
Definition: variables.h:582
std::vector< double > m_reco_shower_openingangle
Definition: variables.h:797
double m_sss2d_conv_ranked_invar
Definition: variables.h:300
std::vector< double > m_reco_slice_nuscore
Definition: variables.h:1067
std::vector< double > m_reco_flash_ycenter
Definition: variables.h:405
std::vector< double > m_CRT_hits_PE
Definition: variables.h:558
std::vector< double > m_mctruth_exiting_neutron_energy
Definition: variables.h:959
double m_sss2d_ioc_ranked_en
Definition: variables.h:288
std::vector< int > m_sim_shower_sliceId
Definition: variables.h:884
std::vector< double > m_reco_shower_phi_yx
Definition: variables.h:795
double m_mctruth_particles_Gvy[100]
Definition: variables.h:471
int m_mctruth_particles_mother[100]
Definition: variables.h:466
std::vector< double > m_sim_shower_overlay_fraction
Definition: variables.h:883
std::vector< size_t > m_reco_shower_ordered_energy_index
Definition: variables.h:1012
double m_genie_spline_weight
Definition: variables.h:564
std::vector< double > m_sss3d_shower_impact_parameter
Definition: variables.h:253
std::vector< double > m_reco_shower_dEdx_plane2_mean
Definition: variables.h:1021
void ResizeShowers(size_t size, var_all &vars)
std::vector< double > m_reco_track_start_dist_to_active_TPC
Definition: variables.h:586
double m_sss2d_conv_ranked_en
Definition: variables.h:296
std::vector< int > m_reco_track_num_trajpoints
Definition: variables.h:601
std::vector< double > m_reco_shower_spacepoint_z
Definition: variables.h:1010
std::vector< double > m_reco_track_pid_bragg_likelihood_mip_plane1
Definition: variables.h:1051
std::vector< double > m_sss_candidate_fit_slope
Definition: variables.h:211
std::vector< double > m_reco_shower_dEdx_plane0_min
Definition: variables.h:1025
std::vector< double > m_reco_track_mean_trunc_dEdx_start_half_best_plane
Definition: variables.h:638
std::vector< std::string > m_sim_shower_end_process
Definition: variables.h:864
std::vector< double > m_sss3d_shower_start_y
Definition: variables.h:239
std::vector< double > m_reco_shower_kalman_median_dEdx_allplane
Definition: variables.h:845
std::vector< int > m_matched_signal_shower_sliceId
Definition: variables.h:1090
std::vector< bool > m_matched_signal_track_is_nuslice
Definition: variables.h:1103
void ClearMeta(var_all &vars)
: reset/clear data members
double m_sss3d_invar_ranked_implied_invar
Definition: variables.h:274
std::vector< int > m_sss_candidate_parent_pdg
Definition: variables.h:229
std::vector< double > m_trackstub_candidate_ioc_based_length
Definition: variables.h:376
std::vector< int > m_sim_shower_trackID
Definition: variables.h:859
std::vector< double > m_mctruth_exiting_pi0_px
Definition: variables.h:969
std::vector< double > m_reco_shower3d_dEdx_plane1
Definition: variables.h:776
double m_sss2d_ioc_ranked_angle_to_shower
Definition: variables.h:293
std::vector< double > m_mctruth_daughters_endy
Definition: variables.h:919
std::vector< double > m_mctruth_pi0_leading_photon_start
Definition: variables.h:982
std::vector< std::string > m_sim_shower_process
Definition: variables.h:863
std::vector< double > m_reco_track_pid_chi2_mu_plane1
Definition: variables.h:1057
void ClearStubs(var_all &vars)
int m_mctruth_particles_rescatter[100]
Definition: variables.h:478
std::vector< double > m_reco_shower_energy_plane0
Definition: variables.h:989
int m_mctruth_num_exiting_neutrons
Definition: variables.h:928
std::vector< int > m_reco_track_num_calo_hits_p0
Definition: variables.h:672
std::vector< std::string > m_geant4_end_process
Definition: variables.h:188
std::vector< double > m_matched_signal_shower_true_E
Definition: variables.h:1088
std::vector< double > m_CRT_hits_z
Definition: variables.h:561
std::vector< double > m_reco_shower3d_diry
Definition: variables.h:757
std::vector< double > m_reco_flash_zwidth
Definition: variables.h:408
std::vector< int > m_sim_shower_origin
Definition: variables.h:862
std::vector< double > m_reco_shower_delaunay_area_plane0
Definition: variables.h:832
std::vector< double > m_mctruth_exiting_pi0_E
Definition: variables.h:967
std::vector< double > m_trackstub_candidate_min_impact_parameter_to_shower
Definition: variables.h:373
int m_mctruth_particles_pdg_code[100]
Definition: variables.h:465
void ResizeMCTruths(size_t size, var_all &vars)
std::vector< int > m_reco_track_good_calo_p2
Definition: variables.h:664
std::vector< double > m_sim_track_starty
Definition: variables.h:703
std::string m_mctruth_pi0_leading_photon_end_process
Definition: variables.h:974
std::vector< double > m_sim_shower_start_x
Definition: variables.h:867
std::vector< int > m_sim_shower_parent_pdg
Definition: variables.h:860
std::vector< bool > m_reco_track_isclearcosmic
Definition: variables.h:682
double m_sss3d_invar_ranked_invar
Definition: variables.h:273
std::vector< double > m_reco_track_pid_pida_plane1
Definition: variables.h:1054
std::vector< double > m_reco_flash_total_pe
Definition: variables.h:400
int m_mctruth_particles_track_Id[100]
Definition: variables.h:464
std::vector< double > m_reco_shower3d_dirz
Definition: variables.h:758
std::vector< std::vector< double > > m_reco_track_trunc_dEdx_p2
Definition: variables.h:629
std::vector< double > m_reco_flash_zcenter_in_beamgate
Definition: variables.h:412
std::vector< int > m_reco_shower_hit_wire
Definition: variables.h:1006
std::vector< double > m_sim_track_nuscore
Definition: variables.h:719
std::vector< double > m_trackstub_candidate_true_energy
Definition: variables.h:390
void ClearIsolation(var_all &vars)
std::vector< std::string > m_mctruth_daughters_end_process
Definition: variables.h:923
double m_flash_optfltr_pe_beam
Definition: variables.h:824
std::vector< double > m_reco_track_trunc_PIDA_p2
Definition: variables.h:668
std::vector< std::vector< double > > m_reco_track_dEdx_p0
Definition: variables.h:625
std::vector< double > m_mctruth_exiting_neutron_px
Definition: variables.h:960
std::vector< int > m_matched_signal_track_sliceId
Definition: variables.h:1100
double m_sss3d_ioc_ranked_implied_opang
Definition: variables.h:267
void Save_PFParticleInfo(std::vector< PandoraPFParticle > PPFPs, var_all &vars, para_all &paras)
std::vector< double > m_reco_track_start_dist_to_SCB
Definition: variables.h:590
double m_sss2d_ioc_ranked_pca
Definition: variables.h:291
std::vector< std::vector< double > > m_reco_track_trunc_dEdx_p1
Definition: variables.h:626
std::vector< double > m_reco_shower_dQdx_plane1_median
Definition: variables.h:1037
std::vector< double > m_reco_shower_angle_wrt_wires_plane2
Definition: variables.h:1033
std::string m_mctruth_pi0_subleading_photon_end_process
Definition: variables.h:976
std::vector< double > m_reco_shower3d_impact_parameter
Definition: variables.h:766
double m_sss2d_conv_ranked_ioc
Definition: variables.h:298
std::vector< double > m_reco_shower_kalman_median_dEdx_plane0
Definition: variables.h:842
double m_mctruth_pi0_leading_photon_energy
Definition: variables.h:973
int m_mctruth_particles_num_daughters[100]
Definition: variables.h:468
std::vector< int > m_sim_track_matched
Definition: variables.h:690
std::vector< double > m_reco_flash_abs_time
Definition: variables.h:403
std::vector< double > m_reco_shower3d_conversion_distance
Definition: variables.h:764
double m_sss2d_ioc_ranked_conv
Definition: variables.h:289
std::vector< double > m_reco_shower_start_dist_to_SCB
Definition: variables.h:786
std::vector< int > m_reco_shower3d_exists
Definition: variables.h:752
std::vector< double > m_reco_track_mean_trunc_dEdx_end_half_p1
Definition: variables.h:658
double m_gtruth_fs_had_syst_p4_x
Definition: variables.h:538
std::vector< double > m_reco_track_mean_dEdx_start_half_p1
Definition: variables.h:653
std::vector< int > m_mctruth_exiting_photon_mother_trackID
Definition: variables.h:941
std::vector< double > m_geant4_mass
Definition: variables.h:177
std::vector< double > m_isolation_num_shr_hits_win_2cm_trk
Definition: variables.h:733
std::vector< double > m_trackstub_candidate_min_ioc_to_shower_start
Definition: variables.h:375
std::vector< int > m_sim_shower_pdg
Definition: variables.h:858
std::vector< double > m_reco_shower3d_dirx
Definition: variables.h:756
std::vector< double > m_reco_shower_trackscore
Definition: variables.h:839
std::vector< double > m_reco_track_mean_dEdx_start_half_p2
Definition: variables.h:662
std::vector< int > m_reco_track_num_calo_hits_p1
Definition: variables.h:673
std::vector< bool > m_sim_track_isclearcosmic
Definition: variables.h:720
double m_photonu_weight_high
Definition: variables.h:568
std::vector< double > m_reco_shower_spacepoint_y
Definition: variables.h:1011
std::vector< double > m_reco_shower_angle_wrt_wires_plane0
Definition: variables.h:1031
std::vector< double > m_reco_track_endy
Definition: variables.h:583
std::vector< int > m_sss_candidate_matched
Definition: variables.h:226
double m_flash_optfltr_pe_veto
Definition: variables.h:826
std::vector< double > m_mctruth_daughters_E
Definition: variables.h:907
std::vector< double > m_mctruth_daughters_starty
Definition: variables.h:915
std::vector< bool > m_matched_signal_shower_is_clearcosmic
Definition: variables.h:1091
std::vector< double > m_matched_signal_shower_nuscore
Definition: variables.h:1089
std::vector< double > m_reco_shower3d_starty
Definition: variables.h:754
std::vector< double > m_reco_shower_hit_tick
Definition: variables.h:1008
double m_sss3d_invar_ranked_conv
Definition: variables.h:272
std::vector< double > m_reco_track_startz
Definition: variables.h:581
std::vector< int > m_trackstub_candidate_num_wires
Definition: variables.h:359
std::vector< int > m_sim_shower_is_true_shower
Definition: variables.h:877
std::vector< double > m_reco_shower_pfparticle_pdg
Definition: variables.h:840
void ResizeSlices(size_t size, var_all &vars)
std::vector< int > m_reco_track_num_spacepoints
Definition: variables.h:602
std::vector< double > m_trackstub_candidate_min_wire
Definition: variables.h:369
std::vector< double > m_reco_track_end_dist_to_CPA
Definition: variables.h:587
double distToTPCActive(std::vector< double > &vec, para_all &paras)
TCEvent evt
Definition: DataStructs.cxx:8
std::vector< int > m_sss_candidate_in_nu_slice
Definition: variables.h:202
std::vector< double > m_reco_shower_reclustered_energy_plane1
Definition: variables.h:995
std::vector< double > m_mctruth_daughters_startx
Definition: variables.h:914
std::vector< double > m_sss3d_shower_dir_z
Definition: variables.h:243
std::vector< double > m_CRT_hits_time
Definition: variables.h:557
void ResizeFlashes(size_t size, var_all &vars)
std::vector< int > m_geant4_pdg
Definition: variables.h:172
std::vector< double > m_reco_shower3d_energy_plane2
Definition: variables.h:773
int m_reco_num_flashes_in_beamgate
Definition: variables.h:415
std::vector< std::vector< double > > m_reco_track_resrange_p2
Definition: variables.h:669
std::vector< double > m_sim_track_length
Definition: variables.h:711
std::vector< double > m_reco_shower_kalman_mean_dEdx_plane0
Definition: variables.h:846
std::vector< double > m_isolation_num_shr_hits_win_1cm_trk
Definition: variables.h:731
double m_reco_vertex_dist_to_CPA
Definition: variables.h:428
std::vector< double > m_mctruth_exiting_photon_px
Definition: variables.h:944
double m_sss2d_invar_ranked_angle_to_shower
Definition: variables.h:309
std::vector< int > m_reco_slice_num_tracks
Definition: variables.h:1076
std::vector< double > m_sim_track_overlay_fraction
Definition: variables.h:693
std::vector< double > m_isolation_num_shr_hits_win_5cm_trk
Definition: variables.h:734
int m_sss2d_invar_ranked_num_planes
Definition: variables.h:310
std::vector< int > m_geant4_mother
Definition: variables.h:174
void ResizeTracks(size_t size, var_all &vars)
std::vector< double > m_trackstub_candidate_energy
Definition: variables.h:383
std::vector< double > m_geant4_costheta
Definition: variables.h:190
std::vector< double > m_reco_shower_diry
Definition: variables.h:792
std::vector< double > m_mctruth_daughters_px
Definition: variables.h:911
std::vector< int > m_mctruth_daughters_trackID
Definition: variables.h:909
std::vector< double > m_reco_track_pid_bragg_likelihood_mu_plane1
Definition: variables.h:1045
double m_sss2d_conv_ranked_pca
Definition: variables.h:299
std::vector< double > m_mctruth_daughters_endtime
Definition: variables.h:921
std::vector< double > m_reco_shower_start_dist_to_CPA
Definition: variables.h:785
std::vector< double > m_sim_track_mass
Definition: variables.h:695
std::vector< double > m_trackstub_candidate_mean_wire
Definition: variables.h:371
std::vector< double > m_trackstub_candidate_min_conversion_dist_to_shower_start
Definition: variables.h:374
std::vector< double > m_reco_track_mean_trunc_dEdx_start_half_p0
Definition: variables.h:648
double m_mctruth_particles_polz[100]
Definition: variables.h:481
std::vector< bool > m_sim_shower_isclearcosmic
Definition: variables.h:886
double m_mctruth_delta_neutron_energy
Definition: variables.h:937
std::vector< double > m_reco_shower_dEdx_plane0_median
Definition: variables.h:1028
void CreateIsolationBranches(var_all &vars)
std::vector< int > m_trackstub_candidate_num_hits
Definition: variables.h:358
std::vector< int > m_mctruth_exiting_photon_trackID
Definition: variables.h:940
std::vector< double > m_reco_shower_conversion_distance
Definition: variables.h:799
std::vector< double > m_mctruth_exiting_neutron_pz
Definition: variables.h:962
double m_flash_optfltr_pe_beam_tot
Definition: variables.h:825
double m_sss2d_invar_ranked_pca
Definition: variables.h:307
std::vector< double > m_sss_candidate_max_tick
Definition: variables.h:215
std::vector< size_t > m_reco_track_ordered_displacement_index
Definition: variables.h:607
std::vector< double > m_trackstub_candidate_mean_ADC
Definition: variables.h:363
bool m_mctruth_is_reconstructable_1g0p
Definition: variables.h:965
std::vector< int > m_geant4_trackid
Definition: variables.h:173
std::vector< int > m_sss_candidate_num_ticks
Definition: variables.h:205
std::vector< double > m_reco_track_mean_dEdx_end_half_p2
Definition: variables.h:663
std::vector< int > m_sss3d_slice_clear_cosmic
Definition: variables.h:259
std::vector< std::vector< double > > m_reco_track_trunc_dEdx_best_plane
Definition: variables.h:620
std::vector< int > m_sim_shower_parent_trackID
Definition: variables.h:861
std::vector< double > m_reco_shower_dirx
Definition: variables.h:791
std::vector< double > m_reco_track_pid_pida_plane0
Definition: variables.h:1053
std::vector< double > m_sss_candidate_mean_wire
Definition: variables.h:219
std::vector< double > m_reco_track_pid_pida_plane2
Definition: variables.h:1055
std::vector< int > m_trackstub_candidate_matched
Definition: variables.h:385
std::vector< double > m_reco_track_mean_trunc_dEdx_p0
Definition: variables.h:647
std::vector< int > m_reco_shower_num_hits_plane0
Definition: variables.h:829
void ClearSlices(var_all &vars)
double m_mctruth_nu_vertex_z
Definition: variables.h:896
std::vector< double > m_reco_track_calo_energy_plane0
Definition: variables.h:593
std::vector< double > m_reco_shower3d_startx
Definition: variables.h:753
std::vector< double > m_matched_signal_track_true_E
Definition: variables.h:1098
std::vector< double > m_mctruth_pi0_leading_photon_end
Definition: variables.h:981
std::vector< double > m_reco_track_length
Definition: variables.h:575
std::vector< double > m_reco_shower_plane0_meanRMS
Definition: variables.h:1003
std::vector< double > m_reco_shower_dEdx_plane1_median
Definition: variables.h:1029
std::vector< double > m_reco_track_pid_bragg_likelihood_p_plane0
Definition: variables.h:1047
std::vector< double > m_sss_candidate_mean_ADC
Definition: variables.h:208
std::vector< std::vector< double > > m_reco_track_resrange_best_plane
Definition: variables.h:621
std::vector< double > m_sss_candidate_min_tick
Definition: variables.h:216
void ClearShowers(var_all &vars)
std::vector< std::vector< double > > m_reco_shower_dEdx_plane1
Definition: variables.h:1017
std::vector< double > m_sss_candidate_min_wire
Definition: variables.h:217
void CreateMetaBranches(var_all &vars)
std::vector< double > m_sim_track_px
Definition: variables.h:705
std::vector< double > m_reco_track_pid_bragg_likelihood_mip_plane2
Definition: variables.h:1052
void ClearTracks(var_all &vars)