CMS 3D CMS Logo

MuonIdVal Class Reference

#include <Validation/MuonIdentification/interface/MuonIdVal.h>

Inheritance diagram for MuonIdVal:

edm::EDAnalyzer

List of all members.

Public Member Functions

 MuonIdVal (const edm::ParameterSet &)
 ~MuonIdVal ()

Private Member Functions

virtual void analyze (const edm::Event &, const edm::EventSetup &)
virtual void beginJob (const edm::EventSetup &)
virtual void endJob ()

Private Attributes

std::string baseFolder_
edm::Handle< CSCSegmentCollectioncscSegmentCollectionH_
DQMStoredbe_
edm::Handle
< DTRecSegment4DCollection
dtSegmentCollectionH_
edm::ESHandle
< GlobalTrackingGeometry
geometry_
MonitorElementhCaloCompat [2]
MonitorElementhCaloSegmentCompat [2]
MonitorElementhCSCChamberDx [2][4][4][36]
MonitorElementhCSCChamberDy [2][4][4][36]
MonitorElementhCSCChamberEdgeXWithNoSegment [2][4][4][36]
MonitorElementhCSCChamberEdgeXWithSegment [2][4][4][36]
MonitorElementhCSCChamberEdgeYWithNoSegment [2][4][4][36]
MonitorElementhCSCChamberEdgeYWithSegment [2][4][4][36]
MonitorElementhCSCDdXdZ [4]
MonitorElementhCSCDdYdZ [4]
MonitorElementhCSCDistWithNoSegment [4]
MonitorElementhCSCDistWithSegment [4]
MonitorElementhCSCDx [4]
MonitorElementhCSCDy [4]
MonitorElementhCSCNumSegments [4]
MonitorElementhCSCPullDistWithNoSegment [4]
MonitorElementhCSCPullDistWithSegment [4]
MonitorElementhCSCPulldXdZ [4]
MonitorElementhCSCPulldXdZPropErr [4]
MonitorElementhCSCPulldYdZ [4]
MonitorElementhCSCPulldYdZPropErr [4]
MonitorElementhCSCPullx [4]
MonitorElementhCSCPullxPropErr [4]
MonitorElementhCSCPully [4]
MonitorElementhCSCPullyPropErr [4]
MonitorElementhDTChamberDx [4][5][14]
MonitorElementhDTChamberDy [3][5][14]
MonitorElementhDTChamberEdgeXWithNoSegment [4][5][14]
MonitorElementhDTChamberEdgeXWithSegment [4][5][14]
MonitorElementhDTChamberEdgeYWithNoSegment [4][5][14]
MonitorElementhDTChamberEdgeYWithSegment [4][5][14]
MonitorElementhDTDdXdZ [4]
MonitorElementhDTDdYdZ [3]
MonitorElementhDTDistWithNoSegment [4]
MonitorElementhDTDistWithSegment [4]
MonitorElementhDTDx [4]
MonitorElementhDTDy [3]
MonitorElementhDTNumSegments [4]
MonitorElementhDTPullDistWithNoSegment [4]
MonitorElementhDTPullDistWithSegment [4]
MonitorElementhDTPulldXdZ [4]
MonitorElementhDTPulldXdZPropErr [4]
MonitorElementhDTPulldYdZ [3]
MonitorElementhDTPulldYdZPropErr [3]
MonitorElementhDTPullx [4]
MonitorElementhDTPullxPropErr [4]
MonitorElementhDTPully [3]
MonitorElementhDTPullyPropErr [3]
MonitorElementhEnergyEMBarrel [2]
MonitorElementhEnergyEMEndcap [2]
MonitorElementhEnergyHABarrel [2]
MonitorElementhEnergyHAEndcap [2]
MonitorElementhEnergyHO [2]
MonitorElementhGlobalMuonPromptTightBool [2]
MonitorElementhIso03emEt [2]
MonitorElementhIso03hadEt [2]
MonitorElementhIso03hoEt [2]
MonitorElementhIso03nJets [2]
MonitorElementhIso03nTracks [2]
MonitorElementhIso03sumPt [2]
MonitorElementhIso05emEt [2]
MonitorElementhIso05hadEt [2]
MonitorElementhIso05hoEt [2]
MonitorElementhIso05nJets [2]
MonitorElementhIso05nTracks [2]
MonitorElementhIso05sumPt [2]
MonitorElementhNumChambers [2]
MonitorElementhNumMatches [2]
MonitorElementhSegmentCompat [2]
MonitorElementhSegmentIsAssociatedBool
MonitorElementhSegmentIsAssociatedRZ
MonitorElementhSegmentIsAssociatedXY
MonitorElementhSegmentIsBestDrAssociatedRZ
MonitorElementhSegmentIsBestDrAssociatedXY
MonitorElementhSegmentIsBestDrNotAssociatedRZ
MonitorElementhSegmentIsBestDrNotAssociatedXY
MonitorElementhSegmentIsNotAssociatedRZ
MonitorElementhSegmentIsNotAssociatedXY
MonitorElementhTM2DCompatibilityLooseBool [2]
MonitorElementhTM2DCompatibilityTightBool [2]
MonitorElementhTMLastStationLooseBool [2]
MonitorElementhTMLastStationOptimizedLowPtLooseBool [2]
MonitorElementhTMLastStationOptimizedLowPtTightBool [2]
MonitorElementhTMLastStationTightBool [2]
MonitorElementhTMOneStationLooseBool [2]
MonitorElementhTMOneStationTightBool [2]
edm::InputTag inputCSCSegmentCollection_
edm::InputTag inputDTRecSegment4DCollection_
edm::InputTag inputMuonCollection_
bool make2DPlots_
bool makeAllChamberPlots_
bool makeDQMPlots_
bool makeEnergyPlots_
bool makeIsoPlots_
edm::Handle< reco::MuonCollectionmuonCollectionH_
bool useGlobalMuons_
bool useTrackerMuons_


Detailed Description

Definition at line 53 of file MuonIdVal.h.


Constructor & Destructor Documentation

MuonIdVal::MuonIdVal ( const edm::ParameterSet iConfig  )  [explicit]

Definition at line 3 of file MuonIdVal.cc.

References baseFolder_, dbe_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), inputCSCSegmentCollection_, inputDTRecSegment4DCollection_, inputMuonCollection_, make2DPlots_, makeAllChamberPlots_, makeDQMPlots_, makeEnergyPlots_, makeIsoPlots_, useGlobalMuons_, and useTrackerMuons_.

00004 {
00005    inputMuonCollection_ = iConfig.getParameter<edm::InputTag>("inputMuonCollection");
00006    inputDTRecSegment4DCollection_ = iConfig.getParameter<edm::InputTag>("inputDTRecSegment4DCollection");
00007    inputCSCSegmentCollection_ = iConfig.getParameter<edm::InputTag>("inputCSCSegmentCollection");
00008    useTrackerMuons_ = iConfig.getUntrackedParameter<bool>("useTrackerMuons");
00009    useGlobalMuons_ = iConfig.getUntrackedParameter<bool>("useGlobalMuons");
00010    makeDQMPlots_ = iConfig.getUntrackedParameter<bool>("makeDQMPlots");
00011    makeEnergyPlots_ = iConfig.getUntrackedParameter<bool>("makeEnergyPlots");
00012    makeIsoPlots_ = iConfig.getUntrackedParameter<bool>("makeIsoPlots");
00013    make2DPlots_ = iConfig.getUntrackedParameter<bool>("make2DPlots");
00014    makeAllChamberPlots_ = iConfig.getUntrackedParameter<bool>("makeAllChamberPlots");
00015    baseFolder_ = iConfig.getUntrackedParameter<std::string>("baseFolder");
00016 
00017    // If makeDQMPlots_ then disable everything else, and all but a few choice plots
00018    if (makeDQMPlots_) {
00019       makeEnergyPlots_ = false;
00020       makeIsoPlots_ = false;
00021       make2DPlots_ = false;
00022       makeAllChamberPlots_ = false;
00023    }
00024 
00025    dbe_ = 0;
00026    dbe_ = edm::Service<DQMStore>().operator->();
00027 }

MuonIdVal::~MuonIdVal (  ) 

Definition at line 29 of file MuonIdVal.cc.

00029 {}


Member Function Documentation

