Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Latest updates in DQM/TrackingMonitorSource for data/MC comparisons for the Tracking POG #41787

Merged
merged 7 commits into from
Jun 2, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions DQM/TrackingMonitorSource/interface/AlcaRecoTrackSelector.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#ifndef DQM_TrackingMonitorSource_ALCARECOTRACKSELECTOR_H
#define DQM_TrackingMonitorSource_ALCARECOTRACKSELECTOR_H

// system include files
#include <memory>
#include <algorithm>

// user include files
#include "FWCore/Framework/interface/Frameworkfwd.h"
#include "FWCore/Framework/interface/global/EDProducer.h"
#include "FWCore/Utilities/interface/InputTag.h"
#include "FWCore/Utilities/interface/StreamID.h"

#include "FWCore/Framework/interface/Event.h"

#include "FWCore/ParameterSet/interface/ParameterSet.h"

#include "DataFormats/TrackReco/interface/Track.h"
#include "DataFormats/TrackReco/interface/TrackFwd.h"

// // class declaration //

class AlcaRecoTrackSelector : public edm::global::EDProducer<> {
public:
explicit AlcaRecoTrackSelector(const edm::ParameterSet&);
~AlcaRecoTrackSelector() override = default;

private:
void produce(edm::StreamID streamID, edm::Event& iEvent, edm::EventSetup const& iSetup) const override;

const edm::InputTag tracksTag_;
const edm::EDGetTokenT<reco::TrackCollection> tracksToken_;
const double ptmin_;
const double pmin_;
const double etamin_;
const double etamax_;
const int nhits_;
};
#endif
39 changes: 39 additions & 0 deletions DQM/TrackingMonitorSource/interface/TrackMultiplicityFilter.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#ifndef DQM_TrackingMonitorSource_TrackMultiplicityFilter_H
#define DQM_TrackingMonitorSource_TrackMultiplicityFilter_H

// system include files
#include <memory>
#include <algorithm>

// user include files
#include "FWCore/Framework/interface/Frameworkfwd.h"
#include "FWCore/Framework/interface/global/EDFilter.h"

#include "FWCore/Framework/interface/Event.h"
#include "FWCore/Framework/interface/MakerMacros.h"

#include "DataFormats/TrackReco/interface/Track.h"
#include "DataFormats/TrackReco/interface/TrackFwd.h"

#include "CommonTools/Utils/interface/StringCutObjectSelector.h"
//
// class declaration
//

class TrackMultiplicityFilter : public edm::global::EDFilter<> {
public:
explicit TrackMultiplicityFilter(const edm::ParameterSet&);
~TrackMultiplicityFilter() override = default;

private:
bool filter(edm::StreamID, edm::Event&, const edm::EventSetup&) const override;

// ----------member data ---------------------------
const edm::InputTag tracksTag_;
edm::EDGetTokenT<reco::TrackCollection> tracksToken_;

StringCutObjectSelector<reco::Track> selector_;

unsigned int nmin_;
};
#endif
97 changes: 97 additions & 0 deletions DQM/TrackingMonitorSource/interface/TtbarTrackProducer.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
#ifndef DQM_TrackingMonitorSource_TtbarTrackProducer_h
#define DQM_TrackingMonitorSource_TtbarTrackProducer_h

#include <memory>

#include "FWCore/Framework/interface/Frameworkfwd.h"
#include "FWCore/Framework/interface/global/EDProducer.h"
#include "FWCore/Utilities/interface/StreamID.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/Utilities/interface/InputTag.h"

// Electron selector
#include "DataFormats/GsfTrackReco/interface/GsfTrack.h"
#include "DataFormats/EgammaCandidates/interface/GsfElectron.h"
#include "DataFormats/EgammaCandidates/interface/Electron.h"
#include "DataFormats/EgammaReco/interface/BasicCluster.h"
#include "DataFormats/GsfTrackReco/interface/GsfTrack.h"

// Muon Selector
#include "DataFormats/MuonReco/interface/Muon.h"
#include "DataFormats/MuonReco/interface/MuonFwd.h"
#include "DataFormats/MuonReco/interface/MuonSelectors.h"

// Jet Selector
#include "DataFormats/JetReco/interface/PFJet.h"
#include "DataFormats/JetReco/interface/PFJetCollection.h"
#include "DataFormats/JetReco/interface/PileupJetIdentifier.h"
#include "DataFormats/PatCandidates/interface/Jet.h"

// b-jet Selector
#include "DataFormats/BTauReco/interface/JetTag.h"

// Met Selector
#include "DataFormats/METReco/interface/PFMET.h"
#include "DataFormats/METReco/interface/PFMETCollection.h"

