CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Protected Attributes | Private Attributes
RecoMuonValidator Class Reference

#include <RecoMuonValidator.h>

Inheritance diagram for RecoMuonValidator:
DQMOneEDAnalyzer<> edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Classes

struct  CommonME
 
struct  HistoDimensions
 
struct  MuonME
 

Public Member Functions

void analyze (const edm::Event &event, const edm::EventSetup &eventSetup) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
virtual int countMuonHits (const reco::Track &track) const
 
virtual int countTrackerHits (const reco::Track &track) const
 
void dqmBeginRun (const edm::Run &, const edm::EventSetup &eventSetup) override
 
void dqmEndRun (edm::Run const &, edm::EventSetup const &) override
 
 RecoMuonValidator (const edm::ParameterSet &pset)
 
 ~RecoMuonValidator () override
 
- Public Member Functions inherited from DQMOneEDAnalyzer<>
void accumulate (edm::Event const &event, edm::EventSetup const &setup) override
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
 DQMOneEDAnalyzer ()
 
void endRun (edm::Run const &, edm::EventSetup const &) final
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... >
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const * > *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Protected Attributes

edm::InputTag beamspotLabel_
 
edm::EDGetTokenT< reco::BeamSpotbeamspotToken_
 
CommonMEcommonME_
 
DQMStoredbe_
 
bool doAbsEta_
 
bool doAssoc_
 
HistoDimensions hDim
 
edm::InputTag muAssocLabel_
 
edm::EDGetTokenT< reco::MuonToTrackingParticleAssociatormuAssocToken_
 
edm::InputTag muonLabel_
 
MuonMEmuonME_
 
std::string muonSelection_
 
edm::EDGetTokenT< edm::View< reco::Muon > > muonToken_
 
std::string outputFileName_
 
edm::InputTag primvertexLabel_
 
edm::EDGetTokenT< reco::VertexCollectionprimvertexToken_
 
edm::ParameterSet pset
 
edm::InputTag simLabel_
 
edm::EDGetTokenT< TrackingParticleCollectionsimToken_
 
std::string subDir_
 
std::string subsystemname_
 
bool tpRefVector
 
edm::EDGetTokenT< TrackingParticleRefVectortpRefVectorToken_
 
TrackingParticleSelector tpSelector_
 
reco::MuonTrackType trackType_
 
bool usePFMuon_
 
unsigned int verbose_
 
- Protected Attributes inherited from DQMOneEDAnalyzer<>
edm::EDPutTokenT< DQMTokenrunToken_
 

Private Attributes

StringCutObjectSelector< reco::Muonselector_
 
bool wantTightMuon_
 

Additional Inherited Members

- Public Types inherited from DQMOneEDAnalyzer<>
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::ProducerBase
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 declare what type of product will make and with which optional label More...
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Detailed Description

Definition at line 29 of file RecoMuonValidator.h.

Constructor & Destructor Documentation

◆ RecoMuonValidator()

RecoMuonValidator::RecoMuonValidator ( const edm::ParameterSet pset)

Definition at line 555 of file RecoMuonValidator.cc.

556  : selector_(pset.getParameter<std::string>("selection")) {
557  // dump cfg parameters
558  edm::LogVerbatim("RecoMuonValidator") << "constructing RecoMuonValidator: " << pset.dump();
559  verbose_ = pset.getUntrackedParameter<unsigned int>("verbose", 0);
560 
561  outputFileName_ = pset.getUntrackedParameter<string>("outputFileName", "");
562 
563  wantTightMuon_ = pset.getParameter<bool>("wantTightMuon");
565  primvertexLabel_ = pset.getParameter<edm::InputTag>("primaryVertex");
566  beamspotToken_ = consumes<reco::BeamSpot>(beamspotLabel_);
567  primvertexToken_ = consumes<reco::VertexCollection>(primvertexLabel_);
568 
569  // Set histogram dimensions from config
570 
571  hDim.nBinP = pset.getUntrackedParameter<unsigned int>("nBinP");
572  hDim.minP = pset.getUntrackedParameter<double>("minP");
573  hDim.maxP = pset.getUntrackedParameter<double>("maxP");
574 
575  hDim.nBinPt = pset.getUntrackedParameter<unsigned int>("nBinPt");
576  hDim.minPt = pset.getUntrackedParameter<double>("minPt");
577  hDim.maxPt = pset.getUntrackedParameter<double>("maxPt");
578 
579  doAbsEta_ = pset.getUntrackedParameter<bool>("doAbsEta");
581  hDim.nBinEta = pset.getUntrackedParameter<unsigned int>("nBinEta");
582  hDim.minEta = pset.getUntrackedParameter<double>("minEta");
583  hDim.maxEta = pset.getUntrackedParameter<double>("maxEta");
584 
585  hDim.nBinDxy = pset.getUntrackedParameter<unsigned int>("nBinDxy");
586  hDim.minDxy = pset.getUntrackedParameter<double>("minDxy");
587  hDim.maxDxy = pset.getUntrackedParameter<double>("maxDxy");
588 
589  hDim.nBinDz = pset.getUntrackedParameter<unsigned int>("nBinDz");
590  hDim.minDz = pset.getUntrackedParameter<double>("minDz");
591  hDim.maxDz = pset.getUntrackedParameter<double>("maxDz");
592 
593  hDim.nBinPhi = pset.getUntrackedParameter<unsigned int>("nBinPhi");
594  hDim.minPhi = pset.getUntrackedParameter<double>("minPhi", -TMath::Pi());
595  hDim.maxPhi = pset.getUntrackedParameter<double>("maxPhi", TMath::Pi());
596 
597  hDim.nBinErr = pset.getUntrackedParameter<unsigned int>("nBinErr");
598  hDim.nBinPull = pset.getUntrackedParameter<unsigned int>("nBinPull");
599 
600  hDim.wPull = pset.getUntrackedParameter<double>("wPull");
601 
602  hDim.minErrP = pset.getUntrackedParameter<double>("minErrP");
603  hDim.maxErrP = pset.getUntrackedParameter<double>("maxErrP");
604 
605  hDim.minErrPt = pset.getUntrackedParameter<double>("minErrPt");
606  hDim.maxErrPt = pset.getUntrackedParameter<double>("maxErrPt");
607 
608  hDim.minErrQPt = pset.getUntrackedParameter<double>("minErrQPt");
609  hDim.maxErrQPt = pset.getUntrackedParameter<double>("maxErrQPt");
610 
611  hDim.minErrEta = pset.getUntrackedParameter<double>("minErrEta");
612  hDim.maxErrEta = pset.getUntrackedParameter<double>("maxErrEta");
613 
614  hDim.minErrPhi = pset.getUntrackedParameter<double>("minErrPhi");
615  hDim.maxErrPhi = pset.getUntrackedParameter<double>("maxErrPhi");
616 
617  hDim.minErrDxy = pset.getUntrackedParameter<double>("minErrDxy");
618  hDim.maxErrDxy = pset.getUntrackedParameter<double>("maxErrDxy");
619 
620  hDim.minErrDz = pset.getUntrackedParameter<double>("minErrDz");
621  hDim.maxErrDz = pset.getUntrackedParameter<double>("maxErrDz");
622 
623  hDim.nTrks = pset.getUntrackedParameter<unsigned int>("nTrks");
624  hDim.nAssoc = pset.getUntrackedParameter<unsigned int>("nAssoc");
625  hDim.nDof = pset.getUntrackedParameter<unsigned int>("nDof", 55);
626 
627  // Labels for simulation and reconstruction tracks
628  simLabel_ = pset.getParameter<InputTag>("simLabel");
629  tpRefVector = pset.getParameter<bool>("tpRefVector");
630  if (tpRefVector)
631  tpRefVectorToken_ = consumes<TrackingParticleRefVector>(simLabel_);
632  else
633  simToken_ = consumes<TrackingParticleCollection>(simLabel_);
634 
635  muonLabel_ = pset.getParameter<InputTag>("muonLabel");
636  muonToken_ = consumes<edm::View<reco::Muon> >(muonLabel_);
637 
638  // Labels for sim-reco association
639  doAssoc_ = pset.getUntrackedParameter<bool>("doAssoc", true);
640  muAssocLabel_ = pset.getParameter<InputTag>("muAssocLabel");
641  if (doAssoc_) {
642  muAssocToken_ = consumes<reco::MuonToTrackingParticleAssociator>(muAssocLabel_);
643  }
644 
645  // Different momentum assignment and additional histos in case of PF muons
646  usePFMuon_ = pset.getUntrackedParameter<bool>("usePFMuon");
648 
649  //type of track
651  if (trackType == "inner")
653  else if (trackType == "outer")
655  else if (trackType == "global")
657  else if (trackType == "segments")
659  else
660  throw cms::Exception("Configuration") << "Track type '" << trackType << "' not supported.\n";
661 
662  // seedPropagatorName_ = pset.getParameter<string>("SeedPropagator");
663 
664  ParameterSet tpset = pset.getParameter<ParameterSet>("tpSelector");
665  tpSelector_ = TrackingParticleSelector(tpset.getParameter<double>("ptMin"),
666  tpset.getParameter<double>("ptMax"),
667  tpset.getParameter<double>("minRapidity"),
668  tpset.getParameter<double>("maxRapidity"),
669  tpset.getParameter<double>("tip"),
670  tpset.getParameter<double>("lip"),
671  tpset.getParameter<int>("minHit"),
672  tpset.getParameter<bool>("signalOnly"),
673  tpset.getParameter<bool>("intimeOnly"),
674  tpset.getParameter<bool>("chargedOnly"),
675  tpset.getParameter<bool>("stableOnly"),
676  tpset.getParameter<std::vector<int> >("pdgId"));
677 
678  // the service parameters
679  ParameterSet serviceParameters = pset.getParameter<ParameterSet>("ServiceParameters");
680 
681  // retrieve the instance of DQMService
682  dbe_ = Service<DQMStore>().operator->();
683  subsystemname_ = pset.getUntrackedParameter<std::string>("subSystemFolder", "YourSubsystem");
684 
685  subDir_ = pset.getUntrackedParameter<string>("subDir");
686  if (subDir_.empty())
687  subDir_ = "RecoMuonV";
688  if (subDir_[subDir_.size() - 1] == '/')
689  subDir_.erase(subDir_.size() - 1);
690 }

