Main Page
Namespaces
Classes
Package Documentation
RecoPixelVertexing
PixelTriplets
plugins
ThirdHitZPrediction.cc
Go to the documentation of this file.
1
#include "
ThirdHitZPrediction.h
"
2
3
namespace
{
4
template
<
class
T>
T
sqr
(
T
t
) {
return
t *
t
; }
5
}
6
7
8
ThirdHitZPrediction::Range
ThirdHitZPrediction::operator()
(
9
const
GlobalPoint
& thePoint3,
float
erroRPhi3)
const
10
{
11
double
dR23 = (thePoint3-
thePoint2
).
perp
();
12
13
double
slope
= dR23/
dR12
;
14
if
( (
theCurvature
> 1.
e
-4)
15
&& (
std::abs
(0.5*dR23*
theCurvature
) < 1.)
16
) slope = std::asin(0.5*dR23*theCurvature)/
dS12
;
17
18
double
z3 =
thePoint2
.
z
() +
dZ12
*
slope
;
19
20
double
sqr_errorXY23 =
sqr_errorXY2
+
sqr
(erroRPhi3);
21
double
error
=
sqrt
(
sqr
( (1+dR23/
dR12
)*
theErrorZ2
)
22
+
sqr
( dR23/
dR12
*
theErrorZ1
)
23
+
sqr
(
dZ12
/
dR12
)*sqr_errorXY23
24
+
sqr
((
dZ12
/
dR12
)*(dR23/
dR12
))*
sqr_errorXY12
25
);
26
error *=
theNSigma
;
27
return
Range
(z3-error,z3+error);
28
}
29
ThirdHitZPrediction::Range
PixelRecoRange< float > Range
Definition:
ThirdHitZPrediction.h:11
ThirdHitZPrediction::dZ12
double dZ12
Definition:
ThirdHitZPrediction.h:29
relativeConstraints.error
error
Definition:
relativeConstraints.py:52
slope
static const double slope[3]
Definition:
CastorTimeSlew.cc:6
PixelRecoRange< float >
ThirdHitZPrediction::dR12
double dR12
Definition:
ThirdHitZPrediction.h:29
ThirdHitZPrediction::thePoint2
GlobalPoint thePoint2
Definition:
ThirdHitZPrediction.h:28
MillePedeFileConverter_cfg.e
e
Definition:
MillePedeFileConverter_cfg.py:37
ThirdHitZPrediction::sqr_errorXY12
double sqr_errorXY12
Definition:
ThirdHitZPrediction.h:30
ThirdHitZPrediction::theNSigma
double theNSigma
Definition:
ThirdHitZPrediction.h:34
ThirdHitZPrediction::theCurvature
double theCurvature
Definition:
ThirdHitZPrediction.h:33
mathSSE::sqrt
T sqrt(T t)
Definition:
SSEVec.h:18
ThirdHitZPrediction::dS12
double dS12
Definition:
ThirdHitZPrediction.h:29
PV3DBase::z
T z() const
Definition:
PV3DBase.h:64
ThirdHitZPrediction.h
funct::abs
Abs< T >::type abs(const T &t)
Definition:
Abs.h:22
ThirdHitZPrediction::operator()
Range operator()(const GlobalPoint &p3, float erroRPhi3) const
Definition:
ThirdHitZPrediction.cc:8
ThirdHitZPrediction::theErrorZ1
double theErrorZ1
Definition:
ThirdHitZPrediction.h:32
ThirdHitZPrediction::sqr_errorXY2
double sqr_errorXY2
Definition:
ThirdHitZPrediction.h:31
Point3DBase< float, GlobalTag >
perp
T perp() const
Magnitude of transverse component.
Definition:
Basic3DVectorLD.h:162
funct::sqr
Square< F >::type sqr(const F &f)
Definition:
Square.h:13
lumiQTWidget.t
t
Definition:
lumiQTWidget.py:50
T
long double T
Definition:
Basic3DVectorLD.h:66
ThirdHitZPrediction::theErrorZ2
double theErrorZ2
Definition:
ThirdHitZPrediction.h:32
Generated for CMSSW Reference Manual by
1.8.11