Belle II Software  release-05-02-19
CurlingTrackCandSplitterModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2014 Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Thomas Madlener *
7  * *
8  **************************************************************************/
9 
10 #pragma once
11 
12 #include <framework/core/Module.h>
13 #include <tracking/spacePointCreation/SpacePointTrackCand.h>
14 #include <tracking/spacePointCreation/SpacePoint.h>
15 
16 #include <array>
17 
18 #include <framework/geometry/B2Vector3.h> // gradually moving to B2Vector3 instead of TVector3
19 
20 #include <TFile.h>
21 #include <TTree.h>
22 
23 namespace Belle2 {
48  class CurlingTrackCandSplitterModule : public Module {
49 
50  public:
51 
55  void initialize() override;
56 
57  void event() override;
59  void terminate() override;
62  enum {
63  c_nSVDPlanes = 4,
64  c_nPXDPlanes = 2,
65 
66  c_nPlanes = c_nSVDPlanes + c_nPXDPlanes,
67  };
68 
70  struct RootVariables {
71  std::array<std::vector<double>, c_nPlanes> SpacePointXGlobal;
72  std::array<std::vector<double>, c_nPlanes> SpacePointYGlobal;
73  std::array<std::vector<double>, c_nPlanes> SpacePointZGlobal;
75  std::array<std::vector<double>, c_nPlanes> SpacePointULocal;
76  std::array<std::vector<double>, c_nPlanes> SpacePointVLocal;
77 // std::array<std::vector<double>, c_nPlanes> SpacePointZLocal; /**< local z-positions of SpacePoints (layerwise)*/
78 
79  std::array<std::vector<double>, c_nPlanes> TrueHitXGlobal;
80  std::array<std::vector<double>, c_nPlanes> TrueHitYGlobal;
81  std::array<std::vector<double>, c_nPlanes> TrueHitZGlobal;
84  std::array<std::vector<double>, c_nPlanes> PosResidueXGlobal;
86  std::array<std::vector<double>, c_nPlanes> PosResidueYGlobal;
88  std::array<std::vector<double>, c_nPlanes> PosResidueZGlobal;
89 
91  std::array<std::vector<double>, c_nPlanes> PosResidueULocal;
93  std::array<std::vector<double>, c_nPlanes> PosResidueVLocal;
94 
95  std::array<std::vector<double>, c_nPlanes> TrueHitULocal;
96  std::array<std::vector<double>, c_nPlanes> TrueHitVLocal;
97 // std::array<std::vector<double>, c_nPlanes> TrueHitZLocal; /**< local z-positions of TrueHits (layerwise) */
98 
99  std::array<std::vector<double>, c_nPlanes> PosResiduesLocal;
100  std::array<std::vector<double>, c_nPlanes> PosResiduesGlobal;
103  std::array<std::vector<double>, c_nPlanes> MisMatchPosResiduals;
105  std::array<std::vector<double>, c_nPlanes> MisMatchPosX;
107  std::array<std::vector<double>, c_nPlanes> MisMatchPosY;
109  std::array<std::vector<double>, c_nPlanes> MisMatchPosZ;
110 
112  std::array<std::vector<double>, c_nPlanes> MisMatchPosU;
114  std::array<std::vector<double>, c_nPlanes> MisMatchPosV;
115 
117  std::array<std::vector<double>, c_nPlanes> MisMatchMomX;
119  std::array<std::vector<double>, c_nPlanes> MisMatchMomY;
121  std::array<std::vector<double>, c_nPlanes> MisMatchMomZ;
122  };
123 
127  struct TaggedUVPos {
128  bool m_setU;
129  bool m_setV;
130  double m_U;
131  double m_V;
134  TaggedUVPos() : m_setU(false), m_setV(false), m_U(0.), m_V(0.) {}
135  };
136 
137  protected:
138 
139  bool m_PARAMsplitCurlers;
141  std::string m_PARAMsptcName;
144  std::string m_PARAMcurlingOutFirstName;
145 
150  std::string m_PARAMcompleteCurlerName;
153  std::vector<double> m_PARAMsetOrigin;
154 
161  int m_spacePointTCCtr;
163  int m_curlingTCCtr;
171  int m_NoCurlingTCsCtr;
175  void initializeCounters();
180  const std::vector<int> checkTrackCandForCurling(const Belle2::SpacePointTrackCand&, RootVariables& rootVariables);
181 
187  template<class TrueHit>
188  std::pair<const B2Vector3<double>, const B2Vector3<double> >
189  getGlobalPositionAndMomentum(TrueHit* aTrueHit);
190 
194  const std::vector<Belle2::SpacePointTrackCand>
195  splitCurlingTrackCand(const Belle2::SpacePointTrackCand& SPTrackCand, int NTracklets, const std::vector<int>& splitIndices);
196 
198  bool getDirectionOfFlight(std::pair<const B2Vector3<double>, const B2Vector3<double> > const& hitPosAndMom,
199  const B2Vector3<double>& origin);
200 
204  BELLE2_DEFINE_EXCEPTION(FoundNoTrueHit, "Found no TrueHit for one (or more) Cluster(s). "
205  "Without a TrueHit a decision if a TrackCand is curling is not possible");
206 
210  BELLE2_DEFINE_EXCEPTION(TrueHitsNotMatching, "The TrueHits related to the two SVDClusters of a SpacePoint are not the same!")
211 
212 
215  BELLE2_DEFINE_EXCEPTION(FoundNoCluster, "No related Cluster to a SpacePoint was found.");
216 
219  std::vector<std::string> m_PARAMrootFileName;
220  TFile* m_rootFilePtr;
221  TTree* m_treePtr;
223  std::array<std::vector<double>, c_nPlanes> m_rootSpacePointXGlobals;
224  std::array<std::vector<double>, c_nPlanes> m_rootSpacePointYGlobals;
225  std::array<std::vector<double>, c_nPlanes> m_rootSpacePointZGlobals;
227  std::array<std::vector<double>, c_nPlanes> m_rootSpacePointULocals;
228  std::array<std::vector<double>, c_nPlanes> m_rootSpacePointVLocals;
229 // std::array<std::vector<double>, c_nPlanes> m_rootSpacePointZLocals; /**< Local Z-Positions of SpacePoints (layerwise) */
230 
231  std::array<std::vector<double>, c_nPlanes> m_rootTrueHitXGlobals;
232  std::array<std::vector<double>, c_nPlanes> m_rootTrueHitYGlobals;
233  std::array<std::vector<double>, c_nPlanes> m_rootTrueHitZGlobals;
235  std::array<std::vector<double>, c_nPlanes> m_rootTrueHitULocals;
236  std::array<std::vector<double>, c_nPlanes> m_rootTrueHitVLocals;
237 // std::vector<double> m_rootTrueHitZLocals; /**< Local Z-Positions of TrueHits (layerwise) */
238 
240  std::array<std::vector<double>, c_nPlanes> m_rootPosResidueXGlobal;
242  std::array<std::vector<double>, c_nPlanes> m_rootPosResidueYGlobal;
244  std::array<std::vector<double>, c_nPlanes> m_rootPosResidueZGlobal;
245 
247  std::array<std::vector<double>, c_nPlanes> m_rootPosResidueULocal;
249  std::array<std::vector<double>, c_nPlanes> m_rootPosResidueVLocal;
250 
252  std::array<std::vector<double>, c_nPlanes> m_rootLocalPosResiduals;
254  std::array<std::vector<double>, c_nPlanes> m_rootGlobalPosResiduals;
255 
257  std::array<std::vector<double>, c_nPlanes> m_rootMisMatchPosDistance;
259  std::array<std::vector<double>, c_nPlanes> m_rootMisMatchPosX;
261  std::array<std::vector<double>, c_nPlanes> m_rootMisMatchPosY;
263  std::array<std::vector<double>, c_nPlanes> m_rootMisMatchPosZ;
264 
266  std::array<std::vector<double>, c_nPlanes> m_rootMisMatchPosU;
268  std::array<std::vector<double>, c_nPlanes> m_rootMisMatchPosV;
269 
271  std::array<std::vector<double>, c_nPlanes> m_rootMisMatchMomX;
273  std::array<std::vector<double>, c_nPlanes> m_rootMisMatchMomY;
275  std::array<std::vector<double>, c_nPlanes> m_rootMisMatchMomZ;
276 
278  TaggedUVPos getUV(const SpacePoint* spacePoint);
279 
281  template <class TrueHit>
282  void getValuesForRoot(const SpacePoint* spacePoint, const TrueHit* trueHit, RootVariables& rootVariables);
283 
284  void writeToRoot(RootVariables& rootVariables);
285  };
287 }
Belle2::CurlingTrackCandSplitterModule::m_PARAMnTrackStubs
int m_PARAMnTrackStubs
maximum number of TrackCand Stubs to be stored for a curling TrackCand
Definition: CurlingTrackCandSplitterModule.h:162
Belle2::CurlingTrackCandSplitterModule::TaggedUVPos::m_setU
bool m_setU
indicator if U is set
Definition: CurlingTrackCandSplitterModule.h:135
Belle2::CurlingTrackCandSplitterModule::RootVariables::PosResidueYGlobal
std::array< std::vector< double >, c_nPlanes > PosResidueYGlobal
Y-position (global) difference between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:93
Belle2::CurlingTrackCandSplitterModule::m_PARAMuseNonSingleTHinPA
bool m_PARAMuseNonSingleTHinPA
Switch for using SpacePoints in position Analysis that are related to more than one TrueHit.
Definition: CurlingTrackCandSplitterModule.h:180
Belle2::CurlingTrackCandSplitterModule::m_rootGlobalPosResiduals
std::array< std::vector< double >, c_nPlanes > m_rootGlobalPosResiduals
Global Position Residuals between TrueHits and SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:261
Belle2::CurlingTrackCandSplitterModule::RootVariables::MisMatchPosU
std::array< std::vector< double >, c_nPlanes > MisMatchPosU
Difference of U-positions (local) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:119
Belle2::CurlingTrackCandSplitterModule::m_rootPosResidueYGlobal
std::array< std::vector< double >, c_nPlanes > m_rootPosResidueYGlobal
Y-position (global) difference between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:249
Belle2::CurlingTrackCandSplitterModule::checkTrackCandForCurling
const std::vector< int > checkTrackCandForCurling(const Belle2::SpacePointTrackCand &, RootVariables &rootVariables)
Check if the track candidate is curling.
Definition: CurlingTrackCandSplitterModule.cc:354
Belle2::CurlingTrackCandSplitterModule::m_rootFilePtr
TFile * m_rootFilePtr
Pointer to ROOT file.
Definition: CurlingTrackCandSplitterModule.h:227
Belle2::CurlingTrackCandSplitterModule::getDirectionOfFlight
bool getDirectionOfFlight(std::pair< const B2Vector3< double >, const B2Vector3< double > > const &hitPosAndMom, const B2Vector3< double > &origin)
determine the direction of flight of a particle for a given hit and the origin (assumed interaction p...
Definition: CurlingTrackCandSplitterModule.cc:561
Belle2::CurlingTrackCandSplitterModule::splitCurlingTrackCand
const std::vector< Belle2::SpacePointTrackCand > splitCurlingTrackCand(const Belle2::SpacePointTrackCand &SPTrackCand, int NTracklets, const std::vector< int > &splitIndices)
Split a culring track candidate into (up to NTracklets) tracklets.
Definition: CurlingTrackCandSplitterModule.cc:593
Belle2::CurlingTrackCandSplitterModule::m_createdTrackStubsCtr
int m_createdTrackStubsCtr
Counter for created TrackCand Stubs by splitting a SpacePointTrackCand.
Definition: CurlingTrackCandSplitterModule.h:172
Belle2::CurlingTrackCandSplitterModule::RootVariables::SpacePointULocal
std::array< std::vector< double >, c_nPlanes > SpacePointULocal
local u-positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:82
Belle2::CurlingTrackCandSplitterModule::RootVariables::TrueHitZGlobal
std::array< std::vector< double >, c_nPlanes > TrueHitZGlobal
global z-positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:88
Belle2::CurlingTrackCandSplitterModule::TaggedUVPos::m_setV
bool m_setV
indicator if V is set
Definition: CurlingTrackCandSplitterModule.h:136
Belle2::CurlingTrackCandSplitterModule::m_rootTrueHitYGlobals
std::array< std::vector< double >, c_nPlanes > m_rootTrueHitYGlobals
Global V-Positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:239
Belle2::CurlingTrackCandSplitterModule::RootVariables::MisMatchMomZ
std::array< std::vector< double >, c_nPlanes > MisMatchMomZ
Difference of Momentum in Z-Direction for TrueHits that do not match but are related from one SpacePo...
Definition: CurlingTrackCandSplitterModule.h:128
Belle2::CurlingTrackCandSplitterModule::RootVariables::PosResidueZGlobal
std::array< std::vector< double >, c_nPlanes > PosResidueZGlobal
Z-position (global) difference between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:95
Belle2::CurlingTrackCandSplitterModule::m_rootMisMatchPosZ
std::array< std::vector< double >, c_nPlanes > m_rootMisMatchPosZ
Difference of Z-positions (global) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:270
Belle2::CurlingTrackCandSplitterModule::m_PARAMcurlingOutFirstName
std::string m_PARAMcurlingOutFirstName
collection name of the first outgoing (i.e.
Definition: CurlingTrackCandSplitterModule.h:151
Belle2::CurlingTrackCandSplitterModule::CurlingTrackCandSplitterModule
CurlingTrackCandSplitterModule()
Constructor.
Definition: CurlingTrackCandSplitterModule.cc:38
Belle2::CurlingTrackCandSplitterModule::m_NoCurlingTCsCtr
int m_NoCurlingTCsCtr
Counter for SPTCs that were not curling and hence were added to the StoreArray of first out parts.
Definition: CurlingTrackCandSplitterModule.h:178
Belle2::CurlingTrackCandSplitterModule::m_rootMisMatchMomY
std::array< std::vector< double >, c_nPlanes > m_rootMisMatchMomY
Difference of Momentum in Y-Direction for TrueHits that do not match but are related from one SpacePo...
Definition: CurlingTrackCandSplitterModule.h:280
Belle2::CurlingTrackCandSplitterModule::RootVariables::SpacePointXGlobal
std::array< std::vector< double >, c_nPlanes > SpacePointXGlobal
global x-positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:78
Belle2::SpacePoint
SpacePoint typically is build from 1 PXDCluster or 1-2 SVDClusters.
Definition: SpacePoint.h:52
Belle2::CurlingTrackCandSplitterModule::getUV
TaggedUVPos getUV(const SpacePoint *spacePoint)
get U&V for a SpacePoint (via its relation to Clusters) (SpacePoint can only return normalized U&V co...
Definition: CurlingTrackCandSplitterModule.cc:777
Belle2::CurlingTrackCandSplitterModule::TaggedUVPos
struct for easier handling of getting U- & V-position of SpacePoints and some difficulties that arise...
Definition: CurlingTrackCandSplitterModule.h:134
Belle2::CurlingTrackCandSplitterModule::writeToRoot
void writeToRoot(RootVariables &rootVariables)
Write previously collected values to ROOT file.
Definition: CurlingTrackCandSplitterModule.cc:737
Belle2::CurlingTrackCandSplitterModule::m_rootLocalPosResiduals
std::array< std::vector< double >, c_nPlanes > m_rootLocalPosResiduals
Local Position Residuals between TrueHits and SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:259
Belle2::CurlingTrackCandSplitterModule::RootVariables::MisMatchMomX
std::array< std::vector< double >, c_nPlanes > MisMatchMomX
Difference of Momentum in X-Direction for TrueHits that do not match but are related from one SpacePo...
Definition: CurlingTrackCandSplitterModule.h:124
Belle2::CurlingTrackCandSplitterModule::m_rootSpacePointXGlobals
std::array< std::vector< double >, c_nPlanes > m_rootSpacePointXGlobals
Global X-Positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:230
Belle2::CurlingTrackCandSplitterModule::RootVariables::MisMatchPosZ
std::array< std::vector< double >, c_nPlanes > MisMatchPosZ
Difference of Z-positions (global) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:116
Belle2::B2Vector3< double >
Belle2::CurlingTrackCandSplitterModule::m_rootSpacePointULocals
std::array< std::vector< double >, c_nPlanes > m_rootSpacePointULocals
Local U-Positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:234
Belle2::CurlingTrackCandSplitterModule::m_rootPosResidueULocal
std::array< std::vector< double >, c_nPlanes > m_rootPosResidueULocal
U-position (local) differnece between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:254
Belle2::CurlingTrackCandSplitterModule::m_rootSpacePointZGlobals
std::array< std::vector< double >, c_nPlanes > m_rootSpacePointZGlobals
Global Z-Positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:232
Belle2::CurlingTrackCandSplitterModule::terminate
void terminate() override
terminate: print some summary on the modules work
Definition: CurlingTrackCandSplitterModule.cc:338
Belle2::CurlingTrackCandSplitterModule::m_PARAMsptcName
std::string m_PARAMsptcName
collection name of the SpacePointTrackCands to be analyzed
Definition: CurlingTrackCandSplitterModule.h:148
Belle2::CurlingTrackCandSplitterModule::m_rootMisMatchPosV
std::array< std::vector< double >, c_nPlanes > m_rootMisMatchPosV
Difference of V-positions (local) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:275
Belle2::CurlingTrackCandSplitterModule::initialize
void initialize() override
initialize: initialize counters, register stuff in DataStore, check if all necessary StoreArrays are ...
Definition: CurlingTrackCandSplitterModule.cc:92
Belle2::CurlingTrackCandSplitterModule::RootVariables::TrueHitYGlobal
std::array< std::vector< double >, c_nPlanes > TrueHitYGlobal
global y-positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:87
Belle2::CurlingTrackCandSplitterModule::m_PARAMpositionAnalysis
bool m_PARAMpositionAnalysis
Set to true if output to ROOT file is desired with the positions and position differences of SpacePoi...
Definition: CurlingTrackCandSplitterModule.h:224
Belle2::CurlingTrackCandSplitterModule::RootVariables::PosResidueVLocal
std::array< std::vector< double >, c_nPlanes > PosResidueVLocal
V-position (local) difference between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:100
Belle2::Cluster
Class to collect log likelihoods from Clusters from ECL and KLM aimed for output to mdst includes fun...
Definition: Cluster.h:37
Belle2::CurlingTrackCandSplitterModule::TaggedUVPos::TaggedUVPos
TaggedUVPos()
default constructor initializes both bools to false and both doubles to 0.
Definition: CurlingTrackCandSplitterModule.h:141
Belle2::CurlingTrackCandSplitterModule::m_PARAMcompleteCurlerName
std::string m_PARAMcompleteCurlerName
collection name of all parts of a curling TrackCand
Definition: CurlingTrackCandSplitterModule.h:157
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::CurlingTrackCandSplitterModule::m_PARAMsplitCurlers
bool m_PARAMsplitCurlers
indicating if the SpacePointTrackCands should only be analyzed for curling behaviour,...
Definition: CurlingTrackCandSplitterModule.h:146
Belle2::CurlingTrackCandSplitterModule::getGlobalPositionAndMomentum
std::pair< const B2Vector3< double >, const B2Vector3< double > > getGlobalPositionAndMomentum(TrueHit *aTrueHit)
Get the global position and momentum for a given TrueHit (PXD or SVD at the moment).
Belle2::CurlingTrackCandSplitterModule::RootVariables::TrueHitULocal
std::array< std::vector< double >, c_nPlanes > TrueHitULocal
local u-positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:102
Belle2::CurlingTrackCandSplitterModule::m_rootPosResidueZGlobal
std::array< std::vector< double >, c_nPlanes > m_rootPosResidueZGlobal
Z-position (global) difference between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:251
Belle2::CurlingTrackCandSplitterModule::m_PARAMcurlingAllInName
std::string m_PARAMcurlingAllInName
collection name of all ingoing parts of a curling TrackCand
Definition: CurlingTrackCandSplitterModule.h:153
Belle2::CurlingTrackCandSplitterModule::m_PARAMrootFileName
std::vector< std::string > m_PARAMrootFileName
two entries accepted.
Definition: CurlingTrackCandSplitterModule.h:226
Belle2::CurlingTrackCandSplitterModule::m_rootMisMatchPosX
std::array< std::vector< double >, c_nPlanes > m_rootMisMatchPosX
Difference of X-positions (global) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:266
Belle2::CurlingTrackCandSplitterModule::m_rootSpacePointYGlobals
std::array< std::vector< double >, c_nPlanes > m_rootSpacePointYGlobals
Global Y-Positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:231
Belle2::CurlingTrackCandSplitterModule::RootVariables::MisMatchPosX
std::array< std::vector< double >, c_nPlanes > MisMatchPosX
Difference of X-positions (global) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:112
Belle2::CurlingTrackCandSplitterModule::m_saveCompleteCurler
bool m_saveCompleteCurler
set to true if all parts of a curling TrackCand should be stored in a separate StoreArray (no paramet...
Definition: CurlingTrackCandSplitterModule.h:164
Belle2::CurlingTrackCandSplitterModule::RootVariables::SpacePointZGlobal
std::array< std::vector< double >, c_nPlanes > SpacePointZGlobal
global z-positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:80
Belle2::CurlingTrackCandSplitterModule::m_spacePointTCCtr
int m_spacePointTCCtr
Counter for presented SpacePointTrackCands.
Definition: CurlingTrackCandSplitterModule.h:168
Belle2::CurlingTrackCandSplitterModule::m_rootMisMatchMomX
std::array< std::vector< double >, c_nPlanes > m_rootMisMatchMomX
Difference of Momentum in X-Direction for TrueHits that do not match but are related from one SpacePo...
Definition: CurlingTrackCandSplitterModule.h:278
Belle2::CurlingTrackCandSplitterModule::RootVariables::MisMatchPosY
std::array< std::vector< double >, c_nPlanes > MisMatchPosY
Difference of Y-positions (global) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:114
Belle2::CurlingTrackCandSplitterModule::m_treePtr
TTree * m_treePtr
Pointer to ROOT tree.
Definition: CurlingTrackCandSplitterModule.h:228
Belle2::CurlingTrackCandSplitterModule::event
void event() override
event: check SpacePointTrackCand for curling behaviour, split if needed (and wanted by user)
Definition: CurlingTrackCandSplitterModule.cc:244
Belle2::CurlingTrackCandSplitterModule::m_rootTrueHitVLocals
std::array< std::vector< double >, c_nPlanes > m_rootTrueHitVLocals
Local Y-Positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:243
Belle2::CurlingTrackCandSplitterModule::m_curlingTCCtr
int m_curlingTCCtr
Counter for TrackCands that show curling behaviour.
Definition: CurlingTrackCandSplitterModule.h:170
Belle2::CurlingTrackCandSplitterModule::BELLE2_DEFINE_EXCEPTION
BELLE2_DEFINE_EXCEPTION(FoundNoTrueHit, "Found no TrueHit for one (or more) Cluster(s). " "Without a TrueHit a decision if a TrackCand is curling is not possible")
Exception for case when no TrueHit can be found for a Cluster.
Belle2::CurlingTrackCandSplitterModule::m_rootTrueHitULocals
std::array< std::vector< double >, c_nPlanes > m_rootTrueHitULocals
Local X-Positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:242
Belle2::CurlingTrackCandSplitterModule::m_origin
B2Vector3< double > m_origin
origin used internally (set from user set value)
Definition: CurlingTrackCandSplitterModule.h:166
Belle2::CurlingTrackCandSplitterModule::RootVariables
Internal DataStore for ROOT output variables.
Definition: CurlingTrackCandSplitterModule.h:77
Belle2::CurlingTrackCandSplitterModule::m_rootTrueHitZGlobals
std::array< std::vector< double >, c_nPlanes > m_rootTrueHitZGlobals
Global Z-Positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:240
Belle2::CurlingTrackCandSplitterModule::m_rootTrueHitXGlobals
std::array< std::vector< double >, c_nPlanes > m_rootTrueHitXGlobals
Global U-Positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:238
Belle2::CurlingTrackCandSplitterModule::TaggedUVPos::m_V
double m_V
V-position.
Definition: CurlingTrackCandSplitterModule.h:138
Belle2::CurlingTrackCandSplitterModule::initializeCounters
void initializeCounters()
initialize all counters to 0 for avoiding undeterministic behaviour.
Definition: CurlingTrackCandSplitterModule.cc:802
Belle2::CurlingTrackCandSplitterModule::RootVariables::TrueHitVLocal
std::array< std::vector< double >, c_nPlanes > TrueHitVLocal
local v-positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:103
Belle2::CurlingTrackCandSplitterModule::m_rootSpacePointVLocals
std::array< std::vector< double >, c_nPlanes > m_rootSpacePointVLocals
Local V-Positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:235
Belle2::CurlingTrackCandSplitterModule::TaggedUVPos::m_U
double m_U
U-position.
Definition: CurlingTrackCandSplitterModule.h:137
Belle2::CurlingTrackCandSplitterModule::RootVariables::PosResiduesGlobal
std::array< std::vector< double >, c_nPlanes > PosResiduesGlobal
position differences in global coordinates (layerwise)
Definition: CurlingTrackCandSplitterModule.h:107
Belle2::CurlingTrackCandSplitterModule::getValuesForRoot
void getValuesForRoot(const SpacePoint *spacePoint, const TrueHit *trueHit, RootVariables &rootVariables)
Get The Values that are later written to a ROOT file.
Definition: CurlingTrackCandSplitterModule.cc:658
Belle2::CurlingTrackCandSplitterModule::RootVariables::PosResiduesLocal
std::array< std::vector< double >, c_nPlanes > PosResiduesLocal
position differences in local coordinates (layerwise)
Definition: CurlingTrackCandSplitterModule.h:106
Belle2::CurlingTrackCandSplitterModule::m_rootMisMatchPosU
std::array< std::vector< double >, c_nPlanes > m_rootMisMatchPosU
Difference of U-positions (local) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:273
Belle2::CurlingTrackCandSplitterModule::m_rootMisMatchMomZ
std::array< std::vector< double >, c_nPlanes > m_rootMisMatchMomZ
Difference of Momentum in Z-Direction for TrueHits that do not match but are related from one SpacePo...
Definition: CurlingTrackCandSplitterModule.h:282
Belle2::CurlingTrackCandSplitterModule::RootVariables::PosResidueXGlobal
std::array< std::vector< double >, c_nPlanes > PosResidueXGlobal
X-position (global) difference between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:91
Belle2::CurlingTrackCandSplitterModule::m_noDecisionPossibleCtr
int m_noDecisionPossibleCtr
Counter for TrackCands where a decision if curling or not is not possible.
Definition: CurlingTrackCandSplitterModule.h:174
Belle2::CurlingTrackCandSplitterModule::m_PARAMsetOrigin
std::vector< double > m_PARAMsetOrigin
set the origin to a specific point.
Definition: CurlingTrackCandSplitterModule.h:160
Belle2::CurlingTrackCandSplitterModule::RootVariables::MisMatchPosResiduals
std::array< std::vector< double >, c_nPlanes > MisMatchPosResiduals
Distance between TrueHits that do not match but are related from one SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:110
Belle2::CurlingTrackCandSplitterModule::RootVariables::SpacePointVLocal
std::array< std::vector< double >, c_nPlanes > SpacePointVLocal
local v-positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:83
Belle2::CurlingTrackCandSplitterModule::m_PARAMcurlingOutRestName
std::string m_PARAMcurlingOutRestName
collection name of all but the first outgoing parts of a curling TrackCand
Definition: CurlingTrackCandSplitterModule.h:155
Belle2::CurlingTrackCandSplitterModule::m_rootPosResidueXGlobal
std::array< std::vector< double >, c_nPlanes > m_rootPosResidueXGlobal
X-position (global) difference between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:247
Belle2::CurlingTrackCandSplitterModule::RootVariables::MisMatchMomY
std::array< std::vector< double >, c_nPlanes > MisMatchMomY
Difference of Momentum in Y-Direction for TrueHits that do not match but are related from one SpacePo...
Definition: CurlingTrackCandSplitterModule.h:126
Belle2::CurlingTrackCandSplitterModule::m_rootPosResidueVLocal
std::array< std::vector< double >, c_nPlanes > m_rootPosResidueVLocal
V-position (local) difference between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:256
Belle2::CurlingTrackCandSplitterModule::RootVariables::PosResidueULocal
std::array< std::vector< double >, c_nPlanes > PosResidueULocal
U-position (local) differnece between TrueHit and SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:98
Belle2::CurlingTrackCandSplitterModule::m_rootMisMatchPosDistance
std::array< std::vector< double >, c_nPlanes > m_rootMisMatchPosDistance
Distance of TrueHits that do not match but are related from one SpacePoint (layerwise)
Definition: CurlingTrackCandSplitterModule.h:264
Belle2::CurlingTrackCandSplitterModule::m_NoSingleTrueHitCtr
int m_NoSingleTrueHitCtr
Counter for SpacePoints that relate to more than one TrueHit.
Definition: CurlingTrackCandSplitterModule.h:176
Belle2::CurlingTrackCandSplitterModule::RootVariables::SpacePointYGlobal
std::array< std::vector< double >, c_nPlanes > SpacePointYGlobal
global y-positions of SpacePoints (layerwise)
Definition: CurlingTrackCandSplitterModule.h:79
Belle2::SpacePointTrackCand
Storage for (VXD) SpacePoint-based track candidates.
Definition: SpacePointTrackCand.h:51
Belle2::CurlingTrackCandSplitterModule::RootVariables::TrueHitXGlobal
std::array< std::vector< double >, c_nPlanes > TrueHitXGlobal
global x-positions of TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:86
Belle2::CurlingTrackCandSplitterModule::RootVariables::MisMatchPosV
std::array< std::vector< double >, c_nPlanes > MisMatchPosV
Difference of V-positions (local) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:121
Belle2::CurlingTrackCandSplitterModule::m_rootMisMatchPosY
std::array< std::vector< double >, c_nPlanes > m_rootMisMatchPosY
Difference of Y-positions (global) for mismatched TrueHits (layerwise)
Definition: CurlingTrackCandSplitterModule.h:268