CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

MuonIdVal Class Reference

#include <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 ()
virtual void endJob ()
virtual void Fill (MonitorElement *, float)

Private Attributes

std::string baseFolder_
edm::Handle
< reco::MuonTimeExtraMap
combinedMuonTimeExtraValueMapH_
edm::Handle
< reco::MuonTimeExtraMap
cscMuonTimeExtraValueMapH_
edm::Handle< CSCSegmentCollectioncscSegmentCollectionH_
DQMStoredbe_
edm::Handle
< reco::MuonTimeExtraMap
dtMuonTimeExtraValueMapH_
edm::Handle
< DTRecSegment4DCollection
dtSegmentCollectionH_
edm::ESHandle
< GlobalTrackingGeometry
geometry_
MonitorElementhB2BCosmicCompat [4]
MonitorElementhCaloCompat [4]
MonitorElementhCaloSegmentCompat [4]
MonitorElementhCombinedCosmicCompat [4]
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]
MonitorElementhCSCDistWithNoSegment [4][4]
MonitorElementhCSCDistWithSegment [4][4]
MonitorElementhCSCPullDistWithNoSegment [4][4]
MonitorElementhCSCPullDistWithSegment [4][4]
MonitorElementhCSCPulldXdZPropErr [4][4]
MonitorElementhCSCPulldYdZPropErr [4][4]
MonitorElementhCSCPullxPropErr [4][4]
MonitorElementhCSCPullyPropErr [4][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]
MonitorElementhDTDistWithNoSegment [4][4]
MonitorElementhDTDistWithSegment [4][4]
MonitorElementhDTPullDistWithNoSegment [4][4]
MonitorElementhDTPullDistWithSegment [4][4]
MonitorElementhDTPulldXdZPropErr [4][4]
MonitorElementhDTPulldYdZPropErr [4][3]
MonitorElementhDTPullxPropErr [4][4]
MonitorElementhDTPullyPropErr [4][3]
MonitorElementhEnergyEMBarrel [4]
MonitorElementhEnergyEMEndcap [4]
MonitorElementhEnergyHABarrel [4]
MonitorElementhEnergyHAEndcap [4]
MonitorElementhEnergyHO [4]
MonitorElementhGlobalMuonPromptTightBool [4]
MonitorElementhGMStaChiCompatibilityBool [4]
MonitorElementhGMTkChiCompatibilityBool [4]
MonitorElementhGMTkKinkTightBool [4]
MonitorElementhMuonAllHits [4][4]
MonitorElementhMuonHitsFromSegments [4][4]
MonitorElementhMuonQualityStaRelChi2 [4]
MonitorElementhMuonQualityTrkKink [4]
MonitorElementhMuonQualityTrkRelChi2 [4]
MonitorElementhMuonShowerDeltaR [4][4]
MonitorElementhMuonShowerSizeT [4][4]
MonitorElementhMuonTimeExtraCombinedNDOF [4]
MonitorElementhMuonTimeExtraCombinedTimeAtIpInOut [4]
MonitorElementhMuonTimeExtraCombinedTimeAtIpInOutErr [4]
MonitorElementhMuonTimeExtraCombinedTimeAtIpOutIn [4]
MonitorElementhMuonTimeExtraCombinedTimeAtIpOutInErr [4]
MonitorElementhMuonTimeExtraCSCNDOF [4]
MonitorElementhMuonTimeExtraCSCTimeAtIpInOut [4]
MonitorElementhMuonTimeExtraCSCTimeAtIpInOutErr [4]
MonitorElementhMuonTimeExtraCSCTimeAtIpOutIn [4]
MonitorElementhMuonTimeExtraCSCTimeAtIpOutInErr [4]
MonitorElementhMuonTimeExtraDTNDOF [4]
MonitorElementhMuonTimeExtraDTTimeAtIpInOut [4]
MonitorElementhMuonTimeExtraDTTimeAtIpInOutErr [4]
MonitorElementhMuonTimeExtraDTTimeAtIpOutIn [4]
MonitorElementhMuonTimeExtraDTTimeAtIpOutInErr [4]
MonitorElementhMuonTimeNDOF [4]
MonitorElementhMuonTimeTimeAtIpInOut [4]
MonitorElementhMuonTimeTimeAtIpInOutErr [4]
MonitorElementhMuonTimeTimeAtIpOutIn [4]
MonitorElementhMuonTimeTimeAtIpOutInErr [4]
MonitorElementhMuonUncorrelatedHits [4][4]
MonitorElementhOverlapCosmicCompat [4]
MonitorElementhSegmentCompat [4]
MonitorElementhSegmentIsAssociatedRZ
MonitorElementhSegmentIsAssociatedXY
MonitorElementhSegmentIsBestDrAssociatedRZ
MonitorElementhSegmentIsBestDrAssociatedXY
MonitorElementhSegmentIsBestDrNotAssociatedRZ
MonitorElementhSegmentIsBestDrNotAssociatedXY
MonitorElementhSegmentIsNotAssociatedRZ
MonitorElementhSegmentIsNotAssociatedXY
MonitorElementhTimeCosmicCompat [4]
MonitorElementhTM2DCompatibilityLooseBool [4]
MonitorElementhTM2DCompatibilityTightBool [4]
MonitorElementhTMLastStationAngLooseBool [4]
MonitorElementhTMLastStationAngTightBool [4]
MonitorElementhTMLastStationLooseBool [4]
MonitorElementhTMLastStationOptimizedBarrelLowPtLooseBool [4]
MonitorElementhTMLastStationOptimizedBarrelLowPtTightBool [4]
MonitorElementhTMLastStationOptimizedLowPtLooseBool [4]
MonitorElementhTMLastStationOptimizedLowPtTightBool [4]
MonitorElementhTMLastStationTightBool [4]
MonitorElementhTMOneStationAngLooseBool [4]
MonitorElementhTMOneStationAngTightBool [4]
MonitorElementhTMOneStationLooseBool [4]
MonitorElementhTMOneStationTightBool [4]
edm::InputTag inputCSCSegmentCollection_
edm::InputTag inputDTRecSegment4DCollection_
edm::InputTag inputMuonCollection_
edm::InputTag inputMuonCosmicCompatibilityValueMap_
edm::InputTag inputMuonShowerInformationValueMap_
edm::InputTag inputMuonTimeExtraValueMap_
bool make2DPlots_
bool makeAllChamberPlots_
bool makeCosmicCompatibilityPlots_
bool makeEnergyPlots_
bool makeShowerInformationPlots_
bool makeTimePlots_
edm::Handle< reco::MuonCollectionmuonCollectionH_
edm::Handle< edm::ValueMap
< reco::MuonCosmicCompatibility > > 
muonCosmicCompatibilityValueMapH_
edm::Handle< edm::ValueMap
< reco::MuonShower > > 
muonShowerInformationValueMapH_
bool useGlobalMuons_
bool useGlobalMuonsNotTrackerMuons_
bool useTrackerMuons_
bool useTrackerMuonsNotGlobalMuons_

Detailed Description

Definition at line 59 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_, inputMuonCosmicCompatibilityValueMap_, inputMuonShowerInformationValueMap_, inputMuonTimeExtraValueMap_, make2DPlots_, makeAllChamberPlots_, makeCosmicCompatibilityPlots_, makeEnergyPlots_, makeShowerInformationPlots_, makeTimePlots_, cppFunctionSkipper::operator, useGlobalMuons_, useGlobalMuonsNotTrackerMuons_, useTrackerMuons_, and useTrackerMuonsNotGlobalMuons_.

{
   inputMuonCollection_ = iConfig.getParameter<edm::InputTag>("inputMuonCollection");
   inputDTRecSegment4DCollection_ = iConfig.getParameter<edm::InputTag>("inputDTRecSegment4DCollection");
   inputCSCSegmentCollection_ = iConfig.getParameter<edm::InputTag>("inputCSCSegmentCollection");
   inputMuonTimeExtraValueMap_ = iConfig.getParameter<edm::InputTag>("inputMuonTimeExtraValueMap");
   inputMuonCosmicCompatibilityValueMap_ = iConfig.getParameter<edm::InputTag>("inputMuonCosmicCompatibilityValueMap");
   inputMuonShowerInformationValueMap_ = iConfig.getParameter<edm::InputTag>("inputMuonShowerInformationValueMap");
   useTrackerMuons_ = iConfig.getUntrackedParameter<bool>("useTrackerMuons");
   useGlobalMuons_ = iConfig.getUntrackedParameter<bool>("useGlobalMuons");
   useTrackerMuonsNotGlobalMuons_ = iConfig.getUntrackedParameter<bool>("useTrackerMuonsNotGlobalMuons");
   useGlobalMuonsNotTrackerMuons_ = iConfig.getUntrackedParameter<bool>("useGlobalMuonsNotTrackerMuons");
   makeEnergyPlots_ = iConfig.getUntrackedParameter<bool>("makeEnergyPlots");
   makeTimePlots_ = iConfig.getUntrackedParameter<bool>("makeTimePlots");
   make2DPlots_ = iConfig.getUntrackedParameter<bool>("make2DPlots");
   makeAllChamberPlots_ = iConfig.getUntrackedParameter<bool>("makeAllChamberPlots");
   makeCosmicCompatibilityPlots_ = iConfig.getUntrackedParameter<bool>("makeCosmicCompatibilityPlots");
   makeShowerInformationPlots_ = iConfig.getUntrackedParameter<bool>("makeShowerInformationPlots");
   baseFolder_ = iConfig.getUntrackedParameter<std::string>("baseFolder");

   dbe_ = 0;
   dbe_ = edm::Service<DQMStore>().operator->();
}
MuonIdVal::~MuonIdVal ( )

