Main Page
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
_
a
d
e
f
l
m
o
p
s
t
u
v
Related Functions
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Package Documentation
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
TrackPropagation
RungeKutta
src
RKCartesianDistance.h
Go to the documentation of this file.
1
#ifndef RKCartesianDistance_H
2
#define RKCartesianDistance_H
3
4
#include "
FWCore/Utilities/interface/Visibility.h
"
5
#include "
DataFormats/GeometryVector/interface/Basic3DVector.h
"
6
#include "
RKDistance.h
"
7
#include "
RKSmallVector.h
"
8
#include "
CartesianStateAdaptor.h
"
9
10
#include <cmath>
11
13
14
class
dso_internal
RKCartesianDistance
final :
public
RKDistance
<double, 6> {
15
public
:
16
typedef
double
Scalar
;
17
typedef
RKSmallVector<double, 6>
Vector
;
18
19
~RKCartesianDistance
()
override
{}
20
21
Scalar
operator()
(
const
Vector
& rka,
const
Vector
& rkb,
const
Scalar
&
s
)
const override
{
22
CartesianStateAdaptor
a
(rka),
b
(rkb);
23
24
return
(
a
.position() -
b
.position()).
mag
() + (
a
.momentum() -
b
.momentum()).
mag
() /
b
.momentum().mag();
25
}
26
};
27
28
#endif
Visibility.h
RKCartesianDistance::Scalar
double Scalar
Definition:
RKCartesianDistance.h:16
Basic3DVector.h
CartesianStateAdaptor.h
alignCSCRings.s
s
Definition:
alignCSCRings.py:92
RKSmallVector
ROOT::Math::SVector< T, N > RKSmallVector
Definition:
RKSmallVector.h:13
b
double b
Definition:
hdecay.h:118
RKCartesianDistance
Estimator of the distance between two state vectors, e.g. for convergence test.
Definition:
RKCartesianDistance.h:14
a
double a
Definition:
hdecay.h:119
RKCartesianDistance::Vector
RKSmallVector< double, 6 > Vector
Definition:
RKCartesianDistance.h:17
dso_internal
#define dso_internal
Definition:
Visibility.h:13
RKCartesianDistance::~RKCartesianDistance
~RKCartesianDistance() override
Definition:
RKCartesianDistance.h:19
CartesianStateAdaptor
Definition:
CartesianStateAdaptor.h:8
RKDistance.h
mag
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
Definition:
Basic3DVectorLD.h:127
RKSmallVector.h
RKCartesianDistance::operator()
Scalar operator()(const Vector &rka, const Vector &rkb, const Scalar &s) const override
Definition:
RKCartesianDistance.h:21
RKDistance
Definition:
RKDistance.h:8
Generated for CMSSW Reference Manual by
1.8.16