All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Functions | Variables
SBNAna/Cuts/TruthCuts.cxx File Reference
#include "sbnana/SBNAna/Cuts/TruthCuts.h"
#include "sbnana/SBNAna/Vars/TruthVars.h"
#include "sbnana/SBNAna/Cuts/VolumeDefinitions.h"
#include "sbnanaobj/StandardRecord/Proxy/SRProxy.h"

Go to the source code of this file.

Namespaces

 ana
 Oscillation analysis framework, runs over CAF files outside of ART.
 

Functions

const Cut ana::kIsAntiNu ([](const caf::SRSliceProxy *slc){if(slc->truth.index< 0) return false;return slc->truth.pdg< 0;})
 
const Cut ana::kIsCC ([](const caf::SRSliceProxy *slc){if(slc->truth.index< 0) return false;return(slc->truth.iscc==1);})
 
const Cut ana::kIsNC ([](const caf::SRSliceProxy *slc){if(slc->truth.index< 0) return false;return(slc->truth.isnc==1);})
 

Variables

const Cut ana::kTrueActiveVolumeND ([](const caf::SRSliceProxy *slc){return kHasNu(slc)&&PtInVolAbsX(slc->truth.position, avnd);})
 
const Cut ana::kTrueFiducialVolumeND ([](const caf::SRSliceProxy *slc){return kHasNu(slc)&&PtInVolAbsX(slc->truth.position, fvndAbs);})
 
const Cut ana::kTrueActiveVolumeFDCryo1 ([](const caf::SRSliceProxy *slc){return kHasNu(slc)&&PtInVol(slc->truth.position, avfd_cryo1);})
 
const Cut ana::kTrueActiveVolumeFDCryo2 ([](const caf::SRSliceProxy *slc){return kHasNu(slc)&&PtInVol(slc->truth.position, avfd_cryo2);})
 
const Cut ana::kTrueFiducialVolumeFDCryo1 ([](const caf::SRSliceProxy *slc){return kHasNu(slc)&&PtInVol(slc->truth.position, fvfd_cryo1);})
 
const Cut ana::kTrueFiducialVolumeFDCryo2 ([](const caf::SRSliceProxy *slc){return kHasNu(slc)&&PtInVol(slc->truth.position, fvfd_cryo2);})
 
const Cut ana::kIsNu ([](const caf::SRSliceProxy *slc){if(slc->truth.index< 0) return false;return slc->truth.pdg > 0;})
 
const Cut ana::kHasNu ([](const caf::SRSliceProxy *slc){return slc->truth.index >=0;})
 
const Cut ana::kIsNue ([](const caf::SRSliceProxy *slc){return slc->truth.index >=0 &&abs(slc->truth.pdg)==12;})
 
const Cut ana::kIsNumu ([](const caf::SRSliceProxy *slc){return slc->truth.index >=0 &&abs(slc->truth.pdg)==14;})
 
const Cut ana::kIsNutau ([](const caf::SRSliceProxy *slc){return slc->truth.index >=0 &&abs(slc->truth.pdg)==16;})
 
const Cut ana::kVtxDistMagCut ([](const caf::SRSliceProxy *slc){if(slc->truth.index< 0) return true;return(kTruthVtxDistMag(slc)< 1);})
 
const Cut ana::kSlcCompletenessCut ([](const caf::SRSliceProxy *slc){if(slc->truth.index< 0) return false;return(kCompletness(slc) > 0.5);})
 
const SpillCut ana::kIsCosmicSpill ([](const caf::SRSpillProxy *sr){return(sr->mc.nnu==0);})
 
const SpillCut ana::kIsSingleNuSpill ([](const caf::SRSpillProxy *sr){return(sr->mc.nnu< 2);})
 
const SpillCut ana::kIsNueSpill ([](const caf::SRSpillProxy *sr){if(kIsCosmicSpill(sr)||!kIsSingleNuSpill(sr)) return false;return(std::abs(sr->mc.nu[0].pdg)==12);})
 
const SpillCut ana::kIsNumuSpill ([](const caf::SRSpillProxy *sr){if(kIsCosmicSpill(sr)||!kIsSingleNuSpill(sr)) return false;return(std::abs(sr->mc.nu[0].pdg)==14);})
 
const SpillCut ana::kIsNutauSpill ([](const caf::SRSpillProxy *sr){if(kIsCosmicSpill(sr)||!kIsSingleNuSpill(sr)) return false;return(std::abs(sr->mc.nu[0].pdg)==16);})
 
const SpillCut ana::kIsCCSpill ([](const caf::SRSpillProxy *sr){if(kIsCosmicSpill(sr)||!kIsSingleNuSpill(sr)) return false;return((bool) sr->mc.nu[0].iscc);})
 
const SpillCut ana::kIsNCSpill ([](const caf::SRSpillProxy *sr){if(kIsCosmicSpill(sr)||!kIsSingleNuSpill(sr)) return false;return((bool) sr->mc.nu[0].isnc);})