CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
hi::EPCuts Class Reference

#include <EPCuts.h>

Public Member Functions

 EPCuts (EP_ERA cutEra=EP_ERA::ppReco, double pterror=0.1, double dzerror=3.0, double dxyerror=3.0, double chi2perlayer=0.18, double dzError_Pix=10.0, double chi2Pix=40., int numberOfValidHits=11)
 
bool isGoodCastor (const TrackStructure &track) const
 
bool isGoodHF (const TrackStructure &track) const
 
bool isGoodTrack (const TrackStructure &track) const
 
bool trackQuality_GenMC (const TrackStructure &track) const
 
bool trackQuality_HIReco (const TrackStructure &track) const
 
bool trackQuality_Pixel (const TrackStructure &track) const
 
bool trackQuality_ppReco (const TrackStructure &track) const
 

Private Attributes

double chi2perlayer_
 
double chi2Pix_
 
EP_ERA cutera_
 
double dxyerror_
 
double dzerror_
 
double dzerror_Pix_
 
int numberOfValidHits_
 
double pterror_
 

Detailed Description

Definition at line 34 of file EPCuts.h.

Constructor & Destructor Documentation

◆ EPCuts()

hi::EPCuts::EPCuts ( EP_ERA  cutEra = EP_ERA::ppReco,
double  pterror = 0.1,
double  dzerror = 3.0,
double  dxyerror = 3.0,
double  chi2perlayer = 0.18,
double  dzError_Pix = 10.0,
double  chi2Pix = 40.,
int  numberOfValidHits = 11 
)
inlineexplicit

Member Function Documentation

◆ isGoodCastor()

bool hi::EPCuts::isGoodCastor ( const TrackStructure track) const
inline

Definition at line 62 of file EPCuts.h.

62 { return true; }

Referenced by EvtPlaneProducer::produce().

◆ isGoodHF()

bool hi::EPCuts::isGoodHF ( const TrackStructure track) const
inline

Definition at line 54 of file EPCuts.h.

54  {
55  if (track.pdgid != 1 && track.pdgid != 2)
56  return false;
57  if (std::abs(track.eta) < 3 || std::abs(track.eta) > 5)
58  return false;
59  return true;
60  }

References funct::abs(), and HLT_FULL_cff::track.

Referenced by EvtPlaneProducer::produce().

◆ isGoodTrack()

bool hi::EPCuts::isGoodTrack ( const TrackStructure track) const
inline

Definition at line 64 of file EPCuts.h.

64  {
65  if (cutera_ == EP_ERA::ppReco)
66  return trackQuality_ppReco(track);
67  if (cutera_ == EP_ERA::HIReco)
68  return trackQuality_HIReco(track);
69  if (cutera_ == EP_ERA::Pixel)
70  return trackQuality_Pixel(track);
71  return false;
72  }

References cutera_, hi::HIReco, hi::Pixel, hi::ppReco, HLT_FULL_cff::track, trackQuality_HIReco(), trackQuality_Pixel(), and trackQuality_ppReco().

Referenced by EvtPlaneProducer::produce().

◆ trackQuality_GenMC()

bool hi::EPCuts::trackQuality_GenMC ( const TrackStructure track) const
inline

Definition at line 149 of file EPCuts.h.

149  {
150  if (track.charge == 0)
151  return false;
152  if (std::abs(track.eta) > 2.4)
153  return false;
154  return true;
155  }

References funct::abs(), and HLT_FULL_cff::track.

◆ trackQuality_HIReco()

bool hi::EPCuts::trackQuality_HIReco ( const TrackStructure track) const
inline

Definition at line 92 of file EPCuts.h.

92  {
93  if (track.charge == 0)
94  return false;
95  if (!track.highPurity)
96  return false;
97  if (track.numberOfValidHits < numberOfValidHits_)
98  return false;
99  if (track.ptError > pterror_ * track.pt)
100  return false;
101  if (std::abs(track.dxy) > dxyerror_ * track.dxyError)
102  return false;
103  if (std::abs(track.dz) > dzerror_ * track.dzError)
104  return false;
105  if (track.chi2layer > chi2perlayer_)
106  return false;
107  //if (track.algos != 4 && track.algos != 5 && track.algos != 6 && track.algos != 7)
110  return false;
111  return true;
112  }

References funct::abs(), chi2perlayer_, reco::TrackBase::detachedTripletStep, dxyerror_, dzerror_, reco::TrackBase::initialStep, reco::TrackBase::lowPtTripletStep, numberOfValidHits_, reco::TrackBase::pixelPairStep, pterror_, and HLT_FULL_cff::track.

Referenced by isGoodTrack().

◆ trackQuality_Pixel()

bool hi::EPCuts::trackQuality_Pixel ( const TrackStructure track) const
inline

Definition at line 114 of file EPCuts.h.

114  {
115  if (track.charge == 0)
116  return false;
117  if (!track.highPurity)
118  return false;
119  bool bPix = false;
120  int nHits = track.numberOfValidHits;
121  if (track.ptError > pterror_ * track.pt)
122  return false;
123  if (track.pt < 2.4 and (nHits <= 6))
124  bPix = true;
125  if (not bPix) {
127  return false;
128  if (track.chi2layer > chi2perlayer_)
129  return false;
130  if (track.ptError > pterror_ * track.pt)
131  return false;
132  int algo = track.algos;
135  return false;
136  if (std::abs(track.dxy) > dxyerror_ * track.dxyError)
137  return false;
138  if (std::abs(track.dz) > dzerror_ * track.dzError)
139  return false;
140  } else {
141  if (track.chi2layer > chi2Pix_)
142  return false;
143  if (std::abs(track.dz) > dzerror_Pix_ * track.dzError)
144  return false;
145  }
146  return true;
147  }

