Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
TrackingTools
TrajectoryParametrization
src
CurvilinearTrajectoryParameters.cc
Go to the documentation of this file.
1
#include "
TrackingTools/TrajectoryParametrization/interface/CurvilinearTrajectoryParameters.h
"
2
#include<cmath>
3
4
5
CurvilinearTrajectoryParameters::CurvilinearTrajectoryParameters
(
const
GlobalPoint
& aX,
const
GlobalVector
& aP,
TrackCharge
aCharge)
6
{
7
8
theQbp
=aCharge/aP.
mag
();
9
10
double
pT2= aP.
x
()*aP.
x
()+aP.
y
()*aP.
y
();
11
double
pT =
sqrt
(pT2);
12
thelambda
= atan(aP.
z
()/pT);
13
thephi
=atan2(aP.
y
(),aP.
x
());
14
thexT
= (-aP.
y
()*aX.
x
()+ aP.
x
()*aX.
y
()) / pT;
15
theyT
= (-aX.
x
()*aP.
x
()*aP.
z
() - aX.
y
()*aP.
z
()*aP.
y
() + aX.
z
()*(pT2)) / (aP.
mag
()*pT);
16
}
17
18
19
bool
CurvilinearTrajectoryParameters::updateP
(
double
dP) {
20
//FIXME. something is very likely to be missing here
21
double
p
= 1./
std::abs
(
Qbp
());
22
if
((p += dP) <= 0.)
return
false
;
23
double
newQbp =
Qbp
() > 0 ? 1./p : -1./
p
;
24
theQbp
= newQbp;
25
return
true
;
26
}
CurvilinearTrajectoryParameters::thelambda
double thelambda
Definition:
CurvilinearTrajectoryParameters.h:97
CurvilinearTrajectoryParameters::thexT
double thexT
Definition:
CurvilinearTrajectoryParameters.h:99
Vector3DBase< float, GlobalTag >
PV3DBase::y
T y() const
Definition:
PV3DBase.h:63
CurvilinearTrajectoryParameters::theyT
double theyT
Definition:
CurvilinearTrajectoryParameters.h:100
CurvilinearTrajectoryParameters.h
TrackCharge
int TrackCharge
Definition:
TrackCharge.h:4
PV3DBase::mag
T mag() const
Definition:
PV3DBase.h:67
CurvilinearTrajectoryParameters::theQbp
double theQbp
Definition:
CurvilinearTrajectoryParameters.h:96
mathSSE::sqrt
T sqrt(T t)
Definition:
SSEVec.h:48
PV3DBase::z
T z() const
Definition:
PV3DBase.h:64
CurvilinearTrajectoryParameters::updateP
bool updateP(double dP)
Definition:
CurvilinearTrajectoryParameters.cc:19
funct::abs
Abs< T >::type abs(const T &t)
Definition:
Abs.h:22
CurvilinearTrajectoryParameters::thephi
double thephi
Definition:
CurvilinearTrajectoryParameters.h:98
AlCaHLTBitMon_ParallelJobs.p
tuple p
Definition:
AlCaHLTBitMon_ParallelJobs.py:152
Point3DBase< float, GlobalTag >
PV3DBase::x
T x() const
Definition:
PV3DBase.h:62
CurvilinearTrajectoryParameters::Qbp
double Qbp() const
Definition:
CurvilinearTrajectoryParameters.h:87
CurvilinearTrajectoryParameters::CurvilinearTrajectoryParameters
CurvilinearTrajectoryParameters()
default constructor
Definition:
CurvilinearTrajectoryParameters.h:33
Generated for CMSSW Reference Manual by
1.8.5