TrackPropagation
RungeKutta
src
RKCylindricalDistance.h
Go to the documentation of this file.
1
#ifndef RKCylindricalDistance_H
2
#define RKCylindricalDistance_H
3
#include "
FWCore/Utilities/interface/Visibility.h
"
4
5
#include "
RKDistance.h
"
6
#include "
RKSmallVector.h
"
7
#include "
CylindricalState.h
"
8
9
template
<
typename
T,
int
N>
10
class
dso_internal
RKCylindricalDistance
final :
public
RKDistance
<T, N> {
11
public
:
12
typedef
T
Scalar
;
13
typedef
RKSmallVector<T, N>
Vector
;
14
15
~RKCylindricalDistance
()
override
{}
16
17
Scalar
operator()
(
const
Vector
&
a
,
const
Vector
&
b
,
const
Scalar
&
rho
)
const override
{
18
CylindricalState
astate(
rho
,
a
, 1.);
19
CylindricalState
bstate(
rho
,
b
, 1.);
20
return
(astate.
position
() - bstate.
position
()).
mag
() +
21
(astate.
momentum
() - bstate.
momentum
()).
mag
() / bstate.
momentum
().
mag
();
22
}
23
};
24
25
#endif
Visibility.h
RKCylindricalDistance::Vector
RKSmallVector< T, N > Vector
Definition:
RKCylindricalDistance.h:13
CylindricalState::momentum
const LocalVector momentum() const
Definition:
CylindricalState.h:55
RKCylindricalDistance::~RKCylindricalDistance
~RKCylindricalDistance() override
Definition:
RKCylindricalDistance.h:15
RKCylindricalDistance::operator()
Scalar operator()(const Vector &a, const Vector &b, const Scalar &rho) const override
Definition:
RKCylindricalDistance.h:17
RKSmallVector
ROOT::Math::SVector< T, N > RKSmallVector
Definition:
RKSmallVector.h:13
CylindricalState
Definition:
CylindricalState.h:23
RKCylindricalDistance
Definition:
RKCylindricalDistance.h:10
b
double b
Definition:
hdecay.h:118
DDAxes::rho
a
double a
Definition:
hdecay.h:119
dso_internal
#define dso_internal
Definition:
Visibility.h:13
PV3DBase::mag
T mag() const
Definition:
PV3DBase.h:64
RKDistance.h
mag
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
Definition:
Basic3DVectorLD.h:127
T
long double T
Definition:
Basic3DVectorLD.h:48
RKCylindricalDistance::Scalar
T Scalar
Definition:
RKCylindricalDistance.h:12
CylindricalState::position
const LocalPoint position() const
Definition:
CylindricalState.h:53
RKSmallVector.h
CylindricalState.h
RKDistance
Definition:
RKDistance.h:8
Generated for CMSSW Reference Manual by
1.8.16