void MuonIdVal::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
) [private, virtual]

Implements edm::EDAnalyzer.

Definition at line 320 of file MuonIdVal.cc.

References reco::MuonSegmentMatch::BestInStationByDR, MuonSubdetId::CSC, cscSegmentCollectionH_, MuonSubdetId::DT, dtSegmentCollectionH_, GeomDetEnumerators::endcap, error, MonitorElement::Fill(), geometry_, edm::EventSetup::get(), edm::Event::getByLabel(), hCaloCompat, hCaloSegmentCompat, hCSCChamberDx, hCSCChamberDy, hCSCChamberEdgeXWithNoSegment, hCSCChamberEdgeXWithSegment, hCSCChamberEdgeYWithNoSegment, hCSCChamberEdgeYWithSegment, hCSCDdXdZ, hCSCDdYdZ, hCSCDistWithNoSegment, hCSCDistWithSegment, hCSCDx, hCSCDy, hCSCNumSegments, hCSCPullDistWithNoSegment, hCSCPullDistWithSegment, hCSCPulldXdZ, hCSCPulldXdZPropErr, hCSCPulldYdZ, hCSCPulldYdZPropErr, hCSCPullx, hCSCPullxPropErr, hCSCPully, hCSCPullyPropErr, hDTChamberDx, hDTChamberDy, hDTChamberEdgeXWithNoSegment, hDTChamberEdgeXWithSegment, hDTChamberEdgeYWithNoSegment, hDTChamberEdgeYWithSegment, hDTDdXdZ, hDTDdYdZ, hDTDistWithNoSegment, hDTDistWithSegment, hDTDx, hDTDy, hDTNumSegments, hDTPullDistWithNoSegment, hDTPullDistWithSegment, hDTPulldXdZ, hDTPulldXdZPropErr, hDTPulldYdZ, hDTPulldYdZPropErr, hDTPullx, hDTPullxPropErr, hDTPully, hDTPullyPropErr, hEnergyEMBarrel, hEnergyEMEndcap, hEnergyHABarrel, hEnergyHAEndcap, hEnergyHO, hGlobalMuonPromptTightBool, hIso03emEt, hIso03hadEt, hIso03hoEt, hIso03nJets, hIso03nTracks, hIso03sumPt, hIso05emEt, hIso05hadEt, hIso05hoEt, hIso05nJets, hIso05nTracks, hIso05sumPt, hNumChambers, hNumMatches, hSegmentCompat, hSegmentIsAssociatedBool, hSegmentIsAssociatedRZ, hSegmentIsAssociatedXY, hSegmentIsBestDrAssociatedRZ, hSegmentIsBestDrAssociatedXY, hSegmentIsBestDrNotAssociatedRZ, hSegmentIsBestDrNotAssociatedXY, hSegmentIsNotAssociatedRZ, hSegmentIsNotAssociatedXY, hTM2DCompatibilityLooseBool, hTM2DCompatibilityTightBool, hTMLastStationLooseBool, hTMLastStationOptimizedLowPtLooseBool, hTMLastStationOptimizedLowPtTightBool, hTMLastStationTightBool, hTMOneStationLooseBool, hTMOneStationTightBool, i, inputCSCSegmentCollection_, inputDTRecSegment4DCollection_, inputMuonCollection_, make2DPlots_, makeAllChamberPlots_, makeDQMPlots_, makeEnergyPlots_, makeIsoPlots_, metsig::muon, muonCollectionH_, PV3DBase< T, PVType, FrameType >::perp(), HcalSimpleRecAlgoImpl::reco(), funct::sqrt(), GeomDet::toGlobal(), useGlobalMuons_, useTrackerMuons_, muonGeometry::wheel, PV3DBase< T, PVType, FrameType >::x(), LocalError::xx(), PV3DBase< T, PVType, FrameType >::y(), LocalError::yy(), and PV3DBase< T, PVType, FrameType >::z().

