SelectionNue2018FHC.h
Go to the documentation of this file.
1 //
2 // SelectionNue2018FHC.h
3 //
4 // Created by Stefano Germani on 14/2/2018
5 //
6 
7 #ifndef ANALYSISSKIMMER_SelectionNue2018FHC_h
8 #define ANALYSISSKIMMER_SelectionNue2018FHC_h
9 
12 
13 namespace skim {
14  class SelectionNue2018FHC;
15 }
16 
18 
19 public:
21 
22  // The destructor generated by the compiler is fine for classes
23  // without bare pointers or other resource use.
24 
25  // this object should not be copied or assigned.
26  SelectionNue2018FHC(SelectionNue2018FHC const &) = delete;
30 
31  void reconfigure(fhicl::ParameterSet const& p);
33  novadaq::cnv::DetId const& detId);
34 
35 private:
36 
37  // cuts based on shower parameters, common to both detectors
38  bool PassesPreselection(skim::ParametersNue const& params);
39 
40  // methods to determine whether to keep slices or not
41  // in each detector and for each analysis
42  bool KeepNueFarDetectorSlice (skim::ParametersNue const& params);
44 
45  // check the PID values of the slice
46  bool CheckSlicePID(skim::ParametersNue const& params);
47 
48  // Nue Far detector selection variables
49  //float fShowerHitsXView; ///< minimum number of hits required in x view
50  //float fShowerHitsYView; ///< minimum number of hits required in y view
51  //float fShowerHitsViewAsym; ///< maximum asymmetery in the number of hits in the views
52  //float fSliceCosAngleShowers; ///< minimum cosine of angle between leading showers
53  //float fSliceFracHitsInShowers; ///< minimum fraction of slice hits in showers
54  //float fSliceDistLeadShowerToVtx; ///< maximum gap between the lead shower and the vertex
55  //float fVertexDistToEastWall; ///< minimum distance to the east wall
56  //float fVertexDistToWestWall; ///< minimum distance to the west wall
57  //float fVertexDistToTop; ///< minimum distance to the top of the detector
58  //float fVertexDistToBottom; ///< minimum distance to the bottom of the detector
59  //float fVertexDistToFront; ///< minimum distance to the front of the detector
60  //float fVertexDistToBack; ///< minimum distance to the back of the detector
61  float fFDDistAllTop; ///< minimum distance to the top wall
62  float fFDDistAllBottom; ///< minimum distance to the bottom wall
63  float fFDDistAllWest; ///< minimum distance to the west wall
64  float fFDDistAllEast; ///< minimum distance to the east wall
65  float fFDDistAllFront; ///< minimum distance to the front wall
66  float fFDDistAllBack; ///< minimum distance to the back wall
67  float fFDMaxSparsenessAsymm; ///< maximum asymmetry in the zero-hit planes at the start and end of the shower
68  float fFDMaxDistAllBack; ///< maximum distance to the back wall
69  float fFarCloseBoundary; ///< distance at which we are no longer close to top of detector
70  float fVeryFarBoundary; ///< distance at which we are very far from the top of detector
71  float fMaxTransverseMomentumClose; ///< maximum transverse momentum when close to top of detector
72  float fMaxTransverseMomentumFar; ///< maximum transverse momentum when away from top of detector
73  float fSliceHitsPerPlane; ///< maximum number of hits per plane in a slice
74  float fFDMinSliceHits; ///< minimum number of hits required in FD slices.
75  float fFDMaxSliceHits; ///< maximum number of hits required in FD slices.
76  //float fFDMaxCalorimetricE; ///< max calE in FD slices
77  //float fFDMinCalorimetricE; ///< min calE in FD slices
78  float fFDMaxNueEnergy; ///< max NueEnergy at FD
79  float fFDMinNueEnergy; ///< min NueEnergy at FD
80  //float fMinLIDVal; ///< min EventLID value optimised on S/sqrt(B)
81  //float fMinLEMVal; ///< min lem value optimised on S/sqrt(B)
82  float fMinCVNVal; ///< min cvn value optimised on S/sqrt(B)
83  float fFDMaxProngLength; ///< maximum length of longest prong
84  float fFDMinProngLength; ///< minimum length of longest prong
85  float fFDClosestSliceTimeBefore; ///< closest time distance allowed for previous slice
86  float fFDClosestSliceTimeAfter; ///< closest time distance allowed for next slice
87  float fFDClosestSliceHighCVNTopDist; ///< minimum distance from top for closest slice ( CVN > 0.87 )
88  float fFDClosestSliceLowCVNTopDist; ///< minimum distance from top for closest slice ( 0.75 < CVN < 0.87 )
89  float fFDClosestSliceMinDist; ///< minimum distance for closest slice
90  float fFDClosestSliceCVNBoundary; ///< CVN boundary for closest slice check
91 
92  // Nue Near detector selection variables
104  //float fNDMaxCalorimetricE;
109  unsigned int fNDMinPlanesToFront;
110 
111 };
112 
113 #endif /* ANALYSISSKIMMER_SelectionNue2018FHC_h */
float fVeryFarBoundary
distance at which we are very far from the top of detector
float fSliceHitsPerPlane
maximum number of hits per plane in a slice
float fFDDistAllBottom
minimum distance to the bottom wall
float fMinCVNVal
min cvn value optimised on S/sqrt(B)
float fMaxTransverseMomentumClose
maximum transverse momentum when close to top of detector
bool PassesPreselection(skim::ParametersNue const &params)
bool CheckSlicePID(skim::ParametersNue const &params)
const char * p
Definition: xmltok.h:285
bool KeepNueFarDetectorSlice(skim::ParametersNue const &params)
bool PassesSelection(skim::Parameters *pars, novadaq::cnv::DetId const &detId)
Module to create a summary of total POT seen in a job.
Definition: Evaluator.h:27
float fFDMaxSparsenessAsymm
maximum asymmetry in the zero-hit planes at the start and end of the shower
float fFDMaxSliceHits
maximum number of hits required in FD slices.
float fFDClosestSliceLowCVNTopDist
minimum distance from top for closest slice ( 0.75 < CVN < 0.87 )
float fFDMaxNueEnergy
max NueEnergy at FD
float fFDMaxProngLength
maximum length of longest prong
float fFDClosestSliceTimeBefore
closest time distance allowed for previous slice
SelectionNue2018FHC & operator=(SelectionNue2018FHC const &)=delete
float fFDMinProngLength
minimum length of longest prong
float fFDClosestSliceTimeAfter
closest time distance allowed for next slice
void reconfigure(fhicl::ParameterSet const &p)
float fFDMaxDistAllBack
maximum distance to the back wall
float fFDDistAllFront
minimum distance to the front wall
float fFDDistAllEast
minimum distance to the east wall
float fFDClosestSliceCVNBoundary
CVN boundary for closest slice check.
std::string pars("Th23Dmsq32")
float fFDDistAllWest
minimum distance to the west wall
float fFDMinNueEnergy
min NueEnergy at FD
float fFDMinSliceHits
minimum number of hits required in FD slices.
float fFDClosestSliceHighCVNTopDist
minimum distance from top for closest slice ( CVN > 0.87 )
bool KeepNueNearDetectorSlice(skim::ParametersNue const &params)
float fFarCloseBoundary
distance at which we are no longer close to top of detector
float fFDDistAllTop
minimum distance to the top wall
float fMaxTransverseMomentumFar
maximum transverse momentum when away from top of detector
float fFDClosestSliceMinDist
minimum distance for closest slice
float fFDDistAllBack
minimum distance to the back wall