1 #ifndef RecoLocalMuon_CSCEfficiency_H 2 #define RecoLocalMuon_CSCEfficiency_H 77 #include "CLHEP/Matrix/Vector.h" 78 #include "CLHEP/Vector/ThreeVector.h" 97 #define SQR(x) ((x)*(x)) 101 #define NumCh (LastCh-FirstCh+1) 127 void endJob()
override ;
195 std::vector <std::pair <int, float> > allStrips[2][4][4][
NumCh][6];
198 std::vector <std::pair <std::pair <int, float>,
int> > allWG[2][4][4][
NumCh][6];
202 std::vector <std::pair <LocalPoint, int> > allSimhits[2][4][4][
NumCh][6];
206 std::vector <std::pair <LocalPoint, bool> > allRechits[2][4][4][
NumCh][6];
209 std::vector <std::pair <LocalPoint, LocalVector> > allSegments[2][4][4][
NumCh];
234 void ringCandidates(
int station,
float absEta, std::map <std::string, bool> & chamberTypes);
235 void chamberCandidates(
int station,
int ring,
float phi, std::vector <int> &coupleOfChambers);
242 void returnTypes(
CSCDetId &
id,
int &
ec,
int &st,
int &rg,
int &ch,
int &secondRing);
245 CLHEP::Hep3Vector&
p3, CLHEP::Hep3Vector& r3,
253 float zSurface, std::vector <float> &posZY);
254 double extrapolate1D(
double initPosition,
double initDirection,
double parameterOfTheLine);
255 double lineParameter(
double initZPosition,
double destZPosition,
double initZDirection);
256 bool inSensitiveLocalRegion(
double xLocal,
double yLocal,
int station,
int ring);
257 bool checkLocal(
double yLocal,
double yBoundary,
int station,
int ring);
258 void chooseDirection(CLHEP::Hep3Vector & innerPosition, CLHEP::Hep3Vector & outerPosition);
TH1F * InefficientALCT_dydz
TH1F * EfficientALCT_momTheta
TH1F * EfficientRechits_inSegment
TH1F * InefficientSingleHits
edm::EDGetTokenT< CSCStripDigiCollection > sd_token
TH1F * InefficientCLCT_dxdz
std::vector< TH1F * > Y_InefficientRecHits_inSegment
ROOT::Math::SMatrix< double, 6, 6, ROOT::Math::MatRepSym< double, 6 > > AlgebraicSymMatrix66
TH1F * EfficientCLCT_dxdz
edm::EDGetTokenT< CSCCorrelatedLCTDigiCollection > co_token
TH1F * StripWiresCorrelations
edm::EDGetTokenT< CSCCLCTDigiCollection > cl_token
bool getAbsoluteEfficiency
TH1F * EfficientCLCT_momPhi
edm::EDGetTokenT< CSCSegmentCollection > se_token
std::vector< std::string > myTriggers
std::vector< TH1F * > Phi_InefficientRecHits_inSegment
std::vector< TH1F * > Y_EfficientRecHits_inSegment
edm::EDGetTokenT< edm::PSimHitContainer > sh_token
MuonServiceProxy * theService
edm::EDGetTokenT< CSCWireDigiCollection > wd_token
TH1F * EfficientWireGroups
double distanceFromDeadZone
TH1F * EfficientSegments_eta
std::vector< TH1F * > Phi_EfficientRecHits_inSegment
edm::EDGetTokenT< CSCRecHit2DCollection > rh_token
TH1F * InefficientALCT_momTheta
TH1F * EfficientRechits_good
unsigned int printout_NEvents
TH2F * InefficientSegments_XY
TH1F * EfficientALCT_dydz
std::vector< int > pointToTriggers
TH1F * InefficientCLCT_momPhi
unsigned int minTrackHits
edm::EDGetTokenT< CSCALCTDigiCollection > al_token
edm::EDGetTokenT< edm::TriggerResults > ht_token
edm::EDGetTokenT< edm::View< reco::Track > > tk_token
TH1F * digiAppearanceCount
TH2F * EfficientSegments_XY