class TtbarTrackProducer : public edm::global::EDProducer<> {
public:
explicit TtbarTrackProducer(const edm::ParameterSet&);
~TtbarTrackProducer() override;

void produce(edm::StreamID streamID, edm::Event& iEvent, edm::EventSetup const& iSetup) const override;

private:
// ----------member data ---------------------------

const edm::InputTag electronTag_;
const edm::InputTag jetsTag_;
const edm::InputTag bjetsTag_;
const edm::InputTag pfmetTag_;
const edm::InputTag muonTag_;
const edm::InputTag bsTag_;
const edm::EDGetTokenT<reco::GsfElectronCollection> electronToken_;
const edm::EDGetTokenT<reco::PFJetCollection> jetsToken_;
const edm::EDGetTokenT<reco::JetTagCollection> bjetsToken_;
const edm::EDGetTokenT<reco::PFMETCollection> pfmetToken_;
const edm::EDGetTokenT<reco::MuonCollection> muonToken_;
const edm::EDGetTokenT<reco::BeamSpot> bsToken_;

const double maxEtaEle_;
const double maxEtaMu_;
const double minPt_;
const double maxDeltaPhiInEB_;
const double maxDeltaEtaInEB_;
const double maxHOEEB_;
const double maxSigmaiEiEEB_;
const double maxDeltaPhiInEE_;
const double maxDeltaEtaInEE_;
const double maxHOEEE_;
const double maxSigmaiEiEEE_;

const double minChambers_;

const double minEta_Jets_;

const double btagFactor_;

const double maxNormChi2_;
const double maxD0_;
const double maxDz_;
const int minPixelHits_;
const int minStripHits_;
const double maxIsoEle_;
const double maxIsoMu_;
const double minPtHighestMu_;
const double minPtHighestEle_;
const double minPtHighest_Jets_;
const double minPt_Jets_;
const double minInvMass_;
const double maxInvMass_;
const double minMet_;
const double maxMet_;
const double minWmass_;
const double maxWmass_;
};
#endif
1 change: 0 additions & 1 deletion DQM/TrackingMonitorSource/interface/WtoLNuSelector.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
#include "DataFormats/EgammaCandidates/interface/GsfElectronFwd.h"
#include "DataFormats/METReco/interface/PFMETFwd.h"
#include "DataFormats/BeamSpot/interface/BeamSpot.h"

#include "TLorentzVector.h"

// Forward declaration
Expand Down
79 changes: 79 additions & 0 deletions DQM/TrackingMonitorSource/interface/ZEEDetails.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
#ifndef DQM_TrackingMonitorSource_ZEEDetails_h
#define DQM_TrackingMonitorSource_ZEEDetails_h

#include <string>
#include <vector>
#include <map>
#include <set>
#include <iostream>
#include <fstream>
#include <memory>

#include "FWCore/Framework/interface/Frameworkfwd.h"
#include "FWCore/Framework/interface/one/EDAnalyzer.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/Framework/interface/MakerMacros.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/Utilities/interface/InputTag.h"
#include "FWCore/Framework/interface/ESHandle.h"
#include "DQMServices/Core/interface/DQMEDAnalyzer.h"
#include "FWCore/ServiceRegistry/interface/Service.h"
#include "DataFormats/GsfTrackReco/interface/GsfTrack.h"
#include "DataFormats/EgammaCandidates/interface/GsfElectron.h"
#include "DataFormats/EgammaCandidates/interface/Electron.h"
#include "SimDataFormats/PileupSummaryInfo/interface/PileupSummaryInfo.h"
#include "DataFormats/VertexReco/interface/Vertex.h"
#include "DataFormats/VertexReco/interface/VertexFwd.h"