References beamspotLabel_, beamspotToken_, dbe_, RecoMuonValidator::HistoDimensions::doAbsEta, doAbsEta_, doAssoc_, edm::ParameterSet::dump(), Exception, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), reco::GlobalTk, hDim, reco::InnerTk, RecoMuonValidator::HistoDimensions::maxDxy, RecoMuonValidator::HistoDimensions::maxDz, RecoMuonValidator::HistoDimensions::maxErrDxy, RecoMuonValidator::HistoDimensions::maxErrDz, RecoMuonValidator::HistoDimensions::maxErrEta, RecoMuonValidator::HistoDimensions::maxErrP, RecoMuonValidator::HistoDimensions::maxErrPhi, RecoMuonValidator::HistoDimensions::maxErrPt, RecoMuonValidator::HistoDimensions::maxErrQPt, RecoMuonValidator::HistoDimensions::maxEta, RecoMuonValidator::HistoDimensions::maxP, RecoMuonValidator::HistoDimensions::maxPhi, RecoMuonValidator::HistoDimensions::maxPt, RecoMuonValidator::HistoDimensions::minDxy, RecoMuonValidator::HistoDimensions::minDz, RecoMuonValidator::HistoDimensions::minErrDxy, RecoMuonValidator::HistoDimensions::minErrDz, RecoMuonValidator::HistoDimensions::minErrEta, RecoMuonValidator::HistoDimensions::minErrP, RecoMuonValidator::HistoDimensions::minErrPhi, RecoMuonValidator::HistoDimensions::minErrPt, RecoMuonValidator::HistoDimensions::minErrQPt, RecoMuonValidator::HistoDimensions::minEta, RecoMuonValidator::HistoDimensions::minP, RecoMuonValidator::HistoDimensions::minPhi, RecoMuonValidator::HistoDimensions::minPt, muAssocLabel_, muAssocToken_, muonLabel_, muonToken_, RecoMuonValidator::HistoDimensions::nAssoc, RecoMuonValidator::HistoDimensions::nBinDxy, RecoMuonValidator::HistoDimensions::nBinDz, RecoMuonValidator::HistoDimensions::nBinErr, RecoMuonValidator::HistoDimensions::nBinEta, RecoMuonValidator::HistoDimensions::nBinP, RecoMuonValidator::HistoDimensions::nBinPhi, RecoMuonValidator::HistoDimensions::nBinPt, RecoMuonValidator::HistoDimensions::nBinPull, RecoMuonValidator::HistoDimensions::nDof, RecoMuonValidator::HistoDimensions::nTrks, reco::OuterTk, outputFileName_, Pi, primvertexLabel_, primvertexToken_, pset, reco::Segments, simLabel_, simToken_, AlCaHLTBitMon_QueryRunRegistry::string, subDir_, subsystemname_, tpRefVector, tpRefVectorToken_, tpSelector_, PbPb_ZMuSkimMuonDPG_cff::trackType, trackType_, RecoMuonValidator::HistoDimensions::usePFMuon, usePFMuon_, verbose_, wantTightMuon_, and RecoMuonValidator::HistoDimensions::wPull.

◆ ~RecoMuonValidator()

RecoMuonValidator::~RecoMuonValidator ( )
override

Definition at line 800 of file RecoMuonValidator.cc.

800 {}

Member Function Documentation

◆ analyze()

void RecoMuonValidator::analyze ( const edm::Event event,
const edm::EventSetup eventSetup 
)
overridevirtual

Reimplemented from DQMOneEDAnalyzer<>.

Definition at line 819 of file RecoMuonValidator.cc.

