Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
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
Definition:
Vector3DBase.h:9
PV3DBase::y
T y() const
Definition:
PV3DBase.h:63
abs
#define abs(x)
Definition:
mlp_lapack.h:159
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
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