Belle II Software  release-05-02-19
tracking
Collaboration diagram for tracking:

Modules

 tracking data objects
 
 tracking modules
 

Namespaces

 Belle2::CDC
 
 Belle2::TestHelpers
 Some utilities to help with writing unit tests.
 
 Belle2::AnalyzingAlgorithmHelper
 INFO This file contains all the algorithms retrieving infos from Clusters.
 
 Belle2::SecMapHelper
 namespace for SectorMapHelper-related stuff
 
 Belle2::DNN
 namespace for DirectedNodeNetwork-related stuff
 

Classes

class  BeamSpotAlgorithm
 Class implementing BeamSpot calibration algorithm. More...
 
class  BoostVectorAlgorithm
 Class implementing BoostVector calibration algorithm. More...
 
struct  calibPars
 The parameters related to single calibration interval. More...
 
struct  CalibrationData
 Parameters and data relevant for single calibration interval. More...
 
class  InvariantMassAlgorithm
 Class implementing InvariantMass calibration algorithm. More...
 
struct  Atom
 Very small (few mins) calibration interval which cannot be further divided : Atom. More...
 
struct  ExpRun
 Struct containing exp number and run number. More...
 
struct  ExpRunEvt
 struct with expNum, runNum, evtNum More...
 
class  Splitter
 Class that allows to split runs into the intervals of intended properties given by the lossFunction. More...
 
struct  Spline
 Spline structure for zero-order & linear splines. More...
 
class  CDCCKFState
 Define states for CKF algorithm, which can be seed track or CDC wire hit. More...
 
class  ArcLengthBasedCDCfromEclPathPairFilter
 For the two paths with the same number of hits prefers one with shortest arcLength ("densest path") More...
 
class  ArcLengthBasedCDCPathPairFilter
 For the two paths with the same number of hits prefers one with shortest arcLength ("densest path") More...
 
class  CDCPathPairFilterFactory
 Factory that can create appropriate cluster filters from associated names. More...
 
class  Chi2BasedCDCPathPairFilter
 Prefers path with smallest sum dist^2 / length of path. More...
 
class  DistanceBasedCDCPathPairFilter
 For the two paths with the same number of hits prefers one with smallest sum dist^2. More...
 
class  DuplicateCDCPathPairFilter
 Simple filter to distinguish between photon conversion and Bremsstrahlung. More...
 
class  HitDistanceBasedCDCPathPairFilter
 Prefers path with smallest sum dist^2 / length of path. More...
 
class  MCTruthCDCPathPairFilter
 For the two paths select the one with the most of MC matched hits. More...
 
class  CDCfromEclPathTruthVarNames
 Vehicle class to transport the variable names. More...
 
class  CDCfromEclPathTruthVarSet
 Var set to store basic quantities related to CDC CKF (using truth information) More...
 
class  CDCPathBasicVarNames
 Vehicle class to transport the variable names. More...
 
class  CDCPathBasicVarSet
 Var set to store basic quantities related to CDC CKF. More...
 
class  CDCPathFilterFactory
 Factory that can create appropriate cluster filters from associated names. More...
 
class  CDCPathTruthVarNames
 Vehicle class to transport the variable names. More...
 
class  CDCPathTruthVarSet
 Var set to store basic quantities related to CDC CKF (using truth information) More...
 
class  SeedChargeCDCPathFilter
 Check if charge of fitted path corresponds to charge of seed. More...
 
class  SizeCDCPathFilter
 Return the size of the path. More...
 
class  CDCfromEclStateTruthVarNames
 Vehicle class to transport the variable names. More...
 
class  CDCfromEclStateTruthVarSet
 Var set to store basic quantities related to CDC CKF (using truth information) More...
 
class  CDCStateBasicVarNames
 Vehicle class to transport the variable names. More...
 
class  CDCStateBasicVarSet
 Var set to store basic quantities related to CDC CKF. More...
 
class  CDCStateFilterFactory
 Factory that can create appropriate cluster filters from associated names. More...
 
class  CDCStateTruthVarNames
 Vehicle class to transport the variable names. More...
 
class  CDCStateTruthVarSet
 Var set to store basic quantities related to CDC CKF (using truth information) More...
 
class  DistanceCDCStateFilter
 Give a weight based on the distance from the hit to the path. More...
 
class  ExtrapolateAndUpdateCDCStateFilter
 An extrapolateAndUpdate filter for all CDC states. More...
 
class  MCTruthCDCStateFilter
 Give a weight based on the mc truth information (1 or NAN) More...
 
class  MCTruthEclSeedFilter
 Give a weight based on the mc truth information (1 or NAN) More...
 
class  RoughCDCfromEclStateFilter
 A very rough filter for all CDC states. More...
 
class  RoughCDCStateFilter
 A very rough filter for all CDC states. More...
 
class  CDCCKFDuplicateRemover
 Remove duplicate paths created from ECLShowers These typically come from the seeding with two charge assumptions and Bremsstrahlung. More...
 
class  CDCCKFEclSeedCreator
 Findlet for. More...
 
class  CDCCKFPathMerger
 Merge similar paths. More...
 
class  CDCCKFPathSelector
 Select the m_maximalCandidatesInFlight paths for further processing. More...
 
class  CDCCKFResultFinalizer
 Findlet to finalize CKF Paths in terms of final result. More...
 
class  CDCCKFResultStorer
 Store resutling tracks and relations on the dataStore. More...
 
class  CDCCKFSeedCreator
 Create a CKF seed based on RecoTrack (presumably from VXDTF2) More...
 
class  CDCCKFStateCreator
 Create CKF states, based on the current path. Perform some basic selection at this stage (based on phi, max. jump of layers) More...
 
class  CDCCKFStateFilter
 A stack of pre-, helix-extrapolation- , Kalman-extrapolation- and Kalman-update-filters. More...
 
class  CKFToCDCFindlet
 Main findlet of the ToCDCCKF module. More...
 
class  CKFToCDCFromEclFindlet
 Main findlet of the ToCDCCKF module. More...
 
class  StackTreeSearcher
 CKF tree searcher which traces several best paths. More...
 
class  CKFResult< ASeed, AHit >
 Object for temporary storage of a CKF tree search result. More...
 