819  {
820  // Look for the Primary Vertex (and use the BeamSpot instead, if you can't find it):
821  reco::Vertex::Point posVtx;
822  reco::Vertex::Error errVtx;
824  event.getByToken(primvertexToken_, recVtxs);
825  unsigned int theIndexOfThePrimaryVertex = 999.;
826  for (unsigned int ind = 0; ind < recVtxs->size(); ++ind) {
827  if ((*recVtxs)[ind].isValid() && !((*recVtxs)[ind].isFake())) {
828  theIndexOfThePrimaryVertex = ind;
829  break;
830  }
831  }
832  if (theIndexOfThePrimaryVertex < 100) {
833  posVtx = ((*recVtxs)[theIndexOfThePrimaryVertex]).position();
834  errVtx = ((*recVtxs)[theIndexOfThePrimaryVertex]).error();
835  } else {
836  LogInfo("RecoMuonValidator") << "reco::PrimaryVertex not found, use BeamSpot position instead\n";
837  edm::Handle<reco::BeamSpot> recoBeamSpotHandle;
838  event.getByToken(beamspotToken_, recoBeamSpotHandle);
839  reco::BeamSpot bs = *recoBeamSpotHandle;
840  posVtx = bs.position();
841  errVtx(0, 0) = bs.BeamWidthX();
842  errVtx(1, 1) = bs.BeamWidthY();
843  errVtx(2, 2) = bs.sigmaZ();
844  }
845  const reco::Vertex thePrimaryVertex(posVtx, errVtx);
846 
847  // Get TrackingParticles
849  const TrackingParticleRefVector* ptr_TPrefV = nullptr;
851  Handle<TrackingParticleRefVector> TPCollectionRefVector_H;
852 
853  if (tpRefVector) {
854  event.getByToken(tpRefVectorToken_, TPCollectionRefVector_H);
855  ptr_TPrefV = TPCollectionRefVector_H.product();
856  TPrefV = *ptr_TPrefV;
857  } else {
858  event.getByToken(simToken_, simHandle);
859  size_t nTP = simHandle->size();
860  for (size_t i = 0; i < nTP; ++i) {
861  TPrefV.push_back(TrackingParticleRef(simHandle, i));
862  }
863  ptr_TPrefV = &TPrefV;
864  }
865 
866  // Get Muons
867  Handle<edm::View<Muon> > muonHandle;
868  event.getByToken(muonToken_, muonHandle);
869  View<Muon> muonColl = *(muonHandle.product());
870 
871  reco::MuonToTrackingParticleAssociator const* assoByHits = nullptr;
872  if (doAssoc_) {
874  event.getByToken(muAssocToken_, associatorBase);
875  assoByHits = associatorBase.product();
876  }
877 
878  const size_t nSim = ptr_TPrefV->size();
879 
881  for (size_t i = 0; i < muonHandle->size(); ++i) {
882  Muons.push_back(muonHandle->refAt(i));
883  }
884 
885  muonME_->hNSim_->Fill(nSim);
886  muonME_->hNMuon_->Fill(muonColl.size());
887 
888  reco::MuonToSimCollection muonToSimColl;
889  reco::SimToMuonCollection simToMuonColl;
890 
891  if (doAssoc_) {
892  edm::LogVerbatim("RecoMuonValidator")
893  << "\n >>> MuonToSim association : " << muAssocLabel_ << " <<< \n"
894  << " muon collection : " << muonLabel_ << " (size = " << muonHandle->size() << ") \n"
895  << " TrackingParticle collection : " << simLabel_ << " (size = " << nSim << ")";
896 
897  assoByHits->associateMuons(muonToSimColl, simToMuonColl, Muons, trackType_, TPrefV);
898  } else {
899  /*
900  // SimToMuon associations
901  Handle<reco::RecoToSimCollection> simToTrkMuHandle;
902  event.getByLabel(trkMuAssocLabel_, simToTrkMuHandle);
903  trkSimRecColl = *(simToTrkMuHandle.product());
904 
905  Handle<reco::RecoToSimCollection> simToStaMuHandle;
906  event.getByLabel(staMuAssocLabel_, simToStaMuHandle);
907  staSimRecColl = *(simToStaMuHandle.product());
908 
909  Handle<reco::RecoToSimCollection> simToGlbMuHandle;
910  event.getByLabel(glbMuAssocLabel_, simToGlbMuHandle);
911  glbSimRecColl = *(simToGlbMuHandle.product());
912 
913  // MuonToSim associations
914  Handle<reco::SimToRecoCollection> trkMuToSimHandle;
915  event.getByLabel(trkMuAssocLabel_, trkMuToSimHandle);
916  trkRecSimColl = *(trkMuToSimHandle.product());
917 
918  Handle<reco::SimToRecoCollection> staMuToSimHandle;
919  event.getByLabel(staMuAssocLabel_, staMuToSimHandle);
920  staRecSimColl = *(staMuToSimHandle.product());
921 
922  Handle<reco::SimToRecoCollection> glbMuToSimHandle;
923  event.getByLabel(glbMuAssocLabel_, glbMuToSimHandle);
924  glbRecSimColl = *(glbMuToSimHandle.product());
925 */
926  }
927 
928  int glbNTrackerHits = 0;
929  int trkNTrackerHits = 0;
930  int glbNMuonHits = 0;
931  int staNMuonHits = 0;
932  int NTrackerHits = 0;
933  int NMuonHits = 0;
934 
935  // Analyzer reco::Muon
936  for (View<Muon>::const_iterator iMuon = muonColl.begin(); iMuon != muonColl.end(); ++iMuon) {
937  double muonP, muonPt, muonEta, muonPhi;
938  if (usePFMuon_) {
939  muonP = iMuon->pfP4().P();
940  muonPt = iMuon->pfP4().Pt();
941  muonEta = iMuon->pfP4().Eta();
942  muonPhi = iMuon->pfP4().Phi();
943  } else {
944  muonP = iMuon->p();
945  muonPt = iMuon->pt();
946  muonEta = iMuon->eta();
947  muonPhi = iMuon->phi();
948  }
949 
950  //histograms for fractions
951  commonME_->hMuonAllP_->Fill(muonP);
955 
956  if (!selector_(*iMuon))
957  continue;
958  if (wantTightMuon_) {
959  if (!muon::isTightMuon(*iMuon, thePrimaryVertex))
960  continue;
961  }
962 
963  TrackRef Track = iMuon->track();
964 
965  if (Track.isNonnull()) {
970 
971  //ip histograms
974  }
975 
976  if (iMuon->isGlobalMuon()) {
977  Track = iMuon->combinedMuon();
978  glbNTrackerHits = countTrackerHits(*Track);
979  glbNMuonHits = countMuonHits(*Track);
980  } else if (iMuon->isTrackerMuon()) {
981  Track = iMuon->track();
982  trkNTrackerHits = countTrackerHits(*Track);
983  } else {
984  Track = iMuon->standAloneMuon();
985  }
986 
987  NTrackerHits = countTrackerHits(*Track);
988  muonME_->hNTrackerHits_->Fill(NTrackerHits);
989  muonME_->hNTrackerHits_vs_Pt_->Fill(Track->pt(), NTrackerHits);
990  muonME_->hNTrackerHits_vs_Eta_->Fill(Track->eta(), NTrackerHits);
991 
992  NMuonHits = countMuonHits(*Track);
993  muonME_->hNMuonHits_->Fill(NMuonHits);
994  muonME_->hNMuonHits_vs_Pt_->Fill(Track->pt(), NMuonHits);
995  muonME_->hNMuonHits_vs_Eta_->Fill(Track->eta(), NMuonHits);
996 
997  //list of histos for each type
998 
999  // muonME_->hNTrks_->Fill();
1001  muonME_->hNTrksPt_->Fill(Track->pt());
1002 
1003  commonME_->hMuonP_->Fill(muonP);
1007 
1008  if (iMuon->isGlobalMuon()) {
1009  double gtHitPat = iMuon->globalTrack()->hitPattern().numberOfAllHits(HitPattern::TRACK_HITS) -
1010  iMuon->globalTrack()->hitPattern().numberOfValidHits();
1011 
1012  double itHitPat = iMuon->innerTrack()->hitPattern().numberOfAllHits(HitPattern::TRACK_HITS) -
1013  iMuon->innerTrack()->hitPattern().numberOfValidHits();
1014 
1015  double otHitPat = iMuon->outerTrack()->hitPattern().numberOfAllHits(HitPattern::TRACK_HITS) -
1016  iMuon->outerTrack()->hitPattern().numberOfValidHits();
1017 
1021  commonME_->hNDeltaInvalidHitsHitPattern_->Fill(gtHitPat - itHitPat - otHitPat);
1022 
1023  //must be global and standalone
1024  if (iMuon->isStandAloneMuon()) {
1025  commonME_->hStaToGlbDiffNMuonHitsEta_->Fill(Track->eta(), staNMuonHits - glbNMuonHits);
1026  commonME_->hStaToGlbDiffNMuonHitsPt_->Fill(Track->pt(), staNMuonHits - glbNMuonHits);
1027  commonME_->hStaToGlbDiffNMuonHits_->Fill(staNMuonHits - glbNMuonHits);
1028  }
1029 
1030  //must be global and tracker
1031  if (iMuon->isTrackerMuon()) {
1032  commonME_->hTrkToGlbDiffNTrackerHitsEta_->Fill(Track->eta(), trkNTrackerHits - glbNTrackerHits);
1033  commonME_->hTrkToGlbDiffNTrackerHitsPt_->Fill(Track->pt(), trkNTrackerHits - glbNTrackerHits);
1034  commonME_->hTrkToGlbDiffNTrackerHits_->Fill(trkNTrackerHits - glbNTrackerHits);
1035  }
1036  }
1037 
1038  } //end of reco muon loop
1039 
1040  // Associate by hits
1041  for (size_t i = 0; i < nSim; i++) {
1042  TrackingParticleRef simRef = TPrefV[i];
1043  const TrackingParticle* simTP = simRef.get();
1044  if (!tpSelector_(*simTP))
1045  continue;
1046 
1047  //denominators for efficiency plots
1048  const double simP = simRef->p();
1049  const double simPt = simRef->pt();
1050  const double simEta = doAbsEta_ ? fabs(simRef->eta()) : simRef->eta();
1051  const double simPhi = simRef->phi();
1052 
1053  GlobalPoint simVtx(simRef->vertex().x(), simRef->vertex().y(), simRef->vertex().z());
1054  GlobalVector simMom(simRef->momentum().x(), simRef->momentum().y(), simRef->momentum().z());
1055  const double simDxy = -simVtx.x() * sin(simPhi) + simVtx.y() * cos(simPhi);
1056  const double simDz = simVtx.z() - (simVtx.x() * simMom.x() + simVtx.y() * simMom.y()) * simMom.z() / simMom.perp2();
1057 
1058  const unsigned int nSimHits = simRef->numberOfHits();
1059 
1060  muonME_->hSimP_->Fill(simP);
1061  muonME_->hSimPt_->Fill(simPt);
1062  muonME_->hSimEta_->Fill(simEta);
1063  muonME_->hSimPhi_->Fill(simPhi);
1064  muonME_->hSimDxy_->Fill(simDxy);
1065  muonME_->hSimDz_->Fill(simDz);
1066  muonME_->hNSimHits_->Fill(nSimHits);
1067 
1068  // Get sim-reco association for a simRef
1069  vector<pair<RefToBase<Muon>, double> > MuRefV;
1070  if (simToMuonColl.find(simRef) != simToMuonColl.end()) {
1071  MuRefV = simToMuonColl[simRef];
1072 
1073  if (!MuRefV.empty()) {
1074  muonME_->hNSimToReco_->Fill(MuRefV.size());
1075  const Muon* Mu = MuRefV.begin()->first.get();
1076  if (!selector_(*Mu))
1077  continue;
1078  if (wantTightMuon_) {
1079  if (!muon::isTightMuon(*Mu, thePrimaryVertex))
1080  continue;
1081  }
1082 
1083  muonME_->fill(&*simTP, Mu);
1084  }
1085  }
1086  }
1087 }

