ATLAS Offline Software
Loading...
Searching...
No Matches
FTS_Track.h
Go to the documentation of this file.
1// Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2#ifndef EFTRACKINGEMULATION_FTSTRACK_H
3#define EFTRACKINGEMULATION_FTSTRACK_H
4
5// Easy representation of a smeared track, allows fast manipulation
6
7#include <iostream>
8#include "TMath.h"
9
11class FTS_Track {
12
13 public:
14
15
16 FTS_Track(double pt, double eta, double phi, double d0, double z0):
17 m_pt(pt), m_eta(eta), m_phi(phi), m_d0(d0), m_z0(z0) {};
18
19 FTS_Track(double pt, double eta, double phi, double d0, double z0,double sigma_pt, double sigma_eta, double sigma_phi, double sigma_d0, double sigma_z0,int FakeFlags):
20 m_pt(pt), m_eta(eta), m_phi(phi), m_d0(d0), m_z0(z0),
22
23 double pt() const {return m_pt;};
24 double curv() const {return 1.0/m_pt;}; // curv pT
25 double eta() const {return m_eta;};
26 double theta() const {return 2.0*TMath::ATan(TMath::Exp(-m_eta));};
27 double phi() const {return m_phi;};
28 double d0() const {return m_d0;};
29 double z0() const {return m_z0;};
30
31 double sigma_pt() const {return m_sigma_pt;};
32 double sigma_curv() const {return m_sigma_pt/m_pt/m_pt;};
33 double sigma_eta() const {return m_sigma_eta;};
34 double sigma_theta() const {return m_sigma_eta/TMath::CosH(m_eta); };
35 double sigma_phi() const {return m_sigma_phi;};
36 double sigma_d0() const {return m_sigma_d0;};
37 double sigma_z0() const {return m_sigma_z0;};
38 int FakeFlags() const {return m_FakeFlags;};
39
40 protected:
41 double m_pt = 0.;
42 double m_eta = 0.;
43 double m_phi= 0.;
44 double m_d0 = 0.;
45 double m_z0 = 0.;
46
47 double m_sigma_pt = 0. ;
48 double m_sigma_eta = 0.;
49 double m_sigma_phi = 0.;
50 double m_sigma_d0 = 0. ;
51 double m_sigma_z0 = 0. ;
52 int m_FakeFlags = 0;
53};
54}
55
56inline std::ostream& operator<<(std::ostream& s, const EFTrackingSmearing::FTS_Track& t){
57 s << "trackCandidate: pt=" << t.pt() << " eta="<< t.eta() <<" phi="<< t.phi()
58 << " d0="<<t.d0() << " z0="<< t.z0()
59 << "\n";
60 return s;
61}
62
63
64#endif
std::ostream & operator<<(std::ostream &s, const EFTrackingSmearing::FTS_Track &t)
Definition FTS_Track.h:56
FTS_Track(double pt, double eta, double phi, double d0, double z0)
Definition FTS_Track.h:16
FTS_Track(double pt, double eta, double phi, double d0, double z0, double sigma_pt, double sigma_eta, double sigma_phi, double sigma_d0, double sigma_z0, int FakeFlags)
Definition FTS_Track.h:19