Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
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
();
69
70
private
:
71
virtual
void
analyze
(
const
edm::Event
&,
const
edm::EventSetup
&);
72
virtual
void
endJob
() {};
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
(track->px(),track->py(),track->pz(),
80
sqrt
(track->p()*track->p() +
MuScleFitUtils::mMu2
));
81
MuScleFitUtils::goodmuon
++;
82
if
(
debug_
>0)
std::cout
<<std::setprecision(9)<<
"Muon #"
<<
MuScleFitUtils::goodmuon
83
<<
": initial value Pt = "
<< mu.Pt() << std::endl;
84
reco::LeafCandidate
muon
(track->charge(),
mu
);
85
// Store muon
86
// ----------
87
muons.push_back(
muon
);
88
}
89
return
muons
;
90
}
91
93
void
fillHistoMap
();
95
void
writeHistoMap
();
97
bool
checkDeltaR
(
const
reco::Particle::LorentzVector
& genMu,
const
reco::Particle::LorentzVector
& recMu);
98
99
// ----------member data ---------------------------
100
101
// Collections labels
102
// ------------------
103
edm::InputTag
theMuonLabel_
;
104
105
int
theMuonType_
;
106
std::string
theRootFileName_
;
107
std::string
theCovariancesRootFileName_
;
108
bool
debug_
;
109
std::map<std::string, Histograms*>
mapHisto_
;
110
TFile *
outputFile_
;
111
112
int
eventCounter_
;
113
bool
resonance_
;
114
bool
readCovariances_
;
115
116
TString
treeFileName_
;
117
int32_t
maxEvents_
;
118
119
double
ptMax_
;
120
121
HCovarianceVSxy
*
massResolutionVsPtEta_
;
122
TH2D *
recoPtVsgenPt_
;
123
TH2D *
recoPtVsgenPtEta12_
;
124
TH1D *
deltaPtOverPt_
;
125
TH1D *
deltaPtOverPtForEta12_
;
126
};
127
128
#endif // RESOLUTIONANALYZER_HH
ResolutionAnalyzer::eventCounter_
int eventCounter_
Definition:
ResolutionAnalyzer.h:112
reco::LeafCandidate
Definition:
LeafCandidate.h:21
ResolutionAnalyzer::maxEvents_
int32_t maxEvents_
Definition:
ResolutionAnalyzer.h:117
Histograms.h
ResolutionAnalyzer::mapHisto_
std::map< std::string, Histograms * > mapHisto_
Definition:
ResolutionAnalyzer.h:109
ResolutionAnalyzer::theRootFileName_
std::string theRootFileName_
Definition:
ResolutionAnalyzer.h:106
ResolutionAnalyzer::recoPtVsgenPtEta12_
TH2D * recoPtVsgenPtEta12_
Definition:
ResolutionAnalyzer.h:123
LeafCandidate.h
ResolutionAnalyzer::outputFile_
TFile * outputFile_
Definition:
ResolutionAnalyzer.h:110
MuonServiceProxy.h
Event.h
MakerMacros.h
ResolutionAnalyzer::~ResolutionAnalyzer
~ResolutionAnalyzer()
Definition:
ResolutionAnalyzer.cc:54
Frameworkfwd.h
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:255
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:121
ResolutionAnalyzer::fillHistoMap
void fillHistoMap()
Used to fill the map with the histograms needed.
Definition:
ResolutionAnalyzer.cc:420
MuonPatternRecoDumper.h
HCovarianceVSxy
Definition:
Histograms.h:1818
mathSSE::sqrt
T sqrt(T t)
Definition:
SSEVec.h:48
ResolutionAnalyzer::endJob
virtual void endJob()
Definition:
ResolutionAnalyzer.h:72
ResolutionAnalyzer::writeHistoMap
void writeHistoMap()
Writes the histograms in the map.
Definition:
ResolutionAnalyzer.cc:539
ResolutionAnalyzer::readCovariances_
bool readCovariances_
Definition:
ResolutionAnalyzer.h:114
ResolutionAnalyzer::treeFileName_
TString treeFileName_
Definition:
ResolutionAnalyzer.h:116
GenParticleFwd.h
ResolutionAnalyzer::theCovariancesRootFileName_
std::string theCovariancesRootFileName_
Definition:
ResolutionAnalyzer.h:107
edm::EventSetup
Definition:
EventSetup.h:44
RPCpg::mu
const int mu
Definition:
Constants.h:22
Muon.h
ResolutionAnalyzer::resonance_
bool resonance_
Definition:
ResolutionAnalyzer.h:113
ResolutionAnalyzer
Definition:
ResolutionAnalyzer.h:65
HepMCProduct.h
edm::EDAnalyzer
Definition:
EDAnalyzer.h:25
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:552
ResolutionAnalyzer::ptMax_
double ptMax_
Definition:
ResolutionAnalyzer.h:119
metsig::muon
Definition:
SignAlgoResolutions.h:40
testEve_cfg.tracks
tuple tracks
Definition:
testEve_cfg.py:39
ResolutionAnalyzer::analyze
virtual void analyze(const edm::Event &, const edm::EventSetup &)
Definition:
ResolutionAnalyzer.cc:68
MuScleFitUtils::goodmuon
static int goodmuon
Definition:
MuScleFitUtils.h:197
MuScleFitUtils::mMu2
static const double mMu2
Definition:
MuScleFitUtils.h:122
SimTrackContainer.h
edm::InputTag
Definition:
InputTag.h:17
patZpeak.muons
tuple muons
Definition:
patZpeak.py:38
ResolutionAnalyzer::deltaPtOverPtForEta12_
TH1D * deltaPtOverPtForEta12_
Definition:
ResolutionAnalyzer.h:125
edm::ParameterSet
Definition:
ParameterSet.h:35
gather_cfg.cout
tuple cout
Definition:
gather_cfg.py:121
ResolutionAnalyzer::deltaPtOverPt_
TH1D * deltaPtOverPt_
Definition:
ResolutionAnalyzer.h:124
edm::Event
Definition:
Event.h:62
Track.h
ResolutionAnalyzer::recoPtVsgenPt_
TH2D * recoPtVsgenPt_
Definition:
ResolutionAnalyzer.h:122
reco::Particle::LorentzVector
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition:
Particle.h:27
ResolutionAnalyzer::debug_
bool debug_
Definition:
ResolutionAnalyzer.h:108
MuScleFitUtils.h
ResolutionAnalyzer::theMuonType_
int theMuonType_
Definition:
ResolutionAnalyzer.h:105
ResolutionAnalyzer::ResolutionAnalyzer
ResolutionAnalyzer(const edm::ParameterSet &)
Definition:
ResolutionAnalyzer.cc:19
SimVertexContainer.h
ResolutionAnalyzer::theMuonLabel_
edm::InputTag theMuonLabel_
Definition:
ResolutionAnalyzer.h:103
Generated for CMSSW Reference Manual by
1.8.5