RecoPixelVertexing
PixelTriplets
plugins
ThirdHitZPrediction.cc
Go to the documentation of this file.
1
#include "
ThirdHitZPrediction.h
"
2
3
namespace
{
4
template
<
class
T>
5
T
sqr
(
T
t
) {
6
return
t
*
t
;
7
}
8
}
// namespace
9
10
ThirdHitZPrediction::Range
ThirdHitZPrediction::operator()
(
const
GlobalPoint
& thePoint3,
float
erroRPhi3)
const
{
11
double
dR23 = (thePoint3 -
thePoint2
).
perp
();
12
13
double
slope
= dR23 /
dR12
;
14
if
((
theCurvature
> 1.
e
-4) && (
std::abs
(0.5 * dR23 *
theCurvature
) < 1.))
15
slope
= std::asin(0.5 * dR23 *
theCurvature
) /
dS12
;
16
17
double
z3 =
thePoint2
.
z
() +
dZ12
*
slope
;
18
19
double
sqr_errorXY23 =
sqr_errorXY2
+
sqr
(erroRPhi3);
20
double
error
=
sqrt
(
sqr
((1 + dR23 /
dR12
) *
theErrorZ2
) +
sqr
(dR23 /
dR12
*
theErrorZ1
) +
21
sqr
(
dZ12
/
dR12
) * sqr_errorXY23 +
sqr
((
dZ12
/
dR12
) * (dR23 /
dR12
)) *
sqr_errorXY12
);
22
error
*=
theNSigma
;
23
return
Range
(z3 -
error
, z3 +
error
);
24
}
ThirdHitZPrediction::Range
PixelRecoRange< float > Range
Definition:
ThirdHitZPrediction.h:10
ThirdHitZPrediction::theCurvature
double theCurvature
Definition:
ThirdHitZPrediction.h:41
ThirdHitZPrediction::sqr_errorXY2
double sqr_errorXY2
Definition:
ThirdHitZPrediction.h:39
ThirdHitZPrediction::sqr_errorXY12
double sqr_errorXY12
Definition:
ThirdHitZPrediction.h:38
sqr
int sqr(const T &t)
Definition:
pfalgo_common_ref.h:9
ThirdHitZPrediction::dR12
double dR12
Definition:
ThirdHitZPrediction.h:37
perp
T perp() const
Magnitude of transverse component.
Definition:
Basic3DVectorLD.h:133
relativeConstraints.error
error
Definition:
relativeConstraints.py:53
PV3DBase::z
T z() const
Definition:
PV3DBase.h:61
ThirdHitZPrediction::theNSigma
double theNSigma
Definition:
ThirdHitZPrediction.h:42
mathSSE::sqrt
T sqrt(T t)
Definition:
SSEVec.h:19
Point3DBase< float, GlobalTag >
ThirdHitZPrediction::operator()
Range operator()(const GlobalPoint &p3, float erroRPhi3) const
Definition:
ThirdHitZPrediction.cc:10
PixelRecoRange< float >
ThirdHitZPrediction.h
ThirdHitZPrediction::theErrorZ2
double theErrorZ2
Definition:
ThirdHitZPrediction.h:40
ThirdHitZPrediction::dS12
double dS12
Definition:
ThirdHitZPrediction.h:37
T
long double T
Definition:
Basic3DVectorLD.h:48
ThirdHitZPrediction::theErrorZ1
double theErrorZ1
Definition:
ThirdHitZPrediction.h:40
funct::abs
Abs< T >::type abs(const T &t)
Definition:
Abs.h:22
slope
static const double slope[3]
Definition:
CastorTimeSlew.cc:6
submitPVValidationJobs.t
string t
Definition:
submitPVValidationJobs.py:644
ThirdHitZPrediction::thePoint2
GlobalPoint thePoint2
Definition:
ThirdHitZPrediction.h:36
ThirdHitZPrediction::dZ12
double dZ12
Definition:
ThirdHitZPrediction.h:37
MillePedeFileConverter_cfg.e
e
Definition:
MillePedeFileConverter_cfg.py:37
Generated for CMSSW Reference Manual by
1.8.16