Belle II Software
release-05-02-19
Main Page
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Variables
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Typedefs
a
b
c
d
e
h
i
l
m
n
p
r
s
t
v
w
Enumerations
Enumerator
c
d
f
p
t
u
v
w
Classes
Class List
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
Enumerations
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
Enumerator
a
b
c
d
e
f
g
h
k
l
m
n
o
p
r
s
t
u
v
w
z
Related Functions
b
c
d
g
i
o
r
s
t
Files
File List
File Members
All
Functions
CosAngleXY.h
1
/**************************************************************************
2
* BASF2 (Belle Analysis Framework 2) *
3
* Copyright(C) 2014 - Belle II Collaboration *
4
* *
5
* Author: The Belle II Collaboration *
6
* Contributors: Jakob Lettenbichler (jakob.lettenbichler@oeaw.ac.at) *
7
* *
8
* This software is provided "as is" without any warranty. *
9
**************************************************************************/
10
11
#pragma once
12
13
#include <tracking/trackFindingVXD/filterMap/filterFramework/SelectionVariable.h>
14
#include <framework/geometry/B2Vector3.h>
15
#include <cmath>
16
17
#define COSANGLEXY_NAME CosAngleXY
18
19
namespace
Belle2
{
30
template
<
typename
Po
int
Type >
31
class
COSANGLEXY_NAME
:
public
SelectionVariable
< PointType , 3, double > {
32
public
:
34
PUT_NAME_FUNCTION
(
COSANGLEXY_NAME
);
35
36
39
static
double
value
(
const
PointType& outerHit,
const
PointType& centerHit,
const
PointType& innerHit)
40
{
41
42
B2Vector3<double>
outerVector(outerHit.X() - centerHit.X(), outerHit.Y() - centerHit.Y(), 0.);
43
B2Vector3<double>
innerVector(centerHit.X() - innerHit.X(), centerHit.Y() - innerHit.Y(), 0.);
44
45
double
result = (outerVector.
X
() * innerVector.
X
() + outerVector.
Y
() * innerVector.
Y
()) / (outerVector.
Perp
() *
46
innerVector.
Perp
());
47
48
return
(std::isnan(result) || std::isinf(result)) ?
double
(0) : result;
49
}
// return unit: none (calculation for degrees is incomplete, if you want readable numbers, use AngleXYFull instead)
50
};
51
53
}
Belle2::B2Vector3::Perp
DataType Perp() const
The transverse component (R in cylindrical coordinate system).
Definition:
B2Vector3.h:199
Belle2::COSANGLEXY_NAME::PUT_NAME_FUNCTION
PUT_NAME_FUNCTION(COSANGLEXY_NAME)
is replaced by "static const std:string name(void)" frunction which returns name of the Class
Belle2::B2Vector3< double >
Belle2
Abstract base class for different kinds of events.
Definition:
MillepedeAlgorithm.h:19
Belle2::COSANGLEXY_NAME::value
static double value(const PointType &outerHit, const PointType ¢erHit, const PointType &innerHit)
calculates the angle between the hits/vectors (XY), returning unit: none (calculation for degrees is ...
Definition:
CosAngleXY.h:39
Belle2::SelectionVariable
Base class of the selection variable objects used for pair filtering.
Definition:
SelectionVariable.h:54
Belle2::B2Vector3::X
DataType X() const
access variable X (= .at(0) without boundary check)
Definition:
B2Vector3.h:430
Belle2::COSANGLEXY_NAME
calculates the angle between the hits/vectors (XY), returning unit: none (calculation for degrees is ...
Definition:
CosAngleXY.h:31
Belle2::B2Vector3::Y
DataType Y() const
access variable Y (= .at(1) without boundary check)
Definition:
B2Vector3.h:432
tracking
trackFindingVXD
filterMap
threeHitVariables
include
CosAngleXY.h
Generated on Tue Jan 4 2022 03:09:33 for Belle II Software by
1.8.17