References reco::MuonToTrackingParticleAssociator::associateMuons(), beamspotToken_, edm::View< T >::begin(), cms::cuda::bs, commonME_, funct::cos(), countMuonHits(), countTrackerHits(), doAbsEta_, doAssoc_, reco::TrackBase::dxy(), reco::TrackBase::dz(), edm::View< T >::end(), relativeConstraints::error, reco::TrackBase::eta(), dqm::impl::MonitorElement::Fill(), RecoMuonValidator::MuonME::fill(), edm::Ref< C, T, F >::get(), RecoMuonValidator::CommonME::hMuonAllEta_, RecoMuonValidator::CommonME::hMuonAllP_, RecoMuonValidator::CommonME::hMuonAllPhi_, RecoMuonValidator::CommonME::hMuonAllPt_, RecoMuonValidator::CommonME::hMuonEta_, RecoMuonValidator::CommonME::hMuonP_, RecoMuonValidator::CommonME::hMuonPhi_, RecoMuonValidator::CommonME::hMuonPt_, RecoMuonValidator::CommonME::hMuonTrackDxy_, RecoMuonValidator::CommonME::hMuonTrackDz_, RecoMuonValidator::CommonME::hMuonTrackEta_, RecoMuonValidator::CommonME::hMuonTrackP_, RecoMuonValidator::CommonME::hMuonTrackPhi_, RecoMuonValidator::CommonME::hMuonTrackPt_, RecoMuonValidator::CommonME::hNDeltaInvalidHitsHitPattern_, RecoMuonValidator::CommonME::hNInvalidHitsGTHitPattern_, RecoMuonValidator::CommonME::hNInvalidHitsITHitPattern_, RecoMuonValidator::CommonME::hNInvalidHitsOTHitPattern_, RecoMuonValidator::MuonME::hNMuon_, RecoMuonValidator::MuonME::hNMuonHits_, RecoMuonValidator::MuonME::hNMuonHits_vs_Eta_, RecoMuonValidator::MuonME::hNMuonHits_vs_Pt_, RecoMuonValidator::MuonME::hNSim_, RecoMuonValidator::MuonME::hNSimHits_, RecoMuonValidator::MuonME::hNSimToReco_, RecoMuonValidator::MuonME::hNTrackerHits_, RecoMuonValidator::MuonME::hNTrackerHits_vs_Eta_, RecoMuonValidator::MuonME::hNTrackerHits_vs_Pt_, RecoMuonValidator::MuonME::hNTrksEta_, RecoMuonValidator::MuonME::hNTrksPt_, RecoMuonValidator::MuonME::hSimDxy_, RecoMuonValidator::MuonME::hSimDz_, RecoMuonValidator::MuonME::hSimEta_, RecoMuonValidator::MuonME::hSimP_, RecoMuonValidator::MuonME::hSimPhi_, RecoMuonValidator::MuonME::hSimPt_, RecoMuonValidator::CommonME::hStaToGlbDiffNMuonHits_, RecoMuonValidator::CommonME::hStaToGlbDiffNMuonHitsEta_, RecoMuonValidator::CommonME::hStaToGlbDiffNMuonHitsPt_, RecoMuonValidator::CommonME::hTrkToGlbDiffNTrackerHits_, RecoMuonValidator::CommonME::hTrkToGlbDiffNTrackerHitsEta_, RecoMuonValidator::CommonME::hTrkToGlbDiffNTrackerHitsPt_, mps_fire::i, muon::isTightMuon(), Mu, muAssocLabel_, muAssocToken_, HLTObjectMonitor_cfi::muonEta, muonLabel_, muonME_, HLTObjectMonitor_cfi::muonPhi, HLTObjectMonitor_cfi::muonPt, HLTTauDQMOffline_cfi::Muons, muonToken_, reco::TrackBase::p(), reco::TrackBase::phi(), position, primvertexToken_, edm::Handle< T >::product(), reco::TrackBase::pt(), edm::RefVector< C, T, F >::push_back(), selector_, simLabel_, simToken_, funct::sin(), edm::RefVector< C, T, F >::size(), edm::View< T >::size(), reco::TrackBase::standAloneMuon, tpRefVector, tpRefVectorToken_, tpSelector_, trackType_, usePFMuon_, wantTightMuon_, and PV3DBase< T, PVType, FrameType >::x().

◆ bookHistograms()

void RecoMuonValidator::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  iRun,
edm::EventSetup const &   
)
overridevirtual

Implements DQMOneEDAnalyzer<>.

Definition at line 692 of file RecoMuonValidator.cc.

694  {
695  // book histograms
696  ibooker.cd();
697 
698  ibooker.setCurrentFolder(subDir_);
699 
700  commonME_ = new CommonME;
701  muonME_ = new MuonME;
702 
703  //commonME
704  const int nHits = 100;
705 
706  // - diffs
707  commonME_->hTrkToGlbDiffNTrackerHits_ = ibooker.book1D("TrkGlbDiffNTrackerHits",
708  "Difference of number of tracker hits (tkMuon - globalMuon)",
709  2 * nHits + 1,
710  -nHits - 0.5,
711  nHits + 0.5);
712  commonME_->hStaToGlbDiffNMuonHits_ = ibooker.book1D("StaGlbDiffNMuonHits",
713  "Difference of number of muon hits (staMuon - globalMuon)",
714  2 * nHits + 1,
715  -nHits - 0.5,
716  nHits + 0.5);
717 
719  ibooker.book2D("TrkGlbDiffNTrackerHitsEta",
720  "Difference of number of tracker hits (tkMuon - globalMuon)",
721  hDim.nBinEta,
722  hDim.minEta,
723  hDim.maxEta,
724  2 * nHits + 1,
725  -nHits - 0.5,
726  nHits + 0.5);
727  commonME_->hStaToGlbDiffNMuonHitsEta_ = ibooker.book2D("StaGlbDiffNMuonHitsEta",
728  "Difference of number of muon hits (staMuon - globalMuon)",
729  hDim.nBinEta,
730  hDim.minEta,
731  hDim.maxEta,
732  2 * nHits + 1,
733  -nHits - 0.5,
734  nHits + 0.5);
735 
736  commonME_->hTrkToGlbDiffNTrackerHitsPt_ = ibooker.book2D("TrkGlbDiffNTrackerHitsPt",
737  "Difference of number of tracker hits (tkMuon - globalMuon)",
738  hDim.nBinPt,
739  hDim.minPt,
740  hDim.maxPt,
741  2 * nHits + 1,
742  -nHits - 0.5,
743  nHits + 0.5);
744  commonME_->hStaToGlbDiffNMuonHitsPt_ = ibooker.book2D("StaGlbDiffNMuonHitsPt",
745  "Difference of number of muon hits (staMuon - globalMuon)",
746  hDim.nBinPt,
747  hDim.minPt,
748  hDim.maxPt,
749  2 * nHits + 1,
750  -nHits - 0.5,
751  nHits + 0.5);
752 
753  // -global muon hit pattern
755  "NInvalidHitsGTHitPattern", "Number of invalid hits on a global track", nHits + 1, -0.5, nHits + 0.5);
757  "NInvalidHitsITHitPattern", "Number of invalid hits on an inner track", nHits + 1, -0.5, nHits + 0.5);
759  "NInvalidHitsOTHitPattern", "Number of invalid hits on an outer track", nHits + 1, -0.5, nHits + 0.5);
761  ibooker.book1D("hNDeltaInvalidHitsHitPattern",
762  "The discrepancy for Number of invalid hits on an global track and inner and outer tracks",
763  2 * nHits + 1,
764  -nHits - 0.5,
765  nHits + 0.5);
766 
767  //muon based kinematics
768  commonME_->hMuonP_ = ibooker.book1D("PMuon", "p of muon", hDim.nBinP, hDim.minP, hDim.maxP);
769  commonME_->hMuonPt_ = ibooker.book1D("PtMuon", "p_{T} of muon", hDim.nBinPt, hDim.minPt, hDim.maxPt);
770  commonME_->hMuonEta_ = ibooker.book1D("EtaMuon", "#eta of muon", hDim.nBinEta, hDim.minEta, hDim.maxEta);
771  commonME_->hMuonPhi_ = ibooker.book1D("PhiMuon", "#phi of muon", hDim.nBinPhi, hDim.minPhi, hDim.maxPhi);
772  //track based kinematics
773  commonME_->hMuonTrackP_ = ibooker.book1D("PMuonTrack", "p of reco muon track", hDim.nBinP, hDim.minP, hDim.maxP);
775  ibooker.book1D("PtMuonTrack", "p_{T} of reco muon track", hDim.nBinPt, hDim.minPt, hDim.maxPt);
777  ibooker.book1D("EtaMuonTrack", "#eta of reco muon track", hDim.nBinEta, hDim.minEta, hDim.maxEta);
779  ibooker.book1D("PhiMuonTrack", "#phi of reco muon track", hDim.nBinPhi, hDim.minPhi, hDim.maxPhi);
781  ibooker.book1D("DxyMuonTrack", "Dxy of reco muon track", hDim.nBinDxy, hDim.minDxy, hDim.maxDxy);
783  ibooker.book1D("DzMuonTrack", "Dz of reco muon track", hDim.nBinDz, hDim.minDz, hDim.maxDz);
784 
785  //histograms for fractions
786  commonME_->hMuonAllP_ = ibooker.book1D("PMuonAll", "p of muons of all types", hDim.nBinP, hDim.minP, hDim.maxP);
788  ibooker.book1D("PtMuonAll", "p_{T} of muon of all types", hDim.nBinPt, hDim.minPt, hDim.maxPt);
790  ibooker.book1D("EtaMuonAll", "#eta of muon of all types", hDim.nBinEta, hDim.minEta, hDim.maxEta);
792  ibooker.book1D("PhiMuonAll", "#phi of muon of all types", hDim.nBinPhi, hDim.minPhi, hDim.maxPhi);
793 
794  muonME_->bookHistos(ibooker, subDir_, hDim);
795 }