Definition at line 27 of file MuonIdVal.cc.

{}

Member Function Documentation

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

Implements edm::EDAnalyzer.

Definition at line 285 of file MuonIdVal.cc.

References reco::MuonCosmicCompatibility::backToBackCompatibility, reco::MuonSegmentMatch::BestInStationByDR, combinedMuonTimeExtraValueMapH_, reco::MuonCosmicCompatibility::cosmicCompatibility, MuonSubdetId::CSC, CSC(), cscMuonTimeExtraValueMapH_, cscSegmentCollectionH_, GeomDetEnumerators::DT, MuonSubdetId::DT, dtMuonTimeExtraValueMapH_, dtSegmentCollectionH_, Reference_intrackfit_cff::endcap, error, MonitorElement::Fill(), Fill(), geometry_, edm::EventSetup::get(), edm::Event::getByLabel(), muon::GlobalMuonPromptTight, muon::GMStaChiCompatibility, muon::GMTkChiCompatibility, muon::GMTkKinkTight, hB2BCosmicCompat, hCaloCompat, hCaloSegmentCompat, hCombinedCosmicCompat, hCSCChamberDx, hCSCChamberDy, hCSCChamberEdgeXWithNoSegment, hCSCChamberEdgeXWithSegment, hCSCChamberEdgeYWithNoSegment, hCSCChamberEdgeYWithSegment, hCSCDistWithNoSegment, hCSCDistWithSegment, hCSCPullDistWithNoSegment, hCSCPullDistWithSegment, hCSCPulldXdZPropErr, hCSCPulldYdZPropErr, hCSCPullxPropErr, hCSCPullyPropErr, hDTChamberDx, hDTChamberDy, hDTChamberEdgeXWithNoSegment, hDTChamberEdgeXWithSegment, hDTChamberEdgeYWithNoSegment, hDTChamberEdgeYWithSegment, hDTDistWithNoSegment, hDTDistWithSegment, hDTPullDistWithNoSegment, hDTPullDistWithSegment, hDTPulldXdZPropErr, hDTPulldYdZPropErr, hDTPullxPropErr, hDTPullyPropErr, hEnergyEMBarrel, hEnergyEMEndcap, hEnergyHABarrel, hEnergyHAEndcap, hEnergyHO, hGlobalMuonPromptTightBool, hGMStaChiCompatibilityBool, hGMTkChiCompatibilityBool, hGMTkKinkTightBool, hMuonAllHits, hMuonHitsFromSegments, hMuonQualityStaRelChi2, hMuonQualityTrkKink, hMuonQualityTrkRelChi2, hMuonShowerDeltaR, hMuonShowerSizeT, hMuonTimeExtraCombinedNDOF, hMuonTimeExtraCombinedTimeAtIpInOut, hMuonTimeExtraCombinedTimeAtIpInOutErr, hMuonTimeExtraCombinedTimeAtIpOutIn, hMuonTimeExtraCombinedTimeAtIpOutInErr, hMuonTimeExtraCSCNDOF, hMuonTimeExtraCSCTimeAtIpInOut, hMuonTimeExtraCSCTimeAtIpInOutErr, hMuonTimeExtraCSCTimeAtIpOutIn, hMuonTimeExtraCSCTimeAtIpOutInErr, hMuonTimeExtraDTNDOF, hMuonTimeExtraDTTimeAtIpInOut, hMuonTimeExtraDTTimeAtIpInOutErr, hMuonTimeExtraDTTimeAtIpOutIn, hMuonTimeExtraDTTimeAtIpOutInErr, hMuonTimeNDOF, hMuonTimeTimeAtIpInOut, hMuonTimeTimeAtIpInOutErr, hMuonTimeTimeAtIpOutIn, hMuonTimeTimeAtIpOutInErr, hMuonUncorrelatedHits, hOverlapCosmicCompat, hSegmentCompat, hSegmentIsAssociatedRZ, hSegmentIsAssociatedXY, hSegmentIsBestDrAssociatedRZ, hSegmentIsBestDrAssociatedXY, hSegmentIsBestDrNotAssociatedRZ, hSegmentIsBestDrNotAssociatedXY, hSegmentIsNotAssociatedRZ, hSegmentIsNotAssociatedXY, hTimeCosmicCompat, hTM2DCompatibilityLooseBool, hTM2DCompatibilityTightBool, hTMLastStationAngLooseBool, hTMLastStationAngTightBool, hTMLastStationLooseBool, hTMLastStationOptimizedBarrelLowPtLooseBool, hTMLastStationOptimizedBarrelLowPtTightBool, hTMLastStationOptimizedLowPtLooseBool, hTMLastStationOptimizedLowPtTightBool, hTMLastStationTightBool, hTMOneStationAngLooseBool, hTMOneStationAngTightBool, hTMOneStationLooseBool, hTMOneStationTightBool, i, inputCSCSegmentCollection_, inputDTRecSegment4DCollection_, inputMuonCollection_, inputMuonCosmicCompatibilityValueMap_, inputMuonShowerInformationValueMap_, inputMuonTimeExtraValueMap_, muon::isGoodMuon(), edm::InputTag::label(), make2DPlots_, makeAllChamberPlots_, makeCosmicCompatibilityPlots_, makeEnergyPlots_, makeShowerInformationPlots_, makeTimePlots_, metsig::muon, muonCollectionH_, muonCosmicCompatibilityValueMapH_, muonShowerInformationProducer_cff::muonShowerInformation, muonShowerInformationValueMapH_, reco::MuonTimeExtra::nDof(), reco::MuonShower::nStationCorrelatedHits, reco::MuonShower::nStationHits, reco::MuonCosmicCompatibility::overlapCompatibility, PV3DBase< T, PVType, FrameType >::perp(), dt_dqm_sourceclient_common_cff::reco, relativeConstraints::ring, muon::segmentCompatibility(), mathSSE::sqrt(), relativeConstraints::station, reco::MuonShower::stationShowerDeltaR, reco::MuonShower::stationShowerSizeT, reco::MuonTimeExtra::timeAtIpInOut(), reco::MuonTimeExtra::timeAtIpInOutErr(), reco::MuonTimeExtra::timeAtIpOutIn(), reco::MuonTimeExtra::timeAtIpOutInErr(), reco::MuonCosmicCompatibility::timeCompatibility, muon::TM2DCompatibilityLoose, muon::TM2DCompatibilityTight, muon::TMLastStationAngLoose, muon::TMLastStationAngTight, muon::TMLastStationLoose, muon::TMLastStationOptimizedBarrelLowPtLoose, muon::TMLastStationOptimizedBarrelLowPtTight, muon::TMLastStationOptimizedLowPtLoose, muon::TMLastStationOptimizedLowPtTight, muon::TMLastStationTight, muon::TMOneStationAngLoose, muon::TMOneStationAngTight, muon::TMOneStationLoose, muon::TMOneStationTight, GeomDet::toGlobal(), useGlobalMuons_, useGlobalMuonsNotTrackerMuons_, useTrackerMuons_, useTrackerMuonsNotGlobalMuons_, DTChamberId::wheel(), PV3DBase< T, PVType, FrameType >::x(), LocalError::xx(), PV3DBase< T, PVType, FrameType >::y(), LocalError::yy(), and PV3DBase< T, PVType, FrameType >::z().

