TrackingTools
TrajectoryParametrization
interface
CurvilinearTrajectoryParameters.h
Go to the documentation of this file.
1
#ifndef _TRACKER_CURVILINEARTRAJECTORYPARAMETERS_H_
2
#define _TRACKER_CURVILINEARTRAJECTORYPARAMETERS_H_
3
4
#include "
DataFormats/TrajectoryState/interface/TrackCharge.h
"
5
#include "
DataFormats/Math/interface/AlgebraicROOTObjects.h
"
6
#include "
DataFormats/GeometryVector/interface/GlobalPoint.h
"
7
#include "
DataFormats/GeometryVector/interface/GlobalVector.h
"
8
9
#include <cmath>
10
23
class
CurvilinearTrajectoryParameters
{
24
public
:
26
27
CurvilinearTrajectoryParameters
() {}
28
35
CurvilinearTrajectoryParameters
(
const
AlgebraicVector5
&
v
,
bool
charged =
true
)
36
:
theQbp
(charged ?
v
[0] : 0),
thelambda
(
v
[1]),
thephi
(
v
[2]),
thexT
(
v
[3]),
theyT
(
v
[4]) {}
37
48
CurvilinearTrajectoryParameters
(
double
aQbp,
double
alambda,
double
aphi,
double
axT,
double
ayT,
bool
charged =
true
)
49
:
theQbp
(charged ? aQbp : 0),
thelambda
(alambda),
thephi
(aphi),
thexT
(axT),
theyT
(ayT) {}
50
54
CurvilinearTrajectoryParameters
(
const
GlobalPoint
& aX,
const
GlobalVector
& aP,
TrackCharge
aCharge);
55
57
TrackCharge
charge
()
const
{
return
(0 ==
Qbp
()) ? 0 : (
Qbp
() > 0 ? 1 : -1); }
58
60
double
signedInverseMomentum
()
const
{
return
Qbp
(); }
61
66
AlgebraicVector5
vector
()
const
{
return
AlgebraicVector5
(
theQbp
,
thelambda
,
thephi
,
thexT
,
theyT
); }
67
68
double
Qbp
()
const
{
return
theQbp
; }
69
double
lambda
()
const
{
return
thelambda
; }
70
double
phi
()
const
{
return
thephi
; }
71
double
xT
()
const
{
return
thexT
; }
72
double
yT
()
const
{
return
theyT
; }
73
74
bool
updateP
(
double
dP);
75
76
private
:
77
double
theQbp
;
78
double
thelambda
;
79
double
thephi
;
80
double
thexT
;
81
double
theyT
;
82
};
83
84
#endif
Vector3DBase
Definition:
Vector3DBase.h:8
CurvilinearTrajectoryParameters::yT
double yT() const
Definition:
CurvilinearTrajectoryParameters.h:72
CurvilinearTrajectoryParameters::thephi
double thephi
Definition:
CurvilinearTrajectoryParameters.h:79
CurvilinearTrajectoryParameters::lambda
double lambda() const
Definition:
CurvilinearTrajectoryParameters.h:69
TrackCharge
int TrackCharge
Definition:
TrackCharge.h:4
CurvilinearTrajectoryParameters::vector
AlgebraicVector5 vector() const
Definition:
CurvilinearTrajectoryParameters.h:66
CurvilinearTrajectoryParameters::CurvilinearTrajectoryParameters
CurvilinearTrajectoryParameters()
default constructor
Definition:
CurvilinearTrajectoryParameters.h:27
CurvilinearTrajectoryParameters::Qbp
double Qbp() const
Definition:
CurvilinearTrajectoryParameters.h:68
findQualityFiles.v
v
Definition:
findQualityFiles.py:179
CurvilinearTrajectoryParameters::updateP
bool updateP(double dP)
Definition:
CurvilinearTrajectoryParameters.cc:17
TrackCharge.h
Point3DBase< float, GlobalTag >
CurvilinearTrajectoryParameters
Definition:
CurvilinearTrajectoryParameters.h:23
CurvilinearTrajectoryParameters::CurvilinearTrajectoryParameters
CurvilinearTrajectoryParameters(double aQbp, double alambda, double aphi, double axT, double ayT, bool charged=true)
Definition:
CurvilinearTrajectoryParameters.h:48
CurvilinearTrajectoryParameters::thexT
double thexT
Definition:
CurvilinearTrajectoryParameters.h:80
AlgebraicVector5
ROOT::Math::SVector< double, 5 > AlgebraicVector5
Definition:
AlgebraicROOTObjects.h:14
CurvilinearTrajectoryParameters::xT
double xT() const
Definition:
CurvilinearTrajectoryParameters.h:71
CurvilinearTrajectoryParameters::signedInverseMomentum
double signedInverseMomentum() const
access to the Signed Inverse momentum q/p (zero for neutrals)
Definition:
CurvilinearTrajectoryParameters.h:60
CurvilinearTrajectoryParameters::theQbp
double theQbp
Definition:
CurvilinearTrajectoryParameters.h:77
GlobalVector.h
CurvilinearTrajectoryParameters::theyT
double theyT
Definition:
CurvilinearTrajectoryParameters.h:81
CurvilinearTrajectoryParameters::thelambda
double thelambda
Definition:
CurvilinearTrajectoryParameters.h:78
CurvilinearTrajectoryParameters::charge
TrackCharge charge() const
access to the charge
Definition:
CurvilinearTrajectoryParameters.h:57
CurvilinearTrajectoryParameters::phi
double phi() const
Definition:
CurvilinearTrajectoryParameters.h:70
GlobalPoint.h
AlgebraicROOTObjects.h
CurvilinearTrajectoryParameters::CurvilinearTrajectoryParameters
CurvilinearTrajectoryParameters(const AlgebraicVector5 &v, bool charged=true)
Definition:
CurvilinearTrajectoryParameters.h:35
Generated for CMSSW Reference Manual by
1.8.16