1 #ifndef RecoLocalMuon_CSCValidation_H 2 #define RecoLocalMuon_CSCValidation_H 111 #include "TVector3.h" 117 #include "TProfile2D.h" 180 float fitX(
const CLHEP::HepMatrix& sp,
const CLHEP::HepMatrix& ep);
190 void getEfficiency(
float bin,
float Norm, std::vector<float> &eff);
193 double parameterLine = (z2Position-z1Position)/z1Direction;
194 return parameterLine;
196 double extrapolate1D(
double initPosition,
double initDirection,
double parameterOfTheLine){
197 double extrapolatedPosition = initPosition + initDirection*parameterOfTheLine;
198 return extrapolatedPosition;
314 index =
id.ring() + 1;
315 if (
id.
ring() == 4) index = 1;
317 else index =
id.station()*2 +
id.ring();
318 if (
id.
endcap() == 1) index = index + 10;
edm::EDGetTokenT< CSCCLCTDigiCollection > cl_token
float getthisSignal(const CSCStripDigiCollection &stripdigis, CSCDetId idRH, int centerStrip)
bool operator()(const CSCRecHit2D &rh1, const CSCRecHit2D &rh2) const
edm::EDGetTokenT< CSCComparatorDigiCollection > cd_token
float fitX(const CLHEP::HepMatrix &sp, const CLHEP::HepMatrix &ep)
void analyze(const edm::Event &event, const edm::EventSetup &eventSetup)
Perform the analysis.
std::map< int, std::vector< int > > m_wire_hvsegm
int typeIndex(CSCDetId id)
void doNoiseHits(edm::Handle< CSCRecHit2DCollection > recHits, edm::Handle< CSCSegmentCollection > cscSegments, edm::ESHandle< CSCGeometry > cscGeom, edm::Handle< CSCStripDigiCollection > strips)
edm::EDGetTokenT< CSCWireDigiCollection > wd_token
void doRecHits(edm::Handle< CSCRecHit2DCollection > recHits, edm::ESHandle< CSCGeometry > cscGeom)
void doEfficiencies(edm::Handle< CSCWireDigiCollection > wires, edm::Handle< CSCStripDigiCollection > strips, edm::Handle< CSCRecHit2DCollection > recHits, edm::Handle< CSCSegmentCollection > cscSegments, edm::ESHandle< CSCGeometry > cscGeom)
std::multimap< CSCDetId, CSCRecHit2D > NonAssociatedRechits
bool withinSensitiveRegion(LocalPoint localPos, const std::array< const float, 4 > &layerBounds, int station, int ring, float shiftFromEdge, float shiftFromDeadZone)
bool doTrigger(edm::Handle< L1MuGMTReadoutCollection > pCollection)
double lineParametrization(double z1Position, double z2Position, double z1Direction)
edm::EDGetTokenT< edm::TriggerResults > tr_token
void doCompTiming(const CSCComparatorDigiCollection &)
std::multimap< CSCDetId, CSCRecHit2D > AllRechits
void doPedestalNoise(edm::Handle< CSCStripDigiCollection > strips)
edm::EDGetTokenT< CSCSegmentCollection > se_token
void doStripDigis(edm::Handle< CSCStripDigiCollection > strips)
edm::EDGetTokenT< CSCStripDigiCollection > sd_token
int getWidth(const CSCStripDigiCollection &stripdigis, CSCDetId idRH, int centerStrip)
void histoEfficiency(TH1F *readHisto, TH1F *writeHisto)
int ringSerial(CSCDetId id)
bool filterEvents(edm::Handle< CSCRecHit2DCollection > recHits, edm::Handle< CSCSegmentCollection > cscSegments, edm::Handle< reco::TrackCollection > saMuons)
bool doHLT(edm::Handle< edm::TriggerResults > hltResults)
edm::EDGetTokenT< CSCCorrelatedLCTDigiCollection > co_token
edm::EDGetTokenT< edm::PSimHitContainer > sh_token
void doSimHits(edm::Handle< CSCRecHit2DCollection > recHits, edm::Handle< edm::PSimHitContainer > simHits)
edm::EDGetTokenT< reco::TrackCollection > sa_token
bin
set the eta bin as selection string.
void doGasGain(const CSCWireDigiCollection &, const CSCStripDigiCollection &, const CSCRecHit2DCollection &)
void getEfficiency(float bin, float Norm, std::vector< float > &eff)
void doResolution(edm::Handle< CSCSegmentCollection > cscSegments, edm::ESHandle< CSCGeometry > cscGeom)
void findNonAssociatedRecHits(edm::ESHandle< CSCGeometry > cscGeom, edm::Handle< CSCStripDigiCollection > strips)
void fillEfficiencyHistos(int bin, int flag)
std::vector< int > nmbhvsegm
Maps and vectors for module doGasGain()
edm::EDGetTokenT< L1MuGMTReadoutCollection > l1_token
std::multimap< CSCDetId, CSCRecHit2D > SegRechits
void doAFEBTiming(const CSCWireDigiCollection &)
void doTimeMonitoring(edm::Handle< CSCRecHit2DCollection > recHits, edm::Handle< CSCSegmentCollection > cscSegments, edm::Handle< CSCALCTDigiCollection > alcts, edm::Handle< CSCCLCTDigiCollection > clcts, edm::Handle< CSCCorrelatedLCTDigiCollection > correlatedlcts, edm::Handle< L1MuGMTReadoutCollection > pCollection, edm::ESHandle< CSCGeometry > cscGeom, const edm::EventSetup &eventSetup, const edm::Event &event)
bool makeTimeMonitorPlots
float getSignal(const CSCStripDigiCollection &stripdigis, CSCDetId idRH, int centerStrip)
void doStandalone(edm::Handle< reco::TrackCollection > saMuons)
int chamberSerial(CSCDetId id)
void doWireDigis(edm::Handle< CSCWireDigiCollection > wires)
void doADCTiming(const CSCRecHit2DCollection &)
std::map< int, int > m_single_wire_layer
LocalPoint localPosition() const
CSCValidation(const edm::ParameterSet &pset)
Constructor.
void doSegments(edm::Handle< CSCSegmentCollection > cscSegments, edm::ESHandle< CSCGeometry > cscGeom)
double extrapolate1D(double initPosition, double initDirection, double parameterOfTheLine)
void doOccupancies(edm::Handle< CSCStripDigiCollection > strips, edm::Handle< CSCWireDigiCollection > wires, edm::Handle< CSCRecHit2DCollection > recHits, edm::Handle< CSCSegmentCollection > cscSegments)
edm::EDGetTokenT< FEDRawDataCollection > rd_token
edm::EDGetTokenT< CSCRecHit2DCollection > rh_token
std::map< CSCRecHit2D, float, ltrh > distRHmap
virtual ~CSCValidation()
Destructor.
edm::EDGetTokenT< CSCALCTDigiCollection > al_token
void doCalibrations(const edm::EventSetup &eventSetup)