NumuVarsExtra.h
Go to the documentation of this file.
1 #pragma once
2 
3 // Additional Vars used in the Numu Data/MC and validation
4 
5 #include "CAFAna/Core/Var.h"
6 #include "CAFAna/Core/MultiVar.h"
7 
8 namespace ana
9 {
10 
11  extern const Binning kXYBinsND;
12  extern const Binning kZBinsND;
13  extern const Binning kXYBinsFD;
14  extern const Binning kZBinsFD;
15 
16 
17  extern const Binning kEnergyBinning;
18  extern const Binning kEnergyBinningZoom;
19  extern const Binning kHadronicEnergyBinning;
20  extern const Binning kHadronicEnergyBinningZoom;
21 
22  extern const MultiVar kPngCalE;
23  extern const MultiVar kPngWtCalE;
24  extern const MultiVar kPngNhit;
25  extern const MultiVar kPngNhitX;
26  extern const MultiVar kPngNhitY;
27  extern const MultiVar kPngNPlane;
28  extern const MultiVar kPngMaxPlaneCont;
29  extern const MultiVar kPngMaxPlaneGap;
30  extern const MultiVar kPngLen;
31  extern const MultiVar kPngDirX;
32  extern const MultiVar kPngDirY;
33  extern const MultiVar kPngDirZ;
34  extern const MultiVar kPngStartX;
35  extern const MultiVar kPngStartY;
36  extern const MultiVar kPngStartZ;
37 
38 
39  extern const MultiVar kPng2dCalE;
40  extern const MultiVar kPng2dWtCalE;
41  extern const MultiVar kPng2dNhit;
42  extern const MultiVar kPng2dNhitX;
43  extern const MultiVar kPng2dNhitY;
44  extern const MultiVar kPng2dNPlane;
47  extern const MultiVar kPng2dLen;
48  extern const MultiVar kPng2dDirX;
49  extern const MultiVar kPng2dDirY;
50  extern const MultiVar kPng2dDirZ;
51  extern const MultiVar kPng2dStartX;
52  extern const MultiVar kPng2dStartY;
53  extern const MultiVar kPng2dStartZ;
54 
55 
56  extern const Var kNPng3D;
57  extern const Var kNPng2D;
58  extern const Var kOrphCalE;
59  extern const Var kKalTrkOverlapE;
60  extern const Var kVtxXm;
61  extern const Var kVtxYm;
62  extern const Var kVtxZm;
63  extern const Var kNNonNoise;
64  extern const Var kNNonNoiseWt;
65 
66  // Truth Vars
67  extern const Var kTrueVisE;
68  extern const Var kTrueVisEinSlc;
69  extern const Var kTrueVisENeutron;
70  extern const Var kTrueVisEinSlcNeutron;
71  extern const Var kTrueVisEBirks;
72  extern const Var kTrueVisEinSlcBirks;
73  extern const Var kTrueVisENeutronBirks;
75  extern const Var kTrueSlcEff;
76  extern const Var kTrueSlcPur;
77  extern const Var kTrueNHitsSlc;
78  extern const Var kTrueNHitsTot;
79  extern const Var kTrueMomX;
80  extern const Var kTrueMomY;
81  extern const Var kTrueMomZ;
82  extern const Var kTrueVtxX;
83  extern const Var kTrueVtxY;
84  extern const Var kTrueVtxZ;
85  extern const Var kEres;
86  extern const Var kMuEres;
87  extern const Var kHadEres;
88  extern const Var kTrkNPlaneGapFrac;
89 
90  // Truth Vars from NuTree
91  extern const NuTruthVar kTrueVisE_NT;
99  extern const NuTruthVar kTrueSlcEff_NT;
103  extern const NuTruthVar kTrueMomX_NT;
104  extern const NuTruthVar kTrueMomY_NT;
105  extern const NuTruthVar kTrueMomZ_NT;
106  extern const NuTruthVar kTrueVtxX_NT;
107  extern const NuTruthVar kTrueVtxY_NT;
108  extern const NuTruthVar kTrueVtxZ_NT;
109  extern const NuTruthVar kTrueLepE_NT;
110  extern const NuTruthVar kTrueMode_NT;
111  extern const NuTruthVar kTrueq0q3_NT;
112 
113  extern const Var kAngleKal;
114  extern const Var kNueCosRejPngPTP;
115 
116 }
const MultiVar kPngCalE([](const caf::SRProxy *sr){std::vector< double > E;if(!sr->vtx.elastic.IsValid) return E;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){E.emplace_back(sr->vtx.elastic.fuzzyk.png[i].calE);}return E;})
Definition: NumuVarsExtra.h:22
const MultiVar kPngDirY([](const caf::SRProxy *sr){std::vector< double > dir;if(!sr->vtx.elastic.IsValid) return dir;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){dir.emplace_back(sr->vtx.elastic.fuzzyk.png[i].dir.Y());}return dir;})
Definition: NumuVarsExtra.h:32
const NuTruthVar kTrueSlcEff_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->eff;})
Definition: NumuVarsExtra.h:99
const NuTruthVar kTrueVisEinSlc_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->visEinslc;})
Definition: NumuVarsExtra.h:92
const NuTruthVar kTrueVtxZ_NT([](const caf::SRNeutrinoProxy *nu){return float(nu->vtx.Z()/100.);})
Cuts and Vars for the 2020 FD DiF Study.
Definition: vars.h:6
const MultiVar kPngNhit([](const caf::SRProxy *sr){std::vector< double > nhit;if(!sr->vtx.elastic.IsValid) return nhit;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){nhit.emplace_back(sr->vtx.elastic.fuzzyk.png[i].nhit);}return nhit;})
Definition: NumuVarsExtra.h:24
const Var kNPng2D([](const caf::SRProxy *sr){if(!sr->vtx.elastic.IsValid) return-5;return(int) sr->vtx.elastic.fuzzyk.npng2d;})
Definition: NumuVarsExtra.h:57
const Var kTrueMomY([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].p.Y();})
Definition: NumuVarsExtra.h:80
const MultiVar kPng2dDirX([](const caf::SRProxy *sr){std::vector< double > dir;if(!sr->vtx.elastic.IsValid) return dir;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){dir.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].dir.X());}return dir;})
Definition: NumuVarsExtra.h:48
const MultiVar kPng2dCalE([](const caf::SRProxy *sr){std::vector< double > E;if(!sr->vtx.elastic.IsValid) return E;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){E.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].calE);}return E;})
Definition: NumuVarsExtra.h:39
const MultiVar kPngStartX([](const caf::SRProxy *sr){std::vector< double > start;if(!sr->vtx.elastic.IsValid) return start;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){start.emplace_back(sr->vtx.elastic.fuzzyk.png[i].start.X()/100.);}return start;})
Definition: NumuVarsExtra.h:34
const MultiVar kPngMaxPlaneCont([](const caf::SRProxy *sr){std::vector< double > maxplane;if(!sr->vtx.elastic.IsValid) return maxplane;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){maxplane.emplace_back(sr->vtx.elastic.fuzzyk.png[i].maxplanecont);}return maxplane;})
Definition: NumuVarsExtra.h:28
const MultiVar kPng2dNhitY([](const caf::SRProxy *sr){std::vector< double > nhit;if(!sr->vtx.elastic.IsValid) return nhit;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){nhit.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].nhity);}return nhit;})
Definition: NumuVarsExtra.h:43
const Binning kZBinsND
const NuTruthVar kTrueMomY_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->p.Y();})
const NuTruthVar kTrueq0q3_NT([](const caf::SRNeutrinoProxy *nu){return float(kTrueQ0_NT(nu)/kTrueQ3_NT(nu));})
const MultiVar kPngNhitY([](const caf::SRProxy *sr){std::vector< double > nhit;if(!sr->vtx.elastic.IsValid) return nhit;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){nhit.emplace_back(sr->vtx.elastic.fuzzyk.png[i].nhity);}return nhit;})
Definition: NumuVarsExtra.h:26
const Var kMuEres([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return float((kMuE(sr)-kTrueMuonE(sr))/kTrueMuonE(sr));})
Definition: NumuVarsExtra.h:86
const MultiVar kPngDirZ([](const caf::SRProxy *sr){std::vector< double > dir;if(!sr->vtx.elastic.IsValid) return dir;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){dir.emplace_back(sr->vtx.elastic.fuzzyk.png[i].dir.Z());}return dir;})
Definition: NumuVarsExtra.h:33
const NuTruthVar kTrueVisEinSlcBirks_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->visEinslcBirks;})
Definition: NumuVarsExtra.h:96
const MultiVar kPngStartZ([](const caf::SRProxy *sr){std::vector< double > start;if(!sr->vtx.elastic.IsValid) return start;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){start.emplace_back(sr->vtx.elastic.fuzzyk.png[i].start.Z()/100.);}return start;})
Definition: NumuVarsExtra.h:36
const Var kTrueVisEinSlc([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].visEinslc;})
Definition: NumuVarsExtra.h:68
const NuTruthVar kTrueNHitsSlc_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->nhitslc;})
const MultiVar kPng2dStartX([](const caf::SRProxy *sr){std::vector< double > start;if(!sr->vtx.elastic.IsValid) return start;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){start.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].start.X()/100.);}return start;})
Definition: NumuVarsExtra.h:51
const MultiVar kPng2dMaxPlaneCont([](const caf::SRProxy *sr){std::vector< double > maxplane;if(!sr->vtx.elastic.IsValid) return maxplane;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){maxplane.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].maxplanecont);}return maxplane;})
Definition: NumuVarsExtra.h:45
const NuTruthVar kTrueMomZ_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->p.Z();})
const Var kNNonNoise([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return float(sr->slc.nnonnoise);})
Definition: NumuVarsExtra.h:63
const Var kTrueNHitsTot([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].nhittot;})
Definition: NumuVarsExtra.h:78
const NuTruthVar kTrueVisENeutron_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->visENeutron;})
Definition: NumuVarsExtra.h:93
const Var kVtxZm([](const caf::SRProxy *sr){return float(kVtxZ(sr)/100.);})
Definition: NumuVarsExtra.h:62
const Var kNPng3D([](const caf::SRProxy *sr){if(!sr->vtx.elastic.IsValid) return-5;return(int) sr->vtx.elastic.fuzzyk.npng;})
Definition: NumuVarsExtra.h:56
const Var kOrphCalE([](const caf::SRProxy *sr){if(!sr->vtx.elastic.IsValid) return-5.f;return(float) sr->vtx.elastic.fuzzyk.orphCalE;})
Definition: NumuVarsExtra.h:58
const MultiVar kPng2dStartZ([](const caf::SRProxy *sr){std::vector< double > start;if(!sr->vtx.elastic.IsValid) return start;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){start.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].start.Z()/100.);}return start;})
Definition: NumuVarsExtra.h:53
const MultiVar kPngNPlane([](const caf::SRProxy *sr){std::vector< double > nplane;if(!sr->vtx.elastic.IsValid) return nplane;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){nplane.emplace_back(sr->vtx.elastic.fuzzyk.png[i].nplane);}return nplane;})
Definition: NumuVarsExtra.h:27
const Var kTrueVisENeutronBirks([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].visENeutronBirks;})
Definition: NumuVarsExtra.h:73
const MultiVar kPngMaxPlaneGap([](const caf::SRProxy *sr){std::vector< double > maxplane;if(!sr->vtx.elastic.IsValid) return maxplane;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){maxplane.emplace_back(sr->vtx.elastic.fuzzyk.png[i].maxplanegap);}return maxplane;})
Definition: NumuVarsExtra.h:29
const MultiVar kPng2dNhitX([](const caf::SRProxy *sr){std::vector< double > nhit;if(!sr->vtx.elastic.IsValid) return nhit;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){nhit.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].nhitx);}return nhit;})
Definition: NumuVarsExtra.h:42
const MultiVar kPng2dDirY([](const caf::SRProxy *sr){std::vector< double > dir;if(!sr->vtx.elastic.IsValid) return dir;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){dir.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].dir.Y());}return dir;})
Definition: NumuVarsExtra.h:49
const Var kTrkNPlaneGapFrac([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;if(sr->trk.kalman.ntracks > 0 &&sr->trk.kalman.idxremid!=999) return float(float(sr->trk.kalman.tracks[0].nplanegap)/float(sr->trk.kalman.tracks[0].nplane));return-5.f;})
Definition: NumuVarsExtra.h:88
const Binning kXYBinsFD
const MultiVar kPng2dMaxPlaneGap([](const caf::SRProxy *sr){std::vector< double > maxplane;if(!sr->vtx.elastic.IsValid) return maxplane;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){maxplane.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].maxplanegap);}return maxplane;})
Definition: NumuVarsExtra.h:46
const NuTruthVar kTrueVisEinSlcNeutronBirks_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->visEinslcNeutronBirks;})
Definition: NumuVarsExtra.h:98
const MultiVar kPngLen([](const caf::SRProxy *sr){std::vector< double > len;if(!sr->vtx.elastic.IsValid) return len;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){len.emplace_back(sr->vtx.elastic.fuzzyk.png[i].len/100.);}return len;})
Definition: NumuVarsExtra.h:30
const Var kTrueVisEinSlcNeutronBirks([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].visEinslcNeutronBirks;})
Definition: NumuVarsExtra.h:74
const Binning kZBinsFD
const Var kTrueVisEBirks([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].visEBirks;})
Definition: NumuVarsExtra.h:71
const Binning kHadronicEnergyBinning
const Var kHadEres([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;float recoE=kHadE(sr);float trueE=kTrueE(sr)-kMuE(sr);return float((recoE-trueE)/trueE);})
Definition: NumuVarsExtra.h:87
const MultiVar kPngNhitX([](const caf::SRProxy *sr){std::vector< double > nhit;if(!sr->vtx.elastic.IsValid) return nhit;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){nhit.emplace_back(sr->vtx.elastic.fuzzyk.png[i].nhitx);}return nhit;})
Definition: NumuVarsExtra.h:25
const Binning kEnergyBinning
const NuTruthVar kTrueNHitsTot_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->nhittot;})
const Var kTrueSlcPur([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].pur;})
Definition: NumuVarsExtra.h:76
const Var kNueCosRejPngPTP
const NuTruthVar kTrueVisENeutronBirks_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->visENeutronBirks;})
Definition: NumuVarsExtra.h:97
const MultiVar kPngWtCalE([](const caf::SRProxy *sr){std::vector< double > E;if(!sr->vtx.elastic.IsValid) return E;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){E.emplace_back(sr->vtx.elastic.fuzzyk.png[i].weightedCalE);}return E;})
Definition: NumuVarsExtra.h:23
const Var kKalTrkOverlapE([](const caf::SRProxy *sr){if(sr->trk.kalman.ntracks< 1) return-5.f;return(float) sr->trk.kalman.tracks[0].overlapE;})
Definition: NumuVarsExtra.h:59
const NuTruthVar kTrueMomX_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->p.X();})
const MultiVar kPng2dNPlane([](const caf::SRProxy *sr){std::vector< double > nplane;if(!sr->vtx.elastic.IsValid) return nplane;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){nplane.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].nplane);}return nplane;})
Definition: NumuVarsExtra.h:44
const MultiVar kPngStartY([](const caf::SRProxy *sr){std::vector< double > start;if(!sr->vtx.elastic.IsValid) return start;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){start.emplace_back(sr->vtx.elastic.fuzzyk.png[i].start.Y()/100.);}return start;})
Definition: NumuVarsExtra.h:35
const Var kTrueMomX([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].p.X();})
Definition: NumuVarsExtra.h:79
const Var kTrueVisENeutron([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].visENeutron;})
Definition: NumuVarsExtra.h:69
const Var kTrueVtxZ([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return float(sr->mc.nu[0].vtx.Z()/100.);})
Definition: NumuVarsExtra.h:84
const Var kTrueVisE([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].visE;})
Definition: NumuVarsExtra.h:67
const NuTruthVar kTrueVisE_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->visE;})
Definition: NumuVarsExtra.h:91
const NuTruthVar kTrueSlcPur_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->pur;})
const Binning kXYBinsND
const NuTruthVar kTrueVtxY_NT([](const caf::SRNeutrinoProxy *nu){return float(nu->vtx.Y()/100.);})
const Var kTrueVisEinSlcBirks([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].visEinslcBirks;})
Definition: NumuVarsExtra.h:72
const Var kTrueVisEinSlcNeutron([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].visEinslcNeutron;})
Definition: NumuVarsExtra.h:70
const Var kEres([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return float((kCCE(sr)-kTrueE(sr))/kTrueE(sr));})
Definition: NumuVarsExtra.h:85
const Var kTrueMomZ([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].p.Z();})
Definition: NumuVarsExtra.h:81
const Binning kEnergyBinningZoom
const MultiVar kPngDirX([](const caf::SRProxy *sr){std::vector< double > dir;if(!sr->vtx.elastic.IsValid) return dir;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng;++i){dir.emplace_back(sr->vtx.elastic.fuzzyk.png[i].dir.X());}return dir;})
Definition: NumuVarsExtra.h:31
const Var kAngleKal
const MultiVar kPng2dLen([](const caf::SRProxy *sr){std::vector< double > len;if(!sr->vtx.elastic.IsValid) return len;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){len.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].len/100.);}return len;})
Definition: NumuVarsExtra.h:47
const NuTruthVar kTrueLepE_NT([](const caf::SRNeutrinoProxy *nu){return float(nu->prim[0].p.E);})
const MultiVar kPng2dDirZ([](const caf::SRProxy *sr){std::vector< double > dir;if(!sr->vtx.elastic.IsValid) return dir;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){dir.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].dir.Z());}return dir;})
Definition: NumuVarsExtra.h:50
const MultiVar kPng2dNhit([](const caf::SRProxy *sr){std::vector< double > nhit;if(!sr->vtx.elastic.IsValid) return nhit;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){nhit.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].nhit);}return nhit;})
Definition: NumuVarsExtra.h:41
const Var kVtxXm([](const caf::SRProxy *sr){return float(kVtxX(sr)/100.);})
Definition: NumuVarsExtra.h:60
const NuTruthVar kTrueMode_NT([](const caf::SRNeutrinoProxy *nu){return int(nu->mode);})
const NuTruthVar kTrueVtxX_NT([](const caf::SRNeutrinoProxy *nu){return float(nu->vtx.X()/100.);})
const NuTruthVar kTrueVisEBirks_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->visEBirks;})
Definition: NumuVarsExtra.h:95
const Var kTrueVtxX([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5555.f;return float(sr->mc.nu[0].vtx.X()/100.);})
Definition: NumuVarsExtra.h:82
const Binning kHadronicEnergyBinningZoom
const Var kVtxYm([](const caf::SRProxy *sr){return float(kVtxY(sr)/100.);})
Definition: NumuVarsExtra.h:61
const MultiVar kPng2dWtCalE([](const caf::SRProxy *sr){std::vector< double > E;if(!sr->vtx.elastic.IsValid) return E;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){E.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].weightedCalE);}return E;})
Definition: NumuVarsExtra.h:40
const MultiVar kPng2dStartY([](const caf::SRProxy *sr){std::vector< double > start;if(!sr->vtx.elastic.IsValid) return start;for(unsigned int i=0;i< sr->vtx.elastic.fuzzyk.npng2d;++i){start.emplace_back(sr->vtx.elastic.fuzzyk.png2d[i].start.Y()/100.);}return start;})
Definition: NumuVarsExtra.h:52
const Var kNNonNoiseWt([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return float(1./kNNonNoise(sr));})
Definition: NumuVarsExtra.h:64
const Var kTrueVtxY([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5555.f;return float(sr->mc.nu[0].vtx.Y()/100.);})
Definition: NumuVarsExtra.h:83
const Var kTrueSlcEff([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].eff;})
Definition: NumuVarsExtra.h:75
const NuTruthVar kTrueVisEinSlcNeutron_NT([](const caf::SRNeutrinoProxy *nu){return(float) nu->visEinslcNeutron;})
Definition: NumuVarsExtra.h:94
const Var kTrueNHitsSlc([](const caf::SRProxy *sr){if(sr->mc.nnu==0) return-5.f;return(float) sr->mc.nu[0].nhitslc;})
Definition: NumuVarsExtra.h:77