Belle II Software
development
Toggle main menu visibility
Main Page
Topics
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
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
v
w
x
z
Typedefs
a
b
c
d
e
g
i
k
l
m
n
p
r
s
t
u
v
w
Enumerations
a
b
c
e
f
g
n
p
s
v
z
Enumerator
c
d
f
p
t
v
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 Symbols
b
c
d
g
i
o
r
s
t
Files
File List
File Members
All
Functions
Typedefs
Macros
▼
Belle II Software
►
Topics
►
Namespaces
►
Classes
▼
Files
▼
File List
►
alignment
▼
analysis
►
ClusterUtility
►
ContinuumSuppression
►
dataobjects
►
dbobjects
►
DecayDescriptor
►
examples
▼
modules
►
AllParticleCombiner
►
AnalysisConfiguration
►
BelleNbarMVAModule
►
BestCandidateSelection
►
BiasCorrection
►
BremsCorrection
►
BtubeCreator
►
ChargedParticleIdentificator
►
ContinuumSuppressionBuilder
▼
CurlTagger
►
include
▼
src
Bundle.cc
CurlTaggerModule.cc
SelectorCut.cc
SelectorMVA.cc
►
DistanceCalculator
►
DuplicateVertexMarker
►
EventKinematics
►
EventShapeCalculator
►
ExtraInfoPrinter
►
ExtraInfoRemover
►
FlavorTaggerInfoBuilder
►
FlavorTaggerInfoFiller
►
HelixErrorScaler
►
InclusiveBtagReconstruction
►
InclusiveDstarReconstruction
►
KlongDecayReconstructor
►
LowEnergyPi0IdentificationExpert
►
LowEnergyPi0VetoExpert
►
MCDecayFinder
►
MCMatcherParticles
►
NeutralHadron4MomentumCalculator
►
NeutralHadronMatcher
►
OnlyWriteOutParticleLists
►
ParticleCombiner
►
ParticleCombinerFromMC
►
ParticleCopier
►
ParticleExtractorFromROE
►
ParticleKinematicFitter
►
ParticleListManipulator
►
ParticleLoader
►
ParticleMassHypothesesUpdater
►
ParticleMassUpdater
►
ParticleMCDecayString
►
ParticleMomentumUpdater
►
ParticlePrinter
►
ParticleSelector
►
ParticleStats
►
ParticleVertexFitter
►
ParticleWeighting
►
ParticleWeightingLookUpCreator
►
PhotonEfficiencySystematics
►
Pi0VetoEfficiencySystematics
►
PIDCalibrationWeightCreator
►
PIDNeuralNetworkParametersCreator
►
PostMergeUpdate
►
PrintMCParticles
►
PseudoVertexFitter
►
RemoveParticlesNotInLists
►
RestOfEventBuilder
►
RestOfEventInterpreter
►
RestOfEventPrinter
►
RestOfEventUpdater
►
SelectDaughters
►
SignalSideParticleFilter
►
SignalSideParticleListCreator
►
SignalSideVariablesToDaughterExtraInfo
►
SignalSideVariablesToExtraInfo
►
SkimFilter
►
TagUniqueSignal
►
TagVertex
►
TauDecayMarker
►
TauDecayMode
►
TrackFitResultEstimator
►
TrackingSystematics
►
TrackIsoCalculator
►
TreeFitter
►
TwoBodyISRPhotonCorrector
►
UdstListFilter
►
V0DaughterMassUpdater
►
VariablesToEventBasedTree
►
VariablesToEventExtraInfo
►
VariablesToExtraInfo
►
VariablesToHistogram
►
VariablesToNtuple
►
VariableToReturnValue
►
OrcaKinFit
►
ParticleCombiner
►
scripts
►
tests
►
tools
►
utility
►
validation
►
VariableManager
►
variables
►
VertexFitting
►
arich
►
b2bii
►
background
►
beast
►
calibration
►
cdc
►
daq
►
decfiles
►
display
►
dqm
►
ecl
►
framework
►
generators
►
geometry
►
hlt
►
ir
►
klm
►
masterclass
►
mdst
►
mva
►
online_book
►
pxd
►
rawdata
►
reconstruction
►
simulation
►
site_scons
►
structure
►
svd
►
top
►
tracking
►
trg
►
validation
►
vxd
Doxygen.h
resource_analyzer.py
►
File Members
Bundle.cc
1
/**************************************************************************
2
* basf2 (Belle II Analysis Software Framework) *
3
* Author: The Belle II Collaboration *
4
* *
5
* See git log for contributors and copyright holders. *
6
* This file is licensed under LGPL-3.0, see LICENSE.md. *
7
**************************************************************************/
8
#include <analysis/modules/CurlTagger/Bundle.h>
9
10
#include <analysis/variables/VertexVariables.h>
11
12
#include <TMath.h>
13
14
using namespace
Belle2
;
15
using namespace
CurlTagger;
16
17
Bundle::Bundle
(
bool
isTruthBundle)
18
{
19
m_IsTruthBundle
= isTruthBundle;
20
m_Gamma
= 5;
//From BN1079 - TODO check this gives best selection (what defines best?)
21
22
if
(
m_IsTruthBundle
) {
23
m_CurlLabel
=
"isTruthCurl"
;
24
m_SizeLabel
=
"truthBundleSize"
;
25
}
else
{
26
m_CurlLabel
=
"isCurl"
;
27
m_SizeLabel
=
"bundleSize"
;
28
}
29
}
17
Bundle::Bundle
(
bool
isTruthBundle) {
…
}
30
31
Bundle::~Bundle
() =
default
;
32
33
void
Bundle::addParticle
(
Particle
* particle)
34
{
35
m_Particles
.push_back(particle);
36
}
33
void
Bundle::addParticle
(
Particle
* particle) {
…
}
37
38
Particle
*
Bundle::getParticle
(
unsigned
int
i)
39
{
40
return
m_Particles
[i];
41
}
38
Particle
*
Bundle::getParticle
(
unsigned
int
i) {
…
}
42
43
unsigned
int
Bundle::size
()
44
{
45
return
m_Particles
.size();
46
}
43
unsigned
int
Bundle::size
() {
…
}
47
48
float
Bundle::scaledImpactParam
(
Particle
* particle)
49
{
50
return
TMath::Power(
m_Gamma
* Variable::particleDRho(particle), 2) + TMath::Power(Variable::particleDZ(particle), 2);
51
}
48
float
Bundle::scaledImpactParam
(
Particle
* particle) {
…
}
52
53
bool
Bundle::compareParticles
(
Particle
* iPart,
Particle
* jPart)
54
{
55
return
scaledImpactParam
(iPart) <
scaledImpactParam
(jPart);
56
}
53
bool
Bundle::compareParticles
(
Particle
* iPart,
Particle
* jPart) {
…
}
57
58
void
Bundle::tagCurlInfo
()
59
{
60
//somewhat slow but should only be comparing 2-3 particles so shouldn't be a problem.
61
//std::sort (m_Particles.begin(), m_Particles.end(), compareParticles);
62
unsigned
int
bundleSize =
size
();
63
float
lowestVal = 1e10;
64
unsigned
int
posLowestVal = 0;
65
for
(
unsigned
int
i = 0; i < bundleSize; i++) {
66
if
(
scaledImpactParam
(
m_Particles
[i]) < lowestVal) {
67
lowestVal =
scaledImpactParam
(
m_Particles
[i]);
68
posLowestVal = i;
69
}
70
}
71
72
for
(
unsigned
int
i = 0; i < bundleSize; i++) {
73
Particle
* particle =
m_Particles
[i];
74
//std::cout << trackDist(particle) << std::endl;
75
if
(i == posLowestVal) {
continue
;}
76
particle ->setExtraInfo(
m_CurlLabel
, 1);
77
}
78
}
58
void
Bundle::tagCurlInfo
() {
…
}
79
80
void
Bundle::tagSizeInfo
()
81
{
82
unsigned
int
bundleSize =
size
();
83
for
(
Particle
* particle :
m_Particles
) {
84
particle -> setExtraInfo(
m_SizeLabel
, bundleSize);
85
}
86
}
80
void
Bundle::tagSizeInfo
() {
…
}
87
Belle2::CurlTagger::Bundle::Bundle
Bundle(bool isTruthBundle)
Constructor.
Definition
Bundle.cc:17
Belle2::CurlTagger::Bundle::scaledImpactParam
float scaledImpactParam(Particle *particle)
scaled impact parameter for selecting best track
Definition
Bundle.cc:48
Belle2::CurlTagger::Bundle::tagSizeInfo
void tagSizeInfo()
sets extraInfo with size of Bundle for particles in Bundle
Definition
Bundle.cc:80
Belle2::CurlTagger::Bundle::~Bundle
~Bundle()
Destructor.
Belle2::CurlTagger::Bundle::m_CurlLabel
std::string m_CurlLabel
label used to tag particles with curl info
Definition
Bundle.h:64
Belle2::CurlTagger::Bundle::size
unsigned int size()
gets Bundle size
Definition
Bundle.cc:43
Belle2::CurlTagger::Bundle::m_IsTruthBundle
bool m_IsTruthBundle
flag for if the bundle is based on truth info, changes which labels are used
Definition
Bundle.h:61
Belle2::CurlTagger::Bundle::compareParticles
bool compareParticles(Particle *iPart, Particle *jPart)
used to rank particles by scaledImpactParam - currently unused
Definition
Bundle.cc:53
Belle2::CurlTagger::Bundle::getParticle
Particle * getParticle(unsigned int i)
gets Particle from Bundle
Definition
Bundle.cc:38
Belle2::CurlTagger::Bundle::m_Particles
std::vector< Particle * > m_Particles
particles in bundle
Definition
Bundle.h:70
Belle2::CurlTagger::Bundle::m_SizeLabel
std::string m_SizeLabel
label used to tag particles with Bundle size
Definition
Bundle.h:67
Belle2::CurlTagger::Bundle::addParticle
void addParticle(Particle *particle)
adds Particle to Bundle
Definition
Bundle.cc:33
Belle2::CurlTagger::Bundle::m_Gamma
double m_Gamma
dr scale factor
Definition
Bundle.h:55
Belle2::CurlTagger::Bundle::tagCurlInfo
void tagCurlInfo()
sets curl extra info for particles in Bundle
Definition
Bundle.cc:58
Belle2::Particle
Class to store reconstructed particles.
Definition
Particle.h:76
Belle2
Abstract base class for different kinds of events.
Definition
MillepedeAlgorithm.h:17
analysis
modules
CurlTagger
src
Bundle.cc
Generated on Sat May 17 2025 02:52:49 for Belle II Software by
1.13.2