Main Page
Namespaces
Classes
Package Documentation
CVS Directory
WorkBook
Offline Guide
Release schedule
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
TrackingTools
TrajectoryParametrization
src
GlobalTrajectoryParameters.cc
Go to the documentation of this file.
1
#include "
TrackingTools/TrajectoryParametrization/interface/GlobalTrajectoryParameters.h
"
2
#include "
MagneticField/Engine/interface/MagneticField.h
"
3
4
GlobalTrajectoryParameters::GlobalTrajectoryParameters
(
const
GlobalPoint
& aX,
5
const
GlobalVector
& direction,
6
double
transverseCurvature,
int
,
7
const
MagneticField
* fieldProvider) :
8
theX
(aX), theField(fieldProvider), hasCurvature_(
true
), cachedCurvature_(transverseCurvature)
9
{
10
double
bza = -2.99792458e-3 *
theField
->
inTesla
(
theX
).
z
();
11
double
qbp = transverseCurvature/bza*direction.
perp
();
12
theP
= direction*fabs(1./qbp);
13
theCharge
= qbp > 0. ? 1 : -1;
14
}
15
16
double
GlobalTrajectoryParameters::transverseCurvature
()
const
17
{
18
if
(!
hasCurvature_
) {
19
double
bza = -2.99792458e-3 *
theField
->
inTesla
(
theX
).
z
();
20
cachedCurvature_
= bza*
signedInverseTransverseMomentum
();
21
hasCurvature_
=
true
;
22
}
23
return
cachedCurvature_
;
24
}
25
26
GlobalVector
GlobalTrajectoryParameters::magneticFieldInInverseGeV
(
const
GlobalPoint
&
x
)
const
27
{
28
return
2.99792458e-3 *
theField
->
inTesla
(x);
29
}
GlobalTrajectoryParameters::transverseCurvature
double transverseCurvature() const
Definition:
GlobalTrajectoryParameters.cc:16
PV3DBase::perp
T perp() const
Definition:
PV3DBase.h:66
Vector3DBase
Definition:
Vector3DBase.h:9
MagneticField::inTesla
virtual GlobalVector inTesla(const GlobalPoint &gp) const =0
Field value ad specified global point, in Tesla.
MagneticField
Definition:
MagneticField.h:16
GlobalTrajectoryParameters::GlobalTrajectoryParameters
GlobalTrajectoryParameters()
Definition:
GlobalTrajectoryParameters.h:19
GlobalTrajectoryParameters::magneticFieldInInverseGeV
GlobalVector magneticFieldInInverseGeV(const GlobalPoint &x) const
Definition:
GlobalTrajectoryParameters.cc:26
MagneticField.h
funct::true
true
Definition:
Factorize.h:183
GlobalTrajectoryParameters::cachedCurvature_
double cachedCurvature_
Definition:
GlobalTrajectoryParameters.h:115
PV3DBase::z
T z() const
Definition:
PV3DBase.h:58
GlobalTrajectoryParameters::signedInverseTransverseMomentum
double signedInverseTransverseMomentum() const
Definition:
GlobalTrajectoryParameters.h:75
GlobalTrajectoryParameters::theCharge
TrackCharge theCharge
Definition:
GlobalTrajectoryParameters.h:113
GlobalTrajectoryParameters.h
Point3DBase< float, GlobalTag >
GlobalTrajectoryParameters::theField
const MagneticField * theField
Definition:
GlobalTrajectoryParameters.h:114
theX
T theX
Definition:
Basic3DVectorLD.h:259
GlobalTrajectoryParameters::hasCurvature_
bool hasCurvature_
Definition:
GlobalTrajectoryParameters.h:115
x
Definition:
DDAxes.h:10
GlobalTrajectoryParameters::theX
GlobalPoint theX
Definition:
GlobalTrajectoryParameters.h:111
GlobalTrajectoryParameters::theP
GlobalVector theP
Definition:
GlobalTrajectoryParameters.h:112
Generated for CMSSW Reference Manual by
1.8.5