00321 {
00322    using namespace edm;
00323    using namespace reco;
00324 
00325    iEvent.getByLabel(inputMuonCollection_, muonCollectionH_);
00326    iEvent.getByLabel(inputDTRecSegment4DCollection_, dtSegmentCollectionH_);
00327    iEvent.getByLabel(inputCSCSegmentCollection_, cscSegmentCollectionH_);
00328    iSetup.get<GlobalTrackingGeometryRecord>().get(geometry_);
00329 
00330    for(MuonCollection::const_iterator muon = muonCollectionH_->begin();
00331          muon != muonCollectionH_->end(); ++muon)
00332    {
00333       // trackerMuon == 0; globalMuon == 1
00334       for (unsigned int i = 0; i < 2; i++) {
00335          if (i == 0 && (! useTrackerMuons_ || ! muon->isTrackerMuon())) continue;
00336          if (i == 1 && (! useGlobalMuons_ || ! muon->isGlobalMuon())) continue;
00337 
00338          hNumChambers[i]->Fill(muon->numberOfChambers());
00339          hNumMatches[i]->Fill(muon->numberOfMatches());
00340          if (! makeDQMPlots_) {
00341             hCaloCompat[i]->Fill(muon->caloCompatibility());
00342             hSegmentCompat[i]->Fill(muon->segmentCompatibility());
00343             if (make2DPlots_)
00344                hCaloSegmentCompat[i]->Fill(muon->caloCompatibility(), muon->segmentCompatibility());
00345             hGlobalMuonPromptTightBool[i]->Fill(muon->isGood(Muon::GlobalMuonPromptTight));
00346             hTMLastStationLooseBool[i]->Fill(muon->isGood(Muon::TMLastStationLoose));
00347             hTMLastStationTightBool[i]->Fill(muon->isGood(Muon::TMLastStationTight));
00348             hTM2DCompatibilityLooseBool[i]->Fill(muon->isGood(Muon::TM2DCompatibilityLoose));
00349             hTM2DCompatibilityTightBool[i]->Fill(muon->isGood(Muon::TM2DCompatibilityTight));
00350             hTMOneStationLooseBool[i]->Fill(muon->isGood(Muon::TMOneStationLoose));
00351             hTMOneStationTightBool[i]->Fill(muon->isGood(Muon::TMOneStationTight));
00352             hTMLastStationOptimizedLowPtLooseBool[i]->Fill(muon->isGood(Muon::TMLastStationOptimizedLowPtLoose));
00353             hTMLastStationOptimizedLowPtTightBool[i]->Fill(muon->isGood(Muon::TMLastStationOptimizedLowPtTight));
00354 
00355             if (makeEnergyPlots_) {
00356                //EM
00357                if (fabs(muon->eta()) > 1.479)
00358                   hEnergyEMEndcap[i]->Fill(muon->calEnergy().em);
00359                else
00360                   hEnergyEMBarrel[i]->Fill(muon->calEnergy().em);
00361                //HAD
00362                if (fabs(muon->eta()) > 1.4)
00363                   hEnergyHAEndcap[i]->Fill(muon->calEnergy().had);
00364                else
00365                   hEnergyHABarrel[i]->Fill(muon->calEnergy().had);
00366                //HO
00367                if (fabs(muon->eta()) < 1.26)
00368                   hEnergyHO[i]->Fill(muon->calEnergy().ho);
00369             }
00370 
00371             if (makeIsoPlots_) {
00372                hIso03sumPt[i]->Fill(muon->isolationR03().sumPt);
00373                hIso03emEt[i]->Fill(muon->isolationR03().emEt);
00374                hIso03hadEt[i]->Fill(muon->isolationR03().hadEt);
00375                hIso03hoEt[i]->Fill(muon->isolationR03().hoEt);
00376                hIso03nTracks[i]->Fill(muon->isolationR03().nTracks);
00377                hIso03nJets[i]->Fill(muon->isolationR03().nJets);
00378                hIso05sumPt[i]->Fill(muon->isolationR05().sumPt);
00379                hIso05emEt[i]->Fill(muon->isolationR05().emEt);
00380                hIso05hadEt[i]->Fill(muon->isolationR05().hadEt);
00381                hIso05hoEt[i]->Fill(muon->isolationR05().hoEt);
00382                hIso05nTracks[i]->Fill(muon->isolationR05().nTracks);
00383                hIso05nJets[i]->Fill(muon->isolationR05().nJets);
00384             }
00385          }
00386       }
00387 
00388       if (! useTrackerMuons_ || ! muon->isTrackerMuon()) continue;
00389 
00390       // by station
00391       for(int station = 0; station < 4; ++station)
00392       {
00393          hDTNumSegments[station]->Fill(muon->numberOfSegments(station+1, MuonSubdetId::DT, Muon::NoArbitration));
00394          hDTDx[station]->Fill(muon->dX(station+1, MuonSubdetId::DT));
00395          hDTPullx[station]->Fill(muon->pullX(station+1, MuonSubdetId::DT, Muon::SegmentArbitration, true));
00396 
00397          if (station < 3) {
00398             hDTDy[station]->Fill(muon->dY(station+1, MuonSubdetId::DT));
00399             hDTPully[station]->Fill(muon->pullY(station+1, MuonSubdetId::DT, Muon::SegmentArbitration, true));
00400             if (! makeDQMPlots_) {
00401                hDTPullyPropErr[station]->Fill(muon->pullY(station+1, MuonSubdetId::DT, Muon::SegmentArbitration, false));
00402                hDTDdYdZ[station]->Fill(muon->dDyDz(station+1, MuonSubdetId::DT));
00403                hDTPulldYdZ[station]->Fill(muon->pullDyDz(station+1, MuonSubdetId::DT, Muon::SegmentArbitration, true));
00404                hDTPulldYdZPropErr[station]->Fill(muon->pullDyDz(station+1, MuonSubdetId::DT, Muon::SegmentArbitration, false));
00405             }
00406          }
00407 
00408          hCSCNumSegments[station]->Fill(muon->numberOfSegments(station+1, MuonSubdetId::CSC, Muon::NoArbitration));
00409          hCSCDx[station]->Fill(muon->dX(station+1, MuonSubdetId::CSC));
00410          hCSCPullx[station]->Fill(muon->pullX(station+1, MuonSubdetId::CSC, Muon::SegmentArbitration, true));
00411          hCSCDy[station]->Fill(muon->dY(station+1, MuonSubdetId::CSC));
00412          hCSCPully[station]->Fill(muon->pullY(station+1, MuonSubdetId::CSC, Muon::SegmentArbitration, true));
00413 
00414          if (! makeDQMPlots_) {
00415             hDTPullxPropErr[station]->Fill(muon->pullX(station+1, MuonSubdetId::DT, Muon::SegmentArbitration, false));
00416             hDTDdXdZ[station]->Fill(muon->dDxDz(station+1, MuonSubdetId::DT));
00417             hDTPulldXdZ[station]->Fill(muon->pullDxDz(station+1, MuonSubdetId::DT, Muon::SegmentArbitration, true));
00418             hDTPulldXdZPropErr[station]->Fill(muon->pullDxDz(station+1, MuonSubdetId::DT, Muon::SegmentArbitration, false));
00419 
00420             float distance = muon->trackDist(station+1, MuonSubdetId::DT);
00421             float error    = muon->trackDistErr(station+1, MuonSubdetId::DT);
00422             if (error == 0) error = 0.000001;
00423 
00424             if (muon->numberOfSegments(station+1, MuonSubdetId::DT, Muon::NoArbitration) > 0) {
00425                hDTDistWithSegment[station]->Fill(distance);
00426                hDTPullDistWithSegment[station]->Fill(distance/error);
00427             } else {
00428                hDTDistWithNoSegment[station]->Fill(distance);
00429                hDTPullDistWithNoSegment[station]->Fill(distance/error);
00430             }
00431 
00432             hCSCPullxPropErr[station]->Fill(muon->pullX(station+1, MuonSubdetId::CSC, Muon::SegmentArbitration, false));
00433             hCSCDdXdZ[station]->Fill(muon->dDxDz(station+1, MuonSubdetId::CSC));
00434             hCSCPulldXdZ[station]->Fill(muon->pullDxDz(station+1, MuonSubdetId::CSC, Muon::SegmentArbitration, true));
00435             hCSCPulldXdZPropErr[station]->Fill(muon->pullDxDz(station+1, MuonSubdetId::CSC, Muon::SegmentArbitration, false));
00436             hCSCPullyPropErr[station]->Fill(muon->pullY(station+1, MuonSubdetId::CSC, Muon::SegmentArbitration, false));
00437             hCSCDdYdZ[station]->Fill(muon->dDyDz(station+1, MuonSubdetId::CSC));
00438             hCSCPulldYdZ[station]->Fill(muon->pullDyDz(station+1, MuonSubdetId::CSC, Muon::SegmentArbitration, true));
00439             hCSCPulldYdZPropErr[station]->Fill(muon->pullDyDz(station+1, MuonSubdetId::CSC, Muon::SegmentArbitration, false));
00440 
00441             distance = muon->trackDist(station+1, MuonSubdetId::CSC);
00442             error    = muon->trackDistErr(station+1, MuonSubdetId::CSC);
00443             if (error == 0) error = 0.000001;
00444 
00445             if (muon->numberOfSegments(station+1, MuonSubdetId::CSC, Muon::NoArbitration) > 0) {
00446                hCSCDistWithSegment[station]->Fill(distance);
00447                hCSCPullDistWithSegment[station]->Fill(distance/error);
00448             } else {
00449                hCSCDistWithNoSegment[station]->Fill(distance);
00450                hCSCPullDistWithNoSegment[station]->Fill(distance/error);
00451             }
00452          }
00453       }
00454 
00455       if (makeAllChamberPlots_) {
00456          // by chamber
00457          for(std::vector<MuonChamberMatch>::const_iterator chamberMatch = muon->matches().begin();
00458                chamberMatch != muon->matches().end(); ++chamberMatch)
00459          {
00460             int station = chamberMatch->station();
00461 
00462             if (chamberMatch->detector() == MuonSubdetId::DT) {
00463                DTChamberId dtId(chamberMatch->id.rawId());
00464                int wheel  = dtId.wheel();
00465                int sector = dtId.sector();
00466 
00467                if (chamberMatch->segmentMatches.empty()) {
00468                   hDTChamberEdgeXWithNoSegment[station-1][wheel+2][sector-1]->Fill(chamberMatch->edgeX);
00469                   hDTChamberEdgeYWithNoSegment[station-1][wheel+2][sector-1]->Fill(chamberMatch->edgeY);
00470                } else {
00471                   hDTChamberEdgeXWithSegment[station-1][wheel+2][sector-1]->Fill(chamberMatch->edgeX);
00472                   hDTChamberEdgeYWithSegment[station-1][wheel+2][sector-1]->Fill(chamberMatch->edgeY);
00473 
00474                   for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
00475                         segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
00476                   {
00477                      if (segmentMatch->isMask(MuonSegmentMatch::BestInChamberByDR)) {
00478                         hDTChamberDx[station-1][wheel+2][sector-1]->Fill(chamberMatch->x-segmentMatch->x);
00479                         if (station < 4) hDTChamberDy[station-1][wheel+2][sector-1]->Fill(chamberMatch->y-segmentMatch->y);
00480                         break;
00481                      }
00482                   }// segmentMatch
00483                }
00484 
00485                continue;
00486             }
00487 
00488             if (chamberMatch->detector() == MuonSubdetId::CSC)  {
00489                CSCDetId cscId(chamberMatch->id.rawId());
00490                int endcap  = cscId.endcap();
00491                int ring    = cscId.ring();
00492                int chamber = cscId.chamber();
00493 
00494                if (chamberMatch->segmentMatches.empty()) {
00495                   hCSCChamberEdgeXWithNoSegment[endcap-1][station-1][ring-1][chamber-1]->Fill(chamberMatch->edgeX);
00496                   hCSCChamberEdgeYWithNoSegment[endcap-1][station-1][ring-1][chamber-1]->Fill(chamberMatch->edgeY);
00497                } else {
00498                   hCSCChamberEdgeXWithSegment[endcap-1][station-1][ring-1][chamber-1]->Fill(chamberMatch->edgeX);
00499                   hCSCChamberEdgeYWithSegment[endcap-1][station-1][ring-1][chamber-1]->Fill(chamberMatch->edgeY);
00500 
00501                   for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
00502                         segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
00503                   {
00504                      if (segmentMatch->isMask(MuonSegmentMatch::BestInChamberByDR)) {
00505                         hCSCChamberDx[endcap-1][station-1][ring-1][chamber-1]->Fill(chamberMatch->x-segmentMatch->x);
00506                         hCSCChamberDy[endcap-1][station-1][ring-1][chamber-1]->Fill(chamberMatch->y-segmentMatch->y);
00507                         break;
00508                      }
00509                   }// segmentMatch
00510                }
00511             }
00512          }// chamberMatch
00513       }
00514    }// muon
00515 
00516    if (! useTrackerMuons_) return;
00517 
00518    for(DTRecSegment4DCollection::const_iterator segment = dtSegmentCollectionH_->begin();
00519          segment != dtSegmentCollectionH_->end(); ++segment)
00520    {
00521       LocalPoint  segmentLocalPosition       = segment->localPosition();
00522       LocalVector segmentLocalDirection      = segment->localDirection();
00523       LocalError  segmentLocalPositionError  = segment->localPositionError();
00524       LocalError  segmentLocalDirectionError = segment->localDirectionError();
00525       const GeomDet* segmentGeomDet = geometry_->idToDet(segment->geographicalId());
00526       GlobalPoint segmentGlobalPosition = segmentGeomDet->toGlobal(segment->localPosition());
00527       bool segmentFound = false;
00528       bool segmentBestDrFound = false;
00529 
00530       for(MuonCollection::const_iterator muon = muonCollectionH_->begin();
00531             muon != muonCollectionH_->end(); ++muon)
00532       {
00533          if (! muon->isMatchesValid())
00534             continue;
00535 
00536          for(std::vector<MuonChamberMatch>::const_iterator chamberMatch = muon->matches().begin();
00537                chamberMatch != muon->matches().end(); ++chamberMatch) {
00538             for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
00539                   segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
00540             {
00541                if (fabs(segmentMatch->x       - segmentLocalPosition.x()                           ) < 1E-6 &&
00542                    fabs(segmentMatch->y       - segmentLocalPosition.y()                           ) < 1E-6 &&
00543                    fabs(segmentMatch->dXdZ    - segmentLocalDirection.x()/segmentLocalDirection.z()) < 1E-6 &&
00544                    fabs(segmentMatch->dYdZ    - segmentLocalDirection.y()/segmentLocalDirection.z()) < 1E-6 &&
00545                    fabs(segmentMatch->xErr    - sqrt(segmentLocalPositionError.xx())               ) < 1E-6 &&
00546                    fabs(segmentMatch->yErr    - sqrt(segmentLocalPositionError.yy())               ) < 1E-6 &&
00547                    fabs(segmentMatch->dXdZErr - sqrt(segmentLocalDirectionError.xx())              ) < 1E-6 &&
00548                    fabs(segmentMatch->dYdZErr - sqrt(segmentLocalDirectionError.yy())              ) < 1E-6)
00549                {
00550                   segmentFound = true;
00551                   if (segmentMatch->isMask(reco::MuonSegmentMatch::BestInStationByDR)) segmentBestDrFound = true;
00552                   break;
00553                }
00554             }// segmentMatch
00555             if (segmentFound) break;
00556          }// chamberMatch
00557          if (segmentFound) break;
00558       }// muon
00559 
00560       if (segmentFound) {
00561          hSegmentIsAssociatedBool->Fill(1.);
00562 
00563          if (make2DPlots_) {
00564             hSegmentIsAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
00565             hSegmentIsAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
00566 
00567             if (segmentBestDrFound) {
00568                hSegmentIsBestDrAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
00569                hSegmentIsBestDrAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
00570             }
00571          }
00572       } else {
00573          hSegmentIsAssociatedBool->Fill(0.);
00574 
00575          if (make2DPlots_) {
00576             hSegmentIsNotAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
00577             hSegmentIsNotAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
00578             hSegmentIsBestDrNotAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
00579             hSegmentIsBestDrNotAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
00580          }
00581       }
00582    }// dt segment
00583 
00584    for(CSCSegmentCollection::const_iterator segment = cscSegmentCollectionH_->begin();
00585          segment != cscSegmentCollectionH_->end(); ++segment)
00586    {
00587       LocalPoint  segmentLocalPosition       = segment->localPosition();
00588       LocalVector segmentLocalDirection      = segment->localDirection();
00589       LocalError  segmentLocalPositionError  = segment->localPositionError();
00590       LocalError  segmentLocalDirectionError = segment->localDirectionError();
00591       const GeomDet* segmentGeomDet = geometry_->idToDet(segment->geographicalId());
00592       GlobalPoint segmentGlobalPosition = segmentGeomDet->toGlobal(segment->localPosition());
00593       bool segmentFound = false;
00594       bool segmentBestDrFound = false;
00595 
00596       for(MuonCollection::const_iterator muon = muonCollectionH_->begin();
00597             muon != muonCollectionH_->end(); ++muon)
00598       {
00599          if (! muon->isMatchesValid())
00600             continue;
00601 
00602          for(std::vector<MuonChamberMatch>::const_iterator chamberMatch = muon->matches().begin();
00603                chamberMatch != muon->matches().end(); ++chamberMatch) {
00604             for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
00605                   segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
00606             {
00607                if (fabs(segmentMatch->x       - segmentLocalPosition.x()                           ) < 1E-6 &&
00608                    fabs(segmentMatch->y       - segmentLocalPosition.y()                           ) < 1E-6 &&
00609                    fabs(segmentMatch->dXdZ    - segmentLocalDirection.x()/segmentLocalDirection.z()) < 1E-6 &&
00610                    fabs(segmentMatch->dYdZ    - segmentLocalDirection.y()/segmentLocalDirection.z()) < 1E-6 &&
00611                    fabs(segmentMatch->xErr    - sqrt(segmentLocalPositionError.xx())               ) < 1E-6 &&
00612                    fabs(segmentMatch->yErr    - sqrt(segmentLocalPositionError.yy())               ) < 1E-6 &&
00613                    fabs(segmentMatch->dXdZErr - sqrt(segmentLocalDirectionError.xx())              ) < 1E-6 &&
00614                    fabs(segmentMatch->dYdZErr - sqrt(segmentLocalDirectionError.yy())              ) < 1E-6)
00615                {
00616                   segmentFound = true;
00617                   if (segmentMatch->isMask(reco::MuonSegmentMatch::BestInStationByDR)) segmentBestDrFound = true;
00618                   break;
00619                }
00620             }// segmentMatch
00621             if (segmentFound) break;
00622          }// chamberMatch
00623          if (segmentFound) break;
00624       }// muon
00625 
00626       if (segmentFound) {
00627          hSegmentIsAssociatedBool->Fill(1.);
00628 
00629          if (make2DPlots_) {
00630             hSegmentIsAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
00631             hSegmentIsAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
00632 
00633             if (segmentBestDrFound) {
00634                hSegmentIsBestDrAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
00635                hSegmentIsBestDrAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
00636             }
00637          }
00638       } else {
00639          hSegmentIsAssociatedBool->Fill(0.);
00640 
00641          if (make2DPlots_) {
00642             hSegmentIsNotAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
00643             hSegmentIsNotAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
00644             hSegmentIsBestDrNotAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
00645             hSegmentIsBestDrNotAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
00646          }
00647       }
00648    }// csc segment
00649 }

