Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
MuonAnalysis
MomentumScaleCalibration
plugins
ResolutionAnalyzer.h
Go to the documentation of this file.
1
#ifndef RESOLUTIONANALYZER_HH
2
#define RESOLUTIONANALYZER_HH
3
4
// -*- C++ -*-
5
//
6
// Package: ResolutionAnalyzer
7
// Class: ResolutionAnalyzer
8
//
16
//
17
// Original Author: Marco De Mattia
18
// Created: Thu Sep 11 12:16:00 CEST 2008
19
//
20
//
21
22
// system include files
23
#include <memory>
24
#include <string>
25
#include <vector>
26
27
// user include files
28
#include "
FWCore/Framework/interface/Frameworkfwd.h
"
29
#include "
FWCore/Framework/interface/EDAnalyzer.h
"
30
#include "
FWCore/Framework/interface/Event.h
"
31
#include "
FWCore/Framework/interface/MakerMacros.h
"
32
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
33
34
#include "
DataFormats/TrackReco/interface/Track.h
"
35
#include "
DataFormats/MuonReco/interface/Muon.h
"
36
#include "
DataFormats/MuonReco/interface/MuonFwd.h
"
37
#include "
DataFormats/Candidate/interface/Candidate.h
"
38
#include "
RecoMuon/TrackingTools/interface/MuonPatternRecoDumper.h
"
39
#include "
RecoMuon/TrackingTools/interface/MuonServiceProxy.h
"
40
41
#include "HepPDT/defs.h"
42
#include "HepPDT/TableBuilder.hh"
43
#include "HepPDT/ParticleDataTable.hh"
44
45
#include "
DataFormats/HepMCCandidate/interface/GenParticleFwd.h
"
46
#include "HepMC/GenParticle.h"
47
#include "HepMC/GenEvent.h"
48
// #include "SimDataFormats/HepMCProduct/interface/HepMCProduct.h"
49
#include "
SimDataFormats/GeneratorProducts/interface/HepMCProduct.h
"
50
51
#include "
SimGeneral/HepPDTRecord/interface/ParticleDataTable.h
"
52
#include "
SimDataFormats/Track/interface/SimTrackContainer.h
"
53
#include "
SimDataFormats/Vertex/interface/SimVertexContainer.h
"
54
55
#include <CLHEP/Vector/LorentzVector.h>
56
57
#include "
DataFormats/Candidate/interface/LeafCandidate.h
"
58
59
#include "
Histograms.h
"
60
#include "
MuScleFitUtils.h
"
61
//
62
// class decleration
63
//
64
65
class
ResolutionAnalyzer
:
public
edm::EDAnalyzer
{
66
public
:
67
explicit
ResolutionAnalyzer
(
const
edm::ParameterSet
&);
68
~ResolutionAnalyzer
()
override
;
69
70
private
:
71
void
analyze
(
const
edm::Event
&,
const
edm::EventSetup
&)
override
;
72
void
endJob
()
override
{};
73
74
template
<
typename
T>
75
std::vector<reco::LeafCandidate>
fillMuonCollection
(
const
std::vector<T>&
tracks
) {
76
std::vector<reco::LeafCandidate>
muons
;
77
typename
std::vector<T>::const_iterator
track
;
78
for
(track = tracks.begin(); track != tracks.end(); ++
track
) {
79
reco::Particle::LorentzVector
mu
(
80
track->px(), track->py(), track->pz(),
sqrt
(track->p() * track->p() +
MuScleFitUtils::mMu2
));
81
MuScleFitUtils::goodmuon
++;
82
if
(
debug_
> 0)
83
std::cout
<< std::setprecision(9) <<
"Muon #"
<<
MuScleFitUtils::goodmuon
84
<<
": initial value Pt = "
<< mu.Pt() << std::endl;
85
reco::LeafCandidate
muon
(track->charge(),
mu
);
86
// Store muon
87
// ----------
88
muons.push_back(
muon
);
89
}
90
return
muons
;
91
}
92
94
void
fillHistoMap
();
96
void
writeHistoMap
();
98
bool
checkDeltaR
(
const
reco::Particle::LorentzVector
& genMu,
const
reco::Particle::LorentzVector
& recMu);
99
100
// ----------member data ---------------------------
101
102
// Collections labels
103
// ------------------
104
edm::InputTag
theMuonLabel_
;
105
106
int
theMuonType_
;
107
std::string
theRootFileName_
;
108
std::string
theCovariancesRootFileName_
;
109
bool
debug_
;
110
std::map<std::string, Histograms*>
mapHisto_
;
111
TFile*
outputFile_
;
112
113
int
eventCounter_
;
114
bool
resonance_
;
115
bool
readCovariances_
;
116
117
TString
treeFileName_
;
118
int32_t
maxEvents_
;
119
120
double
ptMax_
;
121
122
HCovarianceVSxy
*
massResolutionVsPtEta_
;
123
TH2D*
recoPtVsgenPt_
;
124
TH2D*
recoPtVsgenPtEta12_
;
125
TH1D*
deltaPtOverPt_
;
126
TH1D*
deltaPtOverPtForEta12_
;
127
};
128
129
#endif // RESOLUTIONANALYZER_HH
ResolutionAnalyzer::eventCounter_
int eventCounter_
Definition:
ResolutionAnalyzer.h:113
reco::LeafCandidate
Definition:
LeafCandidate.h:16
ResolutionAnalyzer::maxEvents_
int32_t maxEvents_
Definition:
ResolutionAnalyzer.h:118
Histograms.h
ResolutionAnalyzer::mapHisto_
std::map< std::string, Histograms * > mapHisto_
Definition:
ResolutionAnalyzer.h:110
ResolutionAnalyzer::theRootFileName_
std::string theRootFileName_
Definition:
ResolutionAnalyzer.h:107
ResolutionAnalyzer::recoPtVsgenPtEta12_
TH2D * recoPtVsgenPtEta12_
Definition:
ResolutionAnalyzer.h:124
LeafCandidate.h
ResolutionAnalyzer::outputFile_
TFile * outputFile_
Definition:
ResolutionAnalyzer.h:111
MuonServiceProxy.h
Event.h
MakerMacros.h
tracks
auto const & tracks
cannot be loose
Definition:
CAHitNtupletGeneratorKernelsImpl.h:146
HLT_FULL_cff.track
tuple track
Definition:
HLT_FULL_cff.py:11953
Frameworkfwd.h
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
MuonFwd.h
ParameterSet.h
Candidate.h
ParticleDataTable.h
ResolutionAnalyzer::fillMuonCollection
std::vector< reco::LeafCandidate > fillMuonCollection(const std::vector< T > &tracks)
Definition:
ResolutionAnalyzer.h:75
ResolutionAnalyzer::massResolutionVsPtEta_
HCovarianceVSxy * massResolutionVsPtEta_
Definition:
ResolutionAnalyzer.h:122
ResolutionAnalyzer::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition:
ResolutionAnalyzer.cc:64
ResolutionAnalyzer::fillHistoMap
void fillHistoMap()
Used to fill the map with the histograms needed.
Definition:
ResolutionAnalyzer.cc:433
MuonPatternRecoDumper.h
HCovarianceVSxy
Definition:
Histograms.h:1908
mathSSE::sqrt
T sqrt(T t)
Definition:
SSEVec.h:19
ResolutionAnalyzer::writeHistoMap
void writeHistoMap()
Writes the histograms in the map.
Definition:
ResolutionAnalyzer.cc:565
ResolutionAnalyzer::readCovariances_
bool readCovariances_
Definition:
ResolutionAnalyzer.h:115
ResolutionAnalyzer::treeFileName_
TString treeFileName_
Definition:
ResolutionAnalyzer.h:117
GenParticleFwd.h
ResolutionAnalyzer::~ResolutionAnalyzer
~ResolutionAnalyzer() override
Definition:
ResolutionAnalyzer.cc:52
ResolutionAnalyzer::theCovariancesRootFileName_
std::string theCovariancesRootFileName_
Definition:
ResolutionAnalyzer.h:108
edm::EventSetup
Definition:
EventSetup.h:59
RPCpg::mu
const int mu
Definition:
Constants.h:22
Muon.h
ResolutionAnalyzer::resonance_
bool resonance_
Definition:
ResolutionAnalyzer.h:114
ResolutionAnalyzer
Definition:
ResolutionAnalyzer.h:65
HepMCProduct.h
HLT_FULL_cff.muon
tuple muon
Definition:
HLT_FULL_cff.py:11954
edm::EDAnalyzer
Definition:
EDAnalyzer.h:29
EDAnalyzer.h
ResolutionAnalyzer::checkDeltaR
bool checkDeltaR(const reco::Particle::LorentzVector &genMu, const reco::Particle::LorentzVector &recMu)
Returns true if the two particles have DeltaR < cut.
Definition:
ResolutionAnalyzer.cc:578
ResolutionAnalyzer::ptMax_
double ptMax_
Definition:
ResolutionAnalyzer.h:120
ResolutionAnalyzer::endJob
void endJob() override
Definition:
ResolutionAnalyzer.h:72
MuScleFitUtils::goodmuon
static int goodmuon
Definition:
MuScleFitUtils.h:214
MuScleFitUtils::mMu2
static const double mMu2
Definition:
MuScleFitUtils.h:139
SimTrackContainer.h
edm::InputTag
Definition:
InputTag.h:15
patZpeak.muons
tuple muons
Definition:
patZpeak.py:39
ResolutionAnalyzer::deltaPtOverPtForEta12_
TH1D * deltaPtOverPtForEta12_
Definition:
ResolutionAnalyzer.h:126
Track.h
edm::ParameterSet
Definition:
ParameterSet.h:47
gather_cfg.cout
tuple cout
Definition:
gather_cfg.py:144
ResolutionAnalyzer::deltaPtOverPt_
TH1D * deltaPtOverPt_
Definition:
ResolutionAnalyzer.h:125
edm::Event
Definition:
Event.h:73
ResolutionAnalyzer::recoPtVsgenPt_
TH2D * recoPtVsgenPt_
Definition:
ResolutionAnalyzer.h:123
reco::Particle::LorentzVector
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition:
Particle.h:21
ResolutionAnalyzer::debug_
bool debug_
Definition:
ResolutionAnalyzer.h:109
MuScleFitUtils.h
ResolutionAnalyzer::theMuonType_
int theMuonType_
Definition:
ResolutionAnalyzer.h:106
ResolutionAnalyzer::ResolutionAnalyzer
ResolutionAnalyzer(const edm::ParameterSet &)
Definition:
ResolutionAnalyzer.cc:19
SimVertexContainer.h
ResolutionAnalyzer::theMuonLabel_
edm::InputTag theMuonLabel_
Definition:
ResolutionAnalyzer.h:104
Generated for CMSSW Reference Manual by
1.8.5