Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
DataFormats
MuonReco
interface
MuonSimInfo.h
Go to the documentation of this file.
1
#ifndef MuonReco_MuonSimInfo_h
2
#define MuonReco_MuonSimInfo_h
3
4
#include "
DataFormats/Math/interface/Point3D.h
"
5
#include "
DataFormats/Math/interface/LorentzVector.h
"
6
7
namespace
reco
{
8
/*
9
10
11
CLASSIFICATION: For each RECO Muon, match to SIM particle, and then:
12
- If the SIM is not a Muon, label as Punchthrough (1) except if it is an electron or positron (11)
13
- If the SIM is a Muon, then look at it's provenance.
14
A) the SIM muon is also a GEN muon, whose parent is NOT A HADRON AND NOT A TAU
15
-> classify as "primary" (4).
16
B) the SIM muon is also a GEN muon, whose parent is HEAVY FLAVOURED HADRON OR A TAU
17
-> classify as "heavy flavour" (3)
18
C) classify as "light flavour/decay" (2)
19
20
In any case, if the TP is not preferentially matched back to the same RECO muon,
21
label as Ghost (flip the classification)
22
23
24
FLAVOUR:
25
- for non-muons: 0
26
- for primary muons: 13
27
- for non primary muons: flavour of the mother: std::abs(pdgId) of heaviest quark, or 15 for tau
28
29
*/
30
31
enum
MuonSimType
{
32
Unknown
= 999,
33
NotMatched
= 0,
34
MatchedPunchthrough
= 1,
35
MatchedElectron
= 11,
36
MatchedPrimaryMuon
= 4,
37
MatchedMuonFromHeavyFlavour
= 3,
38
MatchedMuonFromLightFlavour
= 2,
39
GhostPunchthrough
= -1,
40
GhostElectron
= -11,
41
GhostPrimaryMuon
= -4,
42
GhostMuonFromHeavyFlavour
= -3,
43
GhostMuonFromLightFlavour
= -2
44
};
45
46
enum
ExtendedMuonSimType
{
47
ExtUnknown
= 999,
48
ExtNotMatched
= 0,
49
ExtMatchedPunchthrough
= 1,
50
ExtMatchedElectron
= 11,
51
MatchedMuonFromGaugeOrHiggsBoson
= 10,
52
MatchedMuonFromTau
= 9,
53
MatchedMuonFromB
= 8,
54
MatchedMuonFromBtoC
= 7,
55
MatchedMuonFromC
= 6,
56
MatchedMuonFromOtherLight
= 5,
57
MatchedMuonFromPiKppMuX
= 4,
58
MatchedMuonFromPiKNotppMuX
= 3,
59
MatchedMuonFromNonPrimaryParticle
= 2,
60
ExtGhostPunchthrough
= -1,
61
ExtGhostElectron
= -11,
62
GhostMuonFromGaugeOrHiggsBoson
= -10,
63
GhostMuonFromTau
= -9,
64
GhostMuonFromB
= -8,
65
GhostMuonFromBtoC
= -7,
66
GhostMuonFromC
= -6,
67
GhostMuonFromOtherLight
= -5,
68
GhostMuonFromPiKppMuX
= -4,
69
GhostMuonFromPiKNotppMuX
= -3,
70
GhostMuonFromNonPrimaryParticle
= -2
71
72
};
73
74
class
MuonSimInfo
{
75
public
:
76
MuonSimInfo
();
77
typedef
math::XYZPointD
Point
;
78
typedef
math::XYZTLorentzVectorD
LorentzVector
;
79
MuonSimType
primaryClass
;
80
ExtendedMuonSimType
extendedClass
;
81
int
flavour
;
82
int
pdgId
;
// pdg ID of matching tracking particle
83
int
g4processType
;
// Geant process producing the particle
84
int
motherPdgId
;
85
int
motherFlavour
;
86
int
motherStatus
;
// Status of the first gen particle
87
int
grandMotherPdgId
;
88
int
grandMotherFlavour
;
89
int
heaviestMotherFlavour
;
90
int
tpId
;
91
int
tpEvent
;
92
int
tpBX
;
// bunch crossing
93
int
charge
;
94
LorentzVector
p4
;
95
Point
vertex
;
96
Point
motherVertex
;
97
float
tpAssoQuality
;
98
};
99
}
// namespace reco
100
101
#endif
reco::MuonSimInfo::grandMotherPdgId
int grandMotherPdgId
Definition:
MuonSimInfo.h:87
reco::MatchedElectron
Definition:
MuonSimInfo.h:35
reco::ExtGhostElectron
Definition:
MuonSimInfo.h:61
reco::MatchedMuonFromPiKppMuX
Definition:
MuonSimInfo.h:57
reco::Unknown
Definition:
MuonSimInfo.h:32
reco::GhostMuonFromNonPrimaryParticle
Definition:
MuonSimInfo.h:70
reco::MuonSimInfo::pdgId
int pdgId
Definition:
MuonSimInfo.h:82
math::XYZTLorentzVectorD
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< double > > XYZTLorentzVectorD
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition:
LorentzVector.h:14
reco::GhostMuonFromBtoC
Definition:
MuonSimInfo.h:65
reco::MatchedMuonFromOtherLight
Definition:
MuonSimInfo.h:56
reco::MuonSimInfo::motherStatus
int motherStatus
Definition:
MuonSimInfo.h:86
reco::ExtMatchedElectron
Definition:
MuonSimInfo.h:50
reco::GhostMuonFromHeavyFlavour
Definition:
MuonSimInfo.h:42
reco::ExtendedMuonSimType
ExtendedMuonSimType
Definition:
MuonSimInfo.h:46
reco::MuonSimInfo::tpId
int tpId
Definition:
MuonSimInfo.h:90
reco::MatchedMuonFromB
Definition:
MuonSimInfo.h:53
reco::MuonSimInfo::motherFlavour
int motherFlavour
Definition:
MuonSimInfo.h:85
reco::ExtNotMatched
Definition:
MuonSimInfo.h:48
reco::MatchedMuonFromNonPrimaryParticle
Definition:
MuonSimInfo.h:59
dt_dqm_sourceclient_common_cff.reco
tuple reco
Definition:
dt_dqm_sourceclient_common_cff.py:111
reco::MatchedMuonFromLightFlavour
Definition:
MuonSimInfo.h:38
Point3D.h
reco::MuonSimInfo::LorentzVector
math::XYZTLorentzVectorD LorentzVector
Lorentz vector.
Definition:
MuonSimInfo.h:78
reco::MuonSimInfo::vertex
Point vertex
Definition:
MuonSimInfo.h:95
reco::MuonSimType
MuonSimType
Definition:
MuonSimInfo.h:31
reco::ExtGhostPunchthrough
Definition:
MuonSimInfo.h:60
reco::MuonSimInfo::MuonSimInfo
MuonSimInfo()
Definition:
MuonSimInfo.cc:5
reco::MuonSimInfo::tpBX
int tpBX
Definition:
MuonSimInfo.h:92
reco::GhostMuonFromB
Definition:
MuonSimInfo.h:64
reco::MuonSimInfo::charge
int charge
Definition:
MuonSimInfo.h:93
reco::GhostMuonFromLightFlavour
Definition:
MuonSimInfo.h:43
reco::GhostMuonFromTau
Definition:
MuonSimInfo.h:63
reco::GhostMuonFromPiKppMuX
Definition:
MuonSimInfo.h:68
reco::MuonSimInfo::primaryClass
MuonSimType primaryClass
Definition:
MuonSimInfo.h:79
reco::MuonSimInfo
Definition:
MuonSimInfo.h:74
reco::MuonSimInfo::tpEvent
int tpEvent
Definition:
MuonSimInfo.h:91
reco::MuonSimInfo::motherVertex
Point motherVertex
Definition:
MuonSimInfo.h:96
LorentzVector.h
reco::MuonSimInfo::extendedClass
ExtendedMuonSimType extendedClass
Definition:
MuonSimInfo.h:80
reco::MatchedMuonFromTau
Definition:
MuonSimInfo.h:52
reco::MuonSimInfo::Point
math::XYZPointD Point
point in the space
Definition:
MuonSimInfo.h:77
reco::MuonSimInfo::grandMotherFlavour
int grandMotherFlavour
Definition:
MuonSimInfo.h:88
reco::MuonSimInfo::flavour
int flavour
Definition:
MuonSimInfo.h:81
reco::NotMatched
Definition:
MuonSimInfo.h:33
math::XYZPointD
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double > > XYZPointD
point in space with cartesian internal representation
Definition:
Point3D.h:8
reco::MuonSimInfo::p4
LorentzVector p4
Definition:
MuonSimInfo.h:94
reco::MatchedMuonFromPiKNotppMuX
Definition:
MuonSimInfo.h:58
reco::MatchedMuonFromGaugeOrHiggsBoson
Definition:
MuonSimInfo.h:51
reco::GhostMuonFromGaugeOrHiggsBoson
Definition:
MuonSimInfo.h:62
reco::MatchedPrimaryMuon
Definition:
MuonSimInfo.h:36
reco::GhostMuonFromOtherLight
Definition:
MuonSimInfo.h:67
reco::MuonSimInfo::motherPdgId
int motherPdgId
Definition:
MuonSimInfo.h:84
reco::MuonSimInfo::tpAssoQuality
float tpAssoQuality
Definition:
MuonSimInfo.h:97
reco::ExtMatchedPunchthrough
Definition:
MuonSimInfo.h:49
reco::MatchedMuonFromC
Definition:
MuonSimInfo.h:55
reco::GhostMuonFromC
Definition:
MuonSimInfo.h:66
Point
Structure Point Contains parameters of Gaussian fits to DMRs.
Definition:
DMRtrends.cc:57
reco::GhostMuonFromPiKNotppMuX
Definition:
MuonSimInfo.h:69
reco::GhostPrimaryMuon
Definition:
MuonSimInfo.h:41
reco::MatchedMuonFromBtoC
Definition:
MuonSimInfo.h:54
reco::ExtUnknown
Definition:
MuonSimInfo.h:47
reco::GhostElectron
Definition:
MuonSimInfo.h:40
reco::MatchedMuonFromHeavyFlavour
Definition:
MuonSimInfo.h:37
reco::MuonSimInfo::g4processType
int g4processType
Definition:
MuonSimInfo.h:83
reco::MatchedPunchthrough
Definition:
MuonSimInfo.h:34
reco::MuonSimInfo::heaviestMotherFlavour
int heaviestMotherFlavour
Definition:
MuonSimInfo.h:89
reco::GhostPunchthrough
Definition:
MuonSimInfo.h:39
Generated for CMSSW Reference Manual by
1.8.5