RecoJets
JetAssociationAlgorithms
src
JetTracksAssociationDRVertex.cc
Go to the documentation of this file.
1
// Associate jets with tracks by simple "dR" criteria
2
// Fedor Ratnikov (UMd), Aug. 28, 2007
3
4
#include "
RecoJets/JetAssociationAlgorithms/interface/JetTracksAssociationDRVertex.h
"
5
6
#include "
DataFormats/JetReco/interface/Jet.h
"
7
#include "
DataFormats/TrackReco/interface/Track.h
"
8
9
#include "
DataFormats/Math/interface/deltaR.h
"
10
#include "
DataFormats/Math/interface/Vector3D.h
"
11
12
JetTracksAssociationDRVertex::JetTracksAssociationDRVertex
(
double
fDr) : mDeltaR2Threshold(fDr * fDr) {}
13
14
void
JetTracksAssociationDRVertex::produce
(
reco::JetTracksAssociation::Container
* fAssociation,
15
const
std::vector
<
edm::RefToBase<reco::Jet>
>& fJets,
16
const
std::vector<reco::TrackRef>& fTracks)
const
{
17
// cache tracks kinematics
18
std::vector<math::RhoEtaPhiVector> trackP3s;
19
trackP3s.reserve(fTracks.size());
20
for
(
unsigned
i
= 0;
i
< fTracks.size(); ++
i
) {
21
const
reco::Track
*
track
= &*(fTracks[
i
]);
22
trackP3s.push_back(
math::RhoEtaPhiVector
(
track
->p(),
track
->eta(),
track
->phi()));
23
}
24
//loop on jets and associate
25
for
(
unsigned
j
= 0;
j
< fJets.size(); ++
j
) {
26
reco::TrackRefVector
assoTracks;
27
const
reco::Jet
*
jet
= &*(fJets[
j
]);
28
double
jetEta
=
jet
->eta();
29
double
jetPhi
=
jet
->phi();
30
for
(
unsigned
t
= 0;
t
< fTracks.size(); ++
t
) {
31
double
dR2 =
deltaR2
(
jetEta
,
jetPhi
, trackP3s[
t
].
eta
(), trackP3s[
t
].
phi
());
32
if
(dR2 <
mDeltaR2Threshold
)
33
assoTracks.
push_back
(fTracks[
t
]);
34
}
35
reco::JetTracksAssociation::setValue
(fAssociation, fJets[
j
], assoTracks);
36
}
37
}
JetTracksAssociationDRVertex::JetTracksAssociationDRVertex
JetTracksAssociationDRVertex(double fDr)
Definition:
JetTracksAssociationDRVertex.cc:12
mps_fire.i
i
Definition:
mps_fire.py:428
reco::Jet
Base class for all types of Jets.
Definition:
Jet.h:20
HLT_FULL_cff.track
track
Definition:
HLT_FULL_cff.py:11713
Jet.h
edm::RefVector< TrackCollection >
math::RhoEtaPhiVector
RhoEtaPhiVectorD RhoEtaPhiVector
spatial vector with cylindrical internal representation using pseudorapidity
Definition:
Vector3D.h:33
Track.h
PVValHelper::eta
Definition:
PVValidationHelpers.h:69
reco::JetTracksAssociation::setValue
bool setValue(Container &, const reco::JetBaseRef &, reco::TrackRefVector)
associate jet with value. Returns false and associate nothing if jet is already associated
Definition:
JetTracksAssociation.cc:41
reco::Track
Definition:
Track.h:27
edm::AssociationVector
Definition:
AssociationVector.h:67
JetTracksAssociationDRVertex.h
reco::btau::jetPhi
Definition:
TaggingVariable.h:36
reco::btau::jetEta
Definition:
TaggingVariable.h:34
deltaR.h
JetTracksAssociationDRVertex::produce
void produce(reco::JetTracksAssociation::Container *fAssociation, const std::vector< edm::RefToBase< reco::Jet > > &fJets, const std::vector< reco::TrackRef > &fTracks) const
Definition:
JetTracksAssociationDRVertex.cc:14
trackerHitRTTI::vector
Definition:
trackerHitRTTI.h:21
edm::RefVector::push_back
void push_back(value_type const &ref)
Add a Ref<C, T> to the RefVector.
Definition:
RefVector.h:67
DDAxes::phi
HLTMuonOfflineAnalyzer_cfi.deltaR2
deltaR2
Definition:
HLTMuonOfflineAnalyzer_cfi.py:105
metsig::jet
Definition:
SignAlgoResolutions.h:47
edm::RefToBase< reco::Jet >
dqmiolumiharvest.j
j
Definition:
dqmiolumiharvest.py:66
Vector3D.h
submitPVValidationJobs.t
string t
Definition:
submitPVValidationJobs.py:644
JetTracksAssociationDRVertex::mDeltaR2Threshold
double mDeltaR2Threshold
fidutial dR between track in the vertex and jet's reference direction
Definition:
JetTracksAssociationDRVertex.h:21
Generated for CMSSW Reference Manual by
1.8.16