Main Page
Namespaces
Classes
Package Documentation
TrackingTools
PatternTools
interface
ClosestApproachInRPhi.h
Go to the documentation of this file.
1
#ifndef _ClosestApproachInRPhi_H_
2
#define _ClosestApproachInRPhi_H_
3
4
#include "
TrackingTools/PatternTools/interface/ClosestApproachOnHelices.h
"
5
#include "
TrackingTools/TrajectoryState/interface/FreeTrajectoryState.h
"
6
18
// Function for testing ClosestApproachInRPhi
19
namespace
test
{
20
namespace
ClosestApproachInRPhi_t {
21
int
test
();
22
}
23
}
24
25
class
ClosestApproachInRPhi
final :
public
ClosestApproachOnHelices
{
26
friend
int
test::ClosestApproachInRPhi_t::test
();
27
28
public
:
29
30
ClosestApproachInRPhi
() {status_ =
false
;}
31
~ClosestApproachInRPhi
()
override
{}
32
33
bool
calculate(
const
TrajectoryStateOnSurface
& sta,
34
const
TrajectoryStateOnSurface
& stb)
override
;
35
36
bool
calculate(
const
FreeTrajectoryState
& sta,
37
const
FreeTrajectoryState
& stb)
override
;
38
39
bool
status
()
const override
{
return
status_;}
40
44
std::pair<GlobalPoint, GlobalPoint>
points
()
const override
;
45
48
std::pair <GlobalTrajectoryParameters, GlobalTrajectoryParameters >
49
trajectoryParameters ()
const
;
50
52
GlobalPoint
crossingPoint()
const override
;
53
55
float
distance
()
const override
;
56
60
ClosestApproachInRPhi
*
clone
()
const override
{
61
return
new
ClosestApproachInRPhi
(*
this
);
62
}
63
64
private
:
65
66
bool
compute
(
const
TrackCharge
& chargeA,
67
const
GlobalVector
& momentumA,
68
const
GlobalPoint
& positionA,
69
const
TrackCharge
& chargeB,
70
const
GlobalVector
& momentumB,
71
const
GlobalPoint
& positionB)
dso_internal
;
72
73
// given the old Parameters, and a new GlobalPoint,
74
// we return the full new GlobalTrajectoryParameters at the
75
// Point.
76
static
GlobalTrajectoryParameters
77
newTrajectory(
const
GlobalPoint
& newpt,
78
const
GlobalTrajectoryParameters
& oldpar,
double
bz)
dso_internal
;
79
80
// Computes center coordinates and unsigned radius of circle;
81
static
void
circleParameters(
const
TrackCharge
&
charge
,
82
const
GlobalVector
& momemtum,
83
const
GlobalPoint
&
position
,
84
double
& xc,
double
& yc,
double
&
r
,
85
double
bz)
dso_internal
;
86
87
// Computes crossing points of 2 circles with centres (cx_i, cy_i)
88
// and unsigned radii r_i.
89
// Two cases: - circles have one or two intersection points;
90
// return value = 1;
91
// - circles do not cross; computes point of closest approach
92
// on each circle; return value = 2;
93
// if the calculation fails (e.g. concentric circles), return value = 0;
94
95
static
int
transverseCoord(
double
cxa,
double
cya,
double
ra,
96
double
cxb,
double
cyb,
double
rb,
97
double
& xg1,
double
& yg1,
98
double
& xg2,
double
& yg2)
dso_internal
;
99
100
// Computes z-coordinate on helix at given transverse coordinates
101
static
double
zCoord(
const
GlobalVector
& mom,
const
GlobalPoint
&
pos
,
102
double
r,
double
xc,
double
yc,
double
xg,
double
yg)
dso_internal
;
103
104
105
private
:
106
GlobalPoint
posA,
posB
;
107
GlobalTrajectoryParameters
paramA,
paramB
;
108
double
bz
;
109
bool
status_
;
110
111
};
112
113
#endif
ClosestApproachInRPhi::~ClosestApproachInRPhi
~ClosestApproachInRPhi() override
Definition:
ClosestApproachInRPhi.h:31
ClosestApproachInRPhi::ClosestApproachInRPhi
ClosestApproachInRPhi()
Definition:
ClosestApproachInRPhi.h:30
ClosestApproachInRPhi::paramB
GlobalTrajectoryParameters paramB
Definition:
ClosestApproachInRPhi.h:107
Vector3DBase
Definition:
Vector3DBase.h:9
hiPixelPairStep_cff.points
points
Definition:
hiPixelPairStep_cff.py:88
GlobalTrajectoryParameters
Definition:
GlobalTrajectoryParameters.h:15
test
Definition:
SmallWORMDict.h:13
ClosestApproachInRPhi::bz
double bz
Definition:
ClosestApproachInRPhi.h:108
TrajectoryStateOnSurface
Definition:
TrajectoryStateOnSurface.h:17
SoftLeptonByDistance_cfi.distance
distance
Definition:
SoftLeptonByDistance_cfi.py:6
TrackCharge
int TrackCharge
Definition:
TrackCharge.h:4
ClosestApproachInRPhi::status
bool status() const override
Definition:
ClosestApproachInRPhi.h:39
FreeTrajectoryState
Definition:
FreeTrajectoryState.h:29
ClosestApproachInRPhi::posB
GlobalPoint posB
Definition:
ClosestApproachInRPhi.h:106
ClosestApproachInRPhi::status_
bool status_
Definition:
ClosestApproachInRPhi.h:109
dso_internal
#define dso_internal
Definition:
Visibility.h:13
ALCARECOTkAlJpsiMuMu_cff.charge
charge
Definition:
ALCARECOTkAlJpsiMuMu_cff.py:47
test::ClosestApproachInRPhi_t::test
int test()
pos
Definition:
PixelAliasList.h:18
ClosestApproachInRPhi
Definition:
ClosestApproachInRPhi.h:25
alignCSCRings.r
r
Definition:
alignCSCRings.py:93
ClosestApproachOnHelices.h
bookConverter.compute
def compute(min, max)
Definition:
bookConverter.py:106
Point3DBase< float, GlobalTag >
ClosestApproachInRPhi::clone
ClosestApproachInRPhi * clone() const override
Definition:
ClosestApproachInRPhi.h:60
position
static int position[264][3]
Definition:
ReadPGInfo.cc:509
ClosestApproachOnHelices
Definition:
ClosestApproachOnHelices.h:21
FreeTrajectoryState.h
Generated for CMSSW Reference Manual by
1.8.11