References funct::abs(), chi2perlayer_, chi2Pix_, reco::TrackBase::detachedTripletStep, dxyerror_, dzerror_, dzerror_Pix_, reco::TrackBase::initialStep, reco::TrackBase::lowPtTripletStep, nHits, numberOfValidHits_, reco::TrackBase::pixelPairStep, pterror_, and HLT_FULL_cff::track.

Referenced by isGoodTrack().

◆ trackQuality_ppReco()

bool hi::EPCuts::trackQuality_ppReco ( const TrackStructure track) const
inline

Definition at line 74 of file EPCuts.h.

74  {
75  if (track.charge == 0)
76  return false;
77  if (!track.highPurity)
78  return false;
79  if (track.ptError > pterror_ * track.pt)
80  return false;
81  if (track.numberOfValidHits < numberOfValidHits_)
82  return false;
83  if (track.chi2layer > chi2perlayer_)
84  return false;
85  if (std::abs(track.dxy) > dxyerror_ * track.dxyError)
86  return false;
87  if (std::abs(track.dz) > dzerror_ * track.dzError)
88  return false;
89  return true;
90  }

References funct::abs(), chi2perlayer_, dxyerror_, dzerror_, numberOfValidHits_, pterror_, and HLT_FULL_cff::track.

Referenced by isGoodTrack().

Member Data Documentation

◆ chi2perlayer_

double hi::EPCuts::chi2perlayer_
private

Definition at line 162 of file EPCuts.h.

Referenced by EPCuts(), trackQuality_HIReco(), trackQuality_Pixel(), and trackQuality_ppReco().

◆ chi2Pix_

double hi::EPCuts::chi2Pix_
private

Definition at line 164 of file EPCuts.h.

Referenced by EPCuts(), and trackQuality_Pixel().

◆ cutera_

EP_ERA hi::EPCuts::cutera_
private

Definition at line 158 of file EPCuts.h.

Referenced by EPCuts(), and isGoodTrack().

◆ dxyerror_

double hi::EPCuts::dxyerror_
private

Definition at line 161 of file EPCuts.h.

Referenced by EPCuts(), trackQuality_HIReco(), trackQuality_Pixel(), and trackQuality_ppReco().

◆ dzerror_

double hi::EPCuts::dzerror_
private

Definition at line 160 of file EPCuts.h.

Referenced by EPCuts(), trackQuality_HIReco(), trackQuality_Pixel(), and trackQuality_ppReco().

◆ dzerror_Pix_

double hi::EPCuts::dzerror_Pix_
private

Definition at line 163 of file EPCuts.h.

Referenced by EPCuts(), and trackQuality_Pixel().

◆ numberOfValidHits_

int hi::EPCuts::numberOfValidHits_
private

Definition at line 165 of file EPCuts.h.

Referenced by EPCuts(), trackQuality_HIReco(), trackQuality_Pixel(), and trackQuality_ppReco().

◆ pterror_

double hi::EPCuts::pterror_
private

Definition at line 159 of file EPCuts.h.

Referenced by EPCuts(), trackQuality_HIReco(), trackQuality_Pixel(), and trackQuality_ppReco().

HLT_FULL_cff.track
track
Definition: HLT_FULL_cff.py:11724
hi::EPCuts::dzerror_
double dzerror_
Definition: EPCuts.h:160
hi::EP_ERA::Pixel
hi::EPCuts::dxyerror_
double dxyerror_
Definition: EPCuts.h:161
TrackCollections2monitor_cff.numberOfValidHits
numberOfValidHits
Definition: TrackCollections2monitor_cff.py:248
reco::TrackBase::lowPtTripletStep
Definition: TrackBase.h:95
hi::EPCuts::pterror_
double pterror_
Definition: EPCuts.h:159
cmsdt::algo
algo
Definition: constants.h:171
hi::EPCuts::trackQuality_ppReco
bool trackQuality_ppReco(const TrackStructure &track) const
Definition: EPCuts.h:74
hi::EPCuts::chi2perlayer_
double chi2perlayer_
Definition: EPCuts.h:162
HiEvtPlane_cfi.chi2perlayer
chi2perlayer
Definition: HiEvtPlane_cfi.py:25
nHits
const caConstants::TupleMultiplicity *__restrict__ const HitsOnGPU *__restrict__ double *__restrict__ float *__restrict__ double *__restrict__ uint32_t nHits
Definition: BrokenLineFitOnGPU.h:27
HiEvtPlane_cfi.cutEra
cutEra
Definition: HiEvtPlane_cfi.py:34
hi::EPCuts::numberOfValidHits_
int numberOfValidHits_
Definition: EPCuts.h:165
hi::EPCuts::cutera_
EP_ERA cutera_
Definition: EPCuts.h:158
reco::TrackBase::detachedTripletStep
Definition: TrackBase.h:97
hi::EP_ERA::ppReco
hi::EP_ERA::HIReco
reco::TrackBase::initialStep
Definition: TrackBase.h:94
reco::TrackBase::pixelPairStep
Definition: TrackBase.h:96
hi::EPCuts::trackQuality_Pixel
bool trackQuality_Pixel(const TrackStructure &track) const
Definition: EPCuts.h:114
hi::EPCuts::chi2Pix_
double chi2Pix_
Definition: EPCuts.h:164
HiEvtPlane_cfi.pterror
pterror
Definition: HiEvtPlane_cfi.py:24
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
hi::EPCuts::trackQuality_HIReco
bool trackQuality_HIReco(const TrackStructure &track) const
Definition: EPCuts.h:92
hi::EPCuts::dzerror_Pix_
double dzerror_Pix_
Definition: EPCuts.h:163