class ZEEDetails : public DQMEDAnalyzer {
public:
ZEEDetails(const edm::ParameterSet&);

protected:
void analyze(edm::Event const& iEvent, edm::EventSetup const& iSetup) override;
void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;

private:
std::string moduleName_;
std::string folderName_;

const edm::InputTag electronTag_;
const edm::InputTag bsTag_;
const edm::InputTag puSummaryTag_;
const edm::InputTag vertexTag_;
const edm::EDGetTokenT<reco::GsfElectronCollection> electronToken_;
const edm::EDGetTokenT<reco::BeamSpot> bsToken_;
const edm::EDGetTokenT<std::vector<PileupSummaryInfo> > puSummaryToken_;
const edm::EDGetTokenT<reco::VertexCollection> vertexToken_;

const double maxEta_;
const double minPt_;
const double maxDeltaPhiInEB_;
const double maxDeltaEtaInEB_;
const double maxHOEEB_;
const double maxSigmaiEiEEB_;
const double maxDeltaPhiInEE_;
const double maxDeltaEtaInEE_;
const double maxHOEEE_;
const double maxSigmaiEiEEE_;
const double maxNormChi2_;
const double maxD0_;
const double maxDz_;
const int minPixelHits_;
const int minStripHits_;
const double maxIso_;
const double minPtHighest_;
const double minInvMass_;
const double maxInvMass_;
const std::string trackQuality_;
std::vector<float> vpu_;
std::vector<float> vtrack_;
bool isMC_;
bool doPUCorrection_;
std::string puScaleFactorFile_;

MonitorElement* Zpt_;
MonitorElement* ZInvMass_;
MonitorElement* EoverP_;
};
#endif
51 changes: 51 additions & 0 deletions DQM/TrackingMonitorSource/interface/ZtoEEElectronTrackProducer.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
#ifndef DQM_TrackingMonitorSource_ZtoEEElectronTrackProducer_h
#define DQM_TrackingMonitorSource_ZtoEEElectronTrackProducer_h

#include <memory>

#include "FWCore/Framework/interface/Frameworkfwd.h"
#include "FWCore/Framework/interface/global/EDProducer.h"
#include "FWCore/Utilities/interface/StreamID.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/Utilities/interface/InputTag.h"
#include "DataFormats/GsfTrackReco/interface/GsfTrack.h"
#include "DataFormats/EgammaCandidates/interface/GsfElectron.h"
#include "DataFormats/EgammaCandidates/interface/Electron.h"
#include "DataFormats/BeamSpot/interface/BeamSpot.h"

class ZtoEEElectronTrackProducer : public edm::global::EDProducer<> {
public:
explicit ZtoEEElectronTrackProducer(const edm::ParameterSet&);
~ZtoEEElectronTrackProducer() override;

void produce(edm::StreamID streamID, edm::Event& iEvent, edm::EventSetup const& iSetup) const override;

private:
// ----------member data ---------------------------
const edm::InputTag electronTag_;
const edm::InputTag bsTag_;
const edm::EDGetTokenT<reco::GsfElectronCollection> electronToken_;
const edm::EDGetTokenT<reco::BeamSpot> bsToken_;

const double maxEta_;
const double minPt_;
const double maxDeltaPhiInEB_;
const double maxDeltaEtaInEB_;
const double maxHOEEB_;
const double maxSigmaiEiEEB_;
const double maxDeltaPhiInEE_;
const double maxDeltaEtaInEE_;
const double maxHOEEE_;
const double maxSigmaiEiEEE_;
const double maxNormChi2_;
const double maxD0_;
const double maxDz_;
const int minPixelHits_;
const int minStripHits_;
const double maxIso_;
const double minPtHighest_;
const double minInvMass_;
const double maxInvMass_;
};
#endif
47 changes: 47 additions & 0 deletions DQM/TrackingMonitorSource/interface/ZtoMMMuonTrackProducer.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
#ifndef DQM_TrackingMonitorSource_ZtoMMMuonTrackProducer_h
#define DQM_TrackingMonitorSource_ZtoMMMuonTrackProducer_h

#include <memory>

#include "FWCore/Framework/interface/Frameworkfwd.h"
#include "FWCore/Framework/interface/global/EDProducer.h"
#include "FWCore/Utilities/interface/StreamID.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/Utilities/interface/InputTag.h"
#include "DataFormats/MuonReco/interface/Muon.h"
#include "DataFormats/MuonReco/interface/MuonFwd.h"
#include "DataFormats/MuonReco/interface/MuonSelectors.h"
#include "DataFormats/BeamSpot/interface/BeamSpot.h"

class ZtoMMMuonTrackProducer : public edm::global::EDProducer<> {
public:
explicit ZtoMMMuonTrackProducer(const edm::ParameterSet&);
~ZtoMMMuonTrackProducer() override;

void produce(edm::StreamID streamID, edm::Event& iEvent, edm::EventSetup const& iSetup) const override;

private:
// ----------member data ---------------------------

const edm::InputTag muonTag_;
const edm::InputTag bsTag_;
const edm::EDGetTokenT<reco::MuonCollection> muonToken_;
const edm::EDGetTokenT<reco::BeamSpot> bsToken_;

const double maxEta_;
const double minPt_;
const double maxNormChi2_;
const double maxD0_;
const double maxDz_;
const int minPixelHits_;
const int minStripHits_;
const int minChambers_;
const int minMatches_;
const int minMatchedStations_;
const double maxIso_;
const double minPtHighest_;
const double minInvMass_;
const double maxInvMass_;
};
#endif
Loading