References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), RecoMuonValidator::MuonME::bookHistos(), dqm::implementation::NavigatorBase::cd(), commonME_, hDim, RecoMuonValidator::CommonME::hMuonAllEta_, RecoMuonValidator::CommonME::hMuonAllP_, RecoMuonValidator::CommonME::hMuonAllPhi_, RecoMuonValidator::CommonME::hMuonAllPt_, RecoMuonValidator::CommonME::hMuonEta_, RecoMuonValidator::CommonME::hMuonP_, RecoMuonValidator::CommonME::hMuonPhi_, RecoMuonValidator::CommonME::hMuonPt_, RecoMuonValidator::CommonME::hMuonTrackDxy_, RecoMuonValidator::CommonME::hMuonTrackDz_, RecoMuonValidator::CommonME::hMuonTrackEta_, RecoMuonValidator::CommonME::hMuonTrackP_, RecoMuonValidator::CommonME::hMuonTrackPhi_, RecoMuonValidator::CommonME::hMuonTrackPt_, RecoMuonValidator::CommonME::hNDeltaInvalidHitsHitPattern_, RecoMuonValidator::CommonME::hNInvalidHitsGTHitPattern_, RecoMuonValidator::CommonME::hNInvalidHitsITHitPattern_, RecoMuonValidator::CommonME::hNInvalidHitsOTHitPattern_, RecoMuonValidator::CommonME::hStaToGlbDiffNMuonHits_, RecoMuonValidator::CommonME::hStaToGlbDiffNMuonHitsEta_, RecoMuonValidator::CommonME::hStaToGlbDiffNMuonHitsPt_, RecoMuonValidator::CommonME::hTrkToGlbDiffNTrackerHits_, RecoMuonValidator::CommonME::hTrkToGlbDiffNTrackerHitsEta_, RecoMuonValidator::CommonME::hTrkToGlbDiffNTrackerHitsPt_, RecoMuonValidator::HistoDimensions::maxDxy, RecoMuonValidator::HistoDimensions::maxDz, RecoMuonValidator::HistoDimensions::maxEta, RecoMuonValidator::HistoDimensions::maxP, RecoMuonValidator::HistoDimensions::maxPhi, RecoMuonValidator::HistoDimensions::maxPt, RecoMuonValidator::HistoDimensions::minDxy, RecoMuonValidator::HistoDimensions::minDz, RecoMuonValidator::HistoDimensions::minEta, RecoMuonValidator::HistoDimensions::minP, RecoMuonValidator::HistoDimensions::minPhi, RecoMuonValidator::HistoDimensions::minPt, muonME_, RecoMuonValidator::HistoDimensions::nBinDxy, RecoMuonValidator::HistoDimensions::nBinDz, RecoMuonValidator::HistoDimensions::nBinEta, RecoMuonValidator::HistoDimensions::nBinP, RecoMuonValidator::HistoDimensions::nBinPhi, RecoMuonValidator::HistoDimensions::nBinPt, nHits, dqm::implementation::NavigatorBase::setCurrentFolder(), and subDir_.

◆ countMuonHits()

int RecoMuonValidator::countMuonHits ( const reco::Track track) const
virtual

Definition at line 1089 of file RecoMuonValidator.cc.

1089  {
1091 
1092  int count = 0;
1093 
1094  for (trackingRecHit_iterator hit = track.recHitsBegin(); hit != track.recHitsEnd(); ++hit) {
1095  if ((*hit)->isValid()) {
1096  DetId recoid = (*hit)->geographicalId();
1097  if (recoid.det() == DetId::Muon)
1098  count++;
1099  }
1100  }
1101  return count;
1102 }

References submitPVResolutionJobs::count, DetId::det(), DetId::Muon, mps_fire::result, and HLT_FULL_cff::track.

Referenced by analyze().

◆ countTrackerHits()

int RecoMuonValidator::countTrackerHits ( const reco::Track track) const
virtual

Definition at line 1104 of file RecoMuonValidator.cc.

1104  {
1106 
1107  int count = 0;
1108 
1109  for (trackingRecHit_iterator hit = track.recHitsBegin(); hit != track.recHitsEnd(); ++hit) {
1110  if ((*hit)->isValid()) {
1111  DetId recoid = (*hit)->geographicalId();
1112  if (recoid.det() == DetId::Tracker)
1113  count++;
1114  }
1115  }
1116  return count;
1117 }

References submitPVResolutionJobs::count, DetId::det(), mps_fire::result, HLT_FULL_cff::track, and DetId::Tracker.

Referenced by analyze().

◆ dqmBeginRun()

void RecoMuonValidator::dqmBeginRun ( const edm::Run ,
const edm::EventSetup eventSetup 
)
overridevirtual

Reimplemented from DQMOneEDAnalyzer<>.

Definition at line 806 of file RecoMuonValidator.cc.

806 {}

◆ dqmEndRun()

void RecoMuonValidator::dqmEndRun ( edm::Run const &  ,
edm::EventSetup const &   
)
overridevirtual

Reimplemented from DQMOneEDAnalyzer<>.

Definition at line 811 of file RecoMuonValidator.cc.

811  {
812  if (dbe_ && !outputFileName_.empty())
814 }

References dbe_, outputFileName_, and dqm::implementation::DQMStore::save().

Member Data Documentation

◆ beamspotLabel_

edm::InputTag RecoMuonValidator::beamspotLabel_
protected

Definition at line 56 of file RecoMuonValidator.h.

Referenced by RecoMuonValidator().

◆ beamspotToken_

edm::EDGetTokenT<reco::BeamSpot> RecoMuonValidator::beamspotToken_
protected

Definition at line 58 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ commonME_

CommonME* RecoMuonValidator::commonME_
protected

Definition at line 80 of file RecoMuonValidator.h.

Referenced by analyze(), and bookHistograms().

◆ dbe_

DQMStore* RecoMuonValidator::dbe_
protected

Definition at line 66 of file RecoMuonValidator.h.

Referenced by dqmEndRun(), and RecoMuonValidator().

◆ doAbsEta_

bool RecoMuonValidator::doAbsEta_
protected

Definition at line 68 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ doAssoc_

bool RecoMuonValidator::doAssoc_
protected

Definition at line 69 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ hDim

HistoDimensions RecoMuonValidator::hDim
protected

Definition at line 126 of file RecoMuonValidator.h.

Referenced by bookHistograms(), and RecoMuonValidator().

◆ muAssocLabel_

edm::InputTag RecoMuonValidator::muAssocLabel_
protected

