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;
194 std::vector<std::pair<int, float> > allStrips[2][4][4][
NumCh][6];
197 std::vector<std::pair<std::pair<int, float>,
int> > allWG[2][4][4][
NumCh][6];
201 std::vector<std::pair<LocalPoint, int> > allSimhits[2][4][4][
NumCh][6];
205 std::vector<std::pair<LocalPoint, bool> > allRechits[2][4][4][
NumCh][6];
208 std::vector<std::pair<LocalPoint, LocalVector> > allSegments[2][4][4][
NumCh];
233 void ringCandidates(
int station,
float absEta, std::map<std::string, bool> &chamberTypes);
234 void chamberCandidates(
int station,
int ring,
float phi, std::vector<int> &coupleOfChambers);
241 void returnTypes(
CSCDetId &
id,
int &
ec,
int &st,
int &rg,
int &ch,
int &secondRing);
244 CLHEP::Hep3Vector &
p3,
245 CLHEP::Hep3Vector &r3,
250 const CLHEP::Hep3Vector &r3,
255 void linearExtrapolation(
GlobalPoint initialPosition,
258 std::vector<float> &posZY);
259 double extrapolate1D(
double initPosition,
double initDirection,
double parameterOfTheLine);
260 double lineParameter(
double initZPosition,
double destZPosition,
double initZDirection);
261 bool inSensitiveLocalRegion(
double xLocal,
double yLocal,
int station,
int ring);
262 bool checkLocal(
double yLocal,
double yBoundary,
int station,
int ring);
263 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
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
ROOT::Math::SMatrix< double, 6, 6, ROOT::Math::MatRepSym< double, 6 > > AlgebraicSymMatrix66
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
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers.hcal.doNoise = False simEcalUnsuppressedDigis.doNoise = False mix.digitizers.ecal.doNoise = False simEcalUnsuppressedDigis.doESNoise = False simSiPixelDigis.AddNoise = False mix.digitizers.pixel.AddNoise = False simSiStripDigis.Noise = False mix.digitizers.strip.AddNoise = False
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