ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
TestBeam
TBEvent
TBEvent
TBTrack.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TBEVENT_TBTrack_H
6
#define TBEVENT_TBTrack_H
8
// //
9
// Reconstructed Track from hit position in
10
// Test Beam detectors //
11
// //
13
14
#include "GaudiKernel/MsgStream.h"
15
#include "
AthenaKernel/CLASS_DEF.h
"
16
17
#include <vector>
18
19
class
TBTrack
20
{
21
public
:
22
23
typedef
double
signal_type
;
24
26
// Constructors and Destructor //
28
29
TBTrack
() :
m_hitNumberU
(0),
m_hitNumberV
(0)
30
{};
31
32
TBTrack
(
int
hitNumberX,
int
hitNumberY);
33
34
TBTrack
(
const
std::vector<double>& residualU,
35
const
std::vector<double>& residualV);
36
37
TBTrack
(
const
TBTrack
&) =
default
;
38
TBTrack
(
TBTrack
&&) =
default
;
39
TBTrack
&
operator=
(
const
TBTrack
&) =
default
;
40
TBTrack
&
operator=
(
TBTrack
&&) =
default
;
41
42
~TBTrack
();
43
45
// Data Manipulation //
47
48
// Getter --------------------------------
49
50
int
getHitNumberU
()
const
{
return
m_hitNumberU
; }
51
int
getHitNumberV
()
const
{
return
m_hitNumberV
; }
52
53
double
getChi2_global
()
const
{
return
m_chi2
; }
54
double
getChi2_u
()
const
{
return
m_chi2u
; }
55
double
getChi2_v
()
const
{
return
m_chi2v
; }
56
double
getAngle
()
const
{
return
m_angle
; }
57
double
getUslope
()
const
{
return
m_uslope
; }
58
double
getVslope
()
const
{
return
m_vslope
; }
59
double
getUintercept
()
const
{
return
m_uintercept
; }
60
double
getVintercept
()
const
{
return
m_vintercept
; }
61
62
double
getResidualu
(
int
ind)
const
63
{
return
ind<
m_hitNumberU
?
m_residualu
[ind]: 0; }
64
65
double
getResidualv
(
int
ind)
const
66
{
return
ind<
m_hitNumberV
?
m_residualv
[ind]: 0; }
67
68
const
std::vector<double>&
getResidualu
()
const
{
return
m_residualu
; }
69
const
std::vector<double>&
getResidualv
()
const
{
return
m_residualv
; }
70
71
double
getCryoHitu
()
const
{
return
m_cryou
;}
72
double
getCryoHitv
()
const
{
return
m_cryov
;}
73
double
getCryoHitw
()
const
{
return
m_cryow
;}
74
75
// Setter --------------------------------
76
77
void
setChi2
(
double
chi2
) {
m_chi2
=
chi2
; }
78
void
setChi2_u
(
double
chi2u) {
m_chi2u
= chi2u; }
79
void
setChi2_v
(
double
chi2v) {
m_chi2v
= chi2v; }
80
void
setAngle
(
double
angle
) {
m_angle
=
angle
; }
81
void
setUslope
(
double
uslope) {
m_uslope
=uslope; }
82
void
setVslope
(
double
vslope) {
m_vslope
=vslope; }
83
void
setUintercept
(
double
uintercept) {
m_uintercept
= uintercept; }
84
void
setVintercept
(
double
vintercept) {
m_vintercept
= vintercept; }
85
86
void
setResidualu
(
int
ind,
double
residualu ) {
m_residualu
[ind] = residualu;}
87
void
setResidualv
(
int
ind,
double
residualv ) {
m_residualv
[ind] = residualv;}
88
89
void
setCryoHitu
(
float
cryou){
m_cryou
=cryou;}
90
void
setCryoHitv
(
float
cryov){
m_cryov
=cryov;}
91
void
setCryoHitw
(
float
cryow){
m_cryow
=cryow;}
92
93
private
:
94
96
// Private Data //
98
99
// number of hits used for reconstruction
100
int
m_hitNumberU
,
m_hitNumberV
;
101
102
// Residuals between detector hit and fitted hit (in detector local coordonates)
103
std::vector<double>
m_residualu
,
m_residualv
;
104
105
106
// track parameters
107
double
m_chi2
= 0,
m_chi2u
= 0,
m_chi2v
= 0;
108
double
m_angle
= 0;
// angle between track and Z TestBeam axe
109
double
m_uslope
= 0,
m_vslope
= 0;
// slopes with respect to Z TestBeam axe
110
double
m_uintercept
= 0,
m_vintercept
= 0;
111
112
// extrapoled hit position at cryostat (reconstruction coordonates);
113
double
m_cryou
= 0,
m_cryov
= 0,
m_cryow
= 0;
114
115
};
116
CLASS_DEF
(
TBTrack
, 129507460 , 1 )
117
118
#endif
CLASS_DEF.h
macros to associate a CLID to a type
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition
Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:67
angle
double angle(const GeoTrf::Vector2D &a, const GeoTrf::Vector2D &b)
Definition
TRTDetectorFactory_Full.cxx:71
TBTrack
Definition
TBTrack.h:20
TBTrack::m_cryou
double m_cryou
Definition
TBTrack.h:113
TBTrack::setCryoHitv
void setCryoHitv(float cryov)
Definition
TBTrack.h:90
TBTrack::m_uslope
double m_uslope
Definition
TBTrack.h:109
TBTrack::getVintercept
double getVintercept() const
Definition
TBTrack.h:60
TBTrack::setCryoHitu
void setCryoHitu(float cryou)
Definition
TBTrack.h:89
TBTrack::setChi2_v
void setChi2_v(double chi2v)
Definition
TBTrack.h:79
TBTrack::getChi2_u
double getChi2_u() const
Definition
TBTrack.h:54
TBTrack::getChi2_v
double getChi2_v() const
Definition
TBTrack.h:55
TBTrack::setChi2
void setChi2(double chi2)
Definition
TBTrack.h:77
TBTrack::m_cryow
double m_cryow
Definition
TBTrack.h:113
TBTrack::m_residualu
std::vector< double > m_residualu
Definition
TBTrack.h:103
TBTrack::operator=
TBTrack & operator=(const TBTrack &)=default
TBTrack::getUintercept
double getUintercept() const
Definition
TBTrack.h:59
TBTrack::getHitNumberV
int getHitNumberV() const
Definition
TBTrack.h:51
TBTrack::m_vslope
double m_vslope
Definition
TBTrack.h:109
TBTrack::TBTrack
TBTrack(const TBTrack &)=default
TBTrack::TBTrack
TBTrack(TBTrack &&)=default
TBTrack::TBTrack
TBTrack()
Definition
TBTrack.h:29
TBTrack::setResidualu
void setResidualu(int ind, double residualu)
Definition
TBTrack.h:86
TBTrack::getVslope
double getVslope() const
Definition
TBTrack.h:58
TBTrack::m_chi2
double m_chi2
Definition
TBTrack.h:107
TBTrack::getUslope
double getUslope() const
Definition
TBTrack.h:57
TBTrack::~TBTrack
~TBTrack()
Definition
TBTrack.cxx:23
TBTrack::getResidualv
const std::vector< double > & getResidualv() const
Definition
TBTrack.h:69
TBTrack::getCryoHitv
double getCryoHitv() const
Definition
TBTrack.h:72
TBTrack::getChi2_global
double getChi2_global() const
Definition
TBTrack.h:53
TBTrack::getResidualu
double getResidualu(int ind) const
Definition
TBTrack.h:62
TBTrack::getResidualu
const std::vector< double > & getResidualu() const
Definition
TBTrack.h:68
TBTrack::setAngle
void setAngle(double angle)
Definition
TBTrack.h:80
TBTrack::m_uintercept
double m_uintercept
Definition
TBTrack.h:110
TBTrack::setChi2_u
void setChi2_u(double chi2u)
Definition
TBTrack.h:78
TBTrack::operator=
TBTrack & operator=(TBTrack &&)=default
TBTrack::signal_type
double signal_type
Definition
TBTrack.h:23
TBTrack::setUslope
void setUslope(double uslope)
Definition
TBTrack.h:81
TBTrack::setCryoHitw
void setCryoHitw(float cryow)
Definition
TBTrack.h:91
TBTrack::setUintercept
void setUintercept(double uintercept)
Definition
TBTrack.h:83
TBTrack::m_hitNumberU
int m_hitNumberU
Definition
TBTrack.h:100
TBTrack::m_angle
double m_angle
Definition
TBTrack.h:108
TBTrack::getResidualv
double getResidualv(int ind) const
Definition
TBTrack.h:65
TBTrack::getAngle
double getAngle() const
Definition
TBTrack.h:56
TBTrack::m_vintercept
double m_vintercept
Definition
TBTrack.h:110
TBTrack::getCryoHitu
double getCryoHitu() const
Definition
TBTrack.h:71
TBTrack::m_residualv
std::vector< double > m_residualv
Definition
TBTrack.h:103
TBTrack::getCryoHitw
double getCryoHitw() const
Definition
TBTrack.h:73
TBTrack::setVintercept
void setVintercept(double vintercept)
Definition
TBTrack.h:84
TBTrack::setResidualv
void setResidualv(int ind, double residualv)
Definition
TBTrack.h:87
TBTrack::m_chi2u
double m_chi2u
Definition
TBTrack.h:107
TBTrack::m_chi2v
double m_chi2v
Definition
TBTrack.h:107
TBTrack::getHitNumberU
int getHitNumberU() const
Definition
TBTrack.h:50
TBTrack::m_hitNumberV
int m_hitNumberV
Definition
TBTrack.h:100
TBTrack::setVslope
void setVslope(double vslope)
Definition
TBTrack.h:82
TBTrack::m_cryov
double m_cryov
Definition
TBTrack.h:113
chi2
double chi2(TH1 *h0, TH1 *h1)
Definition
comparitor.cxx:525
Generated on
for ATLAS Offline Software by
1.17.0