Definition at line 53 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ muAssocToken_

edm::EDGetTokenT<reco::MuonToTrackingParticleAssociator> RecoMuonValidator::muAssocToken_
protected

Definition at line 54 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ muonLabel_

edm::InputTag RecoMuonValidator::muonLabel_
protected

Definition at line 45 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ muonME_

MuonME* RecoMuonValidator::muonME_
protected

Definition at line 77 of file RecoMuonValidator.h.

Referenced by analyze(), and bookHistograms().

◆ muonSelection_

std::string RecoMuonValidator::muonSelection_
protected

Definition at line 46 of file RecoMuonValidator.h.

◆ muonToken_

edm::EDGetTokenT<edm::View<reco::Muon> > RecoMuonValidator::muonToken_
protected

Definition at line 51 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ outputFileName_

std::string RecoMuonValidator::outputFileName_
protected

Definition at line 61 of file RecoMuonValidator.h.

Referenced by dqmEndRun(), and RecoMuonValidator().

◆ primvertexLabel_

edm::InputTag RecoMuonValidator::primvertexLabel_
protected

Definition at line 57 of file RecoMuonValidator.h.

Referenced by RecoMuonValidator().

◆ primvertexToken_

edm::EDGetTokenT<reco::VertexCollection> RecoMuonValidator::primvertexToken_
protected

Definition at line 59 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ pset

edm::ParameterSet RecoMuonValidator::pset
protected

Definition at line 64 of file RecoMuonValidator.h.

Referenced by RecoMuonValidator().

◆ selector_

StringCutObjectSelector<reco::Muon> RecoMuonValidator::selector_
private

Definition at line 129 of file RecoMuonValidator.h.

Referenced by analyze().

◆ simLabel_

edm::InputTag RecoMuonValidator::simLabel_
protected

Definition at line 44 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ simToken_

edm::EDGetTokenT<TrackingParticleCollection> RecoMuonValidator::simToken_
protected

Definition at line 47 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ subDir_

std::string RecoMuonValidator::subDir_
protected

Definition at line 62 of file RecoMuonValidator.h.

Referenced by bookHistograms(), and RecoMuonValidator().

◆ subsystemname_

std::string RecoMuonValidator::subsystemname_
protected

Definition at line 63 of file RecoMuonValidator.h.

Referenced by RecoMuonValidator().

◆ tpRefVector

bool RecoMuonValidator::tpRefVector
protected

Definition at line 49 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ tpRefVectorToken_

edm::EDGetTokenT<TrackingParticleRefVector> RecoMuonValidator::tpRefVectorToken_
protected

Definition at line 48 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ tpSelector_

TrackingParticleSelector RecoMuonValidator::tpSelector_
protected

Definition at line 72 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ trackType_

reco::MuonTrackType RecoMuonValidator::trackType_
protected

Definition at line 75 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ usePFMuon_

bool RecoMuonValidator::usePFMuon_
protected

Definition at line 70 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

◆ verbose_

unsigned int RecoMuonValidator::verbose_
protected

Definition at line 42 of file RecoMuonValidator.h.

Referenced by RecoMuonValidator().

◆ wantTightMuon_

bool RecoMuonValidator::wantTightMuon_
private

Definition at line 130 of file RecoMuonValidator.h.

Referenced by analyze(), and RecoMuonValidator().

