ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
EFTracking
FPGATrackSim
FPGATrackSimObjects
FPGATrackSimObjects
FPGATrackSimTruthTrack.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRIGFPGATrackSimOBJECTS_FPGATrackSimTRUTHTRACK_H
6
#define TRIGFPGATrackSimOBJECTS_FPGATrackSimTRUTHTRACK_H
7
8
#include <TObject.h>
9
#include <TMath.h>
10
11
#include "
FPGATrackSimObjects/FPGATrackSimTrackPars.h
"
12
#include "
GeneratorObjects/HepMcParticleLink.h
"
13
14
class
FPGATrackSimTruthTrack
{
15
public
:
16
FPGATrackSimTruthTrack
();
17
virtual
~FPGATrackSimTruthTrack
() =
default
;
18
19
void
setD0
(
double
v) {
m_d0
= v; }
20
void
setZ0
(
double
v) {
m_z0
= v; }
21
22
void
setVtxX
(
double
v) {
m_vtx_x
= v; }
23
void
setVtxY
(
double
v) {
m_vtx_y
= v; }
24
void
setVtxZ
(
double
v) {
m_vtx_z
= v; }
25
void
setPX
(
double
v) {
m_px
= v; }
26
void
setPY
(
double
v) {
m_py
= v; }
27
void
setPZ
(
double
v) {
m_pz
= v; }
28
29
void
setQ
(
int
v) {
m_q
= v; }
30
31
void
setPDGCode
(
int
v) {
m_pdgcode
= v; }
32
void
setStatus
(
int
v) {
m_status
= v; }
33
void
setPrimary
(
int
v) {
m_primary
= v; }
34
void
setBarcode
(
const
HepMcParticleLink::barcode_type
& v) {
m_barcode
= v; }
35
void
setUniqueID
(
const
HepMcParticleLink::barcode_type
& v) {
m_uniqueID
= v; }
36
void
setEventIndex
(
int
v) {
m_evtindex
= v; }
37
void
setBarcodeFracOffline
(
double
v) {
m_barcode_frac_offline
= v; }
38
39
40
double
getPt
()
const
{
return
TMath::Sqrt(
m_px
*
m_px
+
m_py
*
m_py
); }
41
double
getEta
()
const
{
return
TMath::ASinH(
m_pz
/ TMath::Sqrt(
m_px
*
m_px
+
m_py
*
m_py
)); }
42
double
getPhi
()
const
{
return
TMath::ATan2(
m_py
,
m_px
); }
43
double
getD0
()
const
{
return
m_d0
; }
44
double
getZ0
()
const
{
return
m_z0
; }
45
46
double
getVtxX
()
const
{
return
m_vtx_x
; }
47
double
getVtxY
()
const
{
return
m_vtx_y
; }
48
double
getVtxZ
()
const
{
return
m_vtx_z
; }
49
double
getIP
()
const
{
return
TMath::Sqrt(
m_vtx_x
*
m_vtx_x
+
m_vtx_y
*
m_vtx_y
); }
50
double
getPX
()
const
{
return
m_px
; }
51
double
getPY
()
const
{
return
m_py
; }
52
double
getPZ
()
const
{
return
m_pz
; }
53
54
int
getQ
()
const
{
return
m_q
; }
55
double
getHalfInvPt
()
const
{
return
static_cast<
double
>
(
m_q
) / (2 *
getPt
()); }
56
double
getQOverPt
()
const
{
return
static_cast<
double
>
(
m_q
) /
getPt
(); }
57
58
int
getPDGCode
()
const
{
return
m_pdgcode
; }
59
int
getStatus
()
const
{
return
m_status
; }
60
int
getPrimary
()
const
{
return
m_primary
; }
61
int
status
()
const
{
return
m_status
; }
62
HepMcParticleLink::barcode_type
getBarcode
()
const
{
return
m_barcode
; }
63
HepMcParticleLink::barcode_type
barcode
()
const
{
return
m_barcode
; }
64
HepMcParticleLink::barcode_type
getUniqueID
()
const
{
return
m_uniqueID
; }
65
HepMcParticleLink::barcode_type
id
()
const
{
return
m_uniqueID
; }
66
67
int
getEventIndex
()
const
{
return
m_evtindex
; }
68
double
getBarcodeFracOffline
()
const
{
return
m_barcode_frac_offline
; }
69
70
71
FPGATrackSimTrackPars
getPars
()
const
{
72
FPGATrackSimTrackPars
pars;
73
pars.
qOverPt
=
getQ
() /
getPt
();
74
pars.
eta
=
getEta
();
75
pars.
phi
=
getPhi
();
76
pars.
d0
=
getD0
();
77
pars.
z0
=
getZ0
();
78
79
return
pars;
80
}
81
82
83
private
:
84
double
m_d0
;
85
double
m_z0
;
86
87
double
m_vtx_x
;
88
double
m_vtx_y
;
89
double
m_vtx_z
;
90
double
m_px
;
// MeV
91
double
m_py
;
92
double
m_pz
;
93
94
int
m_q
;
95
96
int
m_pdgcode
;
97
int
m_status
;
98
int
m_primary
;
99
HepMcParticleLink::barcode_type
m_barcode
;
100
HepMcParticleLink::barcode_type
m_uniqueID
;
101
int
m_evtindex
;
102
double
m_barcode_frac_offline
;
// largest "matching fraction" with any "good"
103
// xAOD::TruthParticle, corresponding to the
104
// particle with m_barcode
105
106
107
ClassDefNV(
FPGATrackSimTruthTrack
, 6)
108
};
109
110
#endif
// TRIGFPGATrackSimOBJECTS_FPGATrackSimTRUTHTRACK_H
FPGATrackSimTrackPars.h
Structs that store the 5 track parameters.
HepMcParticleLink.h
FPGATrackSimTrackPars
Definition
FPGATrackSimTrackPars.h:22
FPGATrackSimTrackPars::d0
double d0
Definition
FPGATrackSimTrackPars.h:26
FPGATrackSimTrackPars::z0
double z0
Definition
FPGATrackSimTrackPars.h:27
FPGATrackSimTrackPars::phi
double phi
Definition
FPGATrackSimTrackPars.h:24
FPGATrackSimTrackPars::eta
double eta
Definition
FPGATrackSimTrackPars.h:28
FPGATrackSimTrackPars::qOverPt
double qOverPt
Definition
FPGATrackSimTrackPars.h:25
FPGATrackSimTruthTrack::status
int status() const
Definition
FPGATrackSimTruthTrack.h:61
FPGATrackSimTruthTrack::m_vtx_x
double m_vtx_x
Definition
FPGATrackSimTruthTrack.h:87
FPGATrackSimTruthTrack::getVtxZ
double getVtxZ() const
Definition
FPGATrackSimTruthTrack.h:48
FPGATrackSimTruthTrack::setBarcodeFracOffline
void setBarcodeFracOffline(double v)
Definition
FPGATrackSimTruthTrack.h:37
FPGATrackSimTruthTrack::m_uniqueID
HepMcParticleLink::barcode_type m_uniqueID
Definition
FPGATrackSimTruthTrack.h:100
FPGATrackSimTruthTrack::getBarcode
HepMcParticleLink::barcode_type getBarcode() const
Definition
FPGATrackSimTruthTrack.h:62
FPGATrackSimTruthTrack::m_z0
double m_z0
Definition
FPGATrackSimTruthTrack.h:85
FPGATrackSimTruthTrack::setPY
void setPY(double v)
Definition
FPGATrackSimTruthTrack.h:26
FPGATrackSimTruthTrack::getStatus
int getStatus() const
Definition
FPGATrackSimTruthTrack.h:59
FPGATrackSimTruthTrack::getPY
double getPY() const
Definition
FPGATrackSimTruthTrack.h:51
FPGATrackSimTruthTrack::getPhi
double getPhi() const
Definition
FPGATrackSimTruthTrack.h:42
FPGATrackSimTruthTrack::m_status
int m_status
Definition
FPGATrackSimTruthTrack.h:97
FPGATrackSimTruthTrack::setUniqueID
void setUniqueID(const HepMcParticleLink::barcode_type &v)
Definition
FPGATrackSimTruthTrack.h:35
FPGATrackSimTruthTrack::setVtxY
void setVtxY(double v)
Definition
FPGATrackSimTruthTrack.h:23
FPGATrackSimTruthTrack::setStatus
void setStatus(int v)
Definition
FPGATrackSimTruthTrack.h:32
FPGATrackSimTruthTrack::m_vtx_y
double m_vtx_y
Definition
FPGATrackSimTruthTrack.h:88
FPGATrackSimTruthTrack::getVtxY
double getVtxY() const
Definition
FPGATrackSimTruthTrack.h:47
FPGATrackSimTruthTrack::m_evtindex
int m_evtindex
Definition
FPGATrackSimTruthTrack.h:101
FPGATrackSimTruthTrack::m_pdgcode
int m_pdgcode
Definition
FPGATrackSimTruthTrack.h:96
FPGATrackSimTruthTrack::m_px
double m_px
Definition
FPGATrackSimTruthTrack.h:90
FPGATrackSimTruthTrack::setZ0
void setZ0(double v)
Definition
FPGATrackSimTruthTrack.h:20
FPGATrackSimTruthTrack::FPGATrackSimTruthTrack
FPGATrackSimTruthTrack()
Definition
FPGATrackSimTruthTrack.cxx:7
FPGATrackSimTruthTrack::getBarcodeFracOffline
double getBarcodeFracOffline() const
Definition
FPGATrackSimTruthTrack.h:68
FPGATrackSimTruthTrack::getD0
double getD0() const
Definition
FPGATrackSimTruthTrack.h:43
FPGATrackSimTruthTrack::m_barcode
HepMcParticleLink::barcode_type m_barcode
Definition
FPGATrackSimTruthTrack.h:99
FPGATrackSimTruthTrack::~FPGATrackSimTruthTrack
virtual ~FPGATrackSimTruthTrack()=default
FPGATrackSimTruthTrack::m_py
double m_py
Definition
FPGATrackSimTruthTrack.h:91
FPGATrackSimTruthTrack::setPrimary
void setPrimary(int v)
Definition
FPGATrackSimTruthTrack.h:33
FPGATrackSimTruthTrack::m_d0
double m_d0
Definition
FPGATrackSimTruthTrack.h:84
FPGATrackSimTruthTrack::id
HepMcParticleLink::barcode_type id() const
Definition
FPGATrackSimTruthTrack.h:65
FPGATrackSimTruthTrack::getZ0
double getZ0() const
Definition
FPGATrackSimTruthTrack.h:44
FPGATrackSimTruthTrack::getPDGCode
int getPDGCode() const
Definition
FPGATrackSimTruthTrack.h:58
FPGATrackSimTruthTrack::setQ
void setQ(int v)
Definition
FPGATrackSimTruthTrack.h:29
FPGATrackSimTruthTrack::getIP
double getIP() const
Definition
FPGATrackSimTruthTrack.h:49
FPGATrackSimTruthTrack::getVtxX
double getVtxX() const
Definition
FPGATrackSimTruthTrack.h:46
FPGATrackSimTruthTrack::getQOverPt
double getQOverPt() const
Definition
FPGATrackSimTruthTrack.h:56
FPGATrackSimTruthTrack::m_pz
double m_pz
Definition
FPGATrackSimTruthTrack.h:92
FPGATrackSimTruthTrack::setVtxX
void setVtxX(double v)
Definition
FPGATrackSimTruthTrack.h:22
FPGATrackSimTruthTrack::setPZ
void setPZ(double v)
Definition
FPGATrackSimTruthTrack.h:27
FPGATrackSimTruthTrack::getPrimary
int getPrimary() const
Definition
FPGATrackSimTruthTrack.h:60
FPGATrackSimTruthTrack::m_q
int m_q
Definition
FPGATrackSimTruthTrack.h:94
FPGATrackSimTruthTrack::m_primary
int m_primary
Definition
FPGATrackSimTruthTrack.h:98
FPGATrackSimTruthTrack::getHalfInvPt
double getHalfInvPt() const
Definition
FPGATrackSimTruthTrack.h:55
FPGATrackSimTruthTrack::setBarcode
void setBarcode(const HepMcParticleLink::barcode_type &v)
Definition
FPGATrackSimTruthTrack.h:34
FPGATrackSimTruthTrack::m_barcode_frac_offline
double m_barcode_frac_offline
Definition
FPGATrackSimTruthTrack.h:102
FPGATrackSimTruthTrack::setPX
void setPX(double v)
Definition
FPGATrackSimTruthTrack.h:25
FPGATrackSimTruthTrack::getPZ
double getPZ() const
Definition
FPGATrackSimTruthTrack.h:52
FPGATrackSimTruthTrack::setVtxZ
void setVtxZ(double v)
Definition
FPGATrackSimTruthTrack.h:24
FPGATrackSimTruthTrack::barcode
HepMcParticleLink::barcode_type barcode() const
Definition
FPGATrackSimTruthTrack.h:63
FPGATrackSimTruthTrack::setPDGCode
void setPDGCode(int v)
Definition
FPGATrackSimTruthTrack.h:31
FPGATrackSimTruthTrack::getUniqueID
HepMcParticleLink::barcode_type getUniqueID() const
Definition
FPGATrackSimTruthTrack.h:64
FPGATrackSimTruthTrack::getPt
double getPt() const
Definition
FPGATrackSimTruthTrack.h:40
FPGATrackSimTruthTrack::setD0
void setD0(double v)
Definition
FPGATrackSimTruthTrack.h:19
FPGATrackSimTruthTrack::m_vtx_z
double m_vtx_z
Definition
FPGATrackSimTruthTrack.h:89
FPGATrackSimTruthTrack::getEta
double getEta() const
Definition
FPGATrackSimTruthTrack.h:41
FPGATrackSimTruthTrack::getEventIndex
int getEventIndex() const
Definition
FPGATrackSimTruthTrack.h:67
FPGATrackSimTruthTrack::setEventIndex
void setEventIndex(int v)
Definition
FPGATrackSimTruthTrack.h:36
FPGATrackSimTruthTrack::getQ
int getQ() const
Definition
FPGATrackSimTruthTrack.h:54
FPGATrackSimTruthTrack::getPX
double getPX() const
Definition
FPGATrackSimTruthTrack.h:50
FPGATrackSimTruthTrack::getPars
FPGATrackSimTrackPars getPars() const
Definition
FPGATrackSimTruthTrack.h:71
HepMcParticleLink::barcode_type
uint32_t barcode_type
Definition
HepMcParticleLink.h:74
Generated on
for ATLAS Offline Software by
1.17.0