-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathNeutrinoSelectionFilter.h
More file actions
2947 lines (2928 loc) · 143 KB
/
NeutrinoSelectionFilter.h
File metadata and controls
2947 lines (2928 loc) · 143 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
//////////////////////////////////////////////////////////
// This class has been automatically generated on
// Sat Jun 10 18:55:27 2023 by ROOT version 6.12/06
// from TTree NeutrinoSelectionFilter/Neutrino Selection TTree
// found on file: /pnfs/uboone/persistent/users/birwin/NTuples/May2023/MCC9Overlay_12000.root
//////////////////////////////////////////////////////////
#ifndef NeutrinoSelectionFilter_h
#define NeutrinoSelectionFilter_h
#include <TROOT.h>
#include <TChain.h>
#include <TFile.h>
// Header file for the classes stored in the TTree if any.
#include "vector"
#include "vector"
#include "vector"
#include "vector"
#include "vector"
#include "vector"
#include "vector"
#include "string"
#include "map"
#include "vector"
#include "vector"
class NeutrinoSelectionFilter {
public :
TTree *fChain; //!pointer to the analyzed TTree or TChain
Int_t fCurrent; //!current Tree number in a TChain
// Fixed size dimensions of array or collections stored in the TTree if any.
// Declaration of leaf types
Int_t selected;
Int_t run;
Int_t sub;
Int_t evt;
UInt_t trk_id;
UInt_t shr_id;
UInt_t trk2_id;
UInt_t shr2_id;
UInt_t trk3_id;
UInt_t shr3_id;
Float_t shr_energy_tot;
Float_t shr_energy;
Float_t shr_energy_second;
Float_t shr_energy_third;
Float_t shr_energy_tot_cali;
Float_t shr_energy_cali;
Float_t shr_energy_second_cali;
Float_t shr_energy_third_cali;
Float_t shr_theta;
Float_t shr_phi;
Float_t shr_pca_0;
Float_t shr_pca_1;
Float_t shr_pca_2;
Float_t shr_px;
Float_t shr_py;
Float_t shr_pz;
Float_t shr_openangle;
Float_t shr_tkfit_start_x;
Float_t shr_tkfit_start_y;
Float_t shr_tkfit_start_z;
Float_t shr_tkfit_theta;
Float_t shr_tkfit_phi;
Float_t shr_start_x;
Float_t shr_start_y;
Float_t shr_start_z;
Float_t shr_dedx_Y;
Float_t shr_dedx_V;
Float_t shr_dedx_U;
Float_t shr_dedx_Y_cali;
Float_t shr_dedx_V_cali;
Float_t shr_dedx_U_cali;
Float_t shr_tkfit_dedx_Y;
Float_t shr_tkfit_dedx_V;
Float_t shr_tkfit_dedx_U;
Float_t shr_tkfit_dedx_max;
UInt_t shr_tkfit_nhits_Y;
UInt_t shr_tkfit_nhits_V;
UInt_t shr_tkfit_nhits_U;
Float_t shr_llrpid_dedx_Y;
Float_t shr_llrpid_dedx_V;
Float_t shr_llrpid_dedx_U;
Float_t shr_llrpid_dedx;
Float_t shr_tkfit_dedx_Y_alt;
Float_t shr_tkfit_dedx_V_alt;
Float_t shr_tkfit_dedx_U_alt;
UInt_t shr_tkfit_nhits_Y_alt;
UInt_t shr_tkfit_nhits_V_alt;
UInt_t shr_tkfit_nhits_U_alt;
Float_t trkfit;
UInt_t shr_tkfit_npoints;
UInt_t shr_tkfit_npointsvalid;
Float_t shr_trkfitmedangle;
Float_t shrmoliereavg;
Float_t shrmoliererms;
Float_t shr1shr2moliereavg;
Float_t shr1shr2moliererms;
Float_t shr1trk1moliereavg;
Float_t shr1trk1moliererms;
Float_t shr1trk2moliereavg;
Float_t shr1trk2moliererms;
UChar_t ismerged;
Float_t merge_bestdot;
Float_t merge_bestdist;
Float_t merge_vtx_x;
Float_t merge_vtx_y;
Float_t merge_vtx_z;
UInt_t merge_tk_ipfp;
Float_t shr_tkfit_2cm_dedx_Y;
Float_t shr_tkfit_2cm_dedx_V;
Float_t shr_tkfit_2cm_dedx_U;
UInt_t shr_tkfit_2cm_nhits_Y;
UInt_t shr_tkfit_2cm_nhits_V;
UInt_t shr_tkfit_2cm_nhits_U;
Float_t shr_tkfit_gap05_dedx_Y;
Float_t shr_tkfit_gap05_dedx_V;
Float_t shr_tkfit_gap05_dedx_U;
UInt_t shr_tkfit_gap05_nhits_Y;
UInt_t shr_tkfit_gap05_nhits_V;
UInt_t shr_tkfit_gap05_nhits_U;
Float_t shr_tkfit_gap10_dedx_Y;
Float_t shr_tkfit_gap10_dedx_V;
Float_t shr_tkfit_gap10_dedx_U;
UInt_t shr_tkfit_gap10_nhits_Y;
UInt_t shr_tkfit_gap10_nhits_V;
UInt_t shr_tkfit_gap10_nhits_U;
Float_t shr_chipr;
Float_t shr_chimu;
Float_t shr_bragg_p;
Float_t shr_bragg_mu;
Float_t shr_bragg_mip;
Float_t shr_bragg_kaon;
Float_t shr_bragg_pion;
Float_t tksh_distance;
Float_t tksh_angle;
Float_t shr_distance;
Float_t shr_score;
Int_t shr_bkt_pdg;
Float_t shr_bkt_purity;
Float_t shr_bkt_completeness;
Float_t shr_bkt_E;
Float_t trk_len;
Float_t trk_theta;
Float_t trk_phi;
Float_t trk_energy;
Float_t trk_energy_muon;
Float_t trk_energy_muon_mcs;
Float_t trk_energy_tot;
Float_t trk_energy_muon_tot;
Float_t trk_distance;
Float_t trk_score;
Int_t trk_bkt_pdg;
Float_t trk_bkt_purity;
Float_t trk_bkt_completeness;
Float_t trk_bkt_E;
Float_t trk_chipr_best;
Float_t trk_chipr_worst;
Float_t trk_chimu_best;
Float_t trk_chimu_worst;
Float_t trk_chipr;
Float_t trk_chimu;
Float_t trk_pida;
Float_t trk_bragg_p;
Float_t trk_bragg_mu;
Float_t trk_bragg_mip;
Float_t trk_bragg_kaon;
Float_t trk_bragg_pion;
UInt_t trk_hits_max;
UInt_t shr_hits_max;
vector<int> *all_shr_hits;
vector<int> *all_trk_hits;
vector<float> *all_shr_energies;
vector<float> *all_trk_energies;
UInt_t trk_hits_2nd;
UInt_t shr_hits_2nd;
UInt_t trk_hits_3rd;
UInt_t shr_hits_3rd;
Float_t trkshrhitdist0;
Float_t trkshrhitdist1;
Float_t trkshrhitdist2;
Float_t trk2shrhitdist0;
Float_t trk2shrhitdist1;
Float_t trk2shrhitdist2;
Float_t trk1trk2hitdist0;
Float_t trk1trk2hitdist1;
Float_t trk1trk2hitdist2;
UInt_t total_hits_y;
Float_t extra_energy_y;
Float_t trk_energy_hits_tot;
UInt_t subcluster;
UInt_t shrsubclusters0;
UInt_t shrsubclusters1;
UInt_t shrsubclusters2;
Float_t shrclusfrac0;
Float_t shrclusfrac1;
Float_t shrclusfrac2;
Float_t shrclusdir0;
Float_t shrclusdir1;
Float_t shrclusdir2;
UInt_t shr_hits_tot;
UInt_t shr_hits_y_tot;
UInt_t shr_hits_u_tot;
UInt_t shr_hits_v_tot;
UInt_t trk_hits_tot;
UInt_t trk_hits_y_tot;
UInt_t trk_hits_u_tot;
UInt_t trk_hits_v_tot;
Float_t _elecclusters_U_charge;
Float_t _elecclusters_V_charge;
Float_t _elecclusters_Y_charge;
Int_t _elecclusters_U_N;
Int_t _elecclusters_V_N;
Int_t _elecclusters_Y_N;
UInt_t n_tracks_contained;
UInt_t n_showers_contained;
Float_t matched_E;
Float_t hits_ratio;
Float_t contained_fraction;
Float_t sps_contained_fraction;
Float_t pt;
Float_t p;
Float_t pt_assume_muon;
Float_t p_assume_muon;
Float_t reco_e;
vector<int> *blip_ID;
vector<bool> *blip_isValid;
vector<int> *blip_TPC;
vector<int> *blip_NPlanes;
vector<int> *blip_MaxWireSpan;
vector<float> *blip_Energy;
vector<float> *blip_EnergyESTAR;
vector<float> *blip_Time;
vector<float> *blip_ProxTrkDist;
vector<int> *blip_ProxTrkID;
vector<bool> *blip_inCylinder;
vector<float> *blip_X;
vector<float> *blip_Y;
vector<float> *blip_Z;
vector<float> *blip_SigmaYZ;
vector<float> *blip_dX;
vector<float> *blip_dYZ;
vector<float> *blip_Charge;
vector<int> *blip_trkid;
vector<int> *blip_pdg;
vector<string> *blip_process;
vector<float> *blip_vx;
vector<float> *blip_vy;
vector<float> *blip_vz;
vector<float> *blip_E;
vector<float> *blip_mass;
vector<bool> *blip_neutron_flag;
Float_t dvtx;
Float_t dtrk;
Float_t contained_sps_ratio;
vector<double> *dtrk_x_boundary;
vector<double> *dtrk_y_boundary;
vector<double> *dtrk_z_boundary;
vector<double> *dshr_x_boundary;
vector<double> *dshr_y_boundary;
vector<double> *dshr_z_boundary;
vector<double> *dvtx_x_boundary;
vector<double> *dvtx_y_boundary;
vector<double> *dvtx_z_boundary;
vector<vector<double> > *dtrk_boundary;
vector<vector<double> > *dvtx_boundary;
vector<vector<double> > *dshr_boundary;
vector<vector<double> > *dmc_boundary;
Float_t CosmicIP;
Float_t CosmicIPAll3D;
Float_t CosmicDirAll3D;
Float_t CosmicIPAll2DEnds;
Float_t CosmicDirAll2DEnds;
Float_t CosmicIPAll2DOvlp;
Float_t CosmicDirAll2DOvlp;
Float_t leeweight;
Float_t true_pt;
Float_t true_pt_visible;
Float_t true_p;
Float_t true_p_visible;
Float_t true_e_visible;
Float_t _opfilter_pe_beam;
Float_t _opfilter_pe_veto;
Int_t nu_pdg;
Int_t ccnc;
Int_t nu_parent_pdg;
Int_t nu_hadron_pdg;
Int_t nu_decay_mode;
Int_t interaction;
Float_t nu_e;
Float_t nu_l;
Float_t nu_pt;
Float_t theta;
Bool_t isVtxInFiducial;
Bool_t truthFiducial;
Float_t true_nu_vtx_t;
Float_t true_nu_vtx_x;
Float_t true_nu_vtx_y;
Float_t true_nu_vtx_z;
Float_t true_nu_vtx_sce_x;
Float_t true_nu_vtx_sce_y;
Float_t true_nu_vtx_sce_z;
Float_t reco_nu_vtx_x;
Float_t reco_nu_vtx_y;
Float_t reco_nu_vtx_z;
Float_t reco_nu_vtx_sce_x;
Float_t reco_nu_vtx_sce_y;
Float_t reco_nu_vtx_sce_z;
Int_t nmuon;
Float_t muon_e;
Float_t muon_c;
Float_t muon_p;
Int_t nelec;
Float_t elec_e;
Float_t elec_c;
Float_t elec_p;
Float_t elec_vx;
Float_t elec_vy;
Float_t elec_vz;
Float_t elec_px;
Float_t elec_py;
Float_t elec_pz;
Int_t npi0;
Float_t pi0_e;
Float_t pi0_c;
Float_t pi0_p;
Int_t nneutron;
Int_t nproton;
Float_t proton_e;
Float_t proton_c;
Float_t proton_p;
Int_t npion;
Float_t pion_e;
Float_t pion_c;
Float_t pion_p;
Int_t neta;
Float_t eta_e;
Int_t nslice;
Int_t crtveto;
Float_t crthitpe;
vector<int> *pfp_slice_idx;
Int_t category;
vector<int> *backtracked_pdg;
vector<float> *backtracked_e;
vector<int> *backtracked_tid;
vector<float> *backtracked_purity;
vector<float> *backtracked_completeness;
vector<float> *backtracked_overlay_purity;
vector<float> *backtracked_px;
vector<float> *backtracked_py;
vector<float> *backtracked_pz;
vector<float> *backtracked_start_x;
vector<float> *backtracked_start_y;
vector<float> *backtracked_start_z;
vector<float> *backtracked_start_t;
vector<float> *backtracked_start_U;
vector<float> *backtracked_start_V;
vector<float> *backtracked_start_Y;
vector<float> *backtracked_sce_start_x;
vector<float> *backtracked_sce_start_y;
vector<float> *backtracked_sce_start_z;
vector<float> *backtracked_sce_start_U;
vector<float> *backtracked_sce_start_V;
vector<float> *backtracked_sce_start_Y;
Float_t lep_e;
Int_t pass;
Int_t swtrig;
Int_t evnhits;
Int_t slpdg;
Int_t slnhits;
Int_t n_pfps;
Int_t n_tracks;
Int_t n_showers;
vector<unsigned int> *pfp_generation_v;
vector<unsigned int> *pfp_trk_daughters_v;
vector<unsigned int> *pfp_shr_daughters_v;
vector<float> *trk_score_v;
vector<int> *pfpdg;
vector<int> *pfnhits;
vector<int> *pfnplanehits_U;
vector<int> *pfnplanehits_V;
vector<int> *pfnplanehits_Y;
vector<int> *pfpplanesubclusters_U;
vector<int> *pfpplanesubclusters_V;
vector<int> *pfpplanesubclusters_Y;
vector<float> *pfpplanesubhitfracmax_U;
vector<float> *pfpplanesubhitfracmax_V;
vector<float> *pfpplanesubhitfracmax_Y;
UInt_t hits_u;
UInt_t hits_v;
UInt_t hits_y;
Float_t topological_score;
Float_t slclustfrac;
vector<int> *mc_pdg;
vector<float> *mc_E;
vector<float> *mc_vx;
vector<float> *mc_vy;
vector<float> *mc_vz;
vector<float> *mc_endx;
vector<float> *mc_endy;
vector<float> *mc_endz;
vector<float> *mc_px;
vector<float> *mc_py;
vector<float> *mc_pz;
vector<float> *mc_completeness;
vector<float> *mc_purity;
string *endmuonprocess;
Float_t endmuonmichel;
Int_t filter_antibdt;
Int_t filter_ncpi0;
Int_t filter_pi0;
Int_t filter_ccinclusive;
map<string,vector<double> > *weights;
vector<unsigned short> *weightsFlux;
vector<unsigned short> *weightsGenie;
vector<unsigned short> *weightsReint;
Float_t weightSpline;
Float_t weightTune;
Float_t weightSplineTimesTune;
Double_t knobRPAup;
Double_t knobRPAdn;
Double_t knobCCMECup;
Double_t knobCCMECdn;
Double_t knobAxFFCCQEup;
Double_t knobAxFFCCQEdn;
Double_t knobVecFFCCQEup;
Double_t knobVecFFCCQEdn;
Double_t knobDecayAngMECup;
Double_t knobDecayAngMECdn;
Double_t knobThetaDelta2Npiup;
Double_t knobThetaDelta2Npidn;
Double_t knobThetaDelta2NRadup;
Double_t knobThetaDelta2NRaddn;
Double_t knobNormCCCOHup;
Double_t knobNormCCCOHdn;
Double_t knobNormNCCOHup;
Double_t knobNormNCCOHdn;
Double_t knobxsr_scc_Fv3up;
Double_t knobxsr_scc_Fv3dn;
Double_t knobxsr_scc_Fa3up;
Double_t knobxsr_scc_Fa3dn;
Double_t RootinoFix;
Float_t flash_pe;
vector<float> *flash_pe_v;
vector<float> *slice_pe_v;
Float_t flash_time;
Float_t flash_y;
Float_t flash_z;
Float_t flash_timewidth;
Float_t flash_ywidth;
Float_t flash_zwidth;
Float_t nu_flashmatch_score;
Float_t nu_centerX;
Float_t nu_centerY;
Float_t nu_centerZ;
Float_t nu_totalCharge;
Float_t best_cosmic_flashmatch_score;
Float_t best_obviouscosmic_flashmatch_score;
vector<float> *cosmic_flashmatch_score_v;
vector<float> *cosmic_topological_score_v;
vector<float> *cosmic_centerX_v;
vector<float> *cosmic_centerY_v;
vector<float> *cosmic_centerZ_v;
vector<float> *cosmic_totalCharge_v;
vector<int> *cosmic_nhits_v;
vector<int> *cosmic_nunhits_v;
vector<int> *cosmic_isclear_v;
Float_t mcf_nu_e;
Float_t mcf_lep_e;
Int_t mcf_actvol;
Int_t mcf_nmm;
Int_t mcf_nmp;
Int_t mcf_nem;
Int_t mcf_nep;
Int_t mcf_np0;
Int_t mcf_npp;
Int_t mcf_npm;
Float_t mcf_mcshr_elec_etot;
Int_t mcf_pass_ccpi0;
Int_t mcf_pass_ncpi0;
Int_t mcf_pass_ccnopi;
Int_t mcf_pass_ncnopi;
Int_t mcf_pass_cccpi;
Int_t mcf_pass_nccpi;
vector<float> *X_SpcPts_v;
vector<float> *Y_SpcPts_v;
vector<float> *Z_SpcPts_v;
UInt_t shr_id_MCStool;
UInt_t shr_hits_max_MCStool;
UInt_t n_showers_contained_MCStool;
vector<float> *trkshrscore_v;
Float_t shrPCA_1Cr;
Float_t shrPCA_2Cr;
Float_t shrPCA_3Cr;
Float_t shrPCA_1Ce;
Float_t shrPCA_2Ce;
Float_t shrPCA_3Ce;
Float_t shrPCA1CAS;
Float_t shrPCA2CAS;
Float_t shrPCA3CAS;
Float_t shrPCA_1Cr2h;
Float_t shrPCA_2Cr2h;
Float_t shrPCA_3Cr2h;
Float_t shrPCA_1Cr1h;
Float_t shrPCA_2Cr1h;
Float_t shrPCA_3Cr1h;
Float_t shrMCSMom;
Float_t shrMCSMom1h;
Float_t shrMCSMom2h;
Float_t shrPCALen;
UInt_t n_shrSpcPts;
vector<float> *PCAWin_1Cr_5cm;
vector<float> *PCAWin_2Cr_5cm;
vector<float> *PCAWin_3Cr_5cm;
vector<float> *PCAWin_dist_5cm;
vector<int> *PCAWin_npts_5cm;
Float_t shrStart_5cm;
Float_t shrStartMCS_5cm;
Float_t shrMCSAS_5cm;
Float_t shrPCA1CAS_5cm;
Float_t shrPCA2CAS_5cm;
Float_t shrPCA3CAS_5cm;
Float_t shrPCA1CMed_5cm;
vector<float> *PCAWin_1Cr_2_5cm;
vector<float> *PCAWin_2Cr_2_5cm;
vector<float> *PCAWin_3Cr_2_5cm;
vector<float> *PCAWin_dist_2_5cm;
vector<int> *PCAWin_npts_2_5cm;
Float_t shrStart_2_5cm;
Float_t shrStartMCS_2_5cm;
Float_t shrMCSAS_2_5cm;
Float_t shrPCA1CAS_2_5cm;
Float_t shrPCA2CAS_2_5cm;
Float_t shrPCA3CAS_2_5cm;
Float_t shrPCA1CMed_2_5cm;
Float_t DeltaMed;
Float_t DeltaMed1h;
Float_t DeltaMed2h;
Float_t DeltaRMS;
Float_t DeltaRMS1h;
Float_t DeltaRMS2h;
Float_t CylFrac_1cm;
Float_t CylFrac1h_1cm;
Float_t CylFrac2h_1cm;
Float_t CylFrac_2cm;
Float_t CylFrac1h_2cm;
Float_t CylFrac2h_2cm;
Float_t CylFrac_3cm;
Float_t CylFrac1h_3cm;
Float_t CylFrac2h_3cm;
Float_t CylFrac_4cm;
Float_t CylFrac1h_4cm;
Float_t CylFrac2h_4cm;
Float_t CylFrac_5cm;
Float_t CylFrac1h_5cm;
Float_t CylFrac2h_5cm;
vector<int> *nonprim_backtracked_pdg;
vector<float> *nonprim_backtracked_e;
vector<int> *nonprim_backtracked_tid;
vector<float> *nonprim_backtracked_purity;
vector<float> *nonprim_backtracked_completeness;
vector<float> *nonprim_backtracked_overlay_purity;
vector<float> *nonprim_backtracked_px;
vector<float> *nonprim_backtracked_py;
vector<float> *nonprim_backtracked_pz;
vector<float> *nonprim_backtracked_start_x;
vector<float> *nonprim_backtracked_start_y;
vector<float> *nonprim_backtracked_start_z;
vector<float> *nonprim_backtracked_start_t;
vector<float> *nonprim_backtracked_start_U;
vector<float> *nonprim_backtracked_start_V;
vector<float> *nonprim_backtracked_start_Y;
vector<float> *nonprim_backtracked_sce_start_x;
vector<float> *nonprim_backtracked_sce_start_y;
vector<float> *nonprim_backtracked_sce_start_z;
vector<float> *nonprim_backtracked_sce_start_U;
vector<float> *nonprim_backtracked_sce_start_V;
vector<float> *nonprim_backtracked_sce_start_Y;
Int_t n_nonprim_pfps;
vector<int> *nonprim_pfpdg;
vector<int> *all_mc_pdg;
vector<float> *all_mc_E;
vector<float> *all_mc_vx;
vector<float> *all_mc_vy;
vector<float> *all_mc_vz;
vector<float> *all_mc_endx;
vector<float> *all_mc_endy;
vector<float> *all_mc_endz;
vector<float> *all_mc_px;
vector<float> *all_mc_py;
vector<float> *all_mc_pz;
vector<int> *all_mc_mother;
vector<int> *all_mc_trkid;
vector<string> *all_mc_process;
vector<float> *nonprim_trk_llr_pid_u_v;
vector<float> *nonprim_trk_llr_pid_v_v;
vector<float> *nonprim_trk_llr_pid_y_v;
vector<float> *nonprim_trk_llr_pid_v;
vector<float> *nonprim_trk_llr_pid_score_v;
vector<float> *nonprim_trk_calo_energy_u_v;
vector<float> *nonprim_trk_calo_energy_v_v;
vector<float> *nonprim_trk_calo_energy_y_v;
vector<int> *nonprim_trk_nhits_u_v;
vector<int> *nonprim_trk_nhits_v_v;
vector<int> *nonprim_trk_nhits_y_v;
Float_t NeutrinoEnergy0;
Float_t NeutrinoEnergy1;
Float_t NeutrinoEnergy2;
Float_t SliceCaloEnergy0;
Float_t SliceCaloEnergy1;
Float_t SliceCaloEnergy2;
Float_t pi0_mcgamma0_e;
Float_t pi0_mcgamma0_px;
Float_t pi0_mcgamma0_py;
Float_t pi0_mcgamma0_pz;
Float_t pi0_mcrcdot0;
Float_t pi0_mcrce0;
Float_t pi0_mcgamma1_e;
Float_t pi0_mcgamma1_px;
Float_t pi0_mcgamma1_py;
Float_t pi0_mcgamma1_pz;
Float_t pi0_mcrcdot1;
Float_t pi0_mcrce1;
Int_t pi0_nshower;
Int_t pi0_ntrack;
Int_t pi0_ngamma;
Float_t pi0_radlen1;
Float_t pi0_radlen2;
Float_t pi0_dot1;
Float_t pi0_dot2;
Float_t pi0_energy1_Y;
Float_t pi0_energy2_Y;
Float_t pi0_dir1_x;
Float_t pi0_dir1_y;
Float_t pi0_dir1_z;
Float_t pi0_dir2_x;
Float_t pi0_dir2_y;
Float_t pi0_dir2_z;
Float_t pi0_dedx1_Y;
Float_t pi0_dedx2_Y;
Float_t pi0_dedx1_fit_Y;
Float_t pi0_dedx2_fit_Y;
Float_t pi0_energy1_V;
Float_t pi0_energy2_V;
Float_t pi0_dedx1_V;
Float_t pi0_dedx2_V;
Float_t pi0_dedx1_fit_V;
Float_t pi0_dedx2_fit_V;
Float_t pi0_energy1_U;
Float_t pi0_energy2_U;
Float_t pi0_dedx1_U;
Float_t pi0_dedx2_U;
Float_t pi0_dedx1_fit_U;
Float_t pi0_dedx2_fit_U;
Float_t pi0_shrscore1;
Float_t pi0_shrscore2;
Float_t pi0_gammadot;
Float_t pi0_mass_Y;
Float_t pi0_mass_V;
Float_t pi0_mass_U;
Float_t pi0_rc_vtx_x;
Float_t pi0_rc_vtx_y;
Float_t pi0_rc_vtx_z;
Int_t pi0truth_gamma_parent;
Float_t pi0truth_elec_edep;
Float_t pi0truth_elec_etot;
Float_t pi0truth_elec_dist;
Int_t pi0truth_elec_parent;
Int_t pi0truth_gamma1_tid;
Float_t pi0truth_gamma1_edep;
Float_t pi0truth_gamma1_etot;
Float_t pi0truth_gamma1_dist;
Float_t pi0truth_gamma1_elec1;
Float_t pi0truth_gamma1_elec2;
Float_t pi0truth_gamma1_xpos;
Float_t pi0truth_gamma1_ypos;
Float_t pi0truth_gamma1_zpos;
Int_t pi0truth_gamma2_tid;
Float_t pi0truth_gamma2_edep;
Float_t pi0truth_gamma2_etot;
Float_t pi0truth_gamma2_dist;
Float_t pi0truth_gamma2_elec1;
Float_t pi0truth_gamma2_elec2;
Float_t pi0truth_gamma2_xpos;
Float_t pi0truth_gamma2_ypos;
Float_t pi0truth_gamma2_zpos;
Float_t pi0truth_gammadot;
Int_t pi0truth_run;
Int_t pi0truth_sub;
Int_t pi0truth_evt;
Int_t nflag_pl1;
Int_t nnoise_pl1;
Int_t nslhits_pl1;
Int_t nslnoise_pl1;
Int_t nhits_pl1;
Float_t frac_slnoise_pl1;
Float_t secondshower_U_charge;
Int_t secondshower_U_nhit;
Float_t secondshower_U_vtxdist;
Float_t secondshower_U_eigenratio;
Float_t secondshower_U_dot;
Float_t secondshower_U_dir;
Float_t secondshower_V_charge;
Int_t secondshower_V_nhit;
Float_t secondshower_V_vtxdist;
Float_t secondshower_V_eigenratio;
Float_t secondshower_V_dot;
Float_t secondshower_V_dir;
Float_t secondshower_Y_charge;
Int_t secondshower_Y_nhit;
Float_t secondshower_Y_vtxdist;
Float_t secondshower_Y_eigenratio;
Float_t secondshower_Y_dot;
Float_t secondshower_Y_dir;
vector<float> *shr_dedx_u_v;
vector<float> *shr_dedx_v_v;
vector<float> *shr_dedx_y_v;
vector<float> *shr_energy_u_v;
vector<float> *shr_energy_v_v;
vector<float> *shr_energy_y_v;
vector<unsigned long> *shr_pfp_id_v;
vector<float> *shr_start_x_v;
vector<float> *shr_start_y_v;
vector<float> *shr_start_z_v;
vector<float> *shr_dist_v;
vector<float> *shr_start_U_v;
vector<float> *shr_start_V_v;
vector<float> *shr_px_v;
vector<float> *shr_py_v;
vector<float> *shr_pz_v;
vector<float> *shr_openangle_v;
vector<float> *shr_theta_v;
vector<float> *shr_phi_v;
vector<float> *shr_pitch_u_v;
vector<float> *shr_pitch_v_v;
vector<float> *shr_pitch_y_v;
vector<int> *shr_tkfit_nhits_v;
vector<float> *shr_tkfit_start_x_v;
vector<float> *shr_tkfit_start_y_v;
vector<float> *shr_tkfit_start_z_v;
vector<float> *shr_tkfit_start_U_v;
vector<float> *shr_tkfit_start_V_v;
vector<float> *shr_tkfit_theta_v;
vector<float> *shr_tkfit_phi_v;
vector<float> *shr_tkfit_pitch_u_v;
vector<float> *shr_tkfit_pitch_v_v;
vector<float> *shr_tkfit_pitch_y_v;
vector<float> *shr_tkfit_dedx_u_v;
vector<float> *shr_tkfit_dedx_v_v;
vector<float> *shr_tkfit_dedx_y_v;
vector<float> *shr_tkfit_gap10_dedx_u_v;
vector<float> *shr_tkfit_gap10_dedx_v_v;
vector<float> *shr_tkfit_gap10_dedx_y_v;
vector<int> *shr_tkfit_dedx_nhits_u_v;
vector<int> *shr_tkfit_dedx_nhits_v_v;
vector<int> *shr_tkfit_dedx_nhits_y_v;
vector<float> *shr_llr_pid_u_v;
vector<float> *shr_llr_pid_v_v;
vector<float> *shr_llr_pid_y_v;
vector<float> *shr_llr_pid_v;
vector<float> *shr_llr_pid_score_v;
vector<float> *shr_moliere_avg_v;
vector<float> *shr_moliere_rms_v;
Int_t origevnunhits;
Int_t evnunhits;
Int_t evlepnhits;
Int_t evpronhits;
Int_t evpi1nhits;
Int_t evpi0nhits;
Int_t evneunhits;
Int_t evgamnhits;
Int_t evothnhits;
Int_t slnunhits;
Int_t sllepnhits;
Int_t slpronhits;
Int_t slpi1nhits;
Int_t slpi0nhits;
Int_t slneunhits;
Int_t slgamnhits;
Int_t slothnhits;
vector<int> *pfnunhits;
vector<int> *pflepnhits;
vector<int> *pfpronhits;
vector<int> *pfpi1nhits;
vector<int> *pfpi0nhits;
vector<int> *pfneunhits;
vector<int> *pfgamnhits;
vector<int> *pfothnhits;
Float_t nu_completeness_from_pfp;
Float_t nu_purity_from_pfp;
vector<float> *trk_bragg_p_v;
vector<float> *trk_bragg_mu_v;
vector<float> *trk_bragg_pion_v;
vector<float> *trk_bragg_mip_v;
vector<float> *trk_pida_v;
vector<float> *trk_pid_chipr_v;
vector<float> *trk_pid_chipi_v;
vector<float> *trk_pid_chika_v;
vector<float> *trk_pid_chimu_v;
vector<float> *trk_bragg_p_u_v;
vector<float> *trk_bragg_mu_u_v;
vector<float> *trk_bragg_pion_u_v;
vector<float> *trk_bragg_mip_u_v;
vector<float> *trk_pida_u_v;
vector<float> *trk_pid_chipr_u_v;
vector<float> *trk_pid_chipi_u_v;
vector<float> *trk_pid_chika_u_v;
vector<float> *trk_pid_chimu_u_v;
vector<float> *trk_bragg_p_v_v;
vector<float> *trk_bragg_mu_v_v;
vector<float> *trk_bragg_pion_v_v;
vector<float> *trk_bragg_mip_v_v;
vector<float> *trk_pida_v_v;
vector<float> *trk_pid_chipr_v_v;
vector<float> *trk_pid_chipi_v_v;
vector<float> *trk_pid_chika_v_v;
vector<float> *trk_pid_chimu_v_v;
vector<unsigned long> *trk_pfp_id_v;
vector<float> *trk_dir_x_v;
vector<float> *trk_dir_y_v;
vector<float> *trk_dir_z_v;
vector<float> *trk_start_x_v;
vector<float> *trk_start_y_v;
vector<float> *trk_start_z_v;
vector<float> *trk_sce_start_x_v;
vector<float> *trk_sce_start_y_v;
vector<float> *trk_sce_start_z_v;
vector<float> *trk_end_x_v;
vector<float> *trk_end_y_v;
vector<float> *trk_end_z_v;
vector<float> *trk_sce_end_x_v;
vector<float> *trk_sce_end_y_v;
vector<float> *trk_sce_end_z_v;
vector<float> *trk_distance_v;
vector<float> *trk_theta_v;
vector<float> *trk_phi_v;
vector<float> *trk_len_v;
vector<float> *trk_mcs_muon_mom_v;
vector<float> *trk_range_muon_mom_v;
vector<float> *trk_energy_proton_v;
vector<float> *trk_energy_muon_v;
vector<float> *trk_calo_energy_u_v;
vector<float> *trk_calo_energy_v_v;
vector<float> *trk_calo_energy_y_v;
vector<float> *trk_llr_pid_u_v;
vector<float> *trk_llr_pid_v_v;
vector<float> *trk_llr_pid_y_v;
vector<float> *trk_llr_pid_v;
vector<float> *trk_llr_pid_score_v;
vector<float> *trk_trunk_dEdx_u_v;
vector<float> *trk_trunk_dEdx_v_v;
vector<float> *trk_trunk_dEdx_y_v;
vector<int> *trk_nhits_u_v;
vector<int> *trk_nhits_v_v;
vector<int> *trk_nhits_y_v;
vector<int> *trk_end_spacepoints_v;
Float_t bdt_nuNCpi0;
Float_t bdt_numuCCpi0;
Float_t bdt_numuCC;
Float_t bdt_ext;
Float_t bdt_cosmic;
Float_t bdt_global;
Int_t pass_antibdt_filter;
Float_t bdt_pi0_np;
Float_t bdt_nonpi0_np;
Float_t bdt_bkg_0p;
Float_t anglediff_Y;
Float_t anglediff_V;
Float_t anglediff_U;
Float_t trkpid;
// List of branches
TBranch *b_selected; //!
TBranch *b_run; //!
TBranch *b_sub; //!
TBranch *b_evt; //!
TBranch *b_trk_pfp_id; //!
TBranch *b_shr_pfp_id; //!
TBranch *b_trk2_pfp_id; //!
TBranch *b_shr2_pfp_id; //!
TBranch *b_trk3_pfp_id; //!
TBranch *b_shr3_pfp_id; //!
TBranch *b_shr_energy_tot; //!
TBranch *b_shr_energy; //!
TBranch *b_shr_energy_second; //!
TBranch *b_shr_energy_third; //!
TBranch *b_shr_energy_tot_cali; //!
TBranch *b_shr_energy_cali; //!
TBranch *b_shr_energy_second_cali; //!
TBranch *b_shr_energy_third_cali; //!
TBranch *b_shr_theta; //!
TBranch *b_shr_phi; //!
TBranch *b_shr_pca_0; //!
TBranch *b_shr_pca_1; //!
TBranch *b_shr_pca_2; //!
TBranch *b_shr_px; //!
TBranch *b_shr_py; //!
TBranch *b_shr_pz; //!
TBranch *b_shr_openangle; //!
TBranch *b_shr_tkfit_start_x; //!
TBranch *b_shr_tkfit_start_y; //!
TBranch *b_shr_tkfit_start_z; //!
TBranch *b_shr_tkfit_theta; //!
TBranch *b_shr_tkfit_phi; //!
TBranch *b_shr_start_x; //!
TBranch *b_shr_start_y; //!
TBranch *b_shr_start_z; //!
TBranch *b_shr_dedx_Y; //!
TBranch *b_shr_dedx_V; //!
TBranch *b_shr_dedx_U; //!
TBranch *b_shr_dedx_Y_cali; //!
TBranch *b_shr_dedx_V_cali; //!
TBranch *b_shr_dedx_U_cali; //!
TBranch *b_shr_tkfit_dedx_Y; //!
TBranch *b_shr_tkfit_dedx_V; //!
TBranch *b_shr_tkfit_dedx_U; //!
TBranch *b_shr_tkfit_dedx_max; //!
TBranch *b_shr_tkfit_nhits_Y; //!
TBranch *b_shr_tkfit_nhits_V; //!
TBranch *b_shr_tkfit_nhits_U; //!
TBranch *b_shr_llrpid_dedx_Y; //!
TBranch *b_shr_llrpid_dedx_V; //!
TBranch *b_shr_llrpid_dedx_U; //!
TBranch *b_shr_llrpid_dedx; //!
TBranch *b_shr_tkfit_dedx_Y_alt; //!
TBranch *b_shr_tkfit_dedx_V_alt; //!
TBranch *b_shr_tkfit_dedx_U_alt; //!
TBranch *b_shr_tkfit_nhits_Y_alt; //!
TBranch *b_shr_tkfit_nhits_V_alt; //!
TBranch *b_shr_tkfit_nhits_U_alt; //!
TBranch *b__trkfit; //!
TBranch *b_shr_tkfit_npoints; //!
TBranch *b_shr_tkfit_npointsvalid; //!
TBranch *b_shr_trkfitmedangle; //!
TBranch *b_shrmoliereavg; //!
TBranch *b_shrmoliererms; //!
TBranch *b_shr1shr2moliereavg; //!
TBranch *b_shr1shr2moliererms; //!
TBranch *b_shr1trk1moliereavg; //!
TBranch *b_shr1trk1moliererms; //!
TBranch *b_shr1trk2moliereavg; //!
TBranch *b_shr1trk2moliererms; //!
TBranch *b_ismerged; //!
TBranch *b_merge_bestdot; //!
TBranch *b_merge_bestdist; //!
TBranch *b_merge_vtx_x; //!
TBranch *b_merge_vtx_y; //!
TBranch *b_merge_vtx_z; //!
TBranch *b_merge_tk_ipfp; //!
TBranch *b_shr_tkfit_2cm_dedx_Y; //!
TBranch *b_shr_tkfit_2cm_dedx_V; //!
TBranch *b_shr_tkfit_2cm_dedx_U; //!
TBranch *b_shr_tkfit_2cm_nhits_Y; //!
TBranch *b_shr_tkfit_2cm_nhits_V; //!
TBranch *b_shr_tkfit_2cm_nhits_U; //!
TBranch *b_shr_tkfit_gap05_dedx_Y; //!
TBranch *b_shr_tkfit_gap05_dedx_V; //!
TBranch *b_shr_tkfit_gap05_dedx_U; //!
TBranch *b_shr_tkfit_gap05_nhits_Y; //!
TBranch *b_shr_tkfit_gap05_nhits_V; //!
TBranch *b_shr_tkfit_gap05_nhits_U; //!
TBranch *b_shr_tkfit_gap10_dedx_Y; //!
TBranch *b_shr_tkfit_gap10_dedx_V; //!
TBranch *b_shr_tkfit_gap10_dedx_U; //!
TBranch *b_shr_tkfit_gap10_nhits_Y; //!
TBranch *b_shr_tkfit_gap10_nhits_V; //!
TBranch *b_shr_tkfit_gap10_nhits_U; //!
TBranch *b_shr_chipr; //!
TBranch *b_shr_chimu; //!
TBranch *b_shr_bragg_p; //!
TBranch *b_shr_bragg_mu; //!
TBranch *b_shr_bragg_mip; //!
TBranch *b_shr_bragg_kaon; //!
TBranch *b_shr_bragg_pion; //!
TBranch *b_tksh_distance; //!
TBranch *b_tksh_angle; //!
TBranch *b_shr_distance; //!
TBranch *b_shr_score; //!
TBranch *b_shr_bkt_pdg; //!
TBranch *b_shr_bkt_purity; //!
TBranch *b_shr_bkt_completeness; //!
TBranch *b_shr_bkt_E; //!
TBranch *b_trk_len; //!
TBranch *b_trk_theta; //!
TBranch *b_trk_phi; //!
TBranch *b_trk_energy; //!
TBranch *b_trk_energy_muon; //!
TBranch *b_trk_energy_muon_mcs; //!
TBranch *b_trk_energy_tot; //!
TBranch *b_trk_energy_muon_tot; //!
TBranch *b_trk_distance; //!
TBranch *b_trk_score; //!
TBranch *b_trk_bkt_pdg; //!
TBranch *b_trk_bkt_purity; //!
TBranch *b_trk_bkt_completeness; //!
TBranch *b_trk_bkt_E; //!
TBranch *b_trk_chipr_best; //!