HLTObjectMonitor_cfi.muonPt
muonPt
Definition: HLTObjectMonitor_cfi.py:82
Vector3DBase
Definition: Vector3DBase.h:8
RecoMuonValidator::MuonME::bookHistos
void bookHistos(DQMStore::IBooker &ibooker, const string &dirName, const HistoDimensions &hDim)
Definition: RecoMuonValidator.cc:82
RecoMuonValidator::HistoDimensions::maxPt
double maxPt
Definition: RecoMuonValidator.h:92
RecoMuonValidator::HistoDimensions::minErrP
double minErrP
Definition: RecoMuonValidator.h:112
RecoMuonValidator::CommonME::hNDeltaInvalidHitsHitPattern_
MEP hNDeltaInvalidHitsHitPattern_
Definition: RecoMuonValidator.cc:542
RecoMuonValidator::HistoDimensions::nBinDxy
unsigned int nBinDxy
Definition: RecoMuonValidator.h:102
RecoMuonValidator::MuonME::hNMuonHits_
MEP hNMuonHits_
Definition: RecoMuonValidator.cc:62
edm::View::begin
const_iterator begin() const
RecoMuonValidator::HistoDimensions::maxDxy
double maxDxy
Definition: RecoMuonValidator.h:103
RecoMuonValidator::MuonME::hSimDz_
MEP hSimDz_
Definition: RecoMuonValidator.cc:32
RecoMuonValidator::HistoDimensions::maxErrPt
double maxErrPt
Definition: RecoMuonValidator.h:113
mps_fire.i
i
Definition: mps_fire.py:428
RecoMuonValidator::HistoDimensions::minP
double minP
Definition: RecoMuonValidator.h:89
HLT_FULL_cff.track
track
Definition: HLT_FULL_cff.py:11724
RecoMuonValidator::simToken_
edm::EDGetTokenT< TrackingParticleCollection > simToken_
Definition: RecoMuonValidator.h:47
edm::Handle::product
T const * product() const
Definition: Handle.h:70
RecoMuonValidator::CommonME::hNInvalidHitsGTHitPattern_
MEP hNInvalidHitsGTHitPattern_
Definition: RecoMuonValidator.cc:541
reco::MuonToTrackingParticleAssociator
Definition: MuonToTrackingParticleAssociator.h:15
HLTObjectMonitor_cfi.muonEta
muonEta
Definition: HLTObjectMonitor_cfi.py:92
RecoMuonValidator::dbe_
DQMStore * dbe_
Definition: RecoMuonValidator.h:66
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
RecoMuonValidator::MuonME::hSimDxy_
MEP hSimDxy_
Definition: RecoMuonValidator.cc:32
reco::MuonToSimCollection
std::map< edm::RefToBase< reco::Muon >, std::vector< std::pair< TrackingParticleRef, double > >, RefToBaseSort > MuonToSimCollection
Definition: MuonTrackType.h:37
reco::TrackBase::p
double p() const
momentum vector magnitude
Definition: TrackBase.h:631
RecoMuonValidator::MuonME::hNMuon_
MEP hNMuon_
Definition: RecoMuonValidator.cc:35
RecoMuonValidator::MuonME::hSimPt_
MEP hSimPt_
Definition: RecoMuonValidator.cc:32
RecoMuonValidator::HistoDimensions::minDz
double minDz
Definition: RecoMuonValidator.h:106
reco::Vertex::Error
math::Error< dimension >::type Error
covariance error matrix (3x3)
Definition: Vertex.h:44
RecoMuonValidator::HistoDimensions::maxErrDz
double maxErrDz
Definition: RecoMuonValidator.h:118
DetId::det
constexpr Detector det() const
get the detector field from this detid
Definition: DetId.h:46
RecoMuonValidator::CommonME::hMuonEta_
MEP hMuonEta_
Definition: RecoMuonValidator.cc:545
RecoMuonValidator::MuonME::hNSimHits_
MEP hNSimHits_
Definition: RecoMuonValidator.cc:59
RecoMuonValidator::commonME_
CommonME * commonME_
Definition: RecoMuonValidator.h:80
RecoMuonValidator::HistoDimensions::nBinP
unsigned int nBinP
Definition: RecoMuonValidator.h:88
dqm::implementation::NavigatorBase::setCurrentFolder
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
edm::Ref::get
T const * get() const
Returns C++ pointer to the item.
Definition: Ref.h:232
reco::OuterTk
Definition: MuonTrackType.h:28
RecoMuonValidator::MuonME::hNMuonHits_vs_Pt_
MEP hNMuonHits_vs_Pt_
Definition: RecoMuonValidator.cc:66
RecoMuonValidator::countMuonHits
virtual int countMuonHits(const reco::Track &track) const
Definition: RecoMuonValidator.cc:1089
RecoMuonValidator::CommonME::hNInvalidHitsOTHitPattern_
MEP hNInvalidHitsOTHitPattern_
Definition: RecoMuonValidator.cc:541
RecoMuonValidator::CommonME::hStaToGlbDiffNMuonHitsPt_
MEP hStaToGlbDiffNMuonHitsPt_
Definition: RecoMuonValidator.cc:538
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
reco::InnerTk
Definition: MuonTrackType.h:28
edm::RefVector< TrackingParticleCollection >
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
RecoMuonValidator::simLabel_
edm::InputTag simLabel_
Definition: RecoMuonValidator.h:44
RecoMuonValidator::HistoDimensions::minErrDxy
double minErrDxy
Definition: RecoMuonValidator.h:117
RecoMuonValidator::HistoDimensions::nBinPhi
unsigned int nBinPhi
Definition: RecoMuonValidator.h:99
RecoMuonValidator::CommonME::hMuonAllPt_
MEP hMuonAllPt_
Definition: RecoMuonValidator.cc:549
edm::Handle< reco::VertexCollection >
relativeConstraints.error
error
Definition: relativeConstraints.py:53
RecoMuonValidator::MuonME::hNTrackerHits_vs_Eta_
MEP hNTrackerHits_vs_Eta_
Definition: RecoMuonValidator.cc:65
RecoMuonValidator::HistoDimensions::minDxy
double minDxy
Definition: RecoMuonValidator.h:103
RecoMuonValidator::HistoDimensions::maxDz
double maxDz
Definition: RecoMuonValidator.h:106
RecoMuonValidator::selector_
StringCutObjectSelector< reco::Muon > selector_
Definition: RecoMuonValidator.h:129
Muon
Definition: Muon.py:1
RecoMuonValidator::HistoDimensions::minErrPhi
double minErrPhi
Definition: RecoMuonValidator.h:116
edm::Ref< TrackCollection >
funct::sin
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
RecoMuonValidator::trackType_
reco::MuonTrackType trackType_
Definition: RecoMuonValidator.h:75
reco::TrackBase::pt
double pt() const
track transverse momentum
Definition: TrackBase.h:637
DetId
Definition: DetId.h:17
RecoMuonValidator::HistoDimensions::minPt
double minPt
Definition: RecoMuonValidator.h:92
RecoMuonValidator::HistoDimensions::maxErrP
double maxErrP
Definition: RecoMuonValidator.h:112
RecoMuonValidator::HistoDimensions::maxErrEta
double maxErrEta
Definition: RecoMuonValidator.h:115
reco::TrackBase::standAloneMuon
Definition: TrackBase.h:108
RecoMuonValidator::CommonME::hMuonAllP_
MEP hMuonAllP_
Definition: RecoMuonValidator.cc:549
RecoMuonValidator::primvertexToken_
edm::EDGetTokenT< reco::VertexCollection > primvertexToken_
Definition: RecoMuonValidator.h:59
cms::cuda::bs
bs
Definition: HistoContainer.h:76
RecoMuonValidator::CommonME::hStaToGlbDiffNMuonHitsEta_
MEP hStaToGlbDiffNMuonHitsEta_
Definition: RecoMuonValidator.cc:537
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
RecoMuonValidator::HistoDimensions::minErrPt
double minErrPt
Definition: RecoMuonValidator.h:113
RecoMuonValidator::HistoDimensions::nBinEta
unsigned int nBinEta
Definition: RecoMuonValidator.h:96
RecoMuonValidator::HistoDimensions::maxErrQPt
double maxErrQPt
Definition: RecoMuonValidator.h:114
RecoMuonValidator::countTrackerHits
virtual int countTrackerHits(const reco::Track &track) const
Definition: RecoMuonValidator.cc:1104
nHits
const caConstants::TupleMultiplicity *__restrict__ const HitsOnGPU *__restrict__ double *__restrict__ float *__restrict__ double *__restrict__ uint32_t nHits
Definition: BrokenLineFitOnGPU.h:27
RecoMuonValidator::tpRefVectorToken_
edm::EDGetTokenT< TrackingParticleRefVector > tpRefVectorToken_
Definition: RecoMuonValidator.h:48
edm::ParameterSet::dump
std::string dump(unsigned int indent=0) const
Definition: ParameterSet.cc:832
RecoMuonValidator::HistoDimensions::wPull
double wPull
Definition: RecoMuonValidator.h:109
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
TrackingParticle
Monte Carlo truth information used for tracking validation.
Definition: TrackingParticle.h:29
reco::BeamSpot
Definition: BeamSpot.h:21
RecoMuonValidator::tpSelector_
TrackingParticleSelector tpSelector_
Definition: RecoMuonValidator.h:72
reco::modules::TrackingParticleSelector
SingleObjectSelector< TrackingParticleCollection, ::TrackingParticleSelector > TrackingParticleSelector
Definition: TrackingParticleSelector.cc:17
reco::Track
Definition: Track.h:27
dqm::implementation::NavigatorBase::cd
virtual void cd()
Definition: DQMStore.cc:29
RecoMuonValidator::MuonME::hSimPhi_
MEP hSimPhi_
Definition: RecoMuonValidator.cc:32
reco::SimToMuonCollection
std::map< TrackingParticleRef, std::vector< std::pair< edm::RefToBase< reco::Muon >, double > > > SimToMuonCollection
Definition: MuonTrackType.h:38
RecoMuonValidator::HistoDimensions::nTrks
unsigned int nTrks
Definition: RecoMuonValidator.h:120
submitPVResolutionJobs.count
count
Definition: submitPVResolutionJobs.py:352
RecoMuonValidator::subDir_
std::string subDir_
Definition: RecoMuonValidator.h:62
RecoMuonValidator::HistoDimensions::maxP
double maxP
Definition: RecoMuonValidator.h:89
RecoMuonValidator::HistoDimensions::minErrQPt
double minErrQPt
Definition: RecoMuonValidator.h:114
reco::TrackBase::dz
double dz() const
dz parameter (= dsz/cos(lambda)). This is the track z0 w.r.t (0,0,0) only if the refPoint is close to...
Definition: TrackBase.h:622
RecoMuonValidator::muonME_
MuonME * muonME_
Definition: RecoMuonValidator.h:77
RecoMuonValidator::hDim
HistoDimensions hDim
Definition: RecoMuonValidator.h:126
Point3DBase< float, GlobalTag >
reco::GlobalTk
Definition: MuonTrackType.h:28
RecoMuonValidator::beamspotToken_
edm::EDGetTokenT< reco::BeamSpot > beamspotToken_
Definition: RecoMuonValidator.h:58
dqm::implementation::DQMStore::save
DQM_DEPRECATED void save(std::string const &filename, std::string const &path="")
Definition: DQMStore.cc:784
reco::TrackBase::phi
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:649
RecoMuonValidator::doAbsEta_
bool doAbsEta_
Definition: RecoMuonValidator.h:68
RecoMuonValidator::CommonME::hMuonAllPhi_
MEP hMuonAllPhi_
Definition: RecoMuonValidator.cc:549
RecoMuonValidator::HistoDimensions::minErrEta
double minErrEta
Definition: RecoMuonValidator.h:115
edm::OwnVector::const_iterator
Definition: OwnVector.h:41
edm::View::size
size_type size() const
HLTTauDQMOffline_cfi.Muons
Muons
Definition: HLTTauDQMOffline_cfi.py:51
RecoMuonValidator::CommonME::hMuonP_
MEP hMuonP_
Definition: RecoMuonValidator.cc:545
RecoMuonValidator::MuonME::hSimP_
MEP hSimP_
Definition: RecoMuonValidator.cc:32
RecoMuonValidator::muAssocLabel_
edm::InputTag muAssocLabel_
Definition: RecoMuonValidator.h:53
RecoMuonValidator::HistoDimensions::nBinPull
unsigned int nBinPull
Definition: RecoMuonValidator.h:108
edm::View
Definition: CaloClusterFwd.h:14
RecoMuonValidator::HistoDimensions::nBinErr
unsigned int nBinErr
Definition: RecoMuonValidator.h:111
edm::ParameterSet
Definition: ParameterSet.h:47
DetId::Tracker
Definition: DetId.h:25
RecoMuonValidator::HistoDimensions::usePFMuon
bool usePFMuon
Definition: RecoMuonValidator.h:123
RecoMuonValidator::MuonME::hNSim_
MEP hNSim_
Definition: RecoMuonValidator.cc:35
RecoMuonValidator::CommonME::hNInvalidHitsITHitPattern_
MEP hNInvalidHitsITHitPattern_
Definition: RecoMuonValidator.cc:541
TrackingRecHit::ConstRecHitContainer
std::vector< ConstRecHitPointer > ConstRecHitContainer
Definition: TrackingRecHit.h:32
RecoMuonValidator::muonLabel_
edm::InputTag muonLabel_
Definition: RecoMuonValidator.h:45
RecoMuonValidator::outputFileName_
std::string outputFileName_
Definition: RecoMuonValidator.h:61
muon::isTightMuon
bool isTightMuon(const reco::Muon &, const reco::Vertex &)
Definition: MuonSelectors.cc:880
RecoMuonValidator::usePFMuon_
bool usePFMuon_
Definition: RecoMuonValidator.h:70
RecoMuonValidator::HistoDimensions::maxErrDxy
double maxErrDxy
Definition: RecoMuonValidator.h:117
reco::TrackBase::eta
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:652
position
static int position[264][3]
Definition: ReadPGInfo.cc:289
RecoMuonValidator::CommonME::hMuonTrackPt_
MEP hMuonTrackPt_
Definition: RecoMuonValidator.cc:547
HLTObjectMonitor_cfi.muonPhi
muonPhi
Definition: HLTObjectMonitor_cfi.py:102
edm::Service
Definition: Service.h:30
RecoMuonValidator::verbose_
unsigned int verbose_
Definition: RecoMuonValidator.h:42
RecoMuonValidator::CommonME::hStaToGlbDiffNMuonHits_
MEP hStaToGlbDiffNMuonHits_
Definition: RecoMuonValidator.cc:536
RecoMuonValidator::CommonME::hTrkToGlbDiffNTrackerHitsPt_
MEP hTrkToGlbDiffNTrackerHitsPt_
Definition: RecoMuonValidator.cc:538
RecoMuonValidator::doAssoc_
bool doAssoc_
Definition: RecoMuonValidator.h:69
RecoMuonValidator::CommonME::hMuonTrackPhi_
MEP hMuonTrackPhi_
Definition: RecoMuonValidator.cc:547
edm::RefVector::push_back
void push_back(value_type const &ref)
Add a Ref<C, T> to the RefVector.
Definition: RefVector.h:67
edm::RefToBaseVector
Definition: EDProductfwd.h:29
RecoMuonValidator::HistoDimensions::maxErrPhi
double maxErrPhi
Definition: RecoMuonValidator.h:116
RecoMuonValidator::MuonME::hNTrackerHits_
MEP hNTrackerHits_
Definition: RecoMuonValidator.cc:62
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
RecoMuonValidator::CommonME::hMuonPt_
MEP hMuonPt_
Definition: RecoMuonValidator.cc:545
PbPb_ZMuSkimMuonDPG_cff.trackType
trackType
Definition: PbPb_ZMuSkimMuonDPG_cff.py:36
RecoMuonValidator::HistoDimensions::nAssoc
unsigned int nAssoc
Definition: RecoMuonValidator.h:120
RecoMuonValidator::MuonME::fill
void fill(const TrackingParticle *simRef, const Muon *muonRef)
Definition: RecoMuonValidator.cc:379
RecoMuonValidator::subsystemname_
std::string subsystemname_
Definition: RecoMuonValidator.h:63
RecoMuonValidator::HistoDimensions::nBinPt
unsigned int nBinPt
Definition: RecoMuonValidator.h:91
Mu
Definition: L1GtObject.h:29
reco::Vertex::Point
math::XYZPoint Point
point in the space
Definition: Vertex.h:40
RecoMuonValidator::HistoDimensions::nBinDz
unsigned int nBinDz
Definition: RecoMuonValidator.h:105
RecoMuonValidator::CommonME::hMuonTrackDxy_
MEP hMuonTrackDxy_
Definition: RecoMuonValidator.cc:547
edm::LogVerbatim
Log< level::Info, true > LogVerbatim
Definition: MessageLogger.h:128
RecoMuonValidator::muAssocToken_
edm::EDGetTokenT< reco::MuonToTrackingParticleAssociator > muAssocToken_
Definition: RecoMuonValidator.h:54
RecoMuonValidator::beamspotLabel_
edm::InputTag beamspotLabel_
Definition: RecoMuonValidator.h:56
RecoMuonValidator::CommonME::hMuonPhi_
MEP hMuonPhi_
Definition: RecoMuonValidator.cc:545
RecoMuonValidator::CommonME::hMuonTrackEta_
MEP hMuonTrackEta_
Definition: RecoMuonValidator.cc:547
RecoMuonValidator::HistoDimensions::minErrDz
double minErrDz
Definition: RecoMuonValidator.h:118
dqm::implementation::IBooker::book2D
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:177
reco::MuonToTrackingParticleAssociator::associateMuons
void associateMuons(MuonToSimCollection &recoToSim, SimToMuonCollection &simToReco, const edm::RefToBaseVector< reco::Muon > &muons, MuonTrackType type, const edm::RefVector< TrackingParticleCollection > &tpColl) const
Definition: MuonToTrackingParticleAssociator.h:25
Exception
Definition: hltDiff.cc:245
RecoMuonValidator::CommonME::hTrkToGlbDiffNTrackerHitsEta_
MEP hTrkToGlbDiffNTrackerHitsEta_
Definition: RecoMuonValidator.cc:537
RecoMuonValidator::CommonME::hMuonTrackP_
MEP hMuonTrackP_
Definition: RecoMuonValidator.cc:547
RecoMuonValidator::tpRefVector
bool tpRefVector
Definition: RecoMuonValidator.h:49
RecoMuonValidator::MuonME::hNMuonHits_vs_Eta_
MEP hNMuonHits_vs_Eta_
Definition: RecoMuonValidator.cc:66
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
RecoMuonValidator::HistoDimensions::minEta
double minEta
Definition: RecoMuonValidator.h:97
RecoMuonValidator::MuonME::hSimEta_
MEP hSimEta_
Definition: RecoMuonValidator.cc:32
edm::View::const_iterator
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
Definition: View.h:86
Pi
const double Pi
Definition: CosmicMuonParameters.h:18
RecoMuonValidator::HistoDimensions::minPhi
double minPhi
Definition: RecoMuonValidator.h:100
RecoMuonValidator::CommonME::hMuonAllEta_
MEP hMuonAllEta_
Definition: RecoMuonValidator.cc:549
mps_fire.result
result
Definition: mps_fire.py:311
DetId::Muon
Definition: DetId.h:26
edm::View::end
const_iterator end() const
RecoMuonValidator::HistoDimensions::maxEta
double maxEta
Definition: RecoMuonValidator.h:97
TrackingParticleRef
edm::Ref< TrackingParticleCollection > TrackingParticleRef
Definition: TrackingParticleFwd.h:12
RecoMuonValidator::MuonME::hNSimToReco_
MEP hNSimToReco_
Definition: RecoMuonValidator.cc:60
RecoMuonValidator::primvertexLabel_
edm::InputTag primvertexLabel_
Definition: RecoMuonValidator.h:57
RecoMuonValidator::CommonME::hMuonTrackDz_
MEP hMuonTrackDz_
Definition: RecoMuonValidator.cc:547
RecoMuonValidator::HistoDimensions::nDof
unsigned int nDof
Definition: RecoMuonValidator.h:121
RecoMuonValidator::HistoDimensions::maxPhi
double maxPhi
Definition: RecoMuonValidator.h:100
RecoMuonValidator::HistoDimensions::doAbsEta
bool doAbsEta
Definition: RecoMuonValidator.h:94
edm::RefVector::size
size_type size() const
Size of the RefVector.
Definition: RefVector.h:102
RecoMuonValidator::MuonME::hNTrksPt_
MEP hNTrksPt_
Definition: RecoMuonValidator.cc:38
reco::TrackBase::dxy
double dxy() const
dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close t...
Definition: TrackBase.h:608
reco::Segments
Definition: MuonTrackType.h:28
RecoMuonValidator::wantTightMuon_
bool wantTightMuon_
Definition: RecoMuonValidator.h:130
RecoMuonValidator::pset
edm::ParameterSet pset
Definition: RecoMuonValidator.h:64
RecoMuonValidator::CommonME::hTrkToGlbDiffNTrackerHits_
MEP hTrkToGlbDiffNTrackerHits_
Definition: RecoMuonValidator.cc:536
edm::InputTag
Definition: InputTag.h:15
reco::Vertex
Definition: Vertex.h:35
RecoMuonValidator::MuonME::hNTrksEta_
MEP hNTrksEta_
Definition: RecoMuonValidator.cc:38
hit
Definition: SiStripHitEffFromCalibTree.cc:88
dqm::implementation::IBooker::book1D
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
RecoMuonValidator::muonToken_
edm::EDGetTokenT< edm::View< reco::Muon > > muonToken_
Definition: RecoMuonValidator.h:51
RecoMuonValidator::MuonME::hNTrackerHits_vs_Pt_
MEP hNTrackerHits_vs_Pt_
Definition: RecoMuonValidator.cc:65