{
   using namespace edm;
   using namespace reco;

   iEvent.getByLabel(inputMuonCollection_, muonCollectionH_);
   iEvent.getByLabel(inputDTRecSegment4DCollection_, dtSegmentCollectionH_);
   iEvent.getByLabel(inputCSCSegmentCollection_, cscSegmentCollectionH_);
   iEvent.getByLabel(inputMuonTimeExtraValueMap_.label(), "combined", combinedMuonTimeExtraValueMapH_);
   iEvent.getByLabel(inputMuonTimeExtraValueMap_.label(), "csc", cscMuonTimeExtraValueMapH_);
   iEvent.getByLabel(inputMuonTimeExtraValueMap_.label(), "dt", dtMuonTimeExtraValueMapH_);
   iEvent.getByLabel(inputMuonCosmicCompatibilityValueMap_, muonCosmicCompatibilityValueMapH_);
   iEvent.getByLabel(inputMuonShowerInformationValueMap_, muonShowerInformationValueMapH_);
  
   iSetup.get<GlobalTrackingGeometryRecord>().get(geometry_);

   unsigned int muonIdx = 0;
   for(MuonCollection::const_iterator muon = muonCollectionH_->begin();
         muon != muonCollectionH_->end(); ++muon)
   {
      // trackerMuon == 0; globalMuon == 1; trackerMuon && !globalMuon == 2; globalMuon && !trackerMuon == 3
      for (unsigned int i = 0; i < 4; i++) {
         if (i == 0 && (! useTrackerMuons_ || ! muon->isTrackerMuon())) continue;
         if (i == 1 && (! useGlobalMuons_ || ! muon->isGlobalMuon())) continue;
         if (i == 2 && (! useTrackerMuonsNotGlobalMuons_ || (! (muon->isTrackerMuon() && ! muon->isGlobalMuon())))) continue;
         if (i == 3 && (! useGlobalMuonsNotTrackerMuons_ || (! (muon->isGlobalMuon() && ! muon->isTrackerMuon())))) continue;

         if (makeEnergyPlots_ && muon->isEnergyValid()) {
            // EM
            if (fabs(muon->eta()) > 1.479)
               hEnergyEMEndcap[i]->Fill(muon->calEnergy().em); 
            else
               hEnergyEMBarrel[i]->Fill(muon->calEnergy().em);
            // HAD
            if (fabs(muon->eta()) > 1.4)
               hEnergyHAEndcap[i]->Fill(muon->calEnergy().had);
            else
               hEnergyHABarrel[i]->Fill(muon->calEnergy().had);
            // HO
            if (fabs(muon->eta()) < 1.26)
               hEnergyHO[i]->Fill(muon->calEnergy().ho);
         }

         if (makeTimePlots_) {
            if (muon->isTimeValid()) {
               hMuonTimeNDOF[i]->Fill(muon->time().nDof);
               hMuonTimeTimeAtIpInOut[i]->Fill(muon->time().timeAtIpInOut);
               hMuonTimeTimeAtIpInOutErr[i]->Fill(muon->time().timeAtIpInOutErr);
               hMuonTimeTimeAtIpOutIn[i]->Fill(muon->time().timeAtIpOutIn);
               hMuonTimeTimeAtIpOutInErr[i]->Fill(muon->time().timeAtIpOutInErr);
            }

            MuonRef muonRef(muonCollectionH_, muonIdx);
            MuonTimeExtra combinedMuonTimeExtra = (*combinedMuonTimeExtraValueMapH_)[muonRef];
            MuonTimeExtra cscMuonTimeExtra = (*cscMuonTimeExtraValueMapH_)[muonRef];
            MuonTimeExtra dtMuonTimeExtra = (*dtMuonTimeExtraValueMapH_)[muonRef];

            hMuonTimeExtraCombinedNDOF[i]->Fill(combinedMuonTimeExtra.nDof());
            hMuonTimeExtraCombinedTimeAtIpInOut[i]->Fill(combinedMuonTimeExtra.timeAtIpInOut());
            hMuonTimeExtraCombinedTimeAtIpInOutErr[i]->Fill(combinedMuonTimeExtra.timeAtIpInOutErr());
            hMuonTimeExtraCombinedTimeAtIpOutIn[i]->Fill(combinedMuonTimeExtra.timeAtIpOutIn());
            hMuonTimeExtraCombinedTimeAtIpOutInErr[i]->Fill(combinedMuonTimeExtra.timeAtIpOutInErr());
            hMuonTimeExtraCSCNDOF[i]->Fill(cscMuonTimeExtra.nDof());
            hMuonTimeExtraCSCTimeAtIpInOut[i]->Fill(cscMuonTimeExtra.timeAtIpInOut());
            hMuonTimeExtraCSCTimeAtIpInOutErr[i]->Fill(cscMuonTimeExtra.timeAtIpInOutErr());
            hMuonTimeExtraCSCTimeAtIpOutIn[i]->Fill(cscMuonTimeExtra.timeAtIpOutIn());
            hMuonTimeExtraCSCTimeAtIpOutInErr[i]->Fill(cscMuonTimeExtra.timeAtIpOutInErr());
            hMuonTimeExtraDTNDOF[i]->Fill(dtMuonTimeExtra.nDof());
            hMuonTimeExtraDTTimeAtIpInOut[i]->Fill(dtMuonTimeExtra.timeAtIpInOut());
            hMuonTimeExtraDTTimeAtIpInOutErr[i]->Fill(dtMuonTimeExtra.timeAtIpInOutErr());
            hMuonTimeExtraDTTimeAtIpOutIn[i]->Fill(dtMuonTimeExtra.timeAtIpOutIn());
            hMuonTimeExtraDTTimeAtIpOutInErr[i]->Fill(dtMuonTimeExtra.timeAtIpOutInErr());
         }

         if (muon->isCaloCompatibilityValid())
            hCaloCompat[i]->Fill(muon->caloCompatibility());
         hSegmentCompat[i]->Fill(muon::segmentCompatibility(*muon));
         if (make2DPlots_ && muon->isCaloCompatibilityValid())
            hCaloSegmentCompat[i]->Fill(muon->caloCompatibility(), muon::segmentCompatibility(*muon));
         if (muon->isQualityValid()) {
            hMuonQualityTrkRelChi2[i]->Fill(muon->combinedQuality().trkRelChi2);
            hMuonQualityStaRelChi2[i]->Fill(muon->combinedQuality().staRelChi2);
            hMuonQualityTrkKink[i]->Fill(muon->combinedQuality().trkKink);
         }
         hGlobalMuonPromptTightBool[i]->Fill(muon::isGoodMuon(*muon, muon::GlobalMuonPromptTight));
         hTMLastStationLooseBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMLastStationLoose));
         hTMLastStationTightBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMLastStationTight));
         hTM2DCompatibilityLooseBool[i]->Fill(muon::isGoodMuon(*muon, muon::TM2DCompatibilityLoose));
         hTM2DCompatibilityTightBool[i]->Fill(muon::isGoodMuon(*muon, muon::TM2DCompatibilityTight));
         hTMOneStationLooseBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMOneStationLoose));
         hTMOneStationTightBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMOneStationTight));
         hTMLastStationOptimizedLowPtLooseBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMLastStationOptimizedLowPtLoose));
         hTMLastStationOptimizedLowPtTightBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMLastStationOptimizedLowPtTight));
         hGMTkChiCompatibilityBool[i]->Fill(muon::isGoodMuon(*muon, muon::GMTkChiCompatibility));
         hGMStaChiCompatibilityBool[i]->Fill(muon::isGoodMuon(*muon, muon::GMStaChiCompatibility));
         hGMTkKinkTightBool[i]->Fill(muon::isGoodMuon(*muon, muon::GMTkKinkTight));
         hTMLastStationAngLooseBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMLastStationAngLoose));
         hTMLastStationAngTightBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMLastStationAngTight));
         hTMOneStationAngLooseBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMOneStationAngLoose));
         hTMOneStationAngTightBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMOneStationAngTight));
         hTMLastStationOptimizedBarrelLowPtLooseBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMLastStationOptimizedBarrelLowPtLoose));
         hTMLastStationOptimizedBarrelLowPtTightBool[i]->Fill(muon::isGoodMuon(*muon, muon::TMLastStationOptimizedBarrelLowPtTight));

         if (makeCosmicCompatibilityPlots_) {
           MuonRef muonRef(muonCollectionH_, muonIdx);
           MuonCosmicCompatibility muonCosmicCompatibility = (*muonCosmicCompatibilityValueMapH_)[muonRef];
           hCombinedCosmicCompat[i]->Fill(muonCosmicCompatibility.cosmicCompatibility);
           hTimeCosmicCompat[i]->Fill(muonCosmicCompatibility.timeCompatibility);
           hB2BCosmicCompat[i]->Fill(muonCosmicCompatibility.backToBackCompatibility);
           hOverlapCosmicCompat[i]->Fill(muonCosmicCompatibility.overlapCompatibility);
         }
         
         // by station
         for(int station = 0; station < 4; ++station)
         {
         
            if (makeShowerInformationPlots_) {
                MuonRef muonRef(muonCollectionH_, muonIdx);
                MuonShower muonShowerInformation = (*muonShowerInformationValueMapH_)[muonRef];
  
                hMuonShowerSizeT[i][station]->Fill((muonShowerInformation.stationShowerSizeT).at(station));
                hMuonShowerDeltaR[i][station]->Fill((muonShowerInformation.stationShowerDeltaR.at(station)));
                hMuonAllHits[i][station]->Fill((muonShowerInformation.nStationHits.at(station)));
                hMuonHitsFromSegments[i][station]->Fill((muonShowerInformation.nStationCorrelatedHits.at(station)));
                hMuonUncorrelatedHits[i][station]->Fill((muonShowerInformation.nStationHits.at(station)) - muonShowerInformation.nStationCorrelatedHits.at(station));
            }


            Fill(hDTPullxPropErr[i][station], muon->pullX(station+1, MuonSubdetId::DT, Muon::SegmentAndTrackArbitration, false));
            Fill(hDTPulldXdZPropErr[i][station], muon->pullDxDz(station+1, MuonSubdetId::DT, Muon::SegmentAndTrackArbitration, false));

            if (station < 3) {
               Fill(hDTPullyPropErr[i][station], muon->pullY(station+1, MuonSubdetId::DT, Muon::SegmentAndTrackArbitration, false));
               Fill(hDTPulldYdZPropErr[i][station], muon->pullDyDz(station+1, MuonSubdetId::DT, Muon::SegmentAndTrackArbitration, false));
            }

            float distance = muon->trackDist(station+1, MuonSubdetId::DT);
            float error    = muon->trackDistErr(station+1, MuonSubdetId::DT);
            if (error == 0) error = 0.000001;

            if (muon->numberOfSegments(station+1, MuonSubdetId::DT, Muon::NoArbitration) > 0) {
               Fill(hDTDistWithSegment[i][station], distance);
               Fill(hDTPullDistWithSegment[i][station], distance/error);
            } else {
               Fill(hDTDistWithNoSegment[i][station], distance);
               Fill(hDTPullDistWithNoSegment[i][station], distance/error);
            }

            Fill(hCSCPullxPropErr[i][station], muon->pullX(station+1, MuonSubdetId::CSC, Muon::SegmentAndTrackArbitration, false));
            Fill(hCSCPulldXdZPropErr[i][station], muon->pullDxDz(station+1, MuonSubdetId::CSC, Muon::SegmentAndTrackArbitration, false));
            Fill(hCSCPullyPropErr[i][station], muon->pullY(station+1, MuonSubdetId::CSC, Muon::SegmentAndTrackArbitration, false));
            Fill(hCSCPulldYdZPropErr[i][station], muon->pullDyDz(station+1, MuonSubdetId::CSC, Muon::SegmentAndTrackArbitration, false));

            distance = muon->trackDist(station+1, MuonSubdetId::CSC);
            error    = muon->trackDistErr(station+1, MuonSubdetId::CSC);
            if (error == 0) error = 0.000001;

            if (muon->numberOfSegments(station+1, MuonSubdetId::CSC, Muon::NoArbitration) > 0) {
               Fill(hCSCDistWithSegment[i][station], distance);
               Fill(hCSCPullDistWithSegment[i][station], distance/error);
            } else {
               Fill(hCSCDistWithNoSegment[i][station], distance);
               Fill(hCSCPullDistWithNoSegment[i][station], distance/error);
            }
         }// station
      }

      if (! useTrackerMuons_ || ! muon->isTrackerMuon()) continue;
      if (makeAllChamberPlots_) {
         // by chamber
         for(std::vector<MuonChamberMatch>::const_iterator chamberMatch = muon->matches().begin();
               chamberMatch != muon->matches().end(); ++chamberMatch)
         {
            int station = chamberMatch->station();

            if (chamberMatch->detector() == MuonSubdetId::DT) {
               DTChamberId dtId(chamberMatch->id.rawId());
               int wheel  = dtId.wheel();
               int sector = dtId.sector();

               if (chamberMatch->segmentMatches.empty()) {
                  Fill(hDTChamberEdgeXWithNoSegment[station-1][wheel+2][sector-1], chamberMatch->edgeX);
                  Fill(hDTChamberEdgeYWithNoSegment[station-1][wheel+2][sector-1], chamberMatch->edgeY);
               } else {
                  Fill(hDTChamberEdgeXWithSegment[station-1][wheel+2][sector-1], chamberMatch->edgeX);
                  Fill(hDTChamberEdgeYWithSegment[station-1][wheel+2][sector-1], chamberMatch->edgeY);

                  for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
                        segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
                  {
                     if (segmentMatch->isMask(MuonSegmentMatch::BestInChamberByDR)) {
                        Fill(hDTChamberDx[station-1][wheel+2][sector-1], chamberMatch->x-segmentMatch->x);
                        if (station < 4) Fill(hDTChamberDy[station-1][wheel+2][sector-1], chamberMatch->y-segmentMatch->y);
                        break;
                     }
                  }// segmentMatch
               }

               continue;
            }

            if (chamberMatch->detector() == MuonSubdetId::CSC)  {
               CSCDetId cscId(chamberMatch->id.rawId());
               int endcap  = cscId.endcap();
               int ring    = cscId.ring();
               int chamber = cscId.chamber();

               if (chamberMatch->segmentMatches.empty()) {
                  Fill(hCSCChamberEdgeXWithNoSegment[endcap-1][station-1][ring-1][chamber-1], chamberMatch->edgeX);
                  Fill(hCSCChamberEdgeYWithNoSegment[endcap-1][station-1][ring-1][chamber-1], chamberMatch->edgeY);
               } else {
                  Fill(hCSCChamberEdgeXWithSegment[endcap-1][station-1][ring-1][chamber-1], chamberMatch->edgeX);
                  Fill(hCSCChamberEdgeYWithSegment[endcap-1][station-1][ring-1][chamber-1], chamberMatch->edgeY);

                  for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
                        segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
                  {
                     if (segmentMatch->isMask(MuonSegmentMatch::BestInChamberByDR)) {
                        Fill(hCSCChamberDx[endcap-1][station-1][ring-1][chamber-1], chamberMatch->x-segmentMatch->x);
                        Fill(hCSCChamberDy[endcap-1][station-1][ring-1][chamber-1], chamberMatch->y-segmentMatch->y);
                        break;
                     }
                  }// segmentMatch
               }
            }
         }// chamberMatch
      }
      ++muonIdx;
   }// muon

   if (! make2DPlots_) return;

   for(DTRecSegment4DCollection::const_iterator segment = dtSegmentCollectionH_->begin();
         segment != dtSegmentCollectionH_->end(); ++segment)
   {
      LocalPoint  segmentLocalPosition       = segment->localPosition();
      LocalVector segmentLocalDirection      = segment->localDirection();
      LocalError  segmentLocalPositionError  = segment->localPositionError();
      LocalError  segmentLocalDirectionError = segment->localDirectionError();
      const GeomDet* segmentGeomDet = geometry_->idToDet(segment->geographicalId());
      GlobalPoint segmentGlobalPosition = segmentGeomDet->toGlobal(segment->localPosition());
      bool segmentFound = false;
      bool segmentBestDrFound = false;

      for(MuonCollection::const_iterator muon = muonCollectionH_->begin();
            muon != muonCollectionH_->end(); ++muon)
      {
         if (! muon->isMatchesValid())
            continue;

         for(std::vector<MuonChamberMatch>::const_iterator chamberMatch = muon->matches().begin();
               chamberMatch != muon->matches().end(); ++chamberMatch) {
            for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
                  segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
            {
               if (fabs(segmentMatch->x       - segmentLocalPosition.x()                           ) < 1E-6 &&
                   fabs(segmentMatch->y       - segmentLocalPosition.y()                           ) < 1E-6 &&
                   fabs(segmentMatch->dXdZ    - segmentLocalDirection.x()/segmentLocalDirection.z()) < 1E-6 &&
                   fabs(segmentMatch->dYdZ    - segmentLocalDirection.y()/segmentLocalDirection.z()) < 1E-6 &&
                   fabs(segmentMatch->xErr    - sqrt(segmentLocalPositionError.xx())               ) < 1E-6 &&
                   fabs(segmentMatch->yErr    - sqrt(segmentLocalPositionError.yy())               ) < 1E-6 &&
                   fabs(segmentMatch->dXdZErr - sqrt(segmentLocalDirectionError.xx())              ) < 1E-6 &&
                   fabs(segmentMatch->dYdZErr - sqrt(segmentLocalDirectionError.yy())              ) < 1E-6)
               {
                  segmentFound = true;
                  if (segmentMatch->isMask(reco::MuonSegmentMatch::BestInStationByDR)) segmentBestDrFound = true;
                  break;
               }
            }// segmentMatch
            if (segmentFound) break;
         }// chamberMatch
         if (segmentFound) break;
      }// muon

      if (segmentFound) {
         hSegmentIsAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
         hSegmentIsAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());

         if (segmentBestDrFound) {
            hSegmentIsBestDrAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
            hSegmentIsBestDrAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
         }
      } else {
         hSegmentIsNotAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
         hSegmentIsNotAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
         hSegmentIsBestDrNotAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
         hSegmentIsBestDrNotAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
      }
   }// dt segment

   for(CSCSegmentCollection::const_iterator segment = cscSegmentCollectionH_->begin();
         segment != cscSegmentCollectionH_->end(); ++segment)
   {
      LocalPoint  segmentLocalPosition       = segment->localPosition();
      LocalVector segmentLocalDirection      = segment->localDirection();
      LocalError  segmentLocalPositionError  = segment->localPositionError();
      LocalError  segmentLocalDirectionError = segment->localDirectionError();
      const GeomDet* segmentGeomDet = geometry_->idToDet(segment->geographicalId());
      GlobalPoint segmentGlobalPosition = segmentGeomDet->toGlobal(segment->localPosition());
      bool segmentFound = false;
      bool segmentBestDrFound = false;

      for(MuonCollection::const_iterator muon = muonCollectionH_->begin();
            muon != muonCollectionH_->end(); ++muon)
      {
         if (! muon->isMatchesValid())
            continue;

         for(std::vector<MuonChamberMatch>::const_iterator chamberMatch = muon->matches().begin();
               chamberMatch != muon->matches().end(); ++chamberMatch) {
            for(std::vector<MuonSegmentMatch>::const_iterator segmentMatch = chamberMatch->segmentMatches.begin();
                  segmentMatch != chamberMatch->segmentMatches.end(); ++segmentMatch)
            {
               if (fabs(segmentMatch->x       - segmentLocalPosition.x()                           ) < 1E-6 &&
                   fabs(segmentMatch->y       - segmentLocalPosition.y()                           ) < 1E-6 &&
                   fabs(segmentMatch->dXdZ    - segmentLocalDirection.x()/segmentLocalDirection.z()) < 1E-6 &&
                   fabs(segmentMatch->dYdZ    - segmentLocalDirection.y()/segmentLocalDirection.z()) < 1E-6 &&
                   fabs(segmentMatch->xErr    - sqrt(segmentLocalPositionError.xx())               ) < 1E-6 &&
                   fabs(segmentMatch->yErr    - sqrt(segmentLocalPositionError.yy())               ) < 1E-6 &&
                   fabs(segmentMatch->dXdZErr - sqrt(segmentLocalDirectionError.xx())              ) < 1E-6 &&
                   fabs(segmentMatch->dYdZErr - sqrt(segmentLocalDirectionError.yy())              ) < 1E-6)
               {
                  segmentFound = true;
                  if (segmentMatch->isMask(reco::MuonSegmentMatch::BestInStationByDR)) segmentBestDrFound = true;
                  break;
               }
            }// segmentMatch
            if (segmentFound) break;
         }// chamberMatch
         if (segmentFound) break;
      }// muon

      if (segmentFound) {
         hSegmentIsAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
         hSegmentIsAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());

         if (segmentBestDrFound) {
            hSegmentIsBestDrAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
            hSegmentIsBestDrAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
         }
      } else {
         hSegmentIsNotAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
         hSegmentIsNotAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
         hSegmentIsBestDrNotAssociatedRZ->Fill(segmentGlobalPosition.z(), segmentGlobalPosition.perp());
         hSegmentIsBestDrNotAssociatedXY->Fill(segmentGlobalPosition.x(), segmentGlobalPosition.y());
      }
   }// csc segment
}
void MuonIdVal::beginJob ( void  ) [private, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 30 of file MuonIdVal.cc.

References baseFolder_, DQMStore::book1D(), DQMStore::book2D(), dbe_, Reference_intrackfit_cff::endcap, hB2BCosmicCompat, hCaloCompat, hCaloSegmentCompat, hCombinedCosmicCompat, hCSCChamberDx, hCSCChamberDy, hCSCChamberEdgeXWithNoSegment, hCSCChamberEdgeXWithSegment, hCSCChamberEdgeYWithNoSegment, hCSCChamberEdgeYWithSegment, hCSCDistWithNoSegment, hCSCDistWithSegment, hCSCPullDistWithNoSegment, hCSCPullDistWithSegment, hCSCPulldXdZPropErr, hCSCPulldYdZPropErr, hCSCPullxPropErr, hCSCPullyPropErr, hDTChamberDx, hDTChamberDy, hDTChamberEdgeXWithNoSegment, hDTChamberEdgeXWithSegment, hDTChamberEdgeYWithNoSegment, hDTChamberEdgeYWithSegment, hDTDistWithNoSegment, hDTDistWithSegment, hDTPullDistWithNoSegment, hDTPullDistWithSegment, hDTPulldXdZPropErr, hDTPulldYdZPropErr, hDTPullxPropErr, hDTPullyPropErr, hEnergyEMBarrel, hEnergyEMEndcap, hEnergyHABarrel, hEnergyHAEndcap, hEnergyHO, hGlobalMuonPromptTightBool, hGMStaChiCompatibilityBool, hGMTkChiCompatibilityBool, hGMTkKinkTightBool, hMuonAllHits, hMuonHitsFromSegments, hMuonQualityStaRelChi2, hMuonQualityTrkKink, hMuonQualityTrkRelChi2, hMuonShowerDeltaR, hMuonShowerSizeT, hMuonTimeExtraCombinedNDOF, hMuonTimeExtraCombinedTimeAtIpInOut, hMuonTimeExtraCombinedTimeAtIpInOutErr, hMuonTimeExtraCombinedTimeAtIpOutIn, hMuonTimeExtraCombinedTimeAtIpOutInErr, hMuonTimeExtraCSCNDOF, hMuonTimeExtraCSCTimeAtIpInOut, hMuonTimeExtraCSCTimeAtIpInOutErr, hMuonTimeExtraCSCTimeAtIpOutIn, hMuonTimeExtraCSCTimeAtIpOutInErr, hMuonTimeExtraDTNDOF, hMuonTimeExtraDTTimeAtIpInOut, hMuonTimeExtraDTTimeAtIpInOutErr, hMuonTimeExtraDTTimeAtIpOutIn, hMuonTimeExtraDTTimeAtIpOutInErr, hMuonTimeNDOF, hMuonTimeTimeAtIpInOut, hMuonTimeTimeAtIpInOutErr, hMuonTimeTimeAtIpOutIn, hMuonTimeTimeAtIpOutInErr, hMuonUncorrelatedHits, hOverlapCosmicCompat, hSegmentCompat, hSegmentIsAssociatedRZ, hSegmentIsAssociatedXY, hSegmentIsBestDrAssociatedRZ, hSegmentIsBestDrAssociatedXY, hSegmentIsBestDrNotAssociatedRZ, hSegmentIsBestDrNotAssociatedXY, hSegmentIsNotAssociatedRZ, hSegmentIsNotAssociatedXY, hTimeCosmicCompat, hTM2DCompatibilityLooseBool, hTM2DCompatibilityTightBool, hTMLastStationAngLooseBool, hTMLastStationAngTightBool, hTMLastStationLooseBool, hTMLastStationOptimizedBarrelLowPtLooseBool, hTMLastStationOptimizedBarrelLowPtTightBool, hTMLastStationOptimizedLowPtLooseBool, hTMLastStationOptimizedLowPtTightBool, hTMLastStationTightBool, hTMOneStationAngLooseBool, hTMOneStationAngTightBool, hTMOneStationLooseBool, hTMOneStationTightBool, i, make2DPlots_, makeAllChamberPlots_, makeCosmicCompatibilityPlots_, makeEnergyPlots_, makeShowerInformationPlots_, makeTimePlots_, mergeVDriftHistosByStation::name, relativeConstraints::ring, DQMStore::setCurrentFolder(), relativeConstraints::station, indexGen::title, useGlobalMuons_, useGlobalMuonsNotTrackerMuons_, useTrackerMuons_, and useTrackerMuonsNotGlobalMuons_.

{
   char name[100], title[200];

   // trackerMuon == 0; globalMuon == 1; trackerMuon && !globalMuon == 2; globalMuon && !trackerMuon == 3
   for (unsigned int i = 0; i < 4; i++) {
      if ((i == 0 && ! useTrackerMuons_) || (i == 1 && ! useGlobalMuons_)) continue;
      if ((i == 2 && ! useTrackerMuonsNotGlobalMuons_) || (i == 3 && ! useGlobalMuonsNotTrackerMuons_)) continue;
      if (i == 0) dbe_->setCurrentFolder(baseFolder_+"/TrackerMuons");
      if (i == 1) dbe_->setCurrentFolder(baseFolder_+"/GlobalMuons");
      if (i == 2) dbe_->setCurrentFolder(baseFolder_+"/TrackerMuonsNotGlobalMuons");
      if (i == 3) dbe_->setCurrentFolder(baseFolder_+"/GlobalMuonsNotTrackerMuons");

      if (makeEnergyPlots_) {
         hEnergyEMBarrel[i] = dbe_->book1D("hEnergyEMBarrel", "Energy in ECAL Barrel", 100, -0.5, 2.);
         hEnergyHABarrel[i] = dbe_->book1D("hEnergyHABarrel", "Energy in HCAL Barrel", 100, -4., 12.);
         hEnergyHO[i] = dbe_->book1D("hEnergyHO", "Energy HO", 100, -2., 5.);
         hEnergyEMEndcap[i] = dbe_->book1D("hEnergyEMEndcap", "Energy in ECAL Endcap", 100, -0.5, 2.);
         hEnergyHAEndcap[i] = dbe_->book1D("hEnergyHAEndcap", "Energy in HCAL Endcap", 100, -4., 12.);
      }

      if (makeTimePlots_) {
         hMuonTimeNDOF[i] = dbe_->book1D("hMuonTimeNDOF", "MuonTime NDOF", 52, -1.5, 50.5);
         hMuonTimeTimeAtIpInOut[i] = dbe_->book1D("hMuonTimeTimeAtIpInOut", "MuonTime TimeAtIpInOut", 100, -20., 20.);
         hMuonTimeTimeAtIpInOutErr[i] = dbe_->book1D("hMuonTimeTimeAtIpInOutErr", "MuonTime TimeAtIpInOutErr", 100, 0., 8.);
         hMuonTimeTimeAtIpOutIn[i] = dbe_->book1D("hMuonTimeTimeAtIpOutIn", "MuonTime TimeAtIpOutIn", 100, -1., 75.);
         hMuonTimeTimeAtIpOutInErr[i] = dbe_->book1D("hMuonTimeTimeAtIpOutInErr", "MuonTime TimeAtIpOutInErr", 100, 0., 8.);
         hMuonTimeExtraCombinedNDOF[i] = dbe_->book1D("hMuonTimeExtraCombinedNDOF", "MuonTimeExtra Combined NDOF", 52, -1.5, 50.5);
         hMuonTimeExtraCombinedTimeAtIpInOut[i] = dbe_->book1D("hMuonTimeExtraCombinedTimeAtIpInOut", "MuonTimeExtra Combined TimeAtIpInOut", 100, -20., 20.);
         hMuonTimeExtraCombinedTimeAtIpInOutErr[i] = dbe_->book1D("hMuonTimeExtraCombinedTimeAtIpInOutErr", "MuonTimeExtra Combined TimeAtIpInOutErr", 100, 0., 8.);
         hMuonTimeExtraCombinedTimeAtIpOutIn[i] = dbe_->book1D("hMuonTimeExtraCombinedTimeAtIpOutIn", "MuonTimeExtra Combined TimeAtIpOutIn", 100, -1., 75.);
         hMuonTimeExtraCombinedTimeAtIpOutInErr[i] = dbe_->book1D("hMuonTimeExtraCombinedTimeAtIpOutInErr", "MuonTimeExtra Combined TimeAtIpOutInErr", 100, 0., 8.);
         hMuonTimeExtraCSCNDOF[i] = dbe_->book1D("hMuonTimeExtraCSCNDOF", "MuonTimeExtra CSC NDOF", 52, -1.5, 50.5);
         hMuonTimeExtraCSCTimeAtIpInOut[i] = dbe_->book1D("hMuonTimeExtraCSCTimeAtIpInOut", "MuonTimeExtra CSC TimeAtIpInOut", 100, -20., 20.);
         hMuonTimeExtraCSCTimeAtIpInOutErr[i] = dbe_->book1D("hMuonTimeExtraCSCTimeAtIpInOutErr", "MuonTimeExtra CSC TimeAtIpInOutErr", 100, 0., 8.);
         hMuonTimeExtraCSCTimeAtIpOutIn[i] = dbe_->book1D("hMuonTimeExtraCSCTimeAtIpOutIn", "MuonTimeExtra CSC TimeAtIpOutIn", 100, -1., 75.);
         hMuonTimeExtraCSCTimeAtIpOutInErr[i] = dbe_->book1D("hMuonTimeExtraCSCTimeAtIpOutInErr", "MuonTimeExtra CSC TimeAtIpOutInErr", 100, 0., 8.);
         hMuonTimeExtraDTNDOF[i] = dbe_->book1D("hMuonTimeExtraDTNDOF", "MuonTimeExtra DT NDOF", 52, -1.5, 50.5);
         hMuonTimeExtraDTTimeAtIpInOut[i] = dbe_->book1D("hMuonTimeExtraDTTimeAtIpInOut", "MuonTimeExtra DT TimeAtIpInOut", 100, -20., 20.);
         hMuonTimeExtraDTTimeAtIpInOutErr[i] = dbe_->book1D("hMuonTimeExtraDTTimeAtIpInOutErr", "MuonTimeExtra DT TimeAtIpInOutErr", 100, 0., 8.);
         hMuonTimeExtraDTTimeAtIpOutIn[i] = dbe_->book1D("hMuonTimeExtraDTTimeAtIpOutIn", "MuonTimeExtra DT TimeAtIpOutIn", 100, -1., 75.);
         hMuonTimeExtraDTTimeAtIpOutInErr[i] = dbe_->book1D("hMuonTimeExtraDTTimeAtIpOutInErr", "MuonTimeExtra DT TimeAtIpOutInErr", 100, 0., 8.);
      }

      hCaloCompat[i] = dbe_->book1D("hCaloCompat", "Calo Compatibility", 101, -0.05, 1.05);
      hSegmentCompat[i] = dbe_->book1D("hSegmentCompat", "Segment Compatibility", 101, -0.05, 1.05);
      if (make2DPlots_)
         hCaloSegmentCompat[i] = dbe_->book2D("hCaloSegmentCompat", "Calo Compatibility vs. Segment Compatibility", 101, -0.05, 1.05, 101, -0.05, 1.05);
      hMuonQualityTrkRelChi2[i] = dbe_->book1D("hMuonQualityTrkRelChi2", "MuonQuality TrkRelChi2", 100, 0., 1.5);
      hMuonQualityStaRelChi2[i] = dbe_->book1D("hMuonQualityStaRelChi2", "MuonQuality StaRelChi2", 100, 0., 3.);
      hMuonQualityTrkKink[i] = dbe_->book1D("hMuonQualityTrkKink", "MuonQuality TrkKink", 100, 0., 150.);
      hGlobalMuonPromptTightBool[i] = dbe_->book1D("hGlobalMuonPromptTightBool", "GlobalMuonPromptTight Boolean", 2, -0.5, 1.5);
      hTMLastStationLooseBool[i] = dbe_->book1D("hTMLastStationLooseBool", "TMLastStationLoose Boolean", 2, -0.5, 1.5);
      hTMLastStationTightBool[i] = dbe_->book1D("hTMLastStationTightBool", "TMLastStationTight Boolean", 2, -0.5, 1.5);
      hTM2DCompatibilityLooseBool[i] = dbe_->book1D("hTM2DCompatibilityLooseBool", "TM2DCompatibilityLoose Boolean", 2, -0.5, 1.5);
      hTM2DCompatibilityTightBool[i] = dbe_->book1D("hTM2DCompatibilityTightBool", "TM2DCompatibilityTight Boolean", 2, -0.5, 1.5);
      hTMOneStationLooseBool[i] = dbe_->book1D("hTMOneStationLooseBool", "TMOneStationLoose Boolean", 2, -0.5, 1.5);
      hTMOneStationTightBool[i] = dbe_->book1D("hTMOneStationTightBool", "TMOneStationTight Boolean", 2, -0.5, 1.5);
      hTMLastStationOptimizedLowPtLooseBool[i] = dbe_->book1D("hTMLastStationOptimizedLowPtLooseBool", "TMLastStationOptimizedLowPtLoose Boolean", 2, -0.5, 1.5);
      hTMLastStationOptimizedLowPtTightBool[i] = dbe_->book1D("hTMLastStationOptimizedLowPtTightBool", "TMLastStationOptimizedLowPtTight Boolean", 2, -0.5, 1.5);
      hGMTkChiCompatibilityBool[i] = dbe_->book1D("hGMTkChiCompatibilityBool", "GMTkChiCompatibility Boolean", 2, -0.5, 1.5);
      hGMStaChiCompatibilityBool[i] = dbe_->book1D("hGMStaChiCompatibilityBool", "GMStaChiCompatibility Boolean", 2, -0.5, 1.5);
      hGMTkKinkTightBool[i] = dbe_->book1D("hGMTkKinkTightBool", "GMTkKinkTight Boolean", 2, -0.5, 1.5);
      hTMLastStationAngLooseBool[i] = dbe_->book1D("hTMLastStationAngLooseBool", "TMLastStationAngLoose Boolean", 2, -0.5, 1.5);
      hTMLastStationAngTightBool[i] = dbe_->book1D("hTMLastStationAngTightBool", "TMLastStationAngTight Boolean", 2, -0.5, 1.5);
      hTMOneStationAngLooseBool[i] = dbe_->book1D("hTMOneStationAngLooseBool", "TMOneStationAngLoose Boolean", 2, -0.5, 1.5);
      hTMOneStationAngTightBool[i] = dbe_->book1D("hTMOneStationAngTightBool", "TMOneStationAngTight Boolean", 2, -0.5, 1.5);
      hTMLastStationOptimizedBarrelLowPtLooseBool[i] = dbe_->book1D("hTMLastStationOptimizedBarrelLowPtLooseBool", "TMLastStationOptimizedBarrelLowPtLoose Boolean", 2, -0.5, 1.5);
      hTMLastStationOptimizedBarrelLowPtTightBool[i] = dbe_->book1D("hTMLastStationOptimizedBarrelLowPtTightBool", "TMLastStationOptimizedBarrelLowPtTight Boolean", 2, -0.5, 1.5);

      if (makeCosmicCompatibilityPlots_) {
        hCombinedCosmicCompat[i] = dbe_->book1D("hCombinedCosmicCompat", "hCombinedCosmicCompatibility float", 40, 0., 10.);
        hTimeCosmicCompat[i] = dbe_->book1D("hTimeCosmicCompat", "hTimeCosmicCompatibility float", 6, 0., 3.);
        hB2BCosmicCompat[i] = dbe_->book1D("hB2BCosmicCompat", "Number of back-to-back partners", 10, 0, 10);
        hOverlapCosmicCompat[i] = dbe_->book1D("hOverlapCosmicCompat", "Overlap between muons and 1Leg", 2, 0, 2);
      }

      // by station
      for(int station = 0; station < 4; ++station)
      {

         if (makeShowerInformationPlots_) {
             sprintf(name, "hMuonShowerSizeT%i", station+1);
             sprintf(title, "Station %i Transverse Cluster Size", station+1);
             hMuonShowerSizeT[i][station] = dbe_->book1D(name, title,1000,0,500);
             sprintf(name, "hMuonShowerDeltaR%i", station+1);
             sprintf(title, "Station %i DeltaR", station+1);
             hMuonShowerDeltaR[i][station] = dbe_->book1D(name, title,5000,0,0.5);
             sprintf(name, "hMuonAllHits%i", station+1);
             sprintf(title, "Station %i Number of 1D DT or 2D CSC RecHits", station+1);
             hMuonAllHits[i][station] = dbe_->book1D(name, title,400,0,400);
             sprintf(name, "hMuonHitsFromSegments%i", station+1);
             sprintf(title, "Station %i Hits used by 4D DT or 3D CSC Segments", station+1);
             hMuonHitsFromSegments[i][station] = dbe_->book1D(name, title,400,0,400);
             sprintf(name, "hMuonUncorrelatedHits%i", station+1);
             sprintf(title, "Station %i Uncorrelated Hits", station+1);
             hMuonUncorrelatedHits[i][station] = dbe_->book1D(name, title,400,0,400);
         }

         sprintf(name, "hDT%iPullxPropErr", station+1);
         sprintf(title, "DT Station %i Pull X w/ Propagation Error Only", station+1);
         hDTPullxPropErr[i][station] = dbe_->book1D(name, title, 100, -20., 20.);

         sprintf(name, "hDT%iPulldXdZPropErr", station+1);
         sprintf(title, "DT Station %i Pull DxDz w/ Propagation Error Only", station+1);
         hDTPulldXdZPropErr[i][station] = dbe_->book1D(name, title, 100, -20., 20.);

         if (station < 3) {
            sprintf(name, "hDT%iPullyPropErr", station+1);
            sprintf(title, "DT Station %i Pull Y w/ Propagation Error Only", station+1);
            hDTPullyPropErr[i][station] = dbe_->book1D(name, title, 100, -20., 20.);

            sprintf(name, "hDT%iPulldYdZPropErr", station+1);
            sprintf(title, "DT Station %i Pull DyDz w/ Propagation Error Only", station+1);
            hDTPulldYdZPropErr[i][station] = dbe_->book1D(name, title, 100, -20., 20.);
         }

         sprintf(name, "hDT%iDistWithSegment", station+1);
         sprintf(title, "DT Station %i Dist When There Is A Segment", station+1);
         hDTDistWithSegment[i][station] = dbe_->book1D(name, title, 100, -140., 30.);

         sprintf(name, "hDT%iDistWithNoSegment", station+1);
         sprintf(title, "DT Station %i Dist When There Is No Segment", station+1);
         hDTDistWithNoSegment[i][station] = dbe_->book1D(name, title, 100, -140., 30.);

         sprintf(name, "hDT%iPullDistWithSegment", station+1);
         sprintf(title, "DT Station %i Pull Dist When There Is A Segment", station+1);
         hDTPullDistWithSegment[i][station] = dbe_->book1D(name, title, 100, -140., 30.);

         sprintf(name, "hDT%iPullDistWithNoSegment", station+1);
         sprintf(title, "DT Station %i Pull Dist When There Is No Segment", station+1);
         hDTPullDistWithNoSegment[i][station] = dbe_->book1D(name, title, 100, -140., 30.);

         sprintf(name, "hCSC%iPullxPropErr", station+1);
         sprintf(title, "CSC Station %i Pull X w/ Propagation Error Only", station+1);
         hCSCPullxPropErr[i][station] = dbe_->book1D(name, title, 100, -20., 20.);

         sprintf(name, "hCSC%iPulldXdZPropErr", station+1);
         sprintf(title, "CSC Station %i Pull DxDz w/ Propagation Error Only", station+1);
         hCSCPulldXdZPropErr[i][station] = dbe_->book1D(name, title, 100, -20., 20.);

         sprintf(name, "hCSC%iPullyPropErr", station+1);
         sprintf(title, "CSC Station %i Pull Y w/ Propagation Error Only", station+1);
         hCSCPullyPropErr[i][station] = dbe_->book1D(name, title, 100, -20., 20.);

         sprintf(name, "hCSC%iPulldYdZPropErr", station+1);
         sprintf(title, "CSC Station %i Pull DyDz w/ Propagation Error Only", station+1);
         hCSCPulldYdZPropErr[i][station] = dbe_->book1D(name, title, 100, -50., 50.);

         sprintf(name, "hCSC%iDistWithSegment", station+1);
         sprintf(title, "CSC Station %i Dist When There Is A Segment", station+1);
         hCSCDistWithSegment[i][station] = dbe_->book1D(name, title, 100, -70., 20.);

         sprintf(name, "hCSC%iDistWithNoSegment", station+1);
         sprintf(title, "CSC Station %i Dist When There Is No Segment", station+1);
         hCSCDistWithNoSegment[i][station] = dbe_->book1D(name, title, 100, -70., 20.);

         sprintf(name, "hCSC%iPullDistWithSegment", station+1);
         sprintf(title, "CSC Station %i Pull Dist When There Is A Segment", station+1);
         hCSCPullDistWithSegment[i][station] = dbe_->book1D(name, title, 100, -70., 20.);

         sprintf(name, "hCSC%iPullDistWithNoSegment", station+1);
         sprintf(title, "CSC Station %i Pull Dist When There Is No Segment", station+1);
         hCSCPullDistWithNoSegment[i][station] = dbe_->book1D(name, title, 100, -70., 20.);
      }// station
   }

   if (make2DPlots_) {
      dbe_->setCurrentFolder(baseFolder_);
      hSegmentIsAssociatedRZ = dbe_->book2D("hSegmentIsAssociatedRZ", "R-Z of Associated Segments", 2140, -1070., 1070., 850, 0., 850.);
      hSegmentIsAssociatedXY = dbe_->book2D("hSegmentIsAssociatedXY", "X-Y of Associated Segments", 1700, -850., 850., 1700, -850., 850.);
      hSegmentIsNotAssociatedRZ = dbe_->book2D("hSegmentIsNotAssociatedRZ", "R-Z of Not Associated Segments", 2140, -1070., 1070., 850, 0., 850.);
      hSegmentIsNotAssociatedXY = dbe_->book2D("hSegmentIsNotAssociatedXY", "X-Y of Not Associated Segments", 1700, -850., 850., 1700, -850., 850.);
      hSegmentIsBestDrAssociatedRZ = dbe_->book2D("hSegmentIsBestDrAssociatedRZ", "R-Z of Best in Station by #DeltaR Associated Segments", 2140, -1070., 1070., 850, 0., 850.);
      hSegmentIsBestDrAssociatedXY = dbe_->book2D("hSegmentIsBestDrAssociatedXY", "X-Y of Best in Station by #DeltaR Associated Segments", 1700, -850., 850., 1700, -850., 850.);
      hSegmentIsBestDrNotAssociatedRZ = dbe_->book2D("hSegmentIsBestDrNotAssociatedRZ", "R-Z of Best in Station by #DeltaR Not Associated Segments", 2140, -1070., 1070., 850, 0., 850.);
      hSegmentIsBestDrNotAssociatedXY = dbe_->book2D("hSegmentIsBestDrNotAssociatedXY", "X-Y of Best in Station by #DeltaR Not Associated Segments", 1700, -850., 850., 1700, -850., 850.);
   }

   if (useTrackerMuons_ && makeAllChamberPlots_) {
      dbe_->setCurrentFolder(baseFolder_+"/TrackerMuons");

      // by chamber
      for(int station = 0; station < 4; ++station) {
         // DT wheels: -2 -> 2
         for(int wheel = 0; wheel < 5; ++wheel) {
            // DT sectors: 1 -> 14
            for(int sector = 0; sector < 14; ++sector)
            {
               sprintf(name, "hDTChamberDx_%i_%i_%i", station+1, wheel-2, sector+1);
               sprintf(title, "DT Chamber Delta X: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
               hDTChamberDx[station][wheel][sector] = dbe_->book1D(name, title, 100, -100., 100.);

               if (station < 3) {
                  sprintf(name, "hDTChamberDy_%i_%i_%i", station+1, wheel-2, sector+1);
                  sprintf(title, "DT Chamber Delta Y: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
                  hDTChamberDy[station][wheel][sector] = dbe_->book1D(name, title, 100, -150., 150.);
               }

               sprintf(name, "hDTChamberEdgeXWithSegment_%i_%i_%i", station+1, wheel-2, sector+1);
               sprintf(title, "DT Chamber Edge X When There Is A Segment: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
               hDTChamberEdgeXWithSegment[station][wheel][sector] = dbe_->book1D(name, title, 100, -140., 30.);

               sprintf(name, "hDTChamberEdgeXWithNoSegment_%i_%i_%i", station+1, wheel-2, sector+1);
               sprintf(title, "DT Chamber Edge X When There Is No Segment: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
               hDTChamberEdgeXWithNoSegment[station][wheel][sector] = dbe_->book1D(name, title, 100, -140., 30.);

               sprintf(name, "hDTChamberEdgeYWithSegment_%i_%i_%i", station+1, wheel-2, sector+1);
               sprintf(title, "DT Chamber Edge Y When There Is A Segment: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
               hDTChamberEdgeYWithSegment[station][wheel][sector] = dbe_->book1D(name, title, 100, -140., 30.);

               sprintf(name, "hDTChamberEdgeYWithNoSegment_%i_%i_%i", station+1, wheel-2, sector+1);
               sprintf(title, "DT Chamber Edge Y When There Is No Segment: Station %i Wheel %i Sector %i", station+1, wheel-2, sector+1);
               hDTChamberEdgeYWithNoSegment[station][wheel][sector] = dbe_->book1D(name, title, 100, -140., 30.);
            }// sector
         }// wheel

         // CSC endcaps: 1 -> 2
         for(int endcap = 0; endcap < 2; ++endcap) {
            // CSC rings: 1 -> 4
            for(int ring = 0; ring < 4; ++ring) {
               // CSC chambers: 1 -> 36
               for(int chamber = 0; chamber < 36; ++chamber)
               {
                  sprintf(name, "hCSCChamberDx_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
                  sprintf(title, "CSC Chamber Delta X: Endcap %i Station %i Ring %i Chamber %i", endcap+1, station+1, ring+1, chamber+1);
                  hCSCChamberDx[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -50., 50.);

                  sprintf(name, "hCSCChamberDy_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
                  sprintf(title, "CSC Chamber Delta Y: Endcap %i Station %i Ring %i Chamber %i", endcap+1, station+1, ring+1, chamber+1);
                  hCSCChamberDy[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -50., 50.);

                  sprintf(name, "hCSCChamberEdgeXWithSegment_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
                  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);
                  hCSCChamberEdgeXWithSegment[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -70., 20.);

                  sprintf(name, "hCSCChamberEdgeXWithNoSegment_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
                  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);
                  hCSCChamberEdgeXWithNoSegment[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -70., 20.);

                  sprintf(name, "hCSCChamberEdgeYWithSegment_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
                  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);
                  hCSCChamberEdgeYWithSegment[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -70., 20.);

                  sprintf(name, "hCSCChamberEdgeYWithNoSegment_%i_%i_%i_%i", endcap+1, station+1, ring+1, chamber+1);
                  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);
                  hCSCChamberEdgeYWithNoSegment[endcap][station][ring][chamber] = dbe_->book1D(name, title, 100, -70., 20.);
               }// chamber
            }// ring
         }// endcap
      }// station
   }
}
void MuonIdVal::endJob ( void  ) [private, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 635 of file MuonIdVal.cc.

{}
void MuonIdVal::Fill ( MonitorElement me,
float  f 
) [private, virtual]

Definition at line 637 of file MuonIdVal.cc.

References MonitorElement::Fill().

Referenced by analyze().

                                                {
   if (fabs(f) > 900000) return;
   //if (fabs(f) < 1E-8) return;
   me->Fill(f);
}

Member Data Documentation

std::string MuonIdVal::baseFolder_ [private]

Definition at line 89 of file MuonIdVal.h.

Referenced by beginJob(), and MuonIdVal().

Definition at line 94 of file MuonIdVal.h.

Referenced by analyze().

Definition at line 95 of file MuonIdVal.h.

Referenced by analyze().

Definition at line 93 of file MuonIdVal.h.

Referenced by analyze().

Definition at line 70 of file MuonIdVal.h.

Referenced by beginJob(), and MuonIdVal().

Definition at line 96 of file MuonIdVal.h.

Referenced by analyze().

Definition at line 92 of file MuonIdVal.h.

Referenced by analyze().

Definition at line 99 of file MuonIdVal.h.

Referenced by analyze().

Definition at line 160 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 132 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 134 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 158 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

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

Definition at line 198 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

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

Definition at line 199 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 201 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 200 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 203 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 202 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 185 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 184 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 187 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 186 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 181 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 183 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 180 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 182 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 192 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 193 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 195 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 194 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 197 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 196 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 177 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 176 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 179 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 178 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 173 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 175 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 172 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 174 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 103 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 106 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 104 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 107 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 105 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 138 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 148 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 147 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 149 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 168 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 169 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 136 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 137 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 135 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 167 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 166 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 115 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 116 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 117 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 118 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 119 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 120 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 121 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 122 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 123 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 124 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 125 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 126 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 127 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 128 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 129 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 110 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 111 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 112 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 113 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 114 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 170 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 161 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 133 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 206 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 207 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 210 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 211 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 212 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 213 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 208 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 209 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 159 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 141 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 142 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 150 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 151 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 139 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 154 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 155 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 145 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 146 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 140 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 152 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 153 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 143 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 144 of file MuonIdVal.h.

Referenced by analyze(), and beginJob().

Definition at line 75 of file MuonIdVal.h.

Referenced by analyze(), and MuonIdVal().

Definition at line 74 of file MuonIdVal.h.

Referenced by analyze(), and MuonIdVal().

Definition at line 73 of file MuonIdVal.h.

Referenced by analyze(), and MuonIdVal().

Definition at line 77 of file MuonIdVal.h.

Referenced by analyze(), and MuonIdVal().

Definition at line 78 of file MuonIdVal.h.

Referenced by analyze(), and MuonIdVal().

Definition at line 76 of file MuonIdVal.h.

Referenced by analyze(), and MuonIdVal().

bool MuonIdVal::make2DPlots_ [private]

Definition at line 85 of file MuonIdVal.h.

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

Definition at line 86 of file MuonIdVal.h.

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

Definition at line 87 of file MuonIdVal.h.

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

Definition at line 83 of file MuonIdVal.h.

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

Definition at line 88 of file MuonIdVal.h.

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

bool MuonIdVal::makeTimePlots_ [private]

Definition at line 84 of file MuonIdVal.h.

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

Definition at line 91 of file MuonIdVal.h.

Referenced by analyze().

Definition at line 97 of file MuonIdVal.h.

Referenced by analyze().

Definition at line 98 of file MuonIdVal.h.

Referenced by analyze().

Definition at line 80 of file MuonIdVal.h.

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

Definition at line 82 of file MuonIdVal.h.

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

Definition at line 79 of file MuonIdVal.h.

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

Definition at line 81 of file MuonIdVal.h.

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