varsandcuts.h
Go to the documentation of this file.
1 #include "includes.h"
3 
4 const int nQuant = 4;
5 const int nQuantPlus = 5; // includes quant0
6 
7 
8 
9 const Var kSAEnergy(
10  [](const caf::SRProxy* sr)
11  {
12  return sr->energy.numu.E;
13  }
14  );
15 
16 const Var k3AEnergy = kCCE; // kCCE for 2017
17 
19  [](const caf::SRProxy* sr)
20  {
21  bool isMC = (sr->hdr.ismc);
22  if(isMC)return k3AEnergy(sr);
23  if(!isMC)return kSAEnergy(sr);
24  }
25  );
26 
28  [](const caf::SRProxy* sr)
29  { return ( sr->sel.cosrej.anglekal > 0.5 &&
30  sr->sel.cosrej.numuSAcontpid > 0.535 &&
31  sr->slc.nhit < 400);
32  }
33  );
34 
37 
38 
39 // spill cuts
40 const SpillCut kIs6e20(
41  [](const caf::SRSpillProxy* s)
42  {
43  int RunNumber = s->run;
44  int lastFDSARun = 22900;
45  int lastNDSARun = 11383;
46  if(s->det == caf::kFARDET) return (RunNumber<=lastFDSARun);
47  if(s->det == caf::kNEARDET) return (RunNumber<=lastNDSARun);
48  }
49  );
50 
51 
52 const SpillCut kIs3e20(
53  [](const caf::SRSpillProxy* s)
54  {
55  int RunNumber = s->run;
56  int lastFDSARun = 22900;
57  int lastNDSARun = 11383;
58  if(s->det == caf::kFARDET) return (RunNumber>lastFDSARun);
59  if(s->det == caf::kNEARDET) return (RunNumber>lastNDSARun);
60  }
61  );
Near Detector underground.
Definition: SREnums.h:10
Far Detector at Ash River.
Definition: SREnums.h:11
caf::Proxy< float > E
Definition: SRProxy.h:164
caf::Proxy< caf::SRHeader > hdr
Definition: SRProxy.h:2137
caf::Proxy< caf::SRNumuEnergy > numu
Definition: SRProxy.h:214
Proxy for caf::StandardRecord.
Definition: SRProxy.h:2126
const SpillCut kIs6e20([](const caf::SRSpillProxy *s){int RunNumber=s->run;int lastFDSARun=22900;int lastNDSARun=11383;if(s->det==caf::kFARDET) return(RunNumber<=lastFDSARun);if(s->det==caf::kNEARDET) return(RunNumber<=lastNDSARun);})
const Var k3AEnergy
Definition: varsandcuts.h:16
const Cut kNumuContainFD([](const caf::SRProxy *sr){ std::pair< int, int > planes=calcFirstLastLivePlane(sr->slc.firstplane, std::bitset< 14 >(sr->hdr.dibmask));int planestofront=sr->slc.firstplane-planes.first;int planestoback=planes.second-sr->slc.lastplane;return( sr->slc.ncellsfromedge > 1 &&planestofront > 1 &&planestoback > 1 &&sr->sel.contain.kalfwdcell > 10 &&sr->sel.contain.kalbakcell > 10 &&sr->sel.contain.cosfwdcell > 0 &&sr->sel.contain.cosbakcell > 0);})
Definition: NumuCuts.h:20
caf::Proxy< caf::SREnergyBranch > energy
Definition: SRProxy.h:2136
const Var kSAEnergy([](const caf::SRProxy *sr){return sr->energy.numu.E;})
caf::Proxy< caf::SRCosRej > cosrej
Definition: SRProxy.h:1252
const XML_Char * s
Definition: expat.h:262
const SpillCut kIs3e20([](const caf::SRSpillProxy *s){int RunNumber=s->run;int lastFDSARun=22900;int lastNDSARun=11383;if(s->det==caf::kFARDET) return(RunNumber >lastFDSARun);if(s->det==caf::kNEARDET) return(RunNumber >lastNDSARun);})
caf::Proxy< unsigned int > nhit
Definition: SRProxy.h:1315
const Cut kNumuND
Definition: NumuCuts.h:55
const Var kCCE
Definition: NumuVars.h:21
const int nQuantPlus
Definition: varsandcuts.h:5
caf::StandardRecord * sr
const Cut kNumuNCRej([](const caf::SRProxy *sr){return(sr->sel.remid.pid >0.75);})
Definition: NumuCuts.h:24
Proxy for caf::SRSpill.
Definition: SRProxy.h:1346
caf::Proxy< caf::SRSlice > slc
Definition: SRProxy.h:2142
caf::Proxy< unsigned int > run
Definition: SRProxy.h:1406
const int nQuant
Definition: varsandcuts.h:4
caf::Proxy< float > anglekal
Definition: SRProxy.h:859
const Cut kNumuND_Prod3
Definition: varsandcuts.h:35
caf::Proxy< bool > ismc
Definition: SRProxy.h:242
caf::Proxy< caf::Det_t > det
Definition: SRProxy.h:1361
caf::Proxy< caf::SRIDBranch > sel
Definition: SRProxy.h:2141
const Cut kNumuQuality
Definition: NumuCuts.h:18
const Var kNumuEnergyDataMC([](const caf::SRProxy *sr){bool isMC=(sr->hdr.ismc);if(isMC) return k3AEnergy(sr);if(!isMC) return kSAEnergy(sr);})
const Cut kNumuCosmicRej_Prod3([](const caf::SRProxy *sr){return(sr->sel.cosrej.anglekal > 0.5 &&sr->sel.cosrej.numuSAcontpid > 0.535 &&sr->slc.nhit< 400);})
const Cut kNumuFD_Prod3
Definition: varsandcuts.h:36