void MuonIdVal::beginJob ( const edm::EventSetup  )  [private, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 32 of file MuonIdVal.cc.

References baseFolder_, DQMStore::book1D(), DQMStore::book2D(), dbe_, GeomDetEnumerators::endcap, hCaloCompat, hCaloSegmentCompat, hCSCChamberDx, hCSCChamberDy, hCSCChamberEdgeXWithNoSegment, hCSCChamberEdgeXWithSegment, hCSCChamberEdgeYWithNoSegment, hCSCChamberEdgeYWithSegment, hCSCDdXdZ, hCSCDdYdZ, hCSCDistWithNoSegment, hCSCDistWithSegment, hCSCDx, hCSCDy, hCSCNumSegments, hCSCPullDistWithNoSegment, hCSCPullDistWithSegment, hCSCPulldXdZ, hCSCPulldXdZPropErr, hCSCPulldYdZ, hCSCPulldYdZPropErr, hCSCPullx, hCSCPullxPropErr, hCSCPully, hCSCPullyPropErr, hDTChamberDx, hDTChamberDy, hDTChamberEdgeXWithNoSegment, hDTChamberEdgeXWithSegment, hDTChamberEdgeYWithNoSegment, hDTChamberEdgeYWithSegment, hDTDdXdZ, hDTDdYdZ, hDTDistWithNoSegment, hDTDistWithSegment, hDTDx, hDTDy, hDTNumSegments, hDTPullDistWithNoSegment, hDTPullDistWithSegment, hDTPulldXdZ, hDTPulldXdZPropErr, hDTPulldYdZ, hDTPulldYdZPropErr, hDTPullx, hDTPullxPropErr, hDTPully, hDTPullyPropErr, hEnergyEMBarrel, hEnergyEMEndcap, hEnergyHABarrel, hEnergyHAEndcap, hEnergyHO, hGlobalMuonPromptTightBool, hIso03emEt, hIso03hadEt, hIso03hoEt, hIso03nJets, hIso03nTracks, hIso03sumPt, hIso05emEt, hIso05hadEt, hIso05hoEt, hIso05nJets, hIso05nTracks, hIso05sumPt, hNumChambers, hNumMatches, hSegmentCompat, hSegmentIsAssociatedBool, hSegmentIsAssociatedRZ, hSegmentIsAssociatedXY, hSegmentIsBestDrAssociatedRZ, hSegmentIsBestDrAssociatedXY, hSegmentIsBestDrNotAssociatedRZ, hSegmentIsBestDrNotAssociatedXY, hSegmentIsNotAssociatedRZ, hSegmentIsNotAssociatedXY, hTM2DCompatibilityLooseBool, hTM2DCompatibilityTightBool, hTMLastStationLooseBool, hTMLastStationOptimizedLowPtLooseBool, hTMLastStationOptimizedLowPtTightBool, hTMLastStationTightBool, hTMOneStationLooseBool, hTMOneStationTightBool, i, make2DPlots_, makeAllChamberPlots_, makeDQMPlots_, makeEnergyPlots_, makeIsoPlots_, name, DQMStore::setCurrentFolder(), indexGen::title, useGlobalMuons_, useTrackerMuons_, and muonGeometry::wheel.

00033 {
00034    // trackerMuon == 0; globalMuon == 1
00035    for (unsigned int i = 0; i < 2; i++) {
00036       if ((i == 0 && ! useTrackerMuons_) || (i == 1 && ! useGlobalMuons_)) continue;
00037       if (i == 0) dbe_->setCurrentFolder(baseFolder_+"/TrackerMuons");
00038       if (i == 1) dbe_->setCurrentFolder(baseFolder_+"/GlobalMuons");
00039 
00040       hNumChambers[i] = dbe_->book1D("hNumChambers", "Number of Chambers", 11, -0.5, 10.5);
00041       hNumMatches[i] = dbe_->book1D("hNumMatches", "Number of Matches", 11, -0.5, 10.5);
00042       if (! makeDQMPlots_) {
00043          hCaloCompat[i] = dbe_->book1D("hCaloCompat", "Calo Compatibility", 101, -0.05, 1.05);
00044          hSegmentCompat[i] = dbe_->book1D("hSegmentCompat", "Segment Compatibility", 101, -0.05, 1.05);
00045          if (make2DPlots_)
00046             hCaloSegmentCompat[i] = dbe_->book2D("hCaloSegmentCompat", "Calo Compatibility vs. Segment Compatibility", 101, -0.05, 1.05, 101, -0.05, 1.05);
00047          hGlobalMuonPromptTightBool[i] = dbe_->book1D("hGlobalMuonPromptTightBool", "GlobalMuonPromptTight Boolean", 2, -0.5, 1.5);
00048          hTMLastStationLooseBool[i] = dbe_->book1D("hTMLastStationLooseBool", "TMLastStationLoose Boolean", 2, -0.5, 1.5);
00049          hTMLastStationTightBool[i] = dbe_->book1D("hTMLastStationTightBool", "TMLastStationTight Boolean", 2, -0.5, 1.5);
00050          hTM2DCompatibilityLooseBool[i] = dbe_->book1D("hTM2DCompatibilityLooseBool", "TM2DCompatibilityLoose Boolean", 2, -0.5, 1.5);
00051          hTM2DCompatibilityTightBool[i] = dbe_->book1D("hTM2DCompatibilityTightBool", "TM2DCompatibilityTight Boolean", 2, -0.5, 1.5);
00052          hTMOneStationLooseBool[i] = dbe_->book1D("hTMOneStationLooseBool", "TMOneStationLoose Boolean", 2, -0.5, 1.5);
00053          hTMOneStationTightBool[i] = dbe_->book1D("hTMOneStationTightBool", "TMOneStationTight Boolean", 2, -0.5, 1.5);
00054          hTMLastStationOptimizedLowPtLooseBool[i] = dbe_->book1D("hTMLastStationOptimizedLowPtLooseBool", "TMLastStationOptimizedLowPtLoose Boolean", 2, -0.5, 1.5);
00055          hTMLastStationOptimizedLowPtTightBool[i] = dbe_->book1D("hTMLastStationOptimizedLowPtTightBool", "TMLastStationOptimizedLowPtTight Boolean", 2, -0.5, 1.5);
00056 
00057          if (makeEnergyPlots_) {
00058             hEnergyEMBarrel[i] = dbe_->book1D("hEnergyEMBarrel", "Energy in ECAL Barrel", 100, -0.5, 2.);
00059             hEnergyHABarrel[i] = dbe_->book1D("hEnergyHABarrel", "Energy in HCAL Barrel", 100, -4., 12.);
00060             hEnergyHO[i] = dbe_->book1D("hEnergyHO", "Energy HO", 100, -2., 5.);
00061             hEnergyEMEndcap[i] = dbe_->book1D("hEnergyEMEndcap", "Energy in ECAL Endcap", 100, -0.5, 2.);
00062             hEnergyHAEndcap[i] = dbe_->book1D("hEnergyHAEndcap", "Energy in HCAL Endcap", 100, -4., 12.);
00063          }
00064 
00065          if (makeIsoPlots_) {
00066             hIso03sumPt[i] = dbe_->book1D("hIso03sumPt", "Sum Pt in Cone of 0.3", 100, 0., 10.);
00067             hIso03emEt[i] = dbe_->book1D("hIso03emEt", "Em Et in Cone of 0.3", 100, 0., 10.);
00068             hIso03hadEt[i] = dbe_->book1D("hIso03hadEt", "Had Et in Cone of 0.3", 100, 0., 10.);
00069             hIso03hoEt[i] = dbe_->book1D("hIso03hoEt", "HO Et in Cone of 0.3", 100, 0., 10.);
00070             hIso03nTracks[i] = dbe_->book1D("hIso03nTracks", "Number of Tracks in Cone of 0.3", 11, -0.5, 10.5);
00071             hIso03nJets[i] = dbe_->book1D("hIso03nJets", "Number of Jets in Cone of 0.3", 11, -0.5, 10.5);
00072             hIso05sumPt[i] = dbe_->book1D("hIso05sumPt", "Sum Pt in Cone of 0.5", 100, 0., 10.);
00073             hIso05emEt[i] = dbe_->book1D("hIso05emEt", "Em Et in Cone of 0.5", 100, 0., 10.);
00074             hIso05hadEt[i] = dbe_->book1D("hIso05hadEt", "Had Et in Cone of 0.5", 100, 0., 10.);
00075             hIso05hoEt[i] = dbe_->book1D("hIso05hoEt", "HO Et in Cone of 0.5", 100, 0., 10.);
00076             hIso05nTracks[i] = dbe_->book1D("hIso05nTracks", "Number of Tracks in Cone of 0.5", 11, -0.5, 10.5);
00077             hIso05nJets[i] = dbe_->book1D("hIso05nJets", "Number of Jets in Cone of 0.5", 11, -0.5, 10.5);
00078          }
00079       }
00080    }
00081 
00082    if (useTrackerMuons_) {
00083       dbe_->setCurrentFolder(baseFolder_+"/TrackerMuons");
00084 
00085       char name[100], title[200];
00086 
00087       // by station
00088       for(int station = 0; station < 4; ++station)
00089       {
00090          sprintf(name, "hDT%iNumSegments", station+1);
00091          sprintf(title, "DT Station %i Number of Segments (No Arbitration)", station+1);
00092          hDTNumSegments[station] = dbe_->book1D(name, title, 11, -0.5, 10.5);
00093 
00094          sprintf(name, "hDT%iDx", station+1);
00095          sprintf(title, "DT Station %i Delta X", station+1);
00096          hDTDx[station] = dbe_->book1D(name, title, 100, -100., 100.);
00097 
00098          sprintf(name, "hDT%iPullx", station+1);
00099          sprintf(title, "DT Station %i Pull X", station+1);
00100          hDTPullx[station] = dbe_->book1D(name, title, 100, -20., 20.);
00101 
00102          if (station < 3) {
00103             sprintf(name, "hDT%iDy", station+1);
00104             sprintf(title, "DT Station %i Delta Y", station+1);
00105             hDTDy[station] = dbe_->book1D(name, title, 100, -150., 150.);
00106 
00107             sprintf(name, "hDT%iPully", station+1);
00108             sprintf(title, "DT Station %i Pull Y", station+1);
00109             hDTPully[station] = dbe_->book1D(name, title, 100, -20., 20.);
00110 
00111             if (! makeDQMPlots_) {
00112                sprintf(name, "hDT%iPullyPropErr", station+1);
00113                sprintf(title, "DT Station %i Pull Y w/ Propagation Error Only", station+1);
00114                hDTPullyPropErr[station] = dbe_->book1D(name, title, 100, -20., 20.);
00115 
00116                sprintf(name, "hDT%iDdYdZ", station+1);
00117                sprintf(title, "DT Station %i Delta DyDz", station+1);
00118                hDTDdYdZ[station] = dbe_->book1D(name, title, 100, -2., 2.);
00119 
00120                sprintf(name, "hDT%iPulldYdZ", station+1);
00121                sprintf(title, "DT Station %i Pull DyDz", station+1);
00122                hDTPulldYdZ[station] = dbe_->book1D(name, title, 100, -20., 20.);
00123 
00124                sprintf(name, "hDT%iPulldYdZPropErr", station+1);
00125                sprintf(title, "DT Station %i Pull DyDz w/ Propagation Error Only", station+1);
00126                hDTPulldYdZPropErr[station] = dbe_->book1D(name, title, 100, -20., 20.);
00127             }
00128          }
00129 
00130          sprintf(name, "hCSC%iNumSegments", station+1);
00131          sprintf(title, "CSC Station %i Number of Segments (No Arbitration)", station+1);
00132          hCSCNumSegments[station] = dbe_->book1D(name, title, 11, -0.5, 10.5);
00133 
00134          sprintf(name, "hCSC%iDx", station+1);
00135          sprintf(title, "CSC Station %i Delta X", station+1);
00136          hCSCDx[station] = dbe_->book1D(name, title, 100, -50., 50.);
00137 
00138          sprintf(name, "hCSC%iPullx", station+1);
00139          sprintf(title, "CSC Station %i Pull X", station+1);
00140          hCSCPullx[station] = dbe_->book1D(name, title, 100, -20., 20.);
00141 
00142          sprintf(name, "hCSC%iDy", station+1);
00143          sprintf(title, "CSC Station %i Delta Y", station+1);
00144          hCSCDy[station] = dbe_->book1D(name, title, 100, -50., 50.);
00145 
00146          sprintf(name, "hCSC%iPully", station+1);
00147          sprintf(title, "CSC Station %i Pull Y", station+1);
00148          hCSCPully[station] = dbe_->book1D(name, title, 100, -20., 20.);
00149 
00150          if (! makeDQMPlots_) {
00151             sprintf(name, "hDT%iPullxPropErr", station+1);
00152             sprintf(title, "DT Station %i Pull X w/ Propagation Error Only", station+1);
00153             hDTPullxPropErr[station] = dbe_->book1D(name, title, 100, -20., 20.);
00154 
00155             sprintf(name, "hDT%iDdXdZ", station+1);
00156             sprintf(title, "DT Station %i Delta DxDz", station+1);
00157             hDTDdXdZ[station] = dbe_->book1D(name, title, 100, -1., 1.);
00158 
00159             sprintf(name, "hDT%iPulldXdZ", station+1);
00160             sprintf(title, "DT Station %i Pull DxDz", station+1);
00161             hDTPulldXdZ[station] = dbe_->book1D(name, title, 100, -20., 20.);
00162 
00163             sprintf(name, "hDT%iPulldXdZPropErr", station+1);
00164             sprintf(title, "DT Station %i Pull DxDz w/ Propagation Error Only", station+1);
00165             hDTPulldXdZPropErr[station] = dbe_->book1D(name, title, 100, -20., 20.);
00166 
00167             sprintf(name, "hDT%iDistWithSegment", station+1);
00168             sprintf(title, "DT Station %i Dist When There Is A Segment", station+1);
00169             hDTDistWithSegment[station] = dbe_->book1D(name, title, 100, -140., 30.);
00170 
00171             sprintf(name, "hDT%iDistWithNoSegment", station+1);
00172             sprintf(title, "DT Station %i Dist When There Is No Segment", station+1);
00173             hDTDistWithNoSegment[station] = dbe_->book1D(name, title, 100, -140., 30.);
00174 
00175             sprintf(name, "hDT%iPullDistWithSegment", station+1);
00176             sprintf(title, "DT Station %i Pull Dist When There Is A Segment", station+1);
00177             hDTPullDistWithSegment[station] = dbe_->book1D(name, title, 100, -140., 30.);
00178 
00179             sprintf(name, "hDT%iPullDistWithNoSegment", station+1);
00180             sprintf(title, "DT Station %i Pull Dist When There Is No Segment", station+1);
00181             hDTPullDistWithNoSegment[station] = dbe_->book1D(name, title, 100, -140., 30.);
00182 
00183             sprintf(name, "hCSC%iPullxPropErr", station+1);
00184             sprintf(title, "CSC Station %i Pull X w/ Propagation Error Only", station+1);
00185             hCSCPullxPropErr[station] = dbe_->book1D(name, title, 100, -20., 20.);
00186 
00187             sprintf(name, "hCSC%iDdXdZ", station+1);
00188             sprintf(title, "CSC Station %i Delta DxDz", station+1);
00189             hCSCDdXdZ[station] = dbe_->book1D(name, title, 100, -1., 1.);
00190 
00191             sprintf(name, "hCSC%iPulldXdZ", station+1);
00192             sprintf(title, "CSC Station %i Pull DxDz", station+1);
00193             hCSCPulldXdZ[station] = dbe_->book1D(name, title, 100, -20., 20.);
00194 
00195             sprintf(name, "hCSC%iPulldXdZPropErr", station+1);
00196             sprintf(title, "CSC Station %i Pull DxDz w/ Propagation Error Only", station+1);
00197             hCSCPulldXdZPropErr[station] = dbe_->book1D(name, title, 100, -20., 20.);
00198 
00199             sprintf(name, "hCSC%iPullyPropErr", station+1);
00200             sprintf(title, "CSC Station %i Pull Y w/ Propagation Error Only", station+1);
00201             hCSCPullyPropErr[station] = dbe_->book1D(name, title, 100, -20., 20.);
00202 
00203             sprintf(name, "hCSC%iDdYdZ", station+1);
00204             sprintf(title, "CSC Station %i Delta DyDz", station+1);
00205             hCSCDdYdZ[station] = dbe_->book1D(name, title, 100, -1., 1.);
00206 
00207             sprintf(name, "hCSC%iPulldYdZ", station+1);
00208             sprintf(title, "CSC Station %i Pull DyDz", station+1);
00209             hCSCPulldYdZ[station] = dbe_->book1D(name, title, 100, -20., 20.);
00210 
00211             sprintf(name, "hCSC%iPulldYdZPropErr", station+1);
00212             sprintf(title, "CSC Station %i Pull DyDz w/ Propagation Error Only", station+1);
00213             hCSCPulldYdZPropErr[station] = dbe_->book1D(name, title, 100, -50., 50.);
00214 
00215             sprintf(name, "hCSC%iDistWithSegment", station+1);
00216             sprintf(title, "CSC Station %i Dist When There Is A Segment", station+1);
00217             hCSCDistWithSegment[station] = dbe_->book1D(name, title, 100, -70., 20.);
00218 
00219             sprintf(name, "hCSC%iDistWithNoSegment", station+1);
00220             sprintf(title, "CSC Station %i Dist When There Is No Segment", station+1);
00221             hCSCDistWithNoSegment[station] = dbe_->book1D(name, title, 100, -70., 20.);
00222 
00223             sprintf(name, "hCSC%iPullDistWithSegment", station+1);
00224             sprintf(title, "CSC Station %i Pull Dist When There Is A Segment", station+1);
00225             hCSCPullDistWithSegment[station] = dbe_->book1D(name, title, 100, -70., 20.);
00226 
00227             sprintf(name, "hCSC%iPullDistWithNoSegment", station+1);
00228             sprintf(title, "CSC Station %i Pull Dist When There Is No Segment", station+1);
00229             hCSCPullDistWithNoSegment[station] = dbe_->book1D(name, title, 100, -70., 20.);
00230          }
00231       }// station
00232 
00233       hSegmentIsAssociatedBool = dbe_->book1D("hSegmentIsAssociatedBool", "Segment Is Associated Boolean", 2, -0.5, 1.5);
00234       if (make2DPlots_) {
00235          hSegmentIsAssociatedRZ = dbe_->book2D("hSegmentIsAssociatedRZ", "R-Z of Associated Segments", 2140, -1070., 1070., 850, 0., 850.);
00236          hSegmentIsAssociatedXY = dbe_->book2D("hSegmentIsAssociatedXY", "R-#phi of Associated Segments", 1700, -850., 850., 1700, -850., 850.);
00237          hSegmentIsNotAssociatedRZ = dbe_->book2D("hSegmentIsNotAssociatedRZ", "R-Z of Not Associated Segments", 2140, -1070., 1070., 850, 0., 850.);
00238          hSegmentIsNotAssociatedXY = dbe_->book2D("hSegmentIsNotAssociatedXY", "R-#phi of Not Associated Segments", 1700, -850., 850., 1700, -850., 850.);
00239          hSegmentIsBestDrAssociatedRZ = dbe_->book2D("hSegmentIsBestDrAssociatedRZ", "R-Z of Best in Station by #DeltaR Associated Segments", 2140, -1070., 1070., 850, 0., 850.);
00240          hSegmentIsBestDrAssociatedXY = dbe_->book2D("hSegmentIsBestDrAssociatedXY", "R-#phi of Best in Station by #DeltaR Associated Segments", 1700, -850., 850., 1700, -850., 850.);
00241          hSegmentIsBestDrNotAssociatedRZ = dbe_->book2D("hSegmentIsBestDrNotAssociatedRZ", "R-Z of Best in Station by #DeltaR Not Associated Segments", 2140, -1070., 1070., 850, 0., 850.);
00242          hSegmentIsBestDrNotAssociatedXY = dbe_->book2D("hSegmentIsBestDrNotAssociatedXY", "R-#phi of Best in Station by #DeltaR Not Associated Segments", 1700, -850., 850., 1700, -850., 850.);
00243       }
00244 
00245       if (makeAllChamberPlots_) {
00246          // by chamber
00247          for(int station = 0; station < 4; ++station) {
00248             // DT wheels: -2 -> 2
00249             for(int wheel = 0; wheel < 5; ++wheel) {
00250                // DT sectors: 1 -> 14
00251                for(int sector = 0; sector < 14; ++sector)
00252                {
00253                   sprintf(name, "hDTChamberDx_%i_%i_%i", station+1, wheel-2, sector+1);
00254                   sprintf(title, "DT Chamber Delta X: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
00255                   hDTChamberDx[station][wheel][sector] = dbe_->book1D(name, title, 100, -100., 100.);
00256 
00257                   if (station < 3) {
00258                      sprintf(name, "hDTChamberDy_%i_%i_%i", station+1, wheel-2, sector+1);
00259                      sprintf(title, "DT Chamber Delta Y: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
00260                      hDTChamberDy[station][wheel][sector] = dbe_->book1D(name, title, 100, -150., 150.);
00261                   }
00262 
00263                   sprintf(name, "hDTChamberEdgeXWithSegment_%i_%i_%i", station+1, wheel-2, sector+1);
00264                   sprintf(title, "DT Chamber Edge X When There Is A Segment: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
00265                   hDTChamberEdgeXWithSegment[station][wheel][sector] = dbe_->book1D(name, title, 100, -140., 30.);
00266 
00267                   sprintf(name, "hDTChamberEdgeXWithNoSegment_%i_%i_%i", station+1, wheel-2, sector+1);
00268                   sprintf(title, "DT Chamber Edge X When There Is No Segment: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
00269                   hDTChamberEdgeXWithNoSegment[station][wheel][sector] = dbe_->book1D(name, title, 100, -140., 30.);
00270 
00271                   sprintf(name, "hDTChamberEdgeYWithSegment_%i_%i_%i", station+1, wheel-2, sector+1);
00272                   sprintf(title, "DT Chamber Edge Y When There Is A Segment: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
00273                   hDTChamberEdgeYWithSegment[station][wheel][sector] = dbe_->book1D(name, title, 100, -140., 30.);
00274 
00275                   sprintf(name, "hDTChamberEdgeYWithNoSegment_%i_%i_%i", station+1, wheel-2, sector+1);
00276                   sprintf(title, "DT Chamber Edge Y When There Is No Segment: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
00277                   hDTChamberEdgeYWithNoSegment[station][wheel][sector] = dbe_->book1D(name, title, 100, -140., 30.);
00278                }// sector
00279             }// wheel
00280 
00281             // CSC endcaps: 1 -> 2
00282             for(int endcap = 0; endcap < 2; ++endcap) {
00283                // CSC rings: 1 -> 4
00284                for(int ring = 0; ring < 4; ++ring) {
00285                   // CSC chambers: 1 -> 36
00286                   for(int chamber = 0; chamber < 36; ++chamber)
00287                   {
00288                      sprintf(name, "hCSCChamberDx_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
00289                      sprintf(title, "CSC Chamber Delta X: Endcap %i Station %i Ring %i Chamber %i", endcap+1, station+1, ring+1, chamber+1);
00290                      hCSCChamberDx[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -50., 50.);
00291 
00292                      sprintf(name, "hCSCChamberDy_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
00293                      sprintf(title, "CSC Chamber Delta Y: Endcap %i Station %i Ring %i Chamber %i", endcap+1, station+1, ring+1, chamber+1);
00294                      hCSCChamberDy[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -50., 50.);
00295 
00296                      sprintf(name, "hCSCChamberEdgeXWithSegment_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
00297                      sprintf(title, "CSC Chamber Edge X When There Is A Segment: Endcap %i Station %i Ring %i Chamber %i", endcap+1, station+1, ring+1, chamber+1);
00298                      hCSCChamberEdgeXWithSegment[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -70., 20.);
00299 
00300                      sprintf(name, "hCSCChamberEdgeXWithNoSegment_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
00301                      sprintf(title, "CSC Chamber Edge X When There Is No Segment: Endcap %i Station %i Ring %i Chamber %i", endcap+1, station+1, ring+1, chamber+1);
00302                      hCSCChamberEdgeXWithNoSegment[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -70., 20.);
00303 
00304                      sprintf(name, "hCSCChamberEdgeYWithSegment_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
00305                      sprintf(title, "CSC Chamber Edge Y When There Is A Segment: Endcap %i Station %i Ring %i Chamber %i", endcap+1, station+1, ring+1, chamber+1);
00306                      hCSCChamberEdgeYWithSegment[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -70., 20.);
00307 
00308                      sprintf(name, "hCSCChamberEdgeYWithNoSegment_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
00309                      sprintf(title, "CSC Chamber Edge Y When There Is No Segment: Endcap %i Station %i Ring %i Chamber %i", endcap+1, station+1, ring+1, chamber+1);
00310                      hCSCChamberEdgeYWithNoSegment[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -70., 20.);
00311                   }// chamber
00312                }// ring
00313             }// endcap
00314          }// station
00315       }
00316    }
00317 }

void MuonIdVal::endJob ( void   )  [private, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 652 of file MuonIdVal.cc.

00652 {}


Member Data Documentation

std::string MuonIdVal::baseFolder_ [private]

Definition at line 76 of file MuonIdVal.h.

Referenced by beginJob(), and MuonIdVal().

edm::Handle<CSCSegmentCollection> MuonIdVal::cscSegmentCollectionH_ [private]

Definition at line 80 of file MuonIdVal.h.

Referenced by analyze().

DQMStore* MuonIdVal::dbe_ [private]

Definition at line 63 of file MuonIdVal.h.

Referenced by beginJob(), and MuonIdVal().

edm::Handle<DTRecSegment4DCollection> MuonIdVal::dtSegmentCollectionH_ [private]

Definition at line 79 of file MuonIdVal.h.

Referenced by analyze().

edm::ESHandle<GlobalTrackingGeometry> MuonIdVal::geometry_ [private]

Definition at line 81 of file MuonIdVal.h.

Referenced by analyze().

MonitorElement* MuonIdVal::hCaloCompat[2] [private]

Definition at line 86 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCaloSegmentCompat[2] [private]

Definition at line 88 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCChamberDx[2][4][4][36] [private]

Definition at line 173 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCChamberDy[2][4][4][36] [private]

Definition at line 174 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCChamberEdgeXWithNoSegment[2][4][4][36] [private]

Definition at line 176 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCChamberEdgeXWithSegment[2][4][4][36] [private]

Definition at line 175 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCChamberEdgeYWithNoSegment[2][4][4][36] [private]

Definition at line 178 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCChamberEdgeYWithSegment[2][4][4][36] [private]

Definition at line 177 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCDdXdZ[4] [private]

Definition at line 140 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCDdYdZ[4] [private]

Definition at line 146 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCDistWithNoSegment[4] [private]

Definition at line 150 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCDistWithSegment[4] [private]

Definition at line 149 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCDx[4] [private]

Definition at line 137 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCDy[4] [private]

Definition at line 143 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCNumSegments[4] [private]

Definition at line 136 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPullDistWithNoSegment[4] [private]

Definition at line 152 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPullDistWithSegment[4] [private]

Definition at line 151 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPulldXdZ[4] [private]

Definition at line 141 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPulldXdZPropErr[4] [private]

Definition at line 142 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPulldYdZ[4] [private]

Definition at line 147 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPulldYdZPropErr[4] [private]

Definition at line 148 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPullx[4] [private]

Definition at line 138 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPullxPropErr[4] [private]

Definition at line 139 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPully[4] [private]

Definition at line 144 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hCSCPullyPropErr[4] [private]

Definition at line 145 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTChamberDx[4][5][14] [private]

Definition at line 167 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTChamberDy[3][5][14] [private]

Definition at line 168 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTChamberEdgeXWithNoSegment[4][5][14] [private]

Definition at line 170 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTChamberEdgeXWithSegment[4][5][14] [private]

Definition at line 169 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTChamberEdgeYWithNoSegment[4][5][14] [private]

Definition at line 172 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTChamberEdgeYWithSegment[4][5][14] [private]

Definition at line 171 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTDdXdZ[4] [private]

Definition at line 123 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTDdYdZ[3] [private]

Definition at line 129 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTDistWithNoSegment[4] [private]

Definition at line 133 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTDistWithSegment[4] [private]

Definition at line 132 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTDx[4] [private]

Definition at line 120 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTDy[3] [private]

Definition at line 126 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTNumSegments[4] [private]

Definition at line 119 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPullDistWithNoSegment[4] [private]

Definition at line 135 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPullDistWithSegment[4] [private]

Definition at line 134 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPulldXdZ[4] [private]

Definition at line 124 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPulldXdZPropErr[4] [private]

Definition at line 125 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPulldYdZ[3] [private]

Definition at line 130 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPulldYdZPropErr[3] [private]

Definition at line 131 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPullx[4] [private]

Definition at line 121 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPullxPropErr[4] [private]

Definition at line 122 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPully[3] [private]

Definition at line 127 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hDTPullyPropErr[3] [private]

Definition at line 128 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hEnergyEMBarrel[2] [private]

Definition at line 99 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hEnergyEMEndcap[2] [private]

Definition at line 102 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hEnergyHABarrel[2] [private]

Definition at line 100 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hEnergyHAEndcap[2] [private]

Definition at line 103 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hEnergyHO[2] [private]

Definition at line 101 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hGlobalMuonPromptTightBool[2] [private]

Definition at line 89 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso03emEt[2] [private]

Definition at line 106 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso03hadEt[2] [private]

Definition at line 107 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso03hoEt[2] [private]

Definition at line 108 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso03nJets[2] [private]

Definition at line 110 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso03nTracks[2] [private]

Definition at line 109 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso03sumPt[2] [private]

Definition at line 105 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso05emEt[2] [private]

Definition at line 112 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso05hadEt[2] [private]

Definition at line 113 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso05hoEt[2] [private]

Definition at line 114 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso05nJets[2] [private]

Definition at line 116 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso05nTracks[2] [private]

Definition at line 115 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hIso05sumPt[2] [private]

Definition at line 111 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hNumChambers[2] [private]

Definition at line 84 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hNumMatches[2] [private]

Definition at line 85 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentCompat[2] [private]

Definition at line 87 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentIsAssociatedBool [private]

Definition at line 154 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentIsAssociatedRZ [private]

Definition at line 155 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentIsAssociatedXY [private]

Definition at line 156 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentIsBestDrAssociatedRZ [private]

Definition at line 159 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentIsBestDrAssociatedXY [private]

Definition at line 160 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentIsBestDrNotAssociatedRZ [private]

Definition at line 161 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentIsBestDrNotAssociatedXY [private]

Definition at line 162 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentIsNotAssociatedRZ [private]

Definition at line 157 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hSegmentIsNotAssociatedXY [private]

Definition at line 158 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hTM2DCompatibilityLooseBool[2] [private]

Definition at line 92 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hTM2DCompatibilityTightBool[2] [private]

Definition at line 93 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hTMLastStationLooseBool[2] [private]

Definition at line 90 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hTMLastStationOptimizedLowPtLooseBool[2] [private]

Definition at line 96 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hTMLastStationOptimizedLowPtTightBool[2] [private]

Definition at line 97 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hTMLastStationTightBool[2] [private]

Definition at line 91 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hTMOneStationLooseBool[2] [private]

Definition at line 94 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

MonitorElement* MuonIdVal::hTMOneStationTightBool[2] [private]

Definition at line 95 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

edm::InputTag MuonIdVal::inputCSCSegmentCollection_ [private]

Definition at line 68 of file MuonIdVal.h.

Referenced by analyze(), and MuonIdVal().

edm::InputTag MuonIdVal::inputDTRecSegment4DCollection_ [private]

Definition at line 67 of file MuonIdVal.h.

Referenced by analyze(), and MuonIdVal().

edm::InputTag MuonIdVal::inputMuonCollection_ [private]

Definition at line 66 of file MuonIdVal.h.

Referenced by analyze(), and MuonIdVal().

bool MuonIdVal::make2DPlots_ [private]

Definition at line 74 of file MuonIdVal.h.

Referenced by analyze(), beginJob(), and MuonIdVal().

bool MuonIdVal::makeAllChamberPlots_ [private]

Definition at line 75 of file MuonIdVal.h.

Referenced by analyze(), beginJob(), and MuonIdVal().

bool MuonIdVal::makeDQMPlots_ [private]

Definition at line 71 of file MuonIdVal.h.

Referenced by analyze(), beginJob(), and MuonIdVal().

bool MuonIdVal::makeEnergyPlots_ [private]

Definition at line 72 of file MuonIdVal.h.

Referenced by analyze(), beginJob(), and MuonIdVal().

bool MuonIdVal::makeIsoPlots_ [private]

Definition at line 73 of file MuonIdVal.h.

Referenced by analyze(), beginJob(), and MuonIdVal().

edm::Handle<reco::MuonCollection> MuonIdVal::muonCollectionH_ [private]

Definition at line 78 of file MuonIdVal.h.

Referenced by analyze().

bool MuonIdVal::useGlobalMuons_ [private]

Definition at line 70 of file MuonIdVal.h.

Referenced by analyze(), beginJob(), and MuonIdVal().

bool MuonIdVal::useTrackerMuons_ [private]

Definition at line 69 of file MuonIdVal.h.

Referenced by analyze(), beginJob(), and MuonIdVal().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:28:44 2009 for CMSSW by  doxygen 1.5.4