class  CKFState< ASeed, AHit >
 State object to store one step in the CKF algorithm together with its parent (the state before), the hit (e.g. More...
 
class  AdvanceFilter< AState, AnAdvancer >
 Filter which can be used on a pair of path (vector of states) and states, which will call the extrapolate function of the given advancer class, to extrapolate the last path state to the plane of the new state and store the mSoP in the new state. More...
 
class  KalmanFilter< AState, AKalmanStepper >
 Filter which can be used on a pair of path (vector of states) and states, which will call the kalmanStep function of the given stepper class, to update the mSoP of the new state with a klaman update. More...
 
class  NonIPCrossingStateFilter< AllStateFilter >
 Reusable filter for checking the direction of a new state if it is in the correct orientation (forwards or backwards) by their arc length. More...
 
class  CKFRelationCreator< AState, ASeedRelationFilter, AHitRelationFilter >
 Findlet for applying filters for creating hit-hit and hit-seed relations. More...
 
class  LayerToggledApplier< AState, AFindlet >
 A special findlet, which is chooseable based on a given findlet for layers higher than N, N and for the rest. More...
 
class  LimitedOnStateApplier< AState, AFilter >
 Specialisation of the OnStateApplier, which (a) uses a filter for the () operator, which is configurable (b) does only allow for the best N candidates in the child states. More...
 
class  OnStateApplier< AState >
 Helper findlet which applies its () operator to all pairs of path and state with all states in the given child state list. More...
 
class  OverlapResolver< AFilter >
 Simple findlet for searching the best candidate for a given seed aplying the given filter. More...
 
class  ResultStorer< AResult >
 This findlet does also handle the storing of the results. More...
 
class  SpacePointTagger< AResult, ACluster >
 Findlet for tagging all space points in the results vector as used. More...
 
class  StateCreator< AnObject, AState >
 Create new states and add them to a vector from a given object vector. More...
 
class  StateCreatorWithReversal< AState >
 An adaption of the normal state creator introducing another parameter to reverse the seed. More...
 
class  StateRejecter< AState, AFilter >
 Reject some (or all) states from a given list of child states using 5 filters. More...
 
class  TrackFitterAndDeleter
 Findlet to fit tracks and remove all non fitted ones. More...
 
class  TrackLoader
 Findlet for loading the seeds from the data store. More...
 
class  TreeSearcher< AState, AStateRejecter, AResult >
 Findlet for constructing result paths out of a list of states, which are connected with weighted relations. More...
 
class  Advancer
 Helper findlet for performing an extrapolation of a mSoP of one plane to another plane using the representation stored in the mSoP. More...
 
struct  SeedGetter
 Helper Functor to get the Seed of a given result. More...
 
struct  NumberOfHitsGetter
 Helper Functor to get the Number of hits of a given result. More...
 
struct  GetArcLength
 Helper Functor to get the arc length of a given result. More...
 
class  KalmanStepper< Dimension >
 Class to bundle all algorithms needed for the kalman update procedure. More...
 
class  CKFToPXDResult
 Specialized CKF Result for extrapolating into the PXD. More...
 
class  CKFToPXDState
 Specialized CKF State for extrapolating into the PXD. More...
 
class  DistancePXDPairFilter
 Base filter for CKF PXD states. More...
 
class  LayerPXDRelationFilter< AFilter, APrefilter >
 Base filter for CKF PXD states. More...
 
class  LoosePXDPairFilter
 Base filter for CKF PXD states. More...
 
class  PXDPairFilterFactory
 Factory that can create appropriate cluster filters from associated names. More...
 
class  SensorPXDPairFilter
 Base filter for CKF PXD states. More...
 
class  PXDResultFilterFactory
 Factory that can create appropriate cluster filters from associated names. More...
 
class  PXDResultTruthVarNames
 Vehicle class to transport the variable names. More...
 
class  PXDResultTruthVarSet
 Var set used in the CKF for calculating the probability of a correct result, which knows the truth information if two tracks belong together or not. More...
 
class  PXDResultVarNames
 Vehicle class to transport the variable names. More...
 
class  PXDResultVarSet
 Var set used in the VXD-CDC-Merger for calculating the probability of a VXD-CDC-track match, which knows the truth information if two tracks belong together or not. More...
 
class  SizePXDResultFilter
 Base filter for CKF PXD results (on overlap check) More...
 
class  AllPXDStateFilter
 A very simple filter for all space points. More...
 
class  PXDStateBasicVarNames
 Vehicle class to transport the variable names. More...
 
class  PXDStateBasicVarSet
 Var set used in the VXD-CDC-Merger for calculating the probability of a VXD-CDC-track match. More...
 
class  PXDStateFilterFactory
 Factory that can create appropriate cluster filters from associated names. More...
 
class  PXDStateTruthVarNames
 Vehicle class to transport the variable names. More...
 
class  PXDStateTruthVarSet
 Var set used in the VXD-CDC-Merger for calculating the probability of a VXD-CDC-track match, which knows the truth information if two tracks belong together or not. More...
 
class  SimplePXDStateFilter
 A very simple filter for all space points. More...
 
class  CKFToPXDFindlet
 Combinatorial Kalman Filter to extrapolate CDC Reco Tracks into the VXD (PXD) and collect space points. More...
 
class  PXDKalmanStepper
 Kalman stepper implementation for the PXD CKF. More...
 
class  MCUtil
 Class bundling all helper functions for the MC information used in the PXD CKF. More...
 
class  CKFToSVDResult
 Specialized CKF Result for extrapolating into the SVD. More...
 
class  CKFToSVDState
 Specialized CKF State for extrapolating into the SVD. More...
 
class  DistanceSVDPairFilter
 Base filter for CKF SVD states. More...
 
class  LayerSVDRelationFilter< AFilter, APrefilter >
 Base filter for CKF SVD states. More...
 
class  LooseSVDPairFilter
 Base filter for CKF SVD states. More...
 
class  SectorMapBasedSVDPairFilter
 Filter for relations between CKF SVD states based on SectorMaps. More...
 
class  SensorSVDPairFilter
 Base filter for CKF SVD states. More...
 
class  SVDPairFilterFactory
 Factory that can create appropriate cluster filters from associated names. More...
 
class  RelationSVDResultVarNames
 Vehicle class to transport the variable names. More...
 
class  RelationSVDResultVarSet
 Var set used in the VXD-CDC-Merger for calculating the probability of a VXD-CDC-track match, which knows the truth information if two tracks belong together or not. More...
 
class  SizeSVDResultFilter
 Base filter for CKF SVD results (on overlap check) More...
 
class  SVDResultFilterFactory
 Factory that can create appropriate cluster filters from associated names. More...
 
class  SVDResultTruthVarNames
 Vehicle class to transport the variable names. More...
 
class  SVDResultTruthVarSet
 Var set used in the CKF for calculating the probability of a correct result, which knows the truth information if two tracks belong together or not. More...
 
class  SVDResultVarNames
 Vehicle class to transport the variable names. More...
 
class  SVDResultVarSet
 Var set used in the VXD-CDC-Merger for calculating the probability of a VXD-CDC-track match, which knows the truth information if two tracks belong together or not. More...
 
class  WeightSVDResultFilter
 Base filter for CKF SVD results (on overlap check) More...
 
class  AllSVDStateFilter
 A very simple filter for all space points. More...
 
class  ResidualSVDStateFilter
 A very simple filter for all space points. More...
 
class  SimpleSVDStateFilter
 A very simple filter for all space points. More...
 
class  SVDStateBasicVarNames
 Vehicle class to transport the variable names. More...
 
class  SVDStateBasicVarSet
 Var set used in the VXD-CDC-Merger for calculating the probability of a VXD-CDC-track match. More...
 
class  SVDStateFilterFactory
 Factory that can create appropriate cluster filters from associated names. More...
 
class  SVDStateTruthVarNames
 Vehicle class to transport the variable names. More...
 
class  SVDStateTruthVarSet
 Var set used in the VXD-CDC-Merger for calculating the probability of a VXD-CDC-track match, which knows the truth information if two tracks belong together or not. More...
 
class  SVDStateVarNames
 Vehicle class to transport the variable names. More...
 
class  SVDStateVarSet
 Var set used in the VXD-CDC-Merger for calculating the probability of a VXD-CDC-track match. More...
 
class  CKFToSVDFindlet
 Combinatorial Kalman Filter to extrapolate CDC Reco Tracks into the VXD (SVD) and collect space points. More...
 
class  CKFToSVDSeedFindlet
 Findlet for combining CDC tracks with SVD tracks. More...
 
class  RecoTrackRelator
 The results of the CKF ar in the form (seed -> vector of hits). More...
 
class  RelationApplier
 Relate the SVD and CDC tracks in the given relations also in the store array. More...
 
class  RelationFromSVDTracksCreator
 Simplified relation creator only creating relations between states of CDC Reco Track seeds and states with SpacePoints, that: (a) for the seed states: connect every seed with every lst hit of the SVD Reco Tracks (b) for the hit states: are in the same SVD Reco Track and follow each other directly. More...
 
class  SpacePointLoader
 Load the space points from the store array to the given vector. More...
 
class  SVDKalmanStepper
 Kalman stepper implementation for the SVD CKF. More...
 
class  BaseEventTimeExtractor< AIOTypes >
 Class to extract the event t0. More...
 
class  BaseEventTimeExtractorModuleFindlet< AFindlet >
 Base class for most of the time extraction modules doing a track selection beforehand. More...
 
class  Chi2BasedEventTimeExtractor
 Event time extraction based on the principle of arXiv:0810.2241. More...
 
class  DriftLengthBasedEventTimeExtractor
 Event time extraction based on the principle of the CDC drift time calculation. More...
 
class  FullGridChi2TrackTimeExtractor
 Class to extract the event t0 using the chi-squared approach. More...
 
class  FullGridDriftLengthTrackTimeExtractor
 Class to extract the event t0 using the drift-length approach. More...
 
class  GridEventTimeExtractor< AFindlet >
 Generic findlet applying a certain time extractor multiple times. More...
 
class  HitBasedT0Extractor
 Findlet to extract the T0 time of an event only using CDC Hits. More...
 
class  IterativeChi2BasedEventTimeExtractor
 Class to iteratively extract the event t0 using the chi-squared approach. More...
 
class  IterativeDriftLengthBasedEventTimeExtractor
 Class to iteratively extract the event t0 using the drift-length approach. More...
 
class  IterativeEventTimeExtractor< AFindlet >
 Generic findlet applying a certain time extractor multiple times. More...
 
class  TrackSelector
 Select the tracks for the event time extraction. More...
 
class  TimeExtractionUtils
 Helper class to perform all kind of track extrapolations using the methods from arXiv:0810.2241. More...
 
class  TrackMatchLookUp
 Class to provide convenient methods to look up matching information between pattern recognition and Monte Carlo tracks. More...
 
class  PXDInterceptor
 The PXDInterceptor class fills a StoreArray of PXDIntercepts that will be used to define the PXD ROIs. More...
 
class  ROIDetPlane
 ROIDetPlane describes the plane containing a sensor. More...
 
class  ROIGeometry
 This class appends the PXDIntercept infos of a track to the list of intercepts. More...
 
class  ROIPixelTranslator
 Translator for ROI-geometry-information into a list of pixels. More...
 
class  MCVXDPurityInfo
 The MC VXD Purity info container class. More...
 
class  SpacePoint
 SpacePoint typically is build from 1 PXDCluster or 1-2 SVDClusters. More...
 
class  SpacePointTrackCand
 Storage for (VXD) SpacePoint-based track candidates. More...
 
class  MapHelperFunctionsTest
 class for testing the helper functions from MapHelperFunctions.h More...
 
class  SpacePointTest
 Set up a few arrays and objects in the datastore. More...
 
class  SpacePointTrackCandTest
 Test class for the SpacePointTrackCand class. More...
 
class  ROIStripTranslator
 Translator for ROI-geometry-information into a list of pixels. More...
 
class  SVDInterceptor
 This Class implements the interceptor of the SVD tracks on the PXD layers. More...
 
class  SVDROIGeometry
 This class appends the SVDIntercept infos of a track to the list of intercepts. More...
 
class  RecoTrackTest
 Test class for the RecoTrack object. More...
 
class  CollectorTFInfoTest
 Set up a few arrays and objects in the datastore. More...
 
class  FilterIDTest
 Set up a few arrays and objects in the datastore. More...
 
class  FullSecIDTest
 Testing everything from FullSecID. More...
 
class  VerbosityClass< Verbosity >
 should behave differently for different verbosity-levels given - class More...
 
class  SandBox4TestingTest
 Testing autoAssignment of vectors for functions. More...
 
class  SectorTest
 Set up a few arrays and objects in the datastore. More...
 
class  ThreeHitFiltersTest
 Set up a few arrays and objects in the datastore. More...
 
class  TwoHitFiltersTest
 Set up a few arrays and objects in the datastore. More...
 
struct  ExtState
 Data structure to define extrapolation state. More...
 
struct  Intersection
 intersection of muid-extrapolated track with a KLM layer More...
 
class  TrackExtrapolateG4e
 geant4e-based track extrapolation. More...
 
struct  CALogger
 simple logger for CA algorithm More...
 
struct  CAValidator< CellType >
 validation tool for CA algorithm More...
 
class  CellularAutomaton< ContainerType, ValidatorType >
 The CellularAutomaton class This class serves as a functor for the algorithm itself. More...
 
struct  NodeCompatibilityCheckerBase< NodeType >
 most trivial node compatibility checker, says always true More...
 
struct  NodeCompatibilityCheckerCA< NodeType >
 simple NodeCompatibilityChecker, which checks for compatible Neighboring states of passed nodes (does no extended validation check) More...
 
struct  NodeCompatibilityCheckerPathCollector< NodeType >
 simple NodeCompatibilityChecker, which checks for compatible Neighboring states of passed nodes (does no extended validation check) More...
 
class  NodeFamilyDefiner< ContainerType, NodeType, NeighbourContainerType >
 This class assigns a common family identifier to all CACells in the network that are connected. More...
 
class  PathCollectorRecursive< ContainerType, NodeType, NeighbourContainerType, NodeCompatibilityCheckerType >
 Path finder for generic ContainerType. More...
 
class  SPTCSelectorXBestPerFamily
 Algorithm to collect the x best TrackCandidates per family based on a VXD Quality estimator method output. More...
 
class  StandaloneCosmicsCollector
 Track finding algorithm class for linear tracks produced by cosmics in the VXD without magnetic field. More...
 
class  TrackerAlgorithmBase< ContainerType, ValidatorType >
 base class for TrackerAlgorithms. shall allow a common base for algorithms like the cellular automaton More...
 
class  AnalyzingAlgorithmBase< DataType, TCInfoType, VectorType >
 Base class for storing an algorithm determining the data one wants to have. More...
 
class  AnalyzingAlgorithmLostUClusters< DataType, TCInfoType, VectorType >
 Class for storing an algorithm to find out how many u-type-clusters the testTC lost compared to the refTC. More...
 
class  AnalyzingAlgorithmLostVClusters< DataType, TCInfoType, VectorType >
 Class for storing an algorithm to find out how many v-type-clusters the testTC lost compared to the refTC. More...
 
class  AnalyzingAlgorithmLostUEDep< DataType, TCInfoType, VectorType >
 Class for storing an algorithm to find out the energy deposit of u-type-clusters the testTC lost compared to the refTC. More...
 
class  AnalyzingAlgorithmLostVEDep< DataType, TCInfoType, VectorType >
 Class for storing an algorithm to find out the energy deposit of v-type-clusters the testTC lost compared to the refTC. More...
 
class  AnalyzingAlgorithmTotalUClusters< DataType, TCInfoType, VectorType >
 Class for storing an algorithm to find out how many u-type-clusters the given TC had. More...
 
class  AnalyzingAlgorithmTotalVClusters< DataType, TCInfoType, VectorType >
 Class for storing an algorithm to find out how many v-type-clusters the given TC had. More...
 
class  AnalyzingAlgorithmTotalUEDep< DataType, TCInfoType, VectorType >
 Class for storing an algorithm to find out the energy deposit of u-type-clusters the given TC had. More...
 
class  AnalyzingAlgorithmTotalVEDep< DataType, TCInfoType, VectorType >
 Class for storing an algorithm to find out the energy deposit of v-type-clusters the given TC had. More...
 
class  AnalyzingAlgorithmResidualPX< DataType, TCInfoType, VectorType >
 INFO This file contains all the algorithms calculating residuals of something. More...
 
class  AnalyzingAlgorithmResidualPY< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of momentum in Y. More...
 
class  AnalyzingAlgorithmResidualPZ< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of momentum in Z. More...
 
class  AnalyzingAlgorithmResidualPT< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of momentum in pT. More...
 
class  AnalyzingAlgorithmResidualP< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of momentum in |p|. More...
 
class  AnalyzingAlgorithmResidualPTheta< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of momentum in theta (in degrees) More...
 
class  AnalyzingAlgorithmResidualPPhi< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of momentum in phi (in degrees) More...
 
class  AnalyzingAlgorithmResidualPAngle< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of momentum in its angle (direction residual in degrees) More...
 
class  AnalyzingAlgorithmResidualPTAngle< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of pT in angle (transverse direction residual in degrees) More...
 
class  AnalyzingAlgorithmResidualPosition< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of the seed position in 3D. More...
 
class  AnalyzingAlgorithmResidualPositionXY< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the residual (ref-test) of the seed position in XY (=r) More...
 
class  AnalyzingAlgorithmValuePX< DataType, TCInfoType, VectorType >
 INFO This file contains all the algorithms calculating a certain value of something. More...
 
class  AnalyzingAlgorithmValuePY< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the momentum in Y. More...
 
class  AnalyzingAlgorithmValuePZ< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the momentum in Z. More...
 
class  AnalyzingAlgorithmValuePT< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the momentum in pT. More...
 
class  AnalyzingAlgorithmValueP< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the momentum in |p|. More...
 
class  AnalyzingAlgorithmValuePTheta< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the momentum in theta (in degrees) More...
 
class  AnalyzingAlgorithmValuePPhi< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the momentum in phi (in degrees) More...
 
class  AnalyzingAlgorithmValueDistSeed2IP< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the the distance seedHit to IP in 3D. More...
 
class  AnalyzingAlgorithmValueDistSeed2IPXY< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the distance seedHit to IP in XY (=r) More...
 
class  AnalyzingAlgorithmValueDistSeed2IPZ< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the distance seedHit to IP in XY (=r) More...
 
class  AnalyzingAlgorithmValueQI< DataType, TCInfoType, VectorType >
 Class for storing an algorithm determining the quality indicator of the TC. More...
 
class  AlgoritmType
 Small class for classifying types of analyzing algorithms. More...
 
class  AnalizerTCInfo
 simple class storing infos relevant for a TC for analizing it. More...
 
class  KeyValBox< KeyType, ValueType >
 Minimal container storing a pair of < KeyType, ValueType> More...
 
class  RootParameterTracker
 Production notes for RootParameterTracker: More...
 
class  TCType
 Small class for classifying types of reconstructed track candidates. More...
 
class  VXDTFFilters< point_t >
 Class that contains all the static sectors to which the filters are attached. More...
 
class  ClosedLowerBoundedSet< MinType >
 Represents a closed lower bounded set of arithmetic types. More...
 
class  ClosedRange< MinType, MaxType >
 Represents a closed set of arithmetic types. More...
 
class  ClosedUpperBoundedSet< MaxType >
 Represents an upper bounded set of arithmetic types. More...
 
class  Filter< typePack >
 This class is used to select pairs, triplets... More...
 
struct  all_same< types >
 The all_same struct is meant to check that all the types in a template pack are of the same type. More...
 
struct  all_same< T >
 The all_same struct is meant to check that all the types in a template pack are of the same type. More...
 
struct  all_same< >
 The all_same struct is meant to check that all the types in a template pack are of the same type. More...
 
struct  all_same< T, T, types ... >
 The all_same struct is meant to check that all the types in a template pack are of the same type. More...
 
class  Filter< Variable, RangeType, Observer >
 Basic Filter ///. More...
 
class  Filter< Variable, RangeType, Belle2::BypassableFilter, Observer >
 Bypassable Filter ///. More...
 
class  Filter< Variable, RangeType, Belle2::ActivatableFilter, Observer >
 Activatable Filter /// TODO: Remove, as it is no longer used...? More...
 
class  Filter< Belle2::OperatorNot, someFilter, templateObserverType >
 Realization of a NOT operator for the Filter classes. More...
 
class  Filter< Belle2::OperatorAnd, FilterA, FilterB, templateObserverType >
 Realization of the AND operator between two objects of the Filter class. More...
 
class  Filter< Belle2::OperatorOr, FilterA, FilterB, templateObserverType >
 Realization of the OR operator between two objects of the Filter class. More...
 
class  LowerBoundedSet< InfType >
 Represents a lower bounded set of arithmetic types. More...
 
class  Observer
 Observer base class which can be used to evaluate the VXDTF2's Filters. More...
 
class  Range< InfType, SupType >
 Represents a range of arithmetic types. More...
 
class  SelectionVariable< templateArgumentType, Nargs, templateReturnType >
 Base class of the selection variable objects used for pair filtering. More...
 
class  SingleElementSet< Type >
 Represents a set containing a single element;. More...
 
class  UpperBoundedSet< SupType >
 Represents an upper bounded set of arithmetic types. More...
 
class  VoidObserver
 The most CPU efficient Observer for the VXDTF filter tools (even if useless). More...
 
class  DELTACIRCLERADIUS_NAME< PointType >
 calculates delta-circleRadius-value (difference in circle radii of 2 subsets of the hits), returning unit: cm. More...
 
class  DELTADISTCIRCLECENTER_NAME< PointType >
 calculates the distance between the estimated circle centers (using 2 subsets of given hits) in the xy-plane, returning unit: cm. More...
 
class  DELTAPT_NAME< PointType >
 calculates dpt-value (dpt= difference in transverse momentum of 2 subsets of the hits), returning unit: GeV/c. More...
 
class  CompactSecIDs
 This class provides a computer convenient numbering scheme for the sectors in the sector map and for the N sectors combinations. More...
 
class  FiltersContainer< point_t >
 This class contains everything needed by the VXDTF that is not going to change during a RUN, i.e. More...
 
class  SectorsOnSensor< sectorID >
 This class associates to an ordered pairs of normalized local coordinates a compact sector id. More...
 
class  ANGLE3DFULL_NAME< PointType >
 calculates the angle between the hits/vectors (3D), returning unit: angle in degrees. More...
 
class  ANGLE3DSIMPLE_NAME< PointType >
 calculates the angle between the hits/vectors (3D), returning unit: none (calculation for degrees is incomplete, if you want readable numbers, use Angle3DFull instead). More...
 
class  ANGLERZFULL_NAME< PointType >
 calculates the angle between the hits/vectors (RZ), returning unit: angle in degrees. More...
 
class  ANGLERZSIMPLE_NAME< PointType >
 calculates the angle between the hits/vectors (RZ), returning unit: none (calculation for degrees is incomplete, if you want readable numbers, use AngleRZFull instead). More...
 
class  ANGLEXYFULL_NAME< PointType >
 calculates the angle between the hits/vectors (XY), returning unit: angle in degrees. More...
 
class  CIRCLECENTERXY_NAME< PointType >
 calculates the center of the circle for 3 hits in the XY plane and returns a B2Vector3 with the result (z=0). More...
 
class  CIRCLEDIST2IP_NAME< PointType >
 calculates the distance of the point of closest approach of circle to the IP, returning unit: cm More...
 
class  CIRCLERADIUS_NAME< PointType >
 calculates the estimation of the circle radius of the 3-hit-tracklet, returning unit: cm. More...
 
class  COSANGLEXY_NAME< PointType >
 calculates the angle between the hits/vectors (XY), returning unit: none (calculation for degrees is incomplete, if you want readable numbers, use AngleXYFull instead): More...
 
class  DELTASLOPERZ_NAME< PointType >
 calculates deviations in the slope of the inner segment and the outer segment, returning unit: none More...
 
class  DELTASLOPEZOVERS_NAME< PointType >
 compares the "slopes" z over arc length. More...
 
class  DELTASOVERZ_NAME< PointType >
 calculates the helixparameter describing the deviation in arc length per unit in z. More...
 
class  DISTANCEINTIME< PointType >
 This variable returns the difference among the V and U side clusters of th ecenter space point. More...
 
class  HELIXPARAMETERFIT_NAME< PointType >
 calculates the helixparameter describing the deviation in z per unit angle, returning unit: none. More...
 
class  MLHANDOVER_NAME< PointType, Ndims >
 SelectionVariable that is used for the Machine Learning (ML) based filters. More...
 
class  PT_NAME< PointType >
 calculates the estimation of the transverse momentum of the 3-hit-tracklet, returning unit: GeV/c. More...
 
class  SIGNCURVATUREXY_NAME< PointType >
 calculates the sign of the curvature for three hits More...
 
class  SIGNCURVATUREXYERROR_NAME< PointType >
 calculates the sign of the curvature for three hits More...
 
class  ZIGGZAGGRZ_NAME< PointType, PointContainerType >
 checks whether chain of segments are zigg-zagging (changing sign of curvature of neighbouring segments) in the R-Z-plane, returns number of charge-signs found (if != 1, then the given hitContainer is ziggZagging). More...
 
class  ZIGGZAGGXY_NAME< PointType, PointContainerType >
 checks whether chain of segments are zigg-zagging (changing sign of curvature of neighbouring segments) in the X-Y-plane, returns number of charge-signs found (if != 1, then the given hitContainer is ziggZagging). More...
 
class  ZIGGZAGGXYWITHSIGMA_NAME< PointType, PointContainerType >
 checks whether chain of segments are zigg-zagging (changing sign of curvature of neighbouring segments) in the X-Y-plane, returns number of charge-signs found (if != 1, then the given hitContainer is ziggZagging). More...
 
class  VariablesTTree< filterLeaves >
 Dump on a TTree the values of all the variables in a filter. More...
 
class  VariablesTTree<>
 Defines the interface using an empty template pack. More...
 
class  VariablesTTree< Filter< Variable, other ... > >
 Specialization for a simple filter
More...
 
class  VariablesTTree< Filter< unaryOperator, Filter< args ... >, other ... > >
 Specialization for unary operators acting on a filter
More...
 
class  VariablesTTree< Filter< binaryOperator, Filter< argsA ... >, Filter< argsB ... >, other ... > >
 Specialization for binary operators acting on a filter
More...
 
class  VariableTBranch< Variable >
 This class contains. More...
 
class  VariablesOnTTree
 Test for VariablesTTree. More...
 
class  COSDIRECTIONXY_NAME< PointType >
 This is a specialization returning floats, where value calculates the cos of the angle of the segment of two hits in the XY plane. More...
 
class  DISTANCE1DZ_NAME< PointType >
 This is the specialization for SpacePoints with returning floats, where value calculates the distance between two hits in 1D on the Z-axis. More...
 
class  DISTANCE1DZSQUARED_NAME< PointType >
 This is the specialization for SpacePoints with returning floats, where value calculates the squared distance between two hits in 1D on the Z-axis. More...
 
class  DISTANCE2DXYSQUARED_NAME< PointType >
 This is the specialization for SpacePoints with returning floats, where value calculates the squared distance between two hits in 2D on the X-Y-plane. More...
 
class  DISTANCE3DNORMED_NAME< PointType >
 This is the specialization for SpacePoints with returning floats, where value calculates the normed distance between two hits in 3D. More...
 
class  DISTANCE3DSQUARED_NAME< PointType >
 This is the specialization for SpacePoints with returning floats, where value calculates the squared distance between two hits in 3D. More...
 
class  DISTANCEINTIME_U_NAME< PointType >
 This variable returns the time difference among the U side clusters of the two space points. More...
 
class  DISTANCEINTIME_V_NAME< PointType >
 This variable returns the time difference among the V side clusters of the two space points. More...
 
class  SLOPERZ_NAME< PointType >
 This is the specialization for SpacePoints with returning floats, where value calculates the slope in R-Z for a given pair of hits. More...
 
class  DecorrelationMatrix< Ndims >
 Class holding a Matrix that can be used to decorrelate input data to Machine Learning classifiers. More...
 
class  FBDTClassifier< Ndims >
 FastBDT as RelationsObject to make it storeable and accesible on/via the DataStore. More...
 
struct  FBDTTrainSample< Ndims >
 bundle together the classifier input and the target value into one struct for easier passing around. More...
 
class  MLRange< ClassifierType, Ndims, CutType >
 Range used for the Machine Learning assisted TrackFinding approach. More...
 
class  Observer3HitPrintResults
 this observer does simply print the name of the SelectionVariable and the result of its value-function as a Warning(if failed) or as an Info (if succeeded) More...
 
class  ObserverCheckFilters
 this observer searches logs the response for each of SelectionVariables used in the filters If the pointer to the StoreArray is set the results will be put into the datastore More...
 
class  ObserverCheckMCPurity
 this observer searches for mcParticles attached to the hits given and stores the information found to be retrieved later. More...
 
class  ObserverPrintResults
 this observer does simply print the name of the SelectionVariable and the result of its value-function as a Warning(if failed) or as an Info (if succeeded) More...
 
class  SelectionVariableFactory< PointType >
 The factory,as the name implies, does not implement at all the factory paradigm. More...
 
struct  SelVarHelper< PointType, DataType >
 contains a collection of functions and related stuff needed for SelectionVariables implementing 2-, 3- and 4-hitfilters. More...
 
class  MVAExpert
 Class to interact with the MVA package, based on class with same name in CDC package. More...
 
class  ActivatedSector
 ActivatedSector is carrying the dynamic part of a Sector. More...
 
struct  BranchInterface< ValueType >
 simple struct for interfacing the Branch. More...
 
class  FilterMill< PointType >
 Small class which stores the filters/selectionVariables to be used for a secMap and has an interface for applying them. More...
 
class  SecIDPair
 allows to set outer and inner secID. More...
 
class  SecIDTriplet
 allows to set outer, center and inner secID. More...
 
class  SecIDQuadruplet
 allows to set outer, outerCenter, innerCenter and inner secID. More...
 
class  FilterValueDataSet< SecIDSetType >
 contains the relevant information needed for filling a TTree containing train-data for the secMap. More...
 
class  MinMax
 small class for storing min and max. More...
 
class  MinMaxCollector< DataType >
 A container for collecting data, where min- and max-quantiles near q(0) and q(1) are to be found. More...
 
class  NoKickCuts
 This class is an auxiliary class that implement methods to access to a single cut, used in NoKickRTSel class. More...
 
class  NoKickRTSel
 This class implement some methods useful for the application of cuts evaluated in NoKickCutsEval module. More...
 
class  RawDataCollectedMinMax
 takes care of collecting raw data and staying below RAM-threshold. More...
 
class  RawSecMapRootInterface
 To be used as an interface to root-stuff. More...
 
class  SecMapTrainer< FilterFactoryType >
 This class contains all relevant tools for training a VXDTFFilters. More...
 
class  SecMapTrainerHit
 simple Hit class used for sectorMap-training. More...
 
class  SecMapTrainerTC
 simple Hit class used for sectorMap-training. More...
 
class  Sector
 Sector is a central part of storing information for VXD trackFinders. More...
 
class  SectorFriendship
 SectorFriendship is carrying the link between parent sector and a connected sector (socalled Friendsector). More...
 
class  SectorGraph< FilterType >
 contains all subgraphs. More...
 
class  SectorMapComparer
 A root tool that compares two Sectormaps (local root files) and produces some statistics output. More...
 
class  SubGraph< FilterType >
 contains all relevant stuff needed for dealing with a subGraph. More...
 
class  SubGraphID
 stores the ID of a subgraph, which is basically a chain of FullSecID coded as unsigned ints. More...
 
class  ActiveSector< StaticSectorType, HitType >
 The ActiveSector Class. More...
 
class  CACell
 The CACell class This Class stores all relevant information one wants to have stored in a cell for a Cellular automaton. More...
 
class  DirectedNode< EntryType, MetaInfoType >
 The Node-Class. More...
 
class  DirectedNodeNetwork< EntryType, MetaInfoType >
 Network of directed nodes of the type EntryType. More...
 
class  DirectedNodeNetworkContainer
 The Container stores the output produced by the SegmentNetworkProducerModule. More...
 
class  Segment< HitType >
 The Segment class This class represents segments of track candidates needed for TrackFinderVXD-Modules. More...
 
class  StaticSector< HitType, Filter2sp, Filter3sp, Filter4sp >
 class to describe a static sector of the sector map. More...
 
struct  TrackNode
 Minimal class to store combination of sector and spacePoint, since SpacePoint can not carry sectorConnection. More...
 
class  VoidMetaInfo
 The most CPU efficient MetaInfo for the DirectedNode-requirements (even if useless). More...
 
struct  SpacePointTrackCandCreator< SPTCContainerType >
 small class to take simple vectors of SpacePoints and convert them to real SpacePointTrackCands More...
 
struct  QualityEstimationResults
 Container for complete fit/estimation results. More...
 
class  QualityEstimatorBase
 BaseClass for QualityEstimators. More...
 
class  QualityEstimatorCircleFit
 Class containing the algorithm to perform the simple circle fit. More...
 
class  QualityEstimatorLineFit3D
 Testbeam: Coords: Sensors: ^ . More...
 
class  QualityEstimatorMC
 Class implementing the algorithm used for the MC based quality estimation. More...
 
class  QualityEstimatorRandom
 Class implementing a random quality estimation. More...
 
class  QualityEstimatorRiemannHelixFit
 Based on R. More...
 
class  QualityEstimatorTripletFit
 does a tripletFit of the given hits The filter is based on the paper 'A New Three-Dimensional Track Fit with Multiple Scattering' by Andre Schoening et al. More...
 
class  AlwaysYesFilter
 AlwaysYesFilter is a simple filter saying always yes, which is meant for testing purposes. More...
 
class  FilterBase
 FilterBase is the baseClass for filters applied on (chains of) spacepoints. More...
 
class  HopfieldNetwork
 Hopfield Algorithm with number based inputs. More...
 
class  OverlapMatrixCreator
 Creates a vector of vectors, that knows which track is conflicting with which other. More...
 
class  OverlapNetwork
 Hold information about overlap of SpacePointTrackCand. More...
 
struct  OverlapResolverNodeInfo
 Struct for holding information needed by overlap resolving algorithms for one node. More...
 
class  Scrooge
 Executes greedy algorithm for vector of QITrackOverlap structs. More...
 
class  Named< T >
 A mixin class to attach a name to an object. Based on class with same name in CDC package. More...
 
class  ClusterInfoExtractor
 class to extract info from individual clusters and combine for SPTC More...
 
class  QEResultsExtractor
 class to extract results from qualityEstimation More...
 
class  SimpleVariableRecorder
 Class to write collected variables into a root file, Used by VXDQETrainingDataCollectorModule. More...
 
class  VariableExtractor
 class to extract individual variables More...
 
class  TrackFitter
 Algorithm class to handle the fitting of RecoTrack objects. More...
 
class  MeasurementAdder
 Algorithm class to translate the added detector hits (e.g. More...
 
class  BaseMeasurementCreator
 Base class for all measurement creators. More...
 
class  BaseMeasurementCreatorFromCoordinateMeasurement< HitType, detector >
 Baseclass to create measurement track points based on the coordinate measurements. More...
 
class  BaseMeasurementCreatorFromHit< HitType, detector >
 Base Class to create measurements based on a given hit related to the RecoTrack. More...
 
class  CoordinateMeasurementCreator< HitType, detector >
 A measurement creator for normal coordinate measurements out of cdc/svd/pxd hits. More...
 
class  VXDMomentumEstimationMeasurementCreator< HitType, detector >
 Creator for VXDMeasurements with momentum estimation based on the dEdX information. More...
 
class  AdditionalMeasurementCreatorFactory
 Add measurement creators that do not rely on a specific hit type, but rather add measurements without corresponding hit. More...
 
class  BKLMMeasurementCreatorFactory
 Add all measurement creators related to BKLM hits. More...
 
class  CDCMeasurementCreatorFactory
 Add all measurement creators related to CDC hits. More...
 
class  EKLMMeasurementCreatorFactory
 Add all measurement creators related to EKLM hits. More...
 
class  MeasurementCreatorFactory< BaseMeasurementCreatorType >
 This is the base class for all MeasurementCreatorFactories used in the MeasurementCreatorModule. More...
 
class  PXDMeasurementCreatorFactory
 Add all measurement creators related to PXD hits. More...
 
class  SVDMeasurementCreatorFactory
 Add all measurement creators related to SVD hits. More...
 
class  HMatrixQP
 AbsHMatrix implementation for one-dimensional MeasurementOnPlane and RKTrackRep parameterization. More...
 
class  PlanarMomentumMeasurement
 Measurement class implementing a planar hit geometry (1 or 2D) with only a momentum measurement. More...
 
class  PlanarVXDMomentumMeasurement< HitType >
 Measurement class implementing a planar hit geometry (1 or 2D) with a momentum measurement based on the VXD dEdX information with setable parameters (see VXDMomentumEstimationMeasurementCreator). More...
 
class  TrackBuilder
 TrackBuilder class to create the Track/TrackFitResult mdst output from the RecoTrack. More...
 
class  EventInfoExtractor
 class to extract results from qualityEstimation More...
 
class  HitInfoExtractor
 class to extract info from individual clusters and combine for SPTC More...
 
class  RecoTrackExtractor
 class to extract results from qualityEstimation More...
 
class  SubRecoTrackExtractor
 class to extract results from qualityEstimation More...
 
class  V0Fitter
 V0Fitter class to create V0 mdst's from reconstructed tracks. More...
 
class  V0FitterTest
 Set up a few arrays and objects in the datastore. More...
 
class  ExporterEventInfo
 Bundles information for a single event to be stored by NonRootDataExportModule. More...
 
class  ExporterHitInfo
 Bundles information for a single hit to be stored by EventInfo (needed for HitExporter, which is needed by NonRootDataExportModule) More...
 
class  ExporterTcInfo
 Bundles information for a single track candidate to be stored by EventInfo (needed for HitExporter, which is needed by NonRootDataExportModule) More...
 
class  FilterExceptions
 Exception which are thrown by members of the FilterClasses. More...
 
class  FourHitFilters
 The class 'FourHitFilters' bundles filter methods using 4 hits which are stored in TVector3s. More...
 
class  GlobalNames
 Bundles filter methods using 2 hits. More...
 
class  ThreeHitFilters
 The class 'ThreeHitFilters' bundles filter methods using 3 hits which are stored in TVector3s. More...
 
class  TwoHitFilters
 The class 'TwoHitFilters' bundles filter methods using 2 hits which are stored in TVector3s. More...
 
class  XHitFilterFactory< PointType >
 The factory serves as an interface between all x-hit-filters and a user only knowing their name (in string), but not their type. More...
 
class  VXDMomentumEstimation< ClusterType >
 Class doing the momentum estimation from dEdX for SVDClusters and PXDClusters. More...
 
class  VXDMomentumEstimationTools< ClusterType >
 Tools needed for the VXD momentum estimation to, e.g. More...
 

Macros

#define SELECTION_VARIABLE(variableName, nArgs, argumentType, implementation)
 Template to define a selection-variable class. More...
 

Typedefs

using CDCCKFPath = std::vector< CDCCKFState >
 Shortcut for the collection of CDC CKF-algorithm states.
 
using CDCCKFResult = CDCCKFPath
 Alias for the collection of CDC CKF-algorithm states.
 
using BaseCDCPathPairFilter = TrackFindingCDC::Filter< std::pair< const CDCCKFPath *, const CDCCKFPath * > >
 Base filter for CKF CDC paths.
 
using BaseCDCPathFilter = TrackFindingCDC::Filter< CDCCKFPath >
 Base filter for CKF CDC paths.
 
using BaseCDCStateFilter = TrackFindingCDC::Filter< std::pair< const CDCCKFPath *, CDCCKFState * > >
 Base filter for CKF CDC states.
 
using BasePXDPairFilter = TrackFindingCDC::Filter< std::pair< const CKFToPXDState *, const CKFToPXDState * > >
 Base filter for CKF PXD states.
 
using ChooseablePXDRelationFilter = LayerPXDRelationFilter< TrackFindingCDC::ChooseableFilter< PXDPairFilterFactory > >
 A chooseable filter for picking out the relations between states.
 
using BasePXDResultFilter = TrackFindingCDC::Filter< CKFToPXDResult >
 Base filter for CKF PXD results (on overlap check)
 
using ChooseablePXDResultFilter = TrackFindingCDC::ChooseableFilter< PXDResultFilterFactory >
 Alias for filter to weight the PXD clusters.
 
using BasePXDStateFilter = TrackFindingCDC::Filter< std::pair< const std::vector< TrackFindingCDC::WithWeight< const CKFToPXDState * > >, CKFToPXDState * > >
 Base filter for CKF PXD states.
 
using ChooseableOnPXDStateApplier = LayerToggledApplier< CKFToPXDState, LimitedOnStateApplier< CKFToPXDState, TrackFindingCDC::ChooseableFilter< PXDStateFilterFactory > >>
 Alias to apply the () operator to all items filtered by CKF PXD layer states.
 
using NonIPCrossingPXDStateFilter = NonIPCrossingStateFilter< AllPXDStateFilter >
 Alias for filter to check direction of a new CKF PXD state.
 
using PXDStateRejecter = StateRejecter< CKFToPXDState, ChooseableOnPXDStateApplier >
 Rejecter findlet for CKF PXD states.
 
using PXDAdvancer = Advancer
 The PXD advancer is just a synonym of the normal advancer (but may change in the future).
 
using BaseSVDPairFilter = TrackFindingCDC::Filter< std::pair< const CKFToSVDState *, const CKFToSVDState * > >
 Base filter for CKF SVD states.
 
using ChooseableSVDRelationFilter = LayerSVDRelationFilter< TrackFindingCDC::ChooseableFilter< SVDPairFilterFactory > >
 A chooseable filter for picking out the relations between states.
 
using BaseSVDResultFilter = TrackFindingCDC::Filter< CKFToSVDResult >
 Base filter for CKF SVD results (on overlap check)
 
using ChooseableSVDResultFilter = TrackFindingCDC::ChooseableFilter< SVDResultFilterFactory >
 Alias for filter to weight the SVD clusters.
 
using BaseSVDStateFilter = TrackFindingCDC::Filter< std::pair< const std::vector< TrackFindingCDC::WithWeight< const CKFToSVDState * > >, CKFToSVDState * > >
 Base filter for CKF SVD states.
 
using ChooseableOnSVDStateApplier = LayerToggledApplier< CKFToSVDState, LimitedOnStateApplier< CKFToSVDState, TrackFindingCDC::ChooseableFilter< SVDStateFilterFactory > >>
 Alias to apply the () operator to all items filtered by CKF SVD layer states.
 
using NonIPCrossingSVDStateFilter = NonIPCrossingStateFilter< AllSVDStateFilter >
 Alias for filter to check direction of a new CKF SVD state.
 
using SVDStateRejecter = StateRejecter< CKFToSVDState, ChooseableOnSVDStateApplier >
 Rejecter findlet for CKF SVD states.
 
using SVDAdvancer = Advancer
 The PXD advancer is just a synonym of the normal advancer (but may change in the future).
 
template<class AFindlet >
using EventTimeExtractorModule = TrackFindingCDC::FindletModule< TrackFindingCDC::FindletStoreArrayInput< BaseEventTimeExtractorModuleFindlet< AFindlet > > >
 Alias for the event time extraction module.
 
typedef std::unordered_multimap< int, double > i2dMultiMap
 typedef for less writing effort
 
typedef std::unordered_map< int, double > i2dMap
 typedef for less writing effort
 
using CDCBaseMeasurementCreator = BaseMeasurementCreatorFromHit< RecoHitInformation::UsedCDCHit, Const::CDC >
 Needed for templating. More...
 
using SVDBaseMeasurementCreator = BaseMeasurementCreatorFromHit< RecoHitInformation::UsedSVDHit, Const::SVD >
 Standard base class for SVD measurement creators.
 
using PXDBaseMeasurementCreator = BaseMeasurementCreatorFromHit< RecoHitInformation::UsedPXDHit, Const::PXD >
 Standard base class for PXD measurement creators.
 
using BKLMBaseMeasurementCreator = BaseMeasurementCreatorFromHit< RecoHitInformation::UsedBKLMHit, Const::BKLM >
 Standard base class for BKLM measurement creators.
 
using EKLMBaseMeasurementCreator = BaseMeasurementCreatorFromHit< RecoHitInformation::UsedEKLMHit, Const::EKLM >
 Standard base class for EKLM measurement creators.
 
using CDCCoordinateMeasurementCreator = CoordinateMeasurementCreator< RecoHitInformation::UsedCDCHit, Const::CDC >
 Needed for templating. More...
 
using SVDCoordinateMeasurementCreator = CoordinateMeasurementCreator< RecoHitInformation::UsedSVDHit, Const::SVD >
 Hit to reco hit measurement creator for the SVD.
 
using PXDCoordinateMeasurementCreator = CoordinateMeasurementCreator< RecoHitInformation::UsedPXDHit, Const::PXD >
 Hit to reco hit measurement creator for the PXD.
 
using BKLMCoordinateMeasurementCreator = CoordinateMeasurementCreator< RecoHitInformation::UsedBKLMHit, Const::BKLM >
 Hit to reco hit measurement creator for the BKLM.
 
using EKLMCoordinateMeasurementCreator = CoordinateMeasurementCreator< RecoHitInformation::UsedEKLMHit, Const::EKLM >
 Hit to reco hit measurement creator for the EKLM.
 
using SVDMomentumMeasurementCreator = VXDMomentumEstimationMeasurementCreator< RecoHitInformation::UsedSVDHit, Const::SVD >
 Momentum measurement creator for the SVD.
 
using PXDMomentumMeasurementCreator = VXDMomentumEstimationMeasurementCreator< RecoHitInformation::UsedPXDHit, Const::PXD >
 Momentum measurement creator for the PXD.
 

Enumerations

enum  VolTypes {
  VOLTYPE_CDC,
  VOLTYPE_TOP1,
  VOLTYPE_TOP2,
  VOLTYPE_TOP3,
  VOLTYPE_ARICH1,
  VOLTYPE_ARICH2,
  VOLTYPE_ARICH3,
  VOLTYPE_ECL,
  VOLTYPE_BKLM1,
  VOLTYPE_BKLM2,
  VOLTYPE_EKLM
}
 Enumeration for G4VPhysicalVolume sensitive-volume categories. More...
 

Functions

TMatrixDSym toTMatrixDSym (Eigen::MatrixXd mIn)
 Function that converts Eigen symmetric matrix to ROOT matrix.
 
TVector3 toTVector3 (Eigen::VectorXd vIn)
 Function that converts Eigen vector to ROOT vector.
 
int getID (const std::vector< double > &breaks, double t)
 get id of the time point t
 
void extrapolateCalibration (std::vector< CalibrationData > &calVec)
 Extrapolate calibration to intervals where it failed.
 
void addShortRun (std::vector< CalibrationData > &calVec, std::pair< ExpRun, std::pair< double, double >> shortRun)
 Extrapolate calibration to the very short runs which were filtered before.
 
double encodeNumber (double val, unsigned num)
 Encode integer num into double val such that val is nearly not changed (maximally by a relative shift 1e-6). More...
 
unsigned decodeNumber (double val)
 Decode the integer number encoded in val.
 
template<typename Evt >
void storePayloads (const std::vector< Evt > &evts, std::vector< CalibrationData > &calVec, std::string objName, std::function< TObject *(Eigen::VectorXd, Eigen::MatrixXd, Eigen::MatrixXd) > getCalibObj)
 Store payloads to files.
 
template<typename Evt , typename Fun >
CalibrationData runAlgorithm (const std::vector< Evt > &evts, std::vector< std::map< ExpRun, std::pair< double, double >>> range, Fun runCalibAnalysis)
 run calibration algorithm for single calibration interval
 
template<typename Fun1 , typename Fun2 >
CalibrationAlgorithm::EResult runCalibration (TTree *tracks, const std::string &calibName, Fun1 GetEvents, Fun2 calibAnalysis, std::function< TObject *(Eigen::VectorXd, Eigen::MatrixXd, Eigen::MatrixXd)> calibObjCreator, TString m_lossFunctionOuter, TString m_lossFunctionInner)
 Run the the calibration over the whole event sample. More...
 
bool operator!= (ExpRun a, ExpRun b)
 Not equal for ExpRun.
 
bool operator< (ExpRun a, ExpRun b)
 less than for ExpRun
 
std::map< ExpRun, std::pair< double, double > > filter (const std::map< ExpRun, std::pair< double, double >> &runs, double cut, std::map< ExpRun, std::pair< double, double >> &runsRemoved)
 filter events to remove runs shorter than cut, it stores removed runs in runsRemoved
 
std::pair< int, int > getStartEndIndexes (int nIntervals, std::vector< int > breaks, int indx)
 get the range of interval with nIntervals and breaks stored in a vector
 
std::vector< Atomslice (std::vector< Atom > vec, int s, int e)
 Slice the vector to contain only elements with indexes s .. e (included)
 
std::vector< std::map< ExpRun, std::pair< double, double > > > breaks2intervalsSep (const std::map< ExpRun, std::pair< double, double >> &runsMap, const std::vector< Atom > &currVec, const std::vector< int > &breaks)
 Get calibration intervals according to the indexes of the breaks. More...
 
template<typename Evt >
std::map< ExpRun, std::pair< double, double > > getRunInfo (const std::vector< Evt > &evts)
 Get the map of runs, where each run contains pair with start/end time [hours]. More...
 
template<typename Evt >
ExpRunEvt getPosition (const std::vector< Evt > &events, double tEdge)
 Get the exp-run-evt number from the event time [hours]. More...
 
template<typename Evt >
std::vector< ExpRunEvtconvertSplitPoints (const std::vector< Evt > &events, std::vector< double > splitPoints)
 Convert splitPoints [hours] to breakPoints in ExpRunEvt. More...
 
TString rn ()
 Get random string.
 
std::vector< std::vector< double > > merge (std::vector< std::vector< std::vector< double >>> toMerge)
 merge { vector<double> a, vector<double> b} into {a, b}
 
Eigen::VectorXd vec2vec (std::vector< double > vec)
 std vector -> ROOT vector
 
std::vector< double > vec2vec (Eigen::VectorXd v)
 ROOT vector -> std vector.
 
Eigen::MatrixXd vecs2mat (std::vector< std::vector< double >> vecs)
 merge columns (from std::vectors) into ROOT matrix
 
std::vector< double > getRangeLin (int nVals, double xMin, double xMax)
 Equidistant range between xMin and xMax for spline of the first order.
 
std::vector< double > getRangeZero (int nVals, double xMin, double xMax)
 Equidistant range between xMin and xMax for spline of the zero order.
 
std::vector< double > slice (std::vector< double > v, unsigned ind, unsigned n)
 put slice of original vector v[ind:ind+n] into new one, n is number of elements
 
double eval (const std::vector< double > &spl, const std::vector< double > &vals, double x)
 Evaluate spline (zero order or first order) in point x.
 
map< ExpRun, pair< double, double > > filter (const map< ExpRun, pair< double, double >> &runs, double cut, map< ExpRun, pair< double, double >> &runsRemoved)
 filter events to remove runs shorter than cut, it stores removed runs in runsRemoved
 
void plotRuns (vector< pair< double, double >> runs)
 plot runs on time axis
 
void plotSRuns (vector< pair< double, double >> runs, vector< int > breaks, int offset=2)
 plot clusters or runs on time axis
 
void printBySize (vector< pair< double, double >> runs)
 print sorted lenghts of the runs
 
static ExpRun getRun (map< ExpRun, pair< double, double >> runs, double t)
 Get exp number + run number from time. More...
 
vector< map< ExpRun, pair< double, double > > > breaks2intervalsSep (const map< ExpRun, pair< double, double >> &runsMap, const vector< Atom > &currVec, const vector< int > &breaks)
 Get calibration intervals according to the indexes of the breaks. More...
 
std::ostream & operator<< (std::ostream &output, const CDCCKFPath &path)
 Output operator for the collection of CDC CKF-algorithm states.
 
std::ostream & operator<< (std::ostream &output, const CDCCKFState &state)
 print state info
 
std::string getClassMnemomicParameterName (const RecoTrack *dispatchTag __attribute__((unused)))
 Returns a short name for class RecoTrack to be used in names of parameters.
 
std::string getClassMnemomicParameterDescription (const RecoTrack *dispatchTag __attribute__((unused)))
 Returns a short description for class RecoTrack to be used in descriptions of parameters.
 
std::string getClassMnemomicParameterName (const SpacePoint *dispatchTag __attribute__((unused)))
 Returns a short name for class SpacePoint to be used in names of parameters.
 
std::string getClassMnemomicParameterDescription (const SpacePoint *dispatchTag __attribute__((unused)))
 Returns a short description for class SpacePoint to be used in descriptions of parameters.
 
template<unsigned int NRows, unsigned int NCols, class AMatrix >
Eigen::Matrix< double, NRows, NCols, Eigen::RowMajor > convertToEigen (const AMatrix &matrix)
 Convert a ROOT matrix to Eigen. Checks for the correct row and column number.
 
template<unsigned int NRows>
Eigen::Matrix< double, NRows, 1 > convertToEigen (const TVectorD &matrix)
 Convert a ROOT matrix to Eigen - TVector specialisation. Checks for the correct row number.
 
constexpr bool arcLengthInRightDirection (double arcLength2D, TrackFindingCDC::EForwardBackward forwardBackward)
 Given the calculated arc length between a start point and an end point, checks if the travelled path is along the given direction or not. More...
 
TrackFindingCDC::EForwardBackward fromString (const std::string &directionString)
 Helper function to turn a direction string into a valid forward backward information.
 
template<typename MapType >
std::vector< typename MapType::key_type > getUniqueKeys (const MapType &aMap)
 get the unique keys of a map (i.e. More...
 
template<typename MapType >
unsigned int getUniqueSize (const MapType &aMap)
 get the number of unique keys inside the map NOTE: for non-multimap this is the same as .size()
 
template<typename MapType >
std::vector< std::pair< typename MapType::key_type, unsigned int > > getNValuesPerKey (const MapType &aMap)
 get the unique keys of a map together with the number of values associated to each key. More...
 
template<typename MapType >
std::vector< typename MapType::mapped_type > getValuesToKey (const MapType &aMap, typename MapType::key_type aKey)
 get all values stored in the map for a given key
 
template<typename MapType >
std::vector< std::tuple< typename MapType::key_type, typename MapType::mapped_type, unsigned int > > getSortedKeyValueTuples (const MapType &aMap)
 get the (key, value, number of values) tuples stored in the map, sorted after the following scheme (descending order) 1) the number of associated values to one key 2) the sum of the associated values to that key NOTE: for a non-multimap this returns the content of the map ordered by valued CAUTION: if one of the values to a key is NaN this key will be the first (of the ones with the same number of associated values) More...
 
template<typename MapType >
std::vector< typename MapType::mapped_type > getAllValues (const MapType &aMap)
 get all values in the map (i.e. More...
 
template<typename MapType >
std::string printMap (const MapType &aMap)
 get the contents of the map as string. More...
 
static bool findWeightInVector (std::vector< std::pair< int, double > > &vec, double weight)
 find the given weight in the given vector of pair<int,double> NOTE: the criteria for finding are rather loose (i.e. More...
 
template<typename TrueHitType >
static std::vector< std::pair< int, double > > getMCParticles (const Belle2::SpacePoint *spacePoint)
 get the related MCParticles to the TrueHit. More...
 
static void increaseClusterCounters (const Belle2::SpacePoint *spacePoint, std::array< unsigned, 3 > &clusterCtr)
 increase the appropriate Cluster counter by asking the SpacePoint which type he has and which Clusters are assigned
 
static std::vector< size_t > getAccessorsFromWeight (double weight)
 convert the relation weight (SpacePoint <-> TrueHit) to a type that can be used to access arrays
 
static std::vector< Belle2::MCVXDPurityInfocreatePurityInfosVec (const std::vector< const Belle2::SpacePoint * > &spacePoints)
 create a vector of MCVXDPurityInfos objects for a std::vector<Belle2::SpacePoints>. More...
 
template<typename SPContainer >
static std::vector< Belle2::MCVXDPurityInfocreatePurityInfos (const SPContainer *container)
 create a vector of MCVXDPurityInfos objects for any given container holding SpacePoints and providing a getHits() method each MCParticle that is in the container gets its own object NOTE: negative MCParticleIds are possible und used as follows: More...
 
template<typename SPContainer >
static std::vector< Belle2::MCVXDPurityInfocreatePurityInfos (const SPContainer &container)
 
template<typename Functor >
i2dMultiMap createMultiMap (int nEntries, Functor funct)
 create a multimap with More...
 
template<typename Functor >
i2dMap createMap (int nEntries, Functor funct)
 create a multimap with More...
 
 TEST_F (MapHelperFunctionsTest, testCreatorFunctions)
 test the methods that are use to create the maps for the later tests
 
 TEST_F (MapHelperFunctionsTest, testGetUniqueKeys)
 test if the 'getUniqueKeys' method returns the right values
 
 TEST_F (MapHelperFunctionsTest, testGetValuesToKey)
 test if the 'getValuesToKey' method returns the right values to a given key
 
 TEST_F (MapHelperFunctionsTest, testGetNValuesPerKey)
 test the 'getNValuesPerKey' method
 
 TEST_F (MapHelperFunctionsTest, testGetSortedKeyValueTuples)
 test if the 'getSortedKeyValuePairs' method actually works as advertised
 
 TEST_F (MapHelperFunctionsTest, testGetAllValues)
 test the getAllValues() function actually returns all values that are stored in the map
 
 TEST_F (SpacePointTest, testConstructorPXD)
 Test constructor for PXDClsuters tests the constructor importing a PXDCluster and tests results by using the getters of the spacePoint...
 
 TEST_F (SpacePointTest, testConstructorSVD)
 Test constructor for SVDClsuters tests the constructor importing a SVDCluster and tests results by using the getters of the spacePoint...
 
 TEST_F (SpacePointTest, testRootIOPXDCluster)
 Test if cluster writing in and reading from root files work. More...
 
 TEST_F (SpacePointTest, testRootIOB2Vector3)
 Test if B2Vector3 writing in and reading from root files work. More...
 
 TEST_F (SpacePointTest, testRootIOSP)
 Test if spacePoints writing in and reading from root files work. More...
 
 TEST_F (SpacePointTest, testConvertLocalToNormalizedCoordinates)
 Testing member of spacePoint: convertToNormalizedCoordinates. More...
 
 TEST_F (SpacePointTest, testConvertNormalizedToLocalCoordinates)
 Testing member of spacePoint: convertToLocalCoordinates. More...
 
 TEST_F (SpacePointTest, testGetNClustersAssigned)
 Test if the number of assigned Clusters is obtained correctly NOTE: using the same constructors as in previous tests!
 
 TEST_F (SpacePointTrackCandTest, testConstructorFromVector)
 Test the Constructor, that takes a vector of SpacePoint* as argument.
 
 TEST_F (SpacePointTrackCandTest, testEqualityOperator)
 Test operator == of SpacePointTrackCand.
 
 TEST_F (SpacePointTrackCandTest, testSetPdgCode)
 Test setPdgCode method, by comparing its results with the expected values for the according particles.
 
 TEST_F (SpacePointTrackCandTest, testGetHitsInRange)
 Test the get hits in range method.
 
 TEST_F (SpacePointTrackCandTest, testRefereeStatus)
 Test the setRefereeStatus and getRefereeStatus methods.
 
 TEST_F (SpacePointTrackCandTest, testRemoveSpacePoints)
 Test the removeSpacePoint method.
 
 TEST_F (SpacePointTrackCandTest, testGetSortedHits)
 Test setPdgCode method, by comparing its results with the expected values for the according particles.
 
 TEST_F (RecoTrackTest, cdcHit)
 Test simple Setters and Getters.
 
 TEST_F (RecoTrackTest, cdcHitMCFinderCategory)
 Test simple Correct handling fo the MCFinder hit classification.
 
 TEST_F (RecoTrackTest, testGenfitConversionOne)
 Test conversion to genfit track cands.
 
 TEST_F (RecoTrackTest, testGenfitConversionTwo)
 Test conversion from genfit track cands.
 
 TEST_F (RecoTrackTest, copyRecoTrack)
 Test copying a RecoTrack.
 
 TEST_F (RecoTrackTest, recoHitInformations)
 Test the getRecoHitInformations() function.
 
 TEST_F (CollectorTFInfoTest, testAllInformationLoop)
 dummy comment: testAllInformationLoop
 
 TEST_F (FilterIDTest, simpleTest)
 Test simple Setters and Getters.
 
 TEST_F (FullSecIDTest, constructorAndGetterTests)
 Test simple Setters and Getters.
 
 TEST_F (FullSecIDTest, overloadedOperatorTests)
 testing the overloaded operators of the FullSecID-class
 
 TEST_F (FullSecIDTest, bufferOverflowTest)
 Unfinished test - shall test bufferOverflows...
 
 TEST_F (SandBox4TestingTest, testingVerbosityViaTemplates)
 test function call with auto-assigned value
 
 TEST_F (SandBox4TestingTest, JustSomePlayingAroundWithfunction)
 test function call with auto-assigned value
 
 TEST_F (SandBox4TestingTest, TestIsNanAndIsInfBehavior)
 shall show when to get nan and when to get inf (and that inf != nan)
 
 TEST_F (SectorTest, testConstructorSettersAndGetters)
 Test Constructor, Setters and Getters.
 
 TEST_F (ThreeHitFiltersTest, simpleTest)
 Test simple Setters and Getters.
 
 TEST_F (ThreeHitFiltersTest, TestMagneticField)
 the correctness of the magneticField-values (important for pT-related calculations)
 
 TEST_F (ThreeHitFiltersTest, TestAngles)
 the correctness of the angle calculators
 
 TEST_F (ThreeHitFiltersTest, TestSignAndOtherFilters)
 test sign, helixFit and calcDeltaSlopeRZ filters
 
 TEST_F (ThreeHitFiltersTest, TestDeltaSOverZ)
 test DeltaSOverZ
 
 TEST_F (ThreeHitFiltersTest, TestCalcPt)
 test cramer method in calcPt
 
 TEST_F (TwoHitFiltersTest, TestEmptyFilter)
 Test simple Setters and Getters by filling zeroes.
 
 TEST_F (TwoHitFiltersTest, TestFilledFilter)
 Test simple Setters and Getters by filling non-zero-values.
 
 TEST_F (TwoHitFiltersTest, testLargeFilter)
 Test simple Setters and Getters by filling extreme values.
 
 TEST_F (TwoHitFiltersTest, testOutOfRangeFilter)
 testing out of range behavior
 
 TEST_F (TwoHitFiltersTest, TestOutOfRangeNormedDistFilter)
 And now possibly the only case where TwoHitFilters produces wrong results. More...
 
template<class NetworkPath >
SpacePointTrackCand convertNetworkPath (NetworkPath networkPath)
 Create new SPTC from network path.
 
void insertSpacePoint (std::vector< const SpacePoint * > &target, TrackNode source)
 Convert TrackNode to SpaePoint an add to a SpacePoint path.
 
void insertSpacePoints (std::vector< const SpacePoint * > &target, const Segment< TrackNode > &source)
 Insert of inner and outer TrackNodes of a Segment as SpacePoints into path of SpacePoints.
 
template<class DataType , class TCInfoType , class VectorType >
bool operator== (const AnalyzingAlgorithmBase< DataType, TCInfoType, VectorType > &a, const std::string &b)
 non-memberfunction Comparison for equality with a std::string
 
template<class DataType , class TCInfoType , class VectorType >
bool operator== (const std::string &a, const AnalyzingAlgorithmBase< DataType, TCInfoType, VectorType > &b)
 non-memberfunction Comparison for equality with a std::string
 
template<class DataType , class TCInfoType , class VectorType >
bool operator== (const AnalyzingAlgorithmBase< DataType, TCInfoType, VectorType > &a, const AlgoritmType::Type &b)
 non-memberfunction Comparison for equality with a AlgoritmType::Type
 
template<class DataType , class TCInfoType , class VectorType >
bool operator== (const AlgoritmType::Type &a, const AnalyzingAlgorithmBase< DataType, TCInfoType, VectorType > &b)
 non-memberfunction Comparison for equality with a AlgoritmType::Type
 
template<class DataType , class TCInfoType , class VectorType >
AnalyzingAlgorithmBase< DataType, TCInfoType, VectorType > * AnalyzingAlgorithmFactoryDouble (AlgoritmType::Type algorithmID)
 the analyzingAlgorithm factory for algorithms returning one double for each TC passed: More...
 
template<class DataType , class TCInfoType , class VectorType >
AnalyzingAlgorithmBase< DataType, TCInfoType, VectorType > * AnalyzingAlgorithmFactoryInt (AlgoritmType::Type algorithmID)
 the analyzingAlgorithm factory for algorithms returning one int for each TC passed: More...
 
template<class DataType , class TCInfoType , class VectorType >
AnalyzingAlgorithmBase< DataType, TCInfoType, VectorType > * AnalyzingAlgorithmFactoryVecDouble (AlgoritmType::Type algorithmID)
 the analyzingAlgorithm factory for algorithms returning one vector< double> for each TC passed: More...
 
template<typename ... types>
Filter< OperatorNot, Filter< types... >, VoidObserveroperator! (const Filter< types... > &filter)
 Definition of the NOT operator ! for the Filter class. More...
 
template<typename ... types1, typename ... types2>
Filter< Belle2::OperatorAnd, Belle2::Filter< types1... >, Belle2::Filter< types2... >, Belle2::VoidObserveroperator&& (const Filter< types1... > &filter1, const Filter< types2... > &filter2)
 Definition of the boolean AND operator && of the Filter class. More...
 
template<typename ... types1, typename ... types2>
Filter< Belle2::OperatorOr, Belle2::Filter< types1... >, Belle2::Filter< types2... >, Belle2::VoidObserveroperator|| (const Filter< types1... > &filter1, const Filter< types2... > &filter2)
 Definition of the boolean OR operator || of the Filter class. More...
 
template<class booleanBinaryOperator , typename ... types1, typename ... types2, class observer , typename ... argsTypes>
bool initializeObservers (const Filter< booleanBinaryOperator, Belle2::Filter< types1... >, Belle2::Filter< types2... >, observer > &, argsTypes ... args)
 Observer Stuff ///. More...
 
template<class booleanUnaryOperator , typename ... types1, class observer , typename ... argsTypes>
bool initializeObservers (const Filter< booleanUnaryOperator, Belle2::Filter< types1... >, observer > &, argsTypes ... args)
 Recursive function to initialize all the observers in a unary boolean Filter. More...
 
template<class Variable , class RangeType , class observer , typename ... argsTypes>
bool initializeObservers (const Belle2::Filter< Variable, RangeType, observer > &filter, argsTypes ... args)
 Initialize the observer of a RangeType Filter. More...
 
template<class Variable , class Range , class ... Options>
std::unordered_map< std::string, typename Variable::functionType > SelectionVariableNamesToFunctions (Belle2::Filter< Variable, Range, Options... >)
 Return a map from the SelectionVariable name to the SelectionVariable function of the Variable used in the filter that is the template argument parameter. More...
 
template<class someFilter , class ... options>
std::unordered_map< std::string, typename someFilter::functionType > SelectionVariableNamesToFunctions (Belle2::Filter< Belle2::OperatorNot, someFilter, options... >)
 Wrapper for filters with NOT Operator tag. More...
 
template<class FilterA , class FilterB , class ... options>
std::unordered_map< std::string, typename FilterA::functionType > SelectionVariableNamesToFunctions (Belle2::Filter< Belle2::OperatorAnd, FilterA, FilterB, options... >)
 Wrapper for filters with AND Operator tag. More...
 
template<class FilterA , class FilterB , class ... options>
std::unordered_map< std::string, typename FilterA::functionType > SelectionVariableNamesToFunctions (Belle2::Filter< Belle2::OperatorOr, FilterA, FilterB, options... >)
 Wrapper for filters with OR Operator tag. More...
 
template<class Var , class Arithmetic , typename ... types>
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< Arithmetic >::value, Filter< Var, UpperBoundedSet< Arithmetic >, VoidObserver > >::type operator< (const Var &, Arithmetic upperBound)
 Creates a Filters with an upper bound < on the provided variable Var < lowerBound. More...
 
template<class Var , class Arithmetic , typename ... types>
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< Arithmetic >::value, Filter< Var, ClosedUpperBoundedSet< Arithmetic >, VoidObserver > >::type operator<= (const Var &, Arithmetic upperBound)
 Creates a Filters with a closed upper bound <= on the provided variable Var <= lowerBound. More...
 
template<class Var , class Arithmetic >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< Arithmetic >::value, Filter< Var, LowerBoundedSet< Arithmetic >, VoidObserver > >::type operator> (const Var &, Arithmetic lowerBound)
 Creates a Filters with an lower bound > on the provided variable Var > lowerBound. More...
 
template<class Var , class Arithmetic >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< Arithmetic >::value, Filter< Var, ClosedLowerBoundedSet< Arithmetic >, VoidObserver > >::type operator>= (const Var &, Arithmetic lowerBound)
 Creates a Filters with a closed lower bound >= on the provided variable Var >= lowerBound. More...
 
template<class Var , class Arithmetic >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< Arithmetic >::value, Filter< Var, UpperBoundedSet< Arithmetic >, VoidObserver > >::type operator> (Arithmetic upperBound, const Var &)
 Creates a Filters with an upper bound < on the provided variable upperBound > Var. More...
 
template<class Var , class Arithmetic >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< Arithmetic >::value, Filter< Var, ClosedUpperBoundedSet< Arithmetic >, VoidObserver > >::type operator>= (Arithmetic upperBound, const Var &)
 Creates a Filters with a closed upper bound <= on the provided variable upperBound >= Var. More...
 
template<class Var , class Arithmetic >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< Arithmetic >::value, Filter< Var, LowerBoundedSet< Arithmetic >, VoidObserver > >::type operator< (Arithmetic lowerBound, const Var &)
 Creates a Filters with an lower bound > on the provided variable lowerBound < Var. More...
 
template<class Var , class Arithmetic >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< Arithmetic >::value, Filter< Var, ClosedLowerBoundedSet< Arithmetic >, VoidObserver > >::type operator<= (Arithmetic lowerBound, const Var &)
 Creates a Filters with a closed lower bound >= on the provided variable lowerBound <= Var. More...
 
template<class Var , class Val >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value, Filter< Var, SingleElementSet< Val >, VoidObserver > >::type operator== (const Var &, Val v)
 Creates a Filters to compare a variable against a given value Var == Val;. More...
 
template<class Var , class Val >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value, Filter< Var, SingleElementSet< Val >, VoidObserver > >::type operator== (Val val, const Var &var)
 Creates a Filters to compare a variable against a given value Val == Var;. More...
 
template<class Var , class ArithmeticLower , class ArithmeticUpper , class Observer >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< ArithmeticLower >::value &&std::is_arithmetic< ArithmeticUpper >::value, Filter< Var, Range< ArithmeticLower, ArithmeticUpper >, Observer > >::type operator< (const Filter< Var, LowerBoundedSet< ArithmeticLower >, Observer > &filter, ArithmeticUpper upperBound)
 Adding upper bound to filter with lower bound to create a filter with an allowed range between lower and upper bound. More...
 
template<class Var , class ArithmeticLower , class ArithmeticUpper , class Observer >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< ArithmeticLower >::value &&std::is_arithmetic< ArithmeticUpper >::value, Filter< Var, Range< ArithmeticLower, ArithmeticUpper >, Observer > >::type operator> (const Filter< Var, UpperBoundedSet< ArithmeticUpper >, Observer > &filter, ArithmeticLower lowerBound)
 Adding lower bound to filter with upper bound to create a filter with an allowed range between lower and upper bound. More...
 
template<class Var , class ArithmeticLower , class ArithmeticUpper , class Observer >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< ArithmeticLower >::value &&std::is_arithmetic< ArithmeticUpper >::value, Filter< Var, ClosedRange< ArithmeticLower, ArithmeticUpper >, Observer > >::type operator<= (const Filter< Var, ClosedLowerBoundedSet< ArithmeticLower >, Observer > &filter, ArithmeticUpper upperBound)
 Adding closed upper bound to filter with closed lower bound to create a filter with an allowed closed range between lower and upper bound. More...
 
template<class Var , class ArithmeticLower , class ArithmeticUpper , class Observer >
std::enable_if< std::is_base_of< SelectionVariable< typename Var::argumentType, Var::c_Nargs, typename Var::variableType >, Var >::value &&std::is_arithmetic< ArithmeticLower >::value &&std::is_arithmetic< ArithmeticUpper >::value, Filter< Var, ClosedRange< ArithmeticLower, ArithmeticUpper >, Observer > >::type operator>= (const Filter< Var, ClosedUpperBoundedSet< ArithmeticUpper >, Observer > &filter, ArithmeticLower lowerBound)
 Adding closed lower bound to filter with closed upper bound to create a filter with an allowed closed range between lower and upper bound. More...
 
char TBranchLeafType (const char *)
 Overloading TBranchLeafType to be able to get identifier 'C' for type char*.
 
char TBranchLeafType (const Char_t &)
 Overloading TBranchLeafType to be able to get identifier 'B' for type Char_t.
 
char TBranchLeafType (const unsigned char &)
 Overloading TBranchLeafType to be able to get identifier 'b' for type unsigned char.
 
char TBranchLeafType (const short &)
 Overloading TBranchLeafType to be able to get identifier 'S' for type short.
 
char TBranchLeafType (const unsigned short &)
 Overloading TBranchLeafType to be able to get identifier 's' for type unsigned short.
 
char TBranchLeafType (const Int_t &)
 Overloading TBranchLeafType to be able to get identifier 'I' for type Int_t.
 
char TBranchLeafType (const UInt_t &)
 Overloading TBranchLeafType to be able to get identifier 'i' for type UInt_t.
 
char TBranchLeafType (const Float_t &)
 Overloading TBranchLeafType to be able to get identifier 'F' for type Float_t.
 
char TBranchLeafType (const Double_t &)
 Overloading TBranchLeafType to be able to get identifier 'D' for type Double_t.
 
char TBranchLeafType (const long int &)
 Overloading TBranchLeafType to be able to get identifier 'L' for type long int.
 
char TBranchLeafType (const unsigned long int &)
 Overloading TBranchLeafType to be able to get identifier 'l' for type unsigned long int.
 
char TBranchLeafType (const bool &)
 Overloading TBranchLeafType to be able to get identifier 'O' for type bool.
 
 SELECTION_VARIABLE (Difference, 2, double, static double value(const double &t1, const double &t2) { return t1 - t2;};)
 Quick definition of a selection variable implementing the difference of 2 doubles.
 
 SELECTION_VARIABLE (Sum, 2, double, static double value(const double &t1, const double &t2) { return t1+t2;};)
 Quick definition of a selection variable implementing the sum of 2 doubles.
 
 TEST_F (VariablesOnTTree, basic_test)
 Basic test of the class.
 
template<size_t Ndims>
const Eigen::Matrix< double, Ndims, Ndims, Eigen::RowMajor > calculateCovMatrix (std::array< std::vector< double >, Ndims > inputData)
 calculates the empirical covariance matrix from the inputData. More...
 
template<size_t Ndims>
static void readSamplesFromStream (std::istream &is, std::vector< FBDTTrainSample< Ndims > > &samples)
 read samples from stream and append them to samples
 
template<size_t Ndims>
static void writeSamplesToStream (std::ostream &os, const std::vector< FBDTTrainSample< Ndims > > &samples)
 write all samples to stream
 
template<class EntryType , class MetaInfoType >
bool operator== (const EntryType &a, const DirectedNode< EntryType, MetaInfoType > &b)
 ************************* NON-MEMBER FUNCTIONS ************************* More...
 
short calcCurvatureSignum (std::vector< SpacePoint const * > const &measurements)
 Calculate curvature based on triplets of measurements. More...
 
 TEST_F (V0FitterTest, GetTrackHypotheses)
 Test getter for track hypotheses.
 
 TEST_F (V0FitterTest, InitializeCuts)
 Test initialization of cuts.
 
double lossFunction (const std::vector< Atom > &vec, int s, int e) const
 lossFunction of the calibration interval consisting of several "atoms" stored in vector vec The atoms included in calibration interval have indices between s and e More...
 
static std::vector< std::pair< double, double > > splitToSmall (std::map< ExpRun, std::pair< double, double >> runs, double intSize=1./60)
 Split the runs into small calibration intervals (atoms) of a specified size. More...
 
double getMinLoss (const std::vector< Atom > &vec, int e, std::vector< int > &breaks)
 Recursive function to evaluate minimal sum of the lossFuctions for the optimal clustering. More...
 
std::vector< int > dynamicBreaks (const std::vector< Atom > &runs)
 Get optimal break points using algorithm based on dynamic programing. More...
 
static std::map< ExpRun, std::pair< double, double > > mergeIntervals (std::map< ExpRun, std::pair< double, double >> I1, std::map< ExpRun, std::pair< double, double >> I2)
 Merge two subintervals into one subinterval. More...
 
TrackFindingCDC::Weight operator() (const Object &pair) final
 Main function testing the object for the direction.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override
 Expose the direction parameter.
 
void initialize () final
 Copy the string direction parameter to the enum.
 
 ~CKFRelationCreator ()
 Default destructor.
 
 CKFRelationCreator ()
 Construct this findlet and add the subfindlet as listener.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose the parameters of the subfindlet.
 
void apply (std::vector< AState > &seedStates, std::vector< AState > &states, std::vector< TrackFindingCDC::WeightedRelation< AState >> &relations) override
 Apply both filters for creating state-hit and hit-hit relations.
 
 LayerToggledApplier ()
 Add the subfilters as listeners.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose parameters of the subfilters and the layer to change.
 
void apply (const std::vector< TrackFindingCDC::WithWeight< const AState * >> &currentPath, std::vector< TrackFindingCDC::WithWeight< AState * >> &childStates) override
 The weight is calculated using the subfilter based on the geometrical layer of the state.
 
 LimitedOnStateApplier ()
 Constructor adding the findlet as a listener.
 
void apply (const std::vector< TrackFindingCDC::WithWeight< const AState * >> &currentPath, std::vector< TrackFindingCDC::WithWeight< AState * >> &childStates) override
 Apply the filter to each pair of states and current path and let only pass the best N states.
 
TrackFindingCDC::Weight operator() (const Object &object) override
 Copy the filter operator to this method.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override
 Expose the parameters of the subfindlet.
 
void apply (const std::vector< TrackFindingCDC::WithWeight< const AState * >> &currentPath, std::vector< TrackFindingCDC::WithWeight< AState * >> &childStates) override
 Apply the () operator to all pairs of state and current path.
 
virtual TrackFindingCDC::Weight operator() (const Object &object)
 The filter operator for this class.
 
 OverlapResolver ()
 Construct this findlet and add the subfindlet as listener.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose the parameters of the subfindlet.
 
void apply (std::vector< Object > &results, std::vector< Object > &filteredResult) override
 For each seed, search for the best candidate and return it.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override
 Expose the parameters of the sub findlets.
 
void initialize () override
 Create the store arrays.
 
void apply (std::vector< AResult > &results) override
 Load in the reco tracks and the hits. More...
 
void beginEvent () override
 Clear the used clusters.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override
 Expose the parameters of the findlet.
 
void apply (const std::vector< AResult > &results, const std::vector< const SpacePoint * > &spacePoints) override
 Mark all space points as used, that they share clusters if the given kind with the results.
 
void apply (const std::vector< AnObject * > &objects, std::vector< AState > &states) override
 Add new states to the list of states using all given objects. More...
 
void apply (const std::vector< RecoTrack * > &objects, std::vector< AState > &states) final
 Create states from the space points, including a reverse flag or not.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose the parameters.
 
 StateRejecter ()
 Construct this findlet and add the subfindlet as listener.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose the parameters of the subfindlet.
 
void apply (const std::vector< TrackFindingCDC::WithWeight< const AState * >> &currentPath, std::vector< TrackFindingCDC::WithWeight< AState * >> &childStates) final
 Apply all five filters to the child states.
 
 TreeSearcher ()
 Construct this findlet and add the subfindlet as listener.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose the parameters of the subfindlet.
 
void apply (const std::vector< AState > &seededStates, std::vector< AState > &hitStates, const std::vector< TrackFindingCDC::WeightedRelation< AState >> &relations, std::vector< AResult > &results) final
 Main function of this findlet: traverse a tree starting from a given seed states. More...
 
void traverseTree (std::vector< TrackFindingCDC::WithWeight< const AState * >> &path, const std::vector< TrackFindingCDC::WeightedRelation< AState >> &relations, std::vector< AResult > &results)
 Implementation of the traverseTree function.
 
 LayerPXDRelationFilter ()
 Add the filter as listener.
 
 ~LayerPXDRelationFilter ()
 Default destructor.
 
std::vector< CKFToPXDState * > getPossibleTos (CKFToPXDState *from, const std::vector< CKFToPXDState * > &states) const override
 Selects the objects possibly related to the given one from the given pool of objects.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override
 Expose the set of parameters of the filter to the module parameter list. More...
 
TrackFindingCDC::Weight operator() (const CKFToPXDState &from, const CKFToPXDState &to) override
 Main filter method returning the weight of the neighborhood relation. More...
 
 LayerSVDRelationFilter ()
 Add the filter as listener.
 
void beginRun () final
 Initialize the maximal ladder cache.
 
 ~LayerSVDRelationFilter ()
 Default destructor.
 
std::vector< CKFToSVDState * > getPossibleTos (CKFToSVDState *from, const std::vector< CKFToSVDState * > &states) const final
 Return all states the given state is possible related to.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose the parameters of the filter.
 
TrackFindingCDC::Weight operator() (const CKFToSVDState &from, const CKFToSVDState &to) final
 Give a final weight to the possibilities by asking the filter.
 
void beginRun () final
 Initialize the sector map.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose the parameters of the filter.
 
TrackFindingCDC::Weight operator() (const std::pair< const CKFToSVDState *, const CKFToSVDState * > &relation) override
 Give a final weight to the possibilities by asking the filter.
 
bool wasSuccessful () const
 Returns true if the last run t0 extraction was successful.
 
virtual void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override
 Expose our parameters to the super module.
 
virtual void initialize () override
 Initialize the event t0 store obj ptr.
 
virtual void beginEvent () override
 Create the event t0 store obj ptr.
 
void resetEventT0 () const
 Reset the t0 value to cached value if it exists or clear it otherwise.
 
 BaseEventTimeExtractorModuleFindlet ()
 Add the subfindlet as listener.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override final
 Expose our parameters to the super module.
 
void apply (std::vector< RecoTrack * > &recoTracks) override final
 Apply the findlets.
 
 GridEventTimeExtractor ()
 Add the subfindlet as listener.
 
void apply (std::vector< RecoTrack * > &recoTracks) override final
 Timing extraction for this findlet.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override final
 Expose the parameters.
 
 IterativeEventTimeExtractor ()
 Add the subfindlet as listener.
 
void apply (std::vector< RecoTrack * > &recoTracks) override final
 Timing extraction for this findlet.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override
 Expose the parameters.
 
void import_sectors_standard ()
 dummy comment: import_sectors_standard
 
void import_clusters_standard ()
 dummy comment: import_clusters_standard
 
void import_sectors_loop ()
 Documentation Comment Jakob Lettenbichler: this was written by a student and will be removed after finishing redesign of VXDTF. More...
 
void import_clusters_loop ()
 dummy comment: import_clusters_loop
 
void import_hit_standard ()
 dummy comment: import_hit_standard
 
void import_hit_loop ()
 dummy comment: import_hit_loop
 
void import_cell_standard ()
 dummy comment: import_cell_standard
 
void import_cell_loop ()
 dummy comment: import_cell_loop
 
void import_tfc_standard ()
 dummy comment: import_tfc_standard
 
void import_tfc_loop ()
 dummy comment: import_tfc_loop
 
void getAllCells ()
 Output of all interesting Information of Cells.
 
void getAllHits ()
 Output of all interesting Information of Hits.
 
void getAllClusters ()
 Output of all interesting Information of Clusters.
 
void getAllTC ()
 Output of all interesting Information of TC.
 
void getAllSectors ()
 Output of all interesting Information of Sectors.
 
 VariableTBranch (TTree *tree)
 Add to the TTree. More...
 
void calculateDecorrMatrix (std::array< std::vector< double >, Ndims > inputData, bool normalise=true)
 calculate the transformation matrix that when applied to the input data yields linearly uncorrelated data. More...
 
std::vector< double > decorrelate (const std::vector< double > &inputVec) const
 "decorrelate" one measurement (i.e. More...
 
std::vector< double > decorrelate (const std::array< double, Ndims > &inputs) const
 "decorrelate" one measurement (i.e. More...
 
std::array< std::vector< double >, Ndims > decorrelate (const std::array< std::vector< double >, Ndims > &inputMat) const
 decorrelate M measurements (i.e. More...
 
std::string print () const
 print the matrix to a string. More...
 
bool readFromStream (std::istream &is)
 read from stream. More...
 
double analyze (const std::array< double, Ndims > &hits) const
 calculate the output of the FastBDT. More...
 
virtual std::vector< genfit::MeasurementOnPlane * > constructMeasurementsOnPlane (const genfit::StateOnPlane &state) const override
 Construct the measurement on the plane set in the parent element. More...
 
const TMatrixD & getMatrix () const override
 Return the underlying matrix.
 
TVectorD Hv (const TVectorD &v) const override
 Calculate H * v = v_0.
 
TMatrixD MHt (const TMatrixDSym &M) const override
 Calculate M * H^T = first column of M.
 
TMatrixD MHt (const TMatrixD &M) const override
 Calculate M * H^T = first column of M.
 
void HMHt (TMatrixDSym &M) const override
 Calculate H * M * H^T = M_00.
 
virtual void Print (const Option_t *="") const override
 Print a symbol for the matrix for debugging.
 

Variables

constexpr static char const *const cdcfromEclPathTruthVarNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const cdcPathBasicVarNames []
 Names of the variables to be generated.
 
constexpr static char const *const cdcPathTruthVarNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const cdcfromEclStateTruthVarNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const cdcStateBasicVarNames []
 Names of the variables to be generated.
 
constexpr static char const *const cdcStateTruthVarNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const pxdResultTruthNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const pxdResultVarNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const pxdStateBasicVarNames []
 Names of the variables to be generated.
 
constexpr static char const *const pxdStateTruthVarNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const relationSVDResultVarNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const svdResultTruthNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const svdResultVarNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const svdStateBasicVarNames []
 Names of the variables to be generated.
 
constexpr static char const *const svdStateTruthVarNames []
 Names of the variables to be generated. More...
 
constexpr static char const *const svdStateVarNames []
 Names of the variables to be generated.
 
struct {
secans
 function object that implements cosecans(x) == 1/cos(x) by tan(x) / sin(x). More...
 
struct {
sinHalf
 function object that implements sin(i/2). More...
 
static VectorType s_origin = VectorType(0, 0, 0)
 stores the origin used for some calculations, can be set here More...
 
static bool m_storeRefTCDataForTestTC = false
 if true, for testTC the values of attached refTC will be stored instead of own values. More...
 
static DataType s_MagneticFieldFactor
 is factor containing speed of light (c), the magnetic field (b) and the scaling factor s for conversion of meter in cm : c*b/100 = c*b*s. More...
 

Detailed Description

Macro Definition Documentation

◆ SELECTION_VARIABLE

#define SELECTION_VARIABLE (   variableName,
  nArgs,
  argumentType,
  implementation 
)
Value:
class variableName: \
public SelectionVariable< argumentType , nArgs, double > \
{ \
public: \
static const std::string name(void) {return #variableName; }; \
implementation \
}; \

Template to define a selection-variable class.

Definition at line 113 of file SelectionVariable.h.

Typedef Documentation

◆ CDCBaseMeasurementCreator

Needed for templating.

Standard base class for CDC measurement creators.

Definition at line 85 of file BaseMeasurementCreatorFromHit.h.

◆ CDCCoordinateMeasurementCreator

Needed for templating.

Hit to reco hit measurement creator for the CDC.

Definition at line 46 of file CoordinateMeasurementCreator.h.

Enumeration Type Documentation

◆ VolTypes

enum VolTypes

Enumeration for G4VPhysicalVolume sensitive-volume categories.

Enumerator
VOLTYPE_CDC 

CDC.

VOLTYPE_TOP1 

TOP container.

VOLTYPE_TOP2 

TOP quartz.

VOLTYPE_TOP3 

TOP glue.

VOLTYPE_ARICH1 

ARICH aerogel.

VOLTYPE_ARICH2 

ARICH Img plate.

VOLTYPE_ARICH3 

ARICH HAPD window.

VOLTYPE_ECL 

ECL.

VOLTYPE_BKLM1 

BKLM RPC.

VOLTYPE_BKLM2 

BKLM scintillator.

VOLTYPE_EKLM 

EKLM.

Definition at line 65 of file TrackExtrapolateG4e.h.

65  {
88  };

Function Documentation

◆ analyze()

double analyze ( const std::array< double, Ndims > &  hits) const

calculate the output of the FastBDT.

At the moment fixed to 3 hits

Definition at line 102 of file FBDTClassifier.h.

103  {
104  std::vector<double> positions = m_decorrMat.decorrelate(hits);
105 
106  std::vector<unsigned> bins(Ndims);
107  for (size_t i = 0; i < Ndims; ++i) {
108  bins[i] = m_featBins[i].ValueToBin(positions[i]);
109  }
110 
111  return m_forest.Analyse(bins);
112  }

◆ AnalyzingAlgorithmFactoryDouble()

AnalyzingAlgorithmBase<DataType, TCInfoType, VectorType>* Belle2::AnalyzingAlgorithmFactoryDouble ( AlgoritmType::Type  algorithmID)

the analyzingAlgorithm factory for algorithms returning one double for each TC passed:

returns the algorithm matching the given ID.

residuals

values of single entries

Definition at line 44 of file AnalyzingAlgorithmFactory.h.

46  { return new AnalyzingAlgorithmResidualPY<DataType, TCInfoType, VectorType>(); }
47 
48  if (algorithmID == AnalyzingAlgorithmResidualPZ<DataType, TCInfoType, VectorType>())
49  { return new AnalyzingAlgorithmResidualPZ<DataType, TCInfoType, VectorType>(); }
50 
51  if (algorithmID == AnalyzingAlgorithmResidualPT<DataType, TCInfoType, VectorType>())
52  { return new AnalyzingAlgorithmResidualPT<DataType, TCInfoType, VectorType>(); }
53 
54  if (algorithmID == AnalyzingAlgorithmResidualP<DataType, TCInfoType, VectorType>())
55  { return new AnalyzingAlgorithmResidualP<DataType, TCInfoType, VectorType>(); }
56 
57  if (algorithmID == AnalyzingAlgorithmResidualPTheta<DataType, TCInfoType, VectorType>())
58  { return new AnalyzingAlgorithmResidualPTheta<DataType, TCInfoType, VectorType>(); }
59 
60  if (algorithmID == AnalyzingAlgorithmResidualPPhi<DataType, TCInfoType, VectorType>())
61  { return new AnalyzingAlgorithmResidualPPhi<DataType, TCInfoType, VectorType>(); }
62 
63  if (algorithmID == AnalyzingAlgorithmResidualPAngle<DataType, TCInfoType, VectorType>())
64  { return new AnalyzingAlgorithmResidualPAngle<DataType, TCInfoType, VectorType>(); }
65 
66  if (algorithmID == AnalyzingAlgorithmResidualPTAngle<DataType, TCInfoType, VectorType>())
67  { return new AnalyzingAlgorithmResidualPTAngle<DataType, TCInfoType, VectorType>(); }
68 
69  if (algorithmID == AnalyzingAlgorithmResidualPosition<DataType, TCInfoType, VectorType>())
70  { return new AnalyzingAlgorithmResidualPosition<DataType, TCInfoType, VectorType>(); }
71 
72  if (algorithmID == AnalyzingAlgorithmResidualPositionXY<DataType, TCInfoType, VectorType>())
73  { return new AnalyzingAlgorithmResidualPositionXY<DataType, TCInfoType, VectorType>(); }
74 
75 
77  if (algorithmID == AnalyzingAlgorithmValuePX<DataType, TCInfoType, VectorType>())
78  { return new AnalyzingAlgorithmValuePX<DataType, TCInfoType, VectorType>(); }
79 
80  if (algorithmID == AnalyzingAlgorithmValuePY<DataType, TCInfoType, VectorType>())
81  { return new AnalyzingAlgorithmValuePY<DataType, TCInfoType, VectorType>(); }
82 
83  if (algorithmID == AnalyzingAlgorithmValuePZ<DataType, TCInfoType, VectorType>())
84  { return new AnalyzingAlgorithmValuePZ<DataType, TCInfoType, VectorType>(); }
85 
86  if (algorithmID == AnalyzingAlgorithmValuePT<DataType, TCInfoType, VectorType>())
87  { return new AnalyzingAlgorithmValuePT<DataType, TCInfoType, VectorType>(); }
88 
89  if (algorithmID == AnalyzingAlgorithmValueP<DataType, TCInfoType, VectorType>())
90  { return new AnalyzingAlgorithmValueP<DataType, TCInfoType, VectorType>(); }
91 
92  if (algorithmID == AnalyzingAlgorithmValuePTheta<DataType, TCInfoType, VectorType>())
93  { return new AnalyzingAlgorithmValuePTheta<DataType, TCInfoType, VectorType>(); }
94 
95  if (algorithmID == AnalyzingAlgorithmValuePPhi<DataType, TCInfoType, VectorType>())
96  { return new AnalyzingAlgorithmValuePPhi<DataType, TCInfoType, VectorType>(); }
97 
98  if (algorithmID == AnalyzingAlgorithmValueDistSeed2IP<DataType, TCInfoType, VectorType>())
99  { return new AnalyzingAlgorithmValueDistSeed2IP<DataType, TCInfoType, VectorType>(); }
100 
101  if (algorithmID == AnalyzingAlgorithmValueDistSeed2IPXY<DataType, TCInfoType, VectorType>())
102  { return new AnalyzingAlgorithmValueDistSeed2IPXY<DataType, TCInfoType, VectorType>(); }
103 
104  if (algorithmID == AnalyzingAlgorithmValueDistSeed2IPZ<DataType, TCInfoType, VectorType>())
105  { return new AnalyzingAlgorithmValueDistSeed2IPZ<DataType, TCInfoType, VectorType>(); }
106 
107  if (algorithmID == AnalyzingAlgorithmValueQI<DataType, TCInfoType, VectorType>())
108  { return new AnalyzingAlgorithmValueQI<DataType, TCInfoType, VectorType>(); }
109 
110  if (!AlgoritmType::isValueDoubleType(algorithmID)
111  and !AlgoritmType::isResidualDoubleType(algorithmID)
112  and (AlgoritmType::isHitValueVecDoubleType(algorithmID)
113  or AlgoritmType::isHitValueIntType(algorithmID))) {
114  B2WARNING(" AnalyzingAlgorithmFactoryDouble: given algorithmID " << AlgoritmType::getTypeName(algorithmID) <<
115  " is no algorithm of double type but of another (valid) category. Please use the correct factory for your purpose. Returning non-functioning base-class instead!");
116  } else {
117  B2ERROR(" AnalyzingAlgorithmFactoryDouble: given algorithmID " << AlgoritmType::getTypeName(algorithmID) <<
118  " is not known, returning non-functioning base-class instead!");
119  }
120 
121  return new AnalyzingAlgorithmBase<DataType, TCInfoType, VectorType>();
122  }
123 
124 
125 
130  template <class DataType, class TCInfoType, class VectorType>

◆ AnalyzingAlgorithmFactoryInt()

AnalyzingAlgorithmBase<DataType, TCInfoType, VectorType>* Belle2::AnalyzingAlgorithmFactoryInt ( AlgoritmType::Type  algorithmID)

the analyzingAlgorithm factory for algorithms returning one int for each TC passed:

returns the algorithm matching the given ID.

residuals

Definition at line 139 of file AnalyzingAlgorithmFactory.h.

◆ AnalyzingAlgorithmFactoryVecDouble()

AnalyzingAlgorithmBase<DataType, TCInfoType, VectorType>* Belle2::AnalyzingAlgorithmFactoryVecDouble ( AlgoritmType::Type  algorithmID)

the analyzingAlgorithm factory for algorithms returning one vector< double> for each TC passed:

returns the algorithm matching the given ID.

residuals

Definition at line 178 of file AnalyzingAlgorithmFactory.h.

◆ apply() [1/3]

void apply ( const std::vector< AnObject * > &  objects,
std::vector< AState > &  states 
)
override

Add new states to the list of states using all given objects.

Findlet for tagging all space points in the results vector as used.

Definition at line 29 of file StateCreator.icc.h.

◆ apply() [2/3]

void apply ( const std::vector< AState > &  seededStates,
std::vector< AState > &  hitStates,
const std::vector< TrackFindingCDC::WeightedRelation< AState >> &  relations,
std::vector< AResult > &  results 
)
final

Main function of this findlet: traverse a tree starting from a given seed states.

ATTENTION: As described above, the states themselves can be altered during the tree traversal.

Definition at line 52 of file TreeSearcher.icc.h.

57  : seededStates) {
58  B2DEBUG(50, "Starting with new seed...");
59 
60  path.emplace_back(&state, 0);
61  traverseTree(path, relations, results);
62  path.pop_back();
63  B2ASSERT("Something went wrong during the path traversal", path.empty());
64 
65  B2DEBUG(50, "... finished with seed");
66  }
67  }
68 
69  template <class AState, class AStateRejecter, class AResult>
70  void TreeSearcher<AState, AStateRejecter, AResult>::traverseTree(std::vector<TrackFindingCDC::WithWeight<const AState*>>& path,
71  const std::vector<TrackFindingCDC::WeightedRelation<AState>>& relations,
72  std::vector<AResult>& results)
73  {
74  if (m_param_endEarly) {
75  // Make it possible to end earlier (with less hits)

◆ apply() [3/3]

void apply ( std::vector< AResult > &  results)
override

Load in the reco tracks and the hits.

Store the reco tracks and the relations.

Definition at line 74 of file ResultStorer.icc.h.

82  {
83  continue;
84  }
85  seed->addRelationTo(newRecoTrack, m_param_writeOutDirection);
86  }
87  }
89 }

◆ arcLengthInRightDirection()

constexpr bool Belle2::arcLengthInRightDirection ( double  arcLength2D,
TrackFindingCDC::EForwardBackward  forwardBackward 
)
inlineconstexpr

Given the calculated arc length between a start point and an end point, checks if the travelled path is along the given direction or not.

If the arc length distance is negative, the end point has a higher arc length value than the start point meaning it is farther away -> the travelled distance is forward. If the arc length distance is positive, it is backward.

If it is 0 or the direction is unknown, true is always returned.

Definition at line 40 of file SearchDirection.h.

40  {
41  return TrackFindingCDC::EForwardBackward::c_Forward;
42  } else if (directionString == "backward" or directionString == "below" or directionString == "before") {
43  return TrackFindingCDC::EForwardBackward::c_Backward;

◆ breaks2intervalsSep() [1/2]

vector<map<ExpRun, pair<double, double> > > Belle2::breaks2intervalsSep ( const std::map< ExpRun, std::pair< double, double >> &  runsMap,
const std::vector< Atom > &  currVec,
const std::vector< int > &  breaks 
)

Get calibration intervals according to the indexes of the breaks.

Parameters
runsMapmap defining the time ranges of the runs
currVecvector with time intervals of the atoms (small non-divisible time intervals)
breaksvector with integer indexes of the breaks
Returns
: a vector of the calib. intervals where each interval is a map with exp-run as a key and start- end-time as a value

Definition at line 280 of file Splitter.cc.

282  {
283  vector<map<ExpRun, pair<double, double>>> splitsNow(breaks.size() + 1);
284  for (int i = 0; i < int(breaks.size()) + 1; ++i) {
285  int s, e;
286  tie(s, e) = getStartEndIndexes(currVec.size(), breaks, i);
287 
288  // loop over atoms in single calib interval
289  for (int k = s; k <= e; ++k) {
290  ExpRun r = getRun(runsMap, (currVec[k].t1 + currVec[k].t2) / 2.); //runexp of the atom
291  if (splitsNow[i].count(r)) { //if already there
292  splitsNow[i].at(r).first = min(splitsNow[i].at(r).first, currVec[k].t1);
293  splitsNow[i].at(r).second = max(splitsNow[i].at(r).second, currVec[k].t2);
294  } else { //if new
295  splitsNow[i][r].first = currVec[k].t1;
296  splitsNow[i][r].second = currVec[k].t2;
297  }
298  }
299  }
300 
301  return splitsNow;
302  }

◆ breaks2intervalsSep() [2/2]

std::vector<std::map<ExpRun, std::pair<double, double> > > Belle2::breaks2intervalsSep ( const std::map< ExpRun, std::pair< double, double >> &  runsMap,
const std::vector< Atom > &  currVec,
const std::vector< int > &  breaks 
)

Get calibration intervals according to the indexes of the breaks.

Parameters
runsMapmap defining the time ranges of the runs
currVecvector with time intervals of the atoms (small non-divisible time intervals)
breaksvector with integer indexes of the breaks
Returns
: a vector of the calib. intervals where each interval is a map with exp-run as a key and start- end-time as a value

Definition at line 280 of file Splitter.cc.

◆ calcCurvatureSignum()

short Belle2::calcCurvatureSignum ( std::vector< SpacePoint const * > const &  measurements)
inline

Calculate curvature based on triplets of measurements.

Ignores uncertainties. Returns -1,0,1 depending on the sum of all triplets.

Definition at line 32 of file CalcCurvatureSignum.h.

◆ calculateCovMatrix()

const Eigen::Matrix<double, Ndims, Ndims, Eigen::RowMajor> Belle2::calculateCovMatrix ( std::array< std::vector< double >, Ndims >  inputData)

calculates the empirical covariance matrix from the inputData.

Parameters
inputDatadata "matrix", where each vector represents a column in the n x Ndims matrix, where n is the number of samples in the input data.

NOTE: if the input does not consist of an array of same-length vectors an error message is issued and the Ndims x Ndims identity matrix is returned.

Implements the calculation of the empirical covariance matrix: $\frac{1}{n} \sum_{i=1}^n (y_i - \bar{y})^T(y_i - \bar{y})$, where $ \bar{y}_i = \sum_{j=1}^n x_{ij}$ is the mean (row) vector containing the mean value of every "feature" in the data. Every (random) vector $y_i$ is a row vector containing one measurement.

Definition at line 47 of file DecorrelationMatrixHelper.h.

48  {
49  if (inputData[i].size() != nSamples) {
50  B2ERROR("The input data is no MxN matrix, cannot calculate covariance matrix! Returning identity");
51  return Eigen::Matrix<double, Ndims, Ndims, Eigen::RowMajor>::Identity();
52  }
53  }
54 
55  // calculate the mean of every column and store them in a row vector
56  RVector meanVector{};
57  for (size_t i = 0; i < Ndims; ++i) {
58  meanVector(i) = std::accumulate(inputData[i].begin(), inputData[i].end(), 0.0) / inputData[i].size();
59  }
60 
61  // map the data to a more easily accessible Eigen::Matrix where each row is one measurement (consisting of Ndims values)
62  DMatrix dataMatrix(nSamples, Ndims);
63  for (size_t i = 0; i < Ndims; ++i) {
64  dataMatrix.col(i) = Eigen::Map<const DVector>(inputData[i].data(), inputData[i].size());
65  }
66 
67  // define a matrix where each row holds the mean vector to be able to substract the mean value from each column directly
68  DMatrix meanMatrix(nSamples, Ndims);
69  for (size_t i = 0; i < Ndims; ++i) {
70  meanMatrix.col(i) = DVector::Ones(nSamples) * meanVector(i);
71  }
72 
73  // calculate the cov matrix as product of dataMatrix reduced by meanValues in order to (hopefully) utilize Eigens optimizations
74  // COULDDO: test if this can be accelerated by splitting the process in smaller matrices
75  return (dataMatrix - meanMatrix).transpose() * (dataMatrix - meanMatrix) / (nSamples);
76  }
77 
79 } // end namespace

◆ calculateDecorrMatrix()

void calculateDecorrMatrix ( std::array< std::vector< double >, Ndims >  inputData,
bool  normalise = true 
)

calculate the transformation matrix that when applied to the input data yields linearly uncorrelated data.

Parameters
inputDatainput data, where each vector represents a column in the MxNdims matrix, where M is the number of samples in in the input data
normaliseif set to true the covariance matrix of the transformed data will be identity, else it will only be diagonal

Definition at line 108 of file DecorrelationMatrix.h.

112  {

◆ constructMeasurementsOnPlane()

std::vector< genfit::MeasurementOnPlane * > constructMeasurementsOnPlane ( const genfit::StateOnPlane state) const
overridevirtual

Construct the measurement on the plane set in the parent element.

Do the job: construct a measurement based on the estimator chosen by the parameters.

TODO: Implement better error handling and a smarter cut.

Reimplemented from PlanarMeasurement.

Definition at line 132 of file PlanarVXDMomentumMeasurement.h.

151  {
152  mcMomentum = trackMomentum;
153  mcPostion = trackPosition;
154  mcCharge = trackCharge;
155  } else {
156  mcMomentum = relatedMCParticle->getMomentum();
157  mcPostion = relatedMCParticle->getProductionVertex();
158  mcCharge = relatedMCParticle->getCharge();
159  }
160 
161  // Copy information from the mc hit
162  const TVector3& hitMCMomentum = momentumEstimationTools.getEntryMomentumOfMCParticle(*m_hit);
163  const TVector3& hitMCPosition = momentumEstimationTools.getEntryPositionOfMCParticle(*m_hit);
164 
165 
166  if (m_useThickness) {
167  rawHitCoordinates(0) = momentumEstimator.estimateQOverPWithThickness(*m_hit, stateCharge, m_fitParameters,
169  } else {
170  if (m_useTrackingSeeds) {
171  if (m_useMCInformation) {
172  rawHitCoordinates(0) = momentumEstimator.estimateQOverP(*m_hit, mcMomentum, mcPostion, mcCharge,
175 
176  } else {
177  rawHitCoordinates(0) = momentumEstimator.estimateQOverP(*m_hit, trackMomentum, trackPosition, trackCharge,
180  }
181  } else {
182  if (m_useMCInformation) {
183  rawHitCoordinates(0) = momentumEstimator.estimateQOverP(*m_hit, hitMCMomentum, hitMCPosition, stateCharge,
186  } else {
187  rawHitCoordinates(0) = momentumEstimator.estimateQOverP(*m_hit, stateMomentum, statePosition, stateCharge,
190  }
191  }
192  }
193 
194  rawHitCovariance(0, 0) = m_sigma;
195 
196  genfit::MeasurementOnPlane* mop = new genfit::MeasurementOnPlane(rawHitCoordinates, rawHitCovariance,
197  state.getPlane(), state.getRep(), constructHMatrix(state.getRep()));
198  return {mop};
199  }
200 
202  template<>
204 
206  template<>

◆ convertSplitPoints()

std::vector<ExpRunEvt> Belle2::convertSplitPoints ( const std::vector< Evt > &  events,
std::vector< double >  splitPoints 
)

Convert splitPoints [hours] to breakPoints in ExpRunEvt.

Parameters
eventsvector of events
splitPointsthe vector containing times of the edges of the calibration intervals [hours]
Returns
a vector with calibration break-points in the exp-run-evt format

Definition at line 366 of file Splitter.h.

367  {
368 
369  std::vector<ExpRunEvt> breakPos;
370  for (auto p : splitPoints) {
371  auto pos = getPosition(events, p);
372  breakPos.push_back(pos);
373  }
374  return breakPos;
375  }

◆ createMap()

i2dMap Belle2::createMap ( int  nEntries,
Functor  funct 
)

create a multimap with

Parameters
nEntriesentries.
functFunction object which values are used to determine the keys by the return value of funct.operator() NOTE: funct.operator has to take an int and return a double

Definition at line 54 of file mapHelperFunctions.cc.

55  {
56  i2dMap map;
57  for (int i = 0; i < nEntries; ++i) {
58  map.insert(std::make_pair(i, funct.operator()(i)));
59  }
60  return map;
61  }

◆ createMultiMap()

i2dMultiMap Belle2::createMultiMap ( int  nEntries,
Functor  funct 
)

create a multimap with

Parameters
nEntriesentries.
functFunction object which values are used to determine the keys by the return value of funct.operator() NOTE: funct.operator has to take an int and return a double

Definition at line 39 of file mapHelperFunctions.cc.

◆ createPurityInfos() [1/2]

static std::vector<Belle2::MCVXDPurityInfo> Belle2::createPurityInfos ( const SPContainer &  container)
static
  • create a vector of MCVXDPurityInfos objects for any given container holding SpacePoints and providing a getHits() method each MCParticle that is in the container gets its own object NOTE: negative MCParticleIds are possible und used as follows:
  • -1 -> there was a TrueHit (i.e. Cluster) related to a SpacePoint in the container that did not have relation to a MCParticle
  • -2 -> there was a SpacePoint with a Cluster that was not related to a TrueHit (noise Cluster)
    Returns
    sorted vector of MCVXDPurityInfo (sorted by overall purity)
    wrapper taking a const reference instead of a const pointer for use in e.g. C++11 for loops

Definition at line 228 of file PurityCalculatorTools.h.

◆ createPurityInfos() [2/2]

static std::vector<Belle2::MCVXDPurityInfo> Belle2::createPurityInfos ( const SPContainer *  container)
static

create a vector of MCVXDPurityInfos objects for any given container holding SpacePoints and providing a getHits() method each MCParticle that is in the container gets its own object NOTE: negative MCParticleIds are possible und used as follows:

Definition at line 212 of file PurityCalculatorTools.h.

◆ createPurityInfosVec()

static std::vector<Belle2::MCVXDPurityInfo> Belle2::createPurityInfosVec ( const std::vector< const Belle2::SpacePoint * > &  spacePoints)
static

create a vector of MCVXDPurityInfos objects for a std::vector<Belle2::SpacePoints>.

each MCParticle that is in the vector gets its own object NOTE: negative MCParticleIds are possible and used as follows:

Definition at line 159 of file PurityCalculatorTools.h.

◆ decorrelate() [1/3]

std::vector< double > decorrelate ( const std::array< double, Ndims > &  inputs) const

"decorrelate" one measurement (i.e.

apply the transformation that has previously been determined).

Definition at line 142 of file DecorrelationMatrix.h.

◆ decorrelate() [2/3]

std::array< std::vector< double >, Ndims > decorrelate ( const std::array< std::vector< double >, Ndims > &  inputMat) const

decorrelate M measurements (i.e.

apply the transformation that has previously been determined). NOTE: the transformation has to be calculated prior to the call of this function!

Definition at line 149 of file DecorrelationMatrix.h.

◆ decorrelate() [3/3]

std::vector< double > decorrelate ( const std::vector< double > &  inputVec) const

"decorrelate" one measurement (i.e.

apply the transformation that has previously been determined).

Definition at line 131 of file DecorrelationMatrix.h.

◆ dynamicBreaks()

vector< int > dynamicBreaks ( const std::vector< Atom > &  runs)
private

Get optimal break points using algorithm based on dynamic programing.

Parameters
runsVector of atoms, where each atom is an intervals in time
Returns
: Optimal indexes of the break points

Definition at line 241 of file Splitter.cc.

◆ encodeNumber()

double Belle2::encodeNumber ( double  val,
unsigned  num 
)
inline

Encode integer num into double val such that val is nearly not changed (maximally by a relative shift 1e-6).

It is use to store time information to the payloads

Definition at line 191 of file calibTools.h.

194  {
195  mantisaI = factor / 2 + num;
196  e = -100; //if the val is zero, ensure very small number by the exponent
197  }
198 
199  double newVal = ldexp(mantisaI / factor, e);
200 
201  return newVal;
202  }
203 
205  inline unsigned decodeNumber(double val)
206  {
207  double factor = pow(FLT_RADIX, DBL_MANT_DIG);
208  static const long long fEnc = pow(2, 32); //32 binary digits for encoded number
209 
210  int e;

◆ exposeParameters()

void exposeParameters ( ModuleParamList moduleParamList,
const std::string &  prefix 
)
overridevirtual

Expose the set of parameters of the filter to the module parameter list.

Note that not all filters have yet exposed their parameters in this way.

This method is deprecated as the exposeParams below uses a less compile heavy equivalent.

Reimplemented from Filter< Relation< CKFToPXDState > >.

Definition at line 118 of file LayerPXDRelationFilter.icc.h.

121  {
122  return m_filter(std::make_pair(&from, &to));
123  }
125 }

◆ findWeightInVector()

static bool Belle2::findWeightInVector ( std::vector< std::pair< int, double > > &  vec,
double  weight 
)
static

find the given weight in the given vector of pair<int,double> NOTE: the criteria for finding are rather loose (i.e.

actual value and desired value must not differ by more than 1e-4) as the values that are encountered lie rather far apart!

Definition at line 49 of file PurityCalculatorTools.h.

◆ getAllValues()

std::vector<typename MapType::mapped_type> Belle2::getAllValues ( const MapType &  aMap)

get all values in the map (i.e.

dump out all values that are stored in the map). The connection to the keys is lost! TODO: write test for this!!!!

Definition at line 143 of file MapHelperFunctions.h.

144  : keyValues) {
145  allValues.push_back(value);
146  }
147  }
148 
149  return allValues;
150  }
151 
155  template <typename MapType>
156  std::string printMap(const MapType& aMap)
157  {
158  if (aMap.empty()) return std::string("passed map is empty!");

◆ getMCParticles()

static std::vector<std::pair<int, double> > Belle2::getMCParticles ( const Belle2::SpacePoint spacePoint)
static

get the related MCParticles to the TrueHit.

Returns
vector of pairs, where .first is the MCParticleId, which is -1 if there was no MCParticle related to a TrueHit and -2 if there is a Cluster without a relation to a TrueHit (probably a noise Cluster then) .second is the relation weight between SpacePoint and TrueHit (encodes additional information that is needed afterwards)

Definition at line 65 of file PurityCalculatorTools.h.

◆ getMinLoss()

double getMinLoss ( const std::vector< Atom > &  vec,
int  e,
std::vector< int > &  breaks 
)
private

Recursive function to evaluate minimal sum of the lossFuctions for the optimal clustering.

It return the minimum of the lossFunction and optimal break points giving such value. It acts only on atoms with indexes between 0 and e

Parameters
vecVector of atoms, where each atom is an intervals in time
ethe index of the last atom included in the optimisation problem
[out]breaksOutput vector with indexes of optimal break points
Returns
: Minimal value of the summed loss function

Definition at line 204 of file Splitter.cc.

◆ getNValuesPerKey()

std::vector<std::pair<typename MapType::key_type, unsigned int> > Belle2::getNValuesPerKey ( const MapType &  aMap)

get the unique keys of a map together with the number of values associated to each key.

first elements are keys, second are number of values NOTE: for a non-multimap this returns all keys with a .second of 1!

Definition at line 68 of file MapHelperFunctions.h.

◆ getPosition()

ExpRunEvt Belle2::getPosition ( const std::vector< Evt > &  events,
double  tEdge 
)
inline

Get the exp-run-evt number from the event time [hours].

Parameters
eventsvector of events
tEdgethe event time of the event of interest [hours]
Returns
the position of the time point in the exp-run-evt format

Definition at line 344 of file Splitter.h.

◆ getRun()

static ExpRun Belle2::getRun ( map< ExpRun, pair< double, double >>  runs,
double  t 
)
static

Get exp number + run number from time.

Parameters
runsmap, where key contain the exp-run number and value the start- and end-time of the run
ttime of interest [hours]
Returns
: the exp-run number at the input time t

Definition at line 262 of file Splitter.cc.

◆ getRunInfo()

std::map<ExpRun, std::pair<double, double> > Belle2::getRunInfo ( const std::vector< Evt > &  evts)
inline

Get the map of runs, where each run contains pair with start/end time [hours].

Parameters
evtsvector of events
Returns
a map where the key is exp-run and value start/end time of the particular run [hours]

Definition at line 315 of file Splitter.h.

◆ getSortedKeyValueTuples()

std::vector<std::tuple<typename MapType::key_type, typename MapType::mapped_type, unsigned int> > Belle2::getSortedKeyValueTuples ( const MapType &  aMap)

get the (key, value, number of values) tuples stored in the map, sorted after the following scheme (descending order) 1) the number of associated values to one key 2) the sum of the associated values to that key NOTE: for a non-multimap this returns the content of the map ordered by valued CAUTION: if one of the values to a key is NaN this key will be the first (of the ones with the same number of associated values)

Returns
a vector of tuples where get<0> is the key, get<1> is the sum of the values to the key and get<2> is the number of values to the key

Definition at line 112 of file MapHelperFunctions.h.

◆ getUniqueKeys()

std::vector<typename MapType::key_type> Belle2::getUniqueKeys ( const MapType &  aMap)

get the unique keys of a map (i.e.

if no multimap is passed all keys are returned) NOTE: for this to work the keys have to have a defined operator < () as std::sort is used! NOTE: as a side effect the keys are returned sorted!

Definition at line 42 of file MapHelperFunctions.h.

◆ import_sectors_loop()

void import_sectors_loop ( )

Documentation Comment Jakob Lettenbichler: this was written by a student and will be removed after finishing redesign of VXDTF.

Therefore some documentation-entries are not very useful - all of them are marked with "dummy comment". dummy comment: import_sectors_loop

Definition at line 147 of file collectortfinfo.h.

148  {
149  // Create Test Sector
150  std::map<unsigned int, std::vector<int>> sector_map;
151  uint size_of_sectors = 10;
152 
153  for (uint i = 0; i < size_of_sectors; i++) {
154  sector_map.insert(std::make_pair(i, std::vector<int>()));
155  }
156 
157  // 1. Sectors init
158  //KeySectors dosn't function => so pair Int int
159  std::map<std::pair<unsigned int, unsigned int>, std::vector<int>> sectors_display_all_pass;
160  std::vector<int> sectors_display_friends;
161 
162  for (uint i = 0; i < pass_sector_ids.size(); i++) {
163 
164  B2DEBUG(1, "PassNr. " << i << "Size of Sector Map: " << sector_map.size());
165 
166  for (auto& akt_sector : sector_map) {
167  sectors_display_friends.clear();
168 
169  // Friends read and store in second vector
170  for (auto& akt_friend : akt_sector.second) {
171  sectors_display_friends.push_back(akt_friend);
172  }
173  sectors_display_all_pass.insert(std::make_pair(std::make_pair(i, akt_sector.first), sectors_display_friends));
174  }
175  }
176  m_collector.initPersistent();
177  m_collector.intEvent();
178  // m_collector.initSectors (sectors_display_all_pass, std::vector<double>(), std::vector<double>());
179  }

◆ initializeObservers() [1/3]

bool Belle2::initializeObservers ( const Belle2::Filter< Variable, RangeType, observer > &  filter,
argsTypes ...  args 
)

Initialize the observer of a RangeType Filter.

Template Parameters
Variable: Filter variable type
RangeType: range type
observer: observer type to be used
argsTypes: argument types of the filter
Parameters
filter: Filter for which the observer shall be initialized
args: arguments of the filter
Returns
boolean to indicate if the observer has been initialized

Definition at line 995 of file Filter.h.

◆ initializeObservers() [2/3]

bool Belle2::initializeObservers ( const Filter< booleanBinaryOperator, Belle2::Filter< types1... >, Belle2::Filter< types2... >, observer > &  ,
argsTypes ...  args 
)

Observer Stuff ///.

Recursive function to initialize all the observers in a binary boolean Filter.

Template Parameters
booleanBinaryOperator: Tag Class to identify the Filter operator
types1: template pack of a filter
types2: template pack of another filter
observer: observer type to be used
argsTypes: argument types of the filter
Parameters
args: arguments of the filter
Returns
boolean to indicate if the observer has been initialized

Definition at line 957 of file Filter.h.

◆ initializeObservers() [3/3]

bool Belle2::initializeObservers ( const Filter< booleanUnaryOperator, Belle2::Filter< types1... >, observer > &  ,
argsTypes ...  args 
)

Recursive function to initialize all the observers in a unary boolean Filter.

Template Parameters
booleanUnaryOperator: Tag Class to identify the Filter operator
types1: template pack of the filter
observer: observer type to be used
argsTypes: argument types of the filter
Parameters
args: arguments of the filter
Returns
boolean to indicate if the observer has been initialized

Definition at line 979 of file Filter.h.

◆ lossFunction()

double lossFunction ( const std::vector< Atom > &  vec,
int  s,
int  e 
) const
private

lossFunction of the calibration interval consisting of several "atoms" stored in vector vec The atoms included in calibration interval have indices between s and e

the lossFunction formula (it can be modified according to the user's taste)

Parameters
vecVector of atoms, where each atom is an intervals in time
sFirst index of the calib. interval
eLast index of the calib. interval
Returns
: A value of the loss function

Definition at line 140 of file Splitter.cc.

◆ mergeIntervals()

map< ExpRun, pair< double, double > > mergeIntervals ( std::map< ExpRun, std::pair< double, double >>  I1,
std::map< ExpRun, std::pair< double, double >>  I2 
)
static

Merge two subintervals into one subinterval.

Parameters
I1First subinterval to merge
I2Second subinterval to merge
Returns
: The resulting subinterval

Definition at line 305 of file Splitter.cc.

◆ operator!()

Filter<OperatorNot, Filter<types...>, VoidObserver> Belle2::operator! ( const Filter< types... > &  filter)

Definition of the NOT operator ! for the Filter class.

Template Parameters
types: template pack defining the filter
Parameters
filter: filter to which the NOT operator shall be added
Returns
!filter, so a filter with NOT operator attached

Definition at line 593 of file Filter.h.

◆ operator&&()

Filter<Belle2::OperatorAnd, Belle2::Filter<types1...>, Belle2::Filter<types2...>, Belle2::VoidObserver> Belle2::operator&& ( const Filter< types1... > &  filter1,
const Filter< types2... > &  filter2 
)

Definition of the boolean AND operator && of the Filter class.

Template Parameters
types1: template pack of filter A
types2: template pack of filter B
Parameters
filter1: filter A
filter2: filter B
Returns
Boolean AND combination of the two filters

Definition at line 763 of file Filter.h.

◆ operator()()

TrackFindingCDC::Weight operator() ( const CKFToPXDState from,
const CKFToPXDState to 
)
overridevirtual

Main filter method returning the weight of the neighborhood relation.

Return always returns NAN to reject all segment neighbors.

Reimplemented from RelationFilter< CKFToPXDState >.

Definition at line 128 of file LayerPXDRelationFilter.icc.h.

◆ operator<() [1/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<Arithmetic>::value, Filter<Var, LowerBoundedSet<Arithmetic>, VoidObserver> >::type Belle2::operator< ( Arithmetic  lowerBound,
const Var &   
)

Creates a Filters with an lower bound > on the provided variable lowerBound < Var.

Template Parameters
Var: variable type to use for the filter
Arithmetic: type of the return value of the variable function
Parameters
lowerBound: lower bound value to be checked by the filter
Returns
the created filter

Definition at line 182 of file Shortcuts.h.

182  : variable type to use for the filter
183  * @tparam Arithmetic : type of the return value of the variable function
184  * @param lowerBound : lower bound value to be checked by the filter
185  * @return the created filter

◆ operator<() [2/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<ArithmeticLower>::value && std::is_arithmetic<ArithmeticUpper>::value , Filter<Var, Range<ArithmeticLower, ArithmeticUpper>, Observer > >::type Belle2::operator< ( const Filter< Var, LowerBoundedSet< ArithmeticLower >, Observer > &  filter,
ArithmeticUpper  upperBound 
)

Adding upper bound to filter with lower bound to create a filter with an allowed range between lower and upper bound.

(Var with lowerBound) < upperBound

Template Parameters
Var: variable type to be used for the filter
ArithmeticLower: type of lower bound
ArithmeticUpper: type of upper bound
Observer: observer type
Parameters
filter: filter with lower bound to which the upper bound shall be added
upperBound: value of upper bound
Returns
filter with range allowing values between lower and upper bound

Definition at line 266 of file Shortcuts.h.

◆ operator<() [3/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value&& std::is_arithmetic<Arithmetic>::value, Filter<Var, UpperBoundedSet<Arithmetic>, VoidObserver > >::type Belle2::operator< ( const Var &  ,
Arithmetic  upperBound 
)

Creates a Filters with an upper bound < on the provided variable Var < lowerBound.

Template Parameters
Var: variable type to use for the filter
Arithmetic: type of the return value of the variable function
types: other types
Parameters
upperBound: upper bound value to be checked by the filter
Returns
the created filter

Definition at line 59 of file Shortcuts.h.

◆ operator<=() [1/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<Arithmetic>::value, Filter<Var, ClosedLowerBoundedSet<Arithmetic>, VoidObserver > >::type Belle2::operator<= ( Arithmetic  lowerBound,
const Var &   
)

Creates a Filters with a closed lower bound >= on the provided variable lowerBound <= Var.

Template Parameters
Var: variable type to use for the filter
Arithmetic: type of the return value of the variable function
Parameters
lowerBound: lower bound value to be checked by the filter
Returns
the created filter

Definition at line 202 of file Shortcuts.h.

◆ operator<=() [2/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<ArithmeticLower>::value && std::is_arithmetic<ArithmeticUpper>::value , Filter<Var, ClosedRange<ArithmeticLower, ArithmeticUpper>, Observer > >::type Belle2::operator<= ( const Filter< Var, ClosedLowerBoundedSet< ArithmeticLower >, Observer > &  filter,
ArithmeticUpper  upperBound 
)

Adding closed upper bound to filter with closed lower bound to create a filter with an allowed closed range between lower and upper bound.

(Var with closed lowerBound) <= upperBound

Template Parameters
Var: variable type to be used for the filter
ArithmeticLower: type of lower bound
ArithmeticUpper: type of upper bound
Observer: observer type
Parameters
filter: filter with lower bound to which the upper bound shall be added
upperBound: value of upper bound
Returns
filter with closed range allowing values between lower and upper bound

Definition at line 318 of file Shortcuts.h.

◆ operator<=() [3/3]

std::enable_if< std::is_base_of< SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value&& std::is_arithmetic<Arithmetic>::value, Filter<Var, ClosedUpperBoundedSet<Arithmetic>, VoidObserver> >::type Belle2::operator<= ( const Var &  ,
Arithmetic  upperBound 
)

Creates a Filters with a closed upper bound <= on the provided variable Var <= lowerBound.

Template Parameters
Var: variable type to use for the filter
Arithmetic: type of the return value of the variable function
types: other types
Parameters
upperBound: upper bound value to be checked by the filter
Returns
the created filter

Definition at line 82 of file Shortcuts.h.

◆ operator==() [1/3]

bool Belle2::operator== ( const EntryType &  a,
const DirectedNode< EntryType, MetaInfoType > &  b 
)

************************* NON-MEMBER FUNCTIONS *************************

Non-memberfunction Comparison for equality with EntryType <-> DirectedNode< EntryType >

Definition at line 141 of file DirectedNode.h.

◆ operator==() [2/3]

std::enable_if<std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value, Filter<Var, SingleElementSet<Val>, VoidObserver> >::type Belle2::operator== ( const Var &  ,
Val  v 
)

Creates a Filters to compare a variable against a given value Var == Val;.

Template Parameters
Var: variable type to use for the filter
Val: value type to compare variable against
Parameters
v: value to compare variable against
Returns
the created filter

Definition at line 221 of file Shortcuts.h.

◆ operator==() [3/3]

std::enable_if<std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value, Filter<Var, SingleElementSet<Val>, VoidObserver> >::type Belle2::operator== ( Val  val,
const Var &  var 
)

Creates a Filters to compare a variable against a given value Val == Var;.

Template Parameters
Var: variable type to be used for the filter
Val: value type to compare variable against
Parameters
val: value to compare variable against
var: variable
Returns
the created filter

Definition at line 241 of file Shortcuts.h.

◆ operator>() [1/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<Arithmetic>::value, Filter<Var, UpperBoundedSet<Arithmetic>, VoidObserver> >::type Belle2::operator> ( Arithmetic  upperBound,
const Var &   
)

Creates a Filters with an upper bound < on the provided variable upperBound > Var.

Template Parameters
Var: variable type to use for the filter
Arithmetic: type of the return value of the variable function
Parameters
upperBound: upper bound value to be checked by the filter
Returns
the created filter

Definition at line 142 of file Shortcuts.h.

◆ operator>() [2/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<ArithmeticLower>::value && std::is_arithmetic<ArithmeticUpper>::value , Filter<Var, Range<ArithmeticLower, ArithmeticUpper>, Observer > >::type Belle2::operator> ( const Filter< Var, UpperBoundedSet< ArithmeticUpper >, Observer > &  filter,
ArithmeticLower  lowerBound 
)

Adding lower bound to filter with upper bound to create a filter with an allowed range between lower and upper bound.

(Var with upperBound) > lowerBound

Template Parameters
Var: variable type to be used for the filter
ArithmeticLower: type of lower bound
ArithmeticUpper: type of upper bound
Observer: observer type
Parameters
filter: filter with lower bound to which the upper bound shall be added
lowerBound: value of lower bound
Returns
filter with range allowing values between lower and upper bound

Definition at line 292 of file Shortcuts.h.

◆ operator>() [3/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<Arithmetic>::value, Filter<Var, LowerBoundedSet<Arithmetic>, VoidObserver> >::type Belle2::operator> ( const Var &  ,
Arithmetic  lowerBound 
)

Creates a Filters with an lower bound > on the provided variable Var > lowerBound.

Template Parameters
Var: variable type to use for the filter
Arithmetic: type of the return value of the variable function
Parameters
lowerBound: lower bound value to be checked by the filter
Returns
the created filter

Definition at line 102 of file Shortcuts.h.

◆ operator>=() [1/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<Arithmetic>::value, Filter<Var, ClosedUpperBoundedSet<Arithmetic>, VoidObserver> >::type Belle2::operator>= ( Arithmetic  upperBound,
const Var &   
)

Creates a Filters with a closed upper bound <= on the provided variable upperBound >= Var.

Template Parameters
Var: variable type to use for the filter
Arithmetic: type of the return value of the variable function
Parameters
upperBound: upper bound value to be checked by the filter
Returns
the created filter

Definition at line 162 of file Shortcuts.h.

◆ operator>=() [2/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<ArithmeticLower>::value && std::is_arithmetic<ArithmeticUpper>::value , Filter<Var, ClosedRange<ArithmeticLower, ArithmeticUpper>, Observer > >::type Belle2::operator>= ( const Filter< Var, ClosedUpperBoundedSet< ArithmeticUpper >, Observer > &  filter,
ArithmeticLower  lowerBound 
)

Adding closed lower bound to filter with closed upper bound to create a filter with an allowed closed range between lower and upper bound.

(Var with closed upperBound) >= lowerBound

Template Parameters
Var: variable type to be used for the filter
ArithmeticLower: type of lower bound
ArithmeticUpper: type of upper bound
Observer: observer type
Parameters
filter: filter with lower bound to which the upper bound shall be added
lowerBound: value of lower bound
Returns
filter with closed range allowing values between lower and upper bound

Definition at line 344 of file Shortcuts.h.

◆ operator>=() [3/3]

std::enable_if< std::is_base_of<SelectionVariable<typename Var::argumentType, Var::c_Nargs, typename Var::variableType>, Var>::value && std::is_arithmetic<Arithmetic>::value, Filter<Var, ClosedLowerBoundedSet<Arithmetic>, VoidObserver> >::type Belle2::operator>= ( const Var &  ,
Arithmetic  lowerBound 
)

Creates a Filters with a closed lower bound >= on the provided variable Var >= lowerBound.

Template Parameters
Var: variable type to use for the filter
Arithmetic: type of the return value of the variable function
Parameters
lowerBound: lower bound value to be checked by the filter
Returns
the created filter

Definition at line 122 of file Shortcuts.h.

◆ operator||()

Filter<Belle2::OperatorOr, Belle2::Filter<types1...>, Belle2::Filter<types2...> , Belle2::VoidObserver> Belle2::operator|| ( const Filter< types1... > &  filter1,
const Filter< types2... > &  filter2 
)

Definition of the boolean OR operator || of the Filter class.

Template Parameters
types1: template pack of filter A
types2: template pack of filter B
Parameters
filter1: filter A
filter2: filter B
Returns
Boolean OR combination of the two filters

Definition at line 935 of file Filter.h.

◆ print()

std::string print

print the matrix to a string.

Format: a row, a line, elements of rows delimited by a space. No trailing newline after last row!

Definition at line 171 of file DecorrelationMatrix.h.

◆ printMap()

std::string Belle2::printMap ( const MapType &  aMap)

get the contents of the map as string.

NOTE: should compile without warning for any map (e.g. map, multimap, unordered_map,...) with key and values of a type that have a defined stream insertion operator (only tested for multimap and unordered_multimap!)

Definition at line 164 of file MapHelperFunctions.h.

◆ readFromStream()

bool readFromStream ( std::istream &  is)

read from stream.

Expected format: a row per line, elements of rows delimited by a space. returns true if operation was succesful, false elsewise

NOTE: it is only checked if enough elements are present in each row and column. However, any superfluous values are ignored.

Definition at line 179 of file DecorrelationMatrix.h.

◆ runCalibration()

CalibrationAlgorithm::EResult Belle2::runCalibration ( TTree *  tracks,
const std::string &  calibName,
Fun1  GetEvents,
Fun2  calibAnalysis,
std::function< TObject *(Eigen::VectorXd, Eigen::MatrixXd, Eigen::MatrixXd)>  calibObjCreator,
TString  m_lossFunctionOuter,
TString  m_lossFunctionInner 
)

Run the the calibration over the whole event sample.

Parameters
tracksTTree object with mu-mu events
calibNamename of the calibration payload
GetEventsfunction that transforms TTree to std::vector
calibAnalysisfunction that performs the calibration on a single calibration interval
calibObjCreatorfunction that stores results to the payload class which inherits from TObject
m_lossFunctionOuterLost function for the calibration intervals of the spread parameters
m_lossFunctionInnerLost function for the calibration subintervals (for the mean value parameters)
Returns
State of the calibration run, i.e. EResult::c_OK if everything OK

Definition at line 386 of file calibTools.h.

◆ SelectionVariableNamesToFunctions() [1/4]

std::unordered_map<std::string, typename FilterA::functionType> Belle2::SelectionVariableNamesToFunctions ( Belle2::Filter< Belle2::OperatorAnd, FilterA, FilterB, options... >  )

Wrapper for filters with AND Operator tag.

Template Parameters
FilterA: a Filter variable type
FilterB: another Filter variable type
options: optional types
Returns
unordered map relating strings to the filter variable functions

Definition at line 81 of file SelectionVariableNamesToFunctions.h.

◆ SelectionVariableNamesToFunctions() [2/4]

std::unordered_map<std::string, typename someFilter::functionType> Belle2::SelectionVariableNamesToFunctions ( Belle2::Filter< Belle2::OperatorNot, someFilter, options... >  )

Wrapper for filters with NOT Operator tag.

Template Parameters
someFilter: Filter variable type
options: optional types
Returns
unordered map relating strings to the filter variable functions

Definition at line 62 of file SelectionVariableNamesToFunctions.h.

◆ SelectionVariableNamesToFunctions() [3/4]

std::unordered_map<std::string, typename FilterA::functionType> Belle2::SelectionVariableNamesToFunctions ( Belle2::Filter< Belle2::OperatorOr, FilterA, FilterB, options... >  )

Wrapper for filters with OR Operator tag.

Template Parameters
FilterA: a Filter variable type
FilterB: another Filter variable type
options: optional types
Returns
unordered map relating strings to the filter variable functions

Definition at line 103 of file SelectionVariableNamesToFunctions.h.

◆ SelectionVariableNamesToFunctions() [4/4]

std::unordered_map<std::string, typename Variable::functionType> Belle2::SelectionVariableNamesToFunctions ( Belle2::Filter< Variable, Range, Options... >  )

Return a map from the SelectionVariable name to the SelectionVariable function of the Variable used in the filter that is the template argument parameter.

This is the basic building block we will exploit later

Template Parameters
Variable: Filter variable type
Range: range type
Options: optional types
Returns
unordered map relating strings to the filter variable functions

Definition at line 45 of file SelectionVariableNamesToFunctions.h.

◆ splitToSmall()

vector< pair< double, double > > splitToSmall ( std::map< ExpRun, std::pair< double, double >>  runs,
double  intSize = 1. / 60 
)
staticprivate

Split the runs into small calibration intervals (atoms) of a specified size.

By definition each of these intervals spans only over single run. These will be clustered into larger intervals in the next steps

Parameters
runsRuns to split into the atoms
intSizeIntended size of the small intervals
Returns
: A vector with resulting time boundaries of the atoms

Definition at line 178 of file Splitter.cc.

◆ TEST_F() [1/6]

Belle2::TEST_F ( SpacePointTest  ,
testConvertLocalToNormalizedCoordinates   
)

Testing member of spacePoint: convertToNormalizedCoordinates.

convertToNormalizedCoordinates converts a local hit into sensor-independent relative coordinates defined between 0 and 1.

Definition at line 363 of file spacePoint.cc.

364  {
365  VxdID aVxdID = VxdID(1, 1, 1);
366  VXD::SensorInfoBase sensorInfoBase = createSensorInfo(aVxdID, 2.3, 4.2);
367 
368  pair<float, float> sensorCenter = {1.15, 2.1};
369 
370  pair<float, float> hitLocal05 = {0, 0}; // sensorCenter is at 0, 0 in local coordinates
371  pair<float, float> resultNormalized05 = {0.5, 0.5};
372 
373  pair<float, float> hitLocal001 = {0.023, 0.042};
374  hitLocal001.first -= sensorCenter.first;
375  hitLocal001.second -= sensorCenter.second;
376  pair<float, float> resultNormalized001 = {0.01, 0.01};
377 
378  pair<float, float> hitLocal088 = {2.024, 3.696};
379  hitLocal088.first -= sensorCenter.first;
380  hitLocal088.second -= sensorCenter.second;
381  pair<float, float> resultNormalized088 = {0.88, 0.88};
382 
383  pair<float, float> hitLocal001088 = {0.023, 3.696};// asymmetric example verifying that values are not accidentally switched
384  hitLocal001088.first -= sensorCenter.first;
385  hitLocal001088.second -= sensorCenter.second;
386  pair<float, float> resultNormalized001088 = {0.01, 0.88};
387 
388  pair<float, float> hitLocalMinMax = { -1.16, 500}; // hit lies way beyond sensor edges (first is below lower threshold, second above higher one)
389  pair<float, float> resultNormalizedMinMax = {0., 1.};
390 
391  pair<float, float> hitNormalized05 = SpacePoint::convertLocalToNormalizedCoordinates(hitLocal05, aVxdID, &sensorInfoBase);
392  EXPECT_FLOAT_EQ(resultNormalized05.first, hitNormalized05.first);
393  EXPECT_FLOAT_EQ(resultNormalized05.second, hitNormalized05.second);
394 
395  pair<float, float> hitNormalized001 = SpacePoint::convertLocalToNormalizedCoordinates(hitLocal001, aVxdID, &sensorInfoBase);
396  EXPECT_FLOAT_EQ(resultNormalized001.first, hitNormalized001.first);
397  EXPECT_NEAR(resultNormalized001.second, hitNormalized001.second, 1. / 100000.); // resolution of better than 1 nm.
398 
399  pair<float, float> hitNormalized088 = SpacePoint::convertLocalToNormalizedCoordinates(hitLocal088, aVxdID, &sensorInfoBase);
400  EXPECT_FLOAT_EQ(resultNormalized088.first, hitNormalized088.first);
401  EXPECT_FLOAT_EQ(resultNormalized088.second, hitNormalized088.second);
402 
403  pair<float, float> hitNormalized001088 = SpacePoint::convertLocalToNormalizedCoordinates(hitLocal001088, aVxdID, &sensorInfoBase);
404  EXPECT_FLOAT_EQ(resultNormalized001088.first, hitNormalized001088.first);
405  EXPECT_FLOAT_EQ(resultNormalized001088.second, hitNormalized001088.second);
406 
407  pair<float, float> hitNormalizedMinMax = SpacePoint::convertLocalToNormalizedCoordinates(hitLocalMinMax, aVxdID, &sensorInfoBase);
408  EXPECT_FLOAT_EQ(resultNormalizedMinMax.first, hitNormalizedMinMax.first);
409  EXPECT_FLOAT_EQ(resultNormalizedMinMax.second, hitNormalizedMinMax.second);
410  }

◆ TEST_F() [2/6]

Belle2::TEST_F ( SpacePointTest  ,
testConvertNormalizedToLocalCoordinates   
)

Testing member of spacePoint: convertToLocalCoordinates.

convertToLocalCoordinates converts a hit in sensor-independent relative (def. 0-1) coordinates into local coordinate of given sensor

Definition at line 418 of file spacePoint.cc.

◆ TEST_F() [3/6]

Belle2::TEST_F ( SpacePointTest  ,
testRootIOB2Vector3   
)

Test if B2Vector3 writing in and reading from root files work.

create sample to be written in a root file:

test whole procedure with B2Vector3:

reopen file, read entries and check them

retrieve the B2Vector3 from file:

cleanup

Definition at line 254 of file spacePoint.cc.

◆ TEST_F() [4/6]

Belle2::TEST_F ( SpacePointTest  ,
testRootIOPXDCluster   
)

Test if cluster writing in and reading from root files work.

create samples to be written in a root file:

test whole procedure first with PXDCluster:

reopen file, read entries and check them

cleanup

Definition at line 203 of file spacePoint.cc.

◆ TEST_F() [5/6]

Belle2::TEST_F ( SpacePointTest  ,
testRootIOSP   
)

Test if spacePoints writing in and reading from root files work.

does not work - TODO solve!

create samples to be written in a root file:

create root file, fill spacePoint into file, store it, close

reopen file, read entries and check them

delete file from disk, cleanup}

Definition at line 295 of file spacePoint.cc.

◆ TEST_F() [6/6]

Belle2::TEST_F ( TwoHitFiltersTest  ,
TestOutOfRangeNormedDistFilter   
)

And now possibly the only case where TwoHitFilters produces wrong results.

However, (1e300, 0, 1e300) will never happen.

Definition at line 123 of file twohitfilters.h.

125  {
126  TVector3 innerHit(1e300, 0, 1e300);
127  TVector3 outerHit(0, 0, 0);
128  double correctResult = 1. / 2.; // this should be the result which is analytically correct
129  double wrongResult = 0.; // this is the result because of out of range of double precission
130 
131  TwoHitFilters aFilter = TwoHitFilters(outerHit, innerHit); // correct order
132 
133  // however, the values exceed the range of double, therefore the result is NOT EQUAL to the correct value:
134  EXPECT_NE(correctResult, aFilter.calcNormedDist3D());
135  EXPECT_DOUBLE_EQ(wrongResult, aFilter.calcNormedDist3D());
136  }

◆ VariableTBranch()

VariableTBranch ( TTree *  tree)
explicit

Add to the TTree.

Constructor specialized for arithmetic types.

Parameters
treea branch whose name and type are inferred from
var

Definition at line 63 of file VariableTBranch.h.

Variable Documentation

◆ cdcfromEclPathTruthVarNames

constexpr static char const* const cdcfromEclPathTruthVarNames[]
staticconstexpr
Initial value:
= {
"matched",
"daughters",
"PDG",
"mcTrackHits",
"seed_p_truth",
"seed_theta_truth",
"seed_pt_truth",
"seed_pz_truth",
"seed_px_truth",
"seed_py_truth"
}

Names of the variables to be generated.

Definition at line 32 of file CDCfromEclPathTruthVarSet.h.

◆ cdcfromEclStateTruthVarNames

constexpr static char const* const cdcfromEclStateTruthVarNames[]
staticconstexpr
Initial value:
= {
"match",
"PDG",
"seed_p_truth",
"seed_theta_truth",
"seed_pt_truth",
"seed_pz_truth",
"seed_px_truth",
"seed_py_truth"
}

Names of the variables to be generated.

Definition at line 32 of file CDCfromEclStateTruthVarSet.h.

◆ cdcPathTruthVarNames

constexpr static char const* const cdcPathTruthVarNames[]
staticconstexpr
Initial value:
= {
"mcTrackHits",
"daughters",
"PDG",
"seed_p_truth",
"seed_theta_truth",
"seed_pt_truth",
"seed_pz_truth",
"seed_px_truth",
"seed_py_truth"
}

Names of the variables to be generated.

Definition at line 32 of file CDCPathTruthVarSet.h.

◆ cdcStateTruthVarNames

constexpr static char const* const cdcStateTruthVarNames[]
staticconstexpr
Initial value:
= {
"match",
"PDG"
}

Names of the variables to be generated.

Definition at line 32 of file CDCStateTruthVarSet.h.

◆ m_storeRefTCDataForTestTC

bool m_storeRefTCDataForTestTC = false
staticprotected

if true, for testTC the values of attached refTC will be stored instead of own values.

setting the static storeRefTCDataForTestTC to a standard value

  • why are there values of the mcTC stored? we want to know the real data, not the guesses of the reconstructed data. Deviations of reference values to guesses of the reconstructed data will be stored in resiudals anyway.

Definition at line 74 of file AnalyzingAlgorithmBase.h.

◆ pxdResultTruthNames

constexpr static char const* const pxdResultTruthNames[]
staticconstexpr
Initial value:
= {
"truth",
"truth_number_of_correct_hits",
"truth_number_of_mc_pxd_hits",
"truth_number_of_mc_svd_hits",
"truth_number_of_mc_cdc_hits",
"truth_event_number",
"truth_seed_number",
}

Names of the variables to be generated.

Definition at line 37 of file PXDResultTruthVarSet.h.

◆ pxdResultVarNames

constexpr static char const* const pxdResultVarNames[]
staticconstexpr
Initial value:
= {
"chi2_vxd_max",
"chi2_vxd_min",
"chi2_seed",
"chi2",
"number_of_hits",
"pt",
"theta",
"number_of_holes",
"last_hit_layer",
"first_hit_layer",
"weight_sum",
"has_missing_layer_1",
"has_missing_layer_2",
"has_missing_layer_3",
"has_missing_layer_4",
"has_missing_layer_5",
"has_missing_layer_6",
"number_of_overlap_hits",
"distance_to_seed_track",
"distance_to_seed_track_xy",
}

Names of the variables to be generated.

Definition at line 34 of file PXDResultVarSet.h.

◆ pxdStateTruthVarNames

constexpr static char const* const pxdStateTruthVarNames[]
staticconstexpr
Initial value:
= {
"truth",
"truth_inverted",
"truth_position_x",
"truth_position_y",
"truth_position_z",
"truth_momentum_x",
"truth_momentum_y",
"truth_momentum_z",
"truth_event_id",
"truth_seed_number"
}

Names of the variables to be generated.

Definition at line 36 of file PXDStateTruthVarSet.h.

◆ relationSVDResultVarNames

constexpr static char const* const relationSVDResultVarNames[]
staticconstexpr
Initial value:
= {
"svd_highest_layer",
"number_of_hits_related_svd_track",
}

Names of the variables to be generated.

Definition at line 33 of file RelationSVDResultVarSet.h.

◆ s_MagneticFieldFactor

DataType s_MagneticFieldFactor
static
Initial value:
= 1.5 *
0.00299710

is factor containing speed of light (c), the magnetic field (b) and the scaling factor s for conversion of meter in cm : c*b/100 = c*b*s.

The standard value assumes a magnetic field of 1.5 Tesla. Value can be changed using the resetMagneticField-Function, where a new value for the magnetic field in Tesla has to be passed. TODO WARNING hardcoded value!

Definition at line 39 of file SelectionVariableHelper.h.

◆ s_origin

VectorType s_origin = VectorType(0, 0, 0)
staticprotected

stores the origin used for some calculations, can be set here

setting the static origin to a standard value

Definition at line 65 of file AnalyzingAlgorithmBase.h.

◆ secans

struct { ... } secans

function object that implements cosecans(x) == 1/cos(x) by tan(x) / sin(x).

This construction should give a NaN if the argument is 0 (but hopefully cppcheck can be fooled to not raise a division by zero error) NOTE: it is tested if this actually is the case!

◆ sinHalf

struct { ... } sinHalf

function object that implements sin(i/2).

This does give positive and negative weights, but no NaNs

◆ svdResultTruthNames

constexpr static char const* const svdResultTruthNames[]
staticconstexpr
Initial value:
= {
"truth",
"truth_svd_cdc_relation",
"truth_number_of_correct_hits",
"truth_number_of_mc_pxd_hits",
"truth_number_of_mc_svd_hits",
"truth_number_of_mc_cdc_hits",
"truth_event_number",
"truth_seed_number",
}

Names of the variables to be generated.

Definition at line 37 of file SVDResultTruthVarSet.h.

◆ svdResultVarNames

constexpr static char const* const svdResultVarNames[]
staticconstexpr
Initial value:
= {
"chi2_vxd_max",
"chi2_vxd_min",
"chi2_cdc",
"chi2",
"number_of_hits",
"pt",
"theta",
"number_of_holes",
"cdc_lowest_layer",
"last_hit_layer",
"first_hit_layer",
"weight_sum",
"has_missing_layer_1",
"has_missing_layer_2",
"has_missing_layer_3",
"has_missing_layer_4",
"has_missing_layer_5",
"has_missing_layer_6",
"distance_to_cdc_track",
"distance_to_cdc_track_xy",
}

Names of the variables to be generated.

Definition at line 34 of file SVDResultVarSet.h.

◆ svdStateTruthVarNames

constexpr static char const* const svdStateTruthVarNames[]
staticconstexpr
Initial value:
= {
"truth",
"truth_inverted",
"truth_position_x",
"truth_position_y",
"truth_position_z",
"truth_momentum_x",
"truth_momentum_y",
"truth_momentum_z",
"truth_event_id",
"truth_seed_number"
}

Names of the variables to be generated.

Definition at line 36 of file SVDStateTruthVarSet.h.

Belle2::VOLTYPE_EKLM
@ VOLTYPE_EKLM
EKLM.
Definition: TrackExtrapolateG4e.h:87
Belle2::FBDTClassifier::m_forest
FBDTForest m_forest
the forest used for classification
Definition: FBDTClassifier.h:86
prepareAsicCrosstalkSimDB.e
e
aux.
Definition: prepareAsicCrosstalkSimDB.py:53
Belle2::FBDTClassifier::m_decorrMat
Belle2::DecorrelationMatrix< Ndims > m_decorrMat
the decorrelation matrix used in this classifier
Definition: FBDTClassifier.h:90
Belle2::VOLTYPE_TOP3
@ VOLTYPE_TOP3
TOP glue.
Definition: TrackExtrapolateG4e.h:73
Belle2::PlanarVXDMomentumMeasurement::m_useMCInformation
bool m_useMCInformation
Use the seeds of the track finder or the seeds of the MC particles.
Definition: PlanarVXDMomentumMeasurement.h:110
Belle2::VOLTYPE_BKLM1
@ VOLTYPE_BKLM1
BKLM RPC.
Definition: TrackExtrapolateG4e.h:83
Belle2::PlanarVXDMomentumMeasurement::m_fitParameters
VXDMomentumEstimation< HitType >::FitParameters m_fitParameters
Parameters for the main function.
Definition: PlanarVXDMomentumMeasurement.h:104
Belle2::LayerPXDRelationFilter::m_filter
AFilter m_filter
Filter for rejecting the states.
Definition: LayerPXDRelationFilter.dcl.h:54
Belle2::filter
std::map< ExpRun, std::pair< double, double > > filter(const std::map< ExpRun, std::pair< double, double >> &runs, double cut, std::map< ExpRun, std::pair< double, double >> &runsRemoved)
filter events to remove runs shorter than cut, it stores removed runs in runsRemoved
Definition: Splitter.cc:43
Belle2::decodeNumber
unsigned decodeNumber(double val)
Decode the integer number encoded in val.
Definition: calibTools.h:213
Belle2::VOLTYPE_ARICH1
@ VOLTYPE_ARICH1
ARICH aerogel.
Definition: TrackExtrapolateG4e.h:75
Belle2::CollectorTFInfoTest::m_collector
CollectorTFInfo m_collector
cached ref to CollectorTFInfo()
Definition: collectortfinfo.h:44
Belle2::VOLTYPE_TOP1
@ VOLTYPE_TOP1
TOP container.
Definition: TrackExtrapolateG4e.h:69
Belle2::PlanarVXDMomentumMeasurement::m_sigma
double m_sigma
Value of the measurement sigma.
Definition: PlanarVXDMomentumMeasurement.h:114
Belle2::PlanarVXDMomentumMeasurement::m_correctionFitParameters
VXDMomentumEstimation< HitType >::CorrectionFitParameters m_correctionFitParameters
Parameters for the correction function.
Definition: PlanarVXDMomentumMeasurement.h:106
Belle2::getStartEndIndexes
std::pair< int, int > getStartEndIndexes(int nIntervals, std::vector< int > breaks, int indx)
get the range of interval with nIntervals and breaks stored in a vector
Definition: Splitter.cc:88
Belle2::getRun
static ExpRun getRun(map< ExpRun, pair< double, double >> runs, double t)
Get exp number + run number from time.
Definition: Splitter.cc:262
Belle2::VOLTYPE_TOP2
@ VOLTYPE_TOP2
TOP quartz.
Definition: TrackExtrapolateG4e.h:71
Belle2::i2dMap
std::unordered_map< int, double > i2dMap
typedef for less writing effort
Definition: mapHelperFunctions.cc:31
Belle2::ResultStorer::m_param_writeOutDirection
TrackFindingCDC::EForwardBackward m_param_writeOutDirection
Direction parameter converted from the string parameters.
Definition: ResultStorer.dcl.h:57
Belle2::PlanarVXDMomentumMeasurement::m_useThickness
bool m_useThickness
Use the thickness of the clusters of the path length for estimating dX.
Definition: PlanarVXDMomentumMeasurement.h:108
Belle2::PlanarVXDMomentumMeasurement::m_hit
HitType * m_hit
Underlaying hit/cluster.
Definition: PlanarVXDMomentumMeasurement.h:117
Belle2::VOLTYPE_ECL
@ VOLTYPE_ECL
ECL.
Definition: TrackExtrapolateG4e.h:81
Belle2::VOLTYPE_CDC
@ VOLTYPE_CDC
CDC.
Definition: TrackExtrapolateG4e.h:67
Belle2::CollectorTFInfoTest::pass_sector_ids
std::vector< int > pass_sector_ids
fixed vector of pass indices (values are never used)
Definition: collectortfinfo.h:46
Belle2::VOLTYPE_ARICH2
@ VOLTYPE_ARICH2
ARICH Img plate.
Definition: TrackExtrapolateG4e.h:77
Belle2::PlanarVXDMomentumMeasurement::m_useTrackingSeeds
bool m_useTrackingSeeds
Use the tracking seeds in the origin for calculating the path length rather than the current state.
Definition: PlanarVXDMomentumMeasurement.h:112
Belle2::VOLTYPE_BKLM2
@ VOLTYPE_BKLM2
BKLM scintillator.
Definition: TrackExtrapolateG4e.h:85
Belle2::TreeSearcher::m_param_endEarly
bool m_param_endEarly
Parameter: Make it possible to have all subresults in the end results vector.
Definition: TreeSearcher.dcl.h:85
Belle2::FBDTClassifier::m_featBins
std::vector< FastBDT::FeatureBinning< double > > m_featBins
the feature binnings corresponding to the BDT
Definition: FBDTClassifier.h:88
Belle2::getPosition
ExpRunEvt getPosition(const std::vector< Evt > &events, double tEdge)
Get the exp-run-evt number from the event time [hours].
Definition: Splitter.h:344
Belle2::TreeSearcher::traverseTree
void traverseTree(std::vector< TrackFindingCDC::WithWeight< const AState * >> &path, const std::vector< TrackFindingCDC::WeightedRelation< AState >> &relations, std::vector< AResult > &results)
Implementation of the traverseTree function.
Definition: TreeSearcher.icc.h:78
Belle2::PlanarVXDMomentumMeasurement::getDetId
int getDetId() const
Return the detector ID.
Definition: PlanarVXDMomentumMeasurement.h:122
Belle2::PlanarMomentumMeasurement::constructHMatrix
virtual const genfit::AbsHMatrix * constructHMatrix(const genfit::AbsTrackRep *rep) const override
Construct the QP matrix.
Definition: PlanarMomentumMeasurement.h:54
Belle2::printMap
std::string printMap(const MapType &aMap)
get the contents of the map as string.
Definition: MapHelperFunctions.h:164
genfit::MeasurementOnPlane
Measured coordinates on a plane.
Definition: MeasurementOnPlane.h:46
Belle2::VOLTYPE_ARICH3
@ VOLTYPE_ARICH3
ARICH HAPD window.
Definition: TrackExtrapolateG4e.h:79