Belle II Software  release-08-01-10
SectorMapConfig.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 
10 #pragma once
11 
12 #include <framework/geometry/B2Vector3.h>
13 
14 #include <string>
15 #include <vector>
16 #include <utility> // std::pair
17 
18 
19 namespace Belle2 {
26  struct SectorMapConfig: public TObject {
27 
28  public:
29 
30  SectorMapConfig() {}
31 
32 
33 
35  double pTmin = 0.02;
37  double pTmax = 3.5;
38 
41  double pTSmear = 0.;
42 
44  std::vector<int> allowedLayers = {0, 3, 4, 5, 6};
45 
48  std::vector<double> uSectorDivider = {.15, .5, .85, 1.};
49 
52  std::vector<double> vSectorDivider = {.1, .3, .5, .7, .9, 1.};
53 
56  std::vector<int> pdgCodesAllowed;
57 
61  double seedMaxDist2IPXY = 23.5;
62 
66  double seedMaxDist2IPZ = 23.5;
67 
70  unsigned nHitsMin = 3;
71 
75 
77  std::string secMapName = "testMap";
78 
80  double mField = 1.5;
81 
83  double rarenessThreshold = 0.001;
84 
86  std::pair<double, double> quantiles = {0.005, 1. - 0.005};
87 
90 
91  };
93 }
94 
B2Vector3< double > B2Vector3D
typedef for common usage with double
Definition: B2Vector3.h:516
Abstract base class for different kinds of events.
simple struct containing all the configuration data needed for the SecMapTrainer.
double pTmin
stores pTCuts for min pT allowed for this .
std::vector< double > vSectorDivider
Defines the sectors boundaries in normalized v coordinates (i.e.
double pTSmear
allows smearing of the cuts.
std::vector< int > pdgCodesAllowed
Stores all the pdgCodes which are allowed to be used by the SecMap.
double mField
Magnetic field value to be set for the filters.
double seedMaxDist2IPXY
Stores a cut for maximum distance of the seed in xy of the given virtual IP.
std::pair< double, double > quantiles
the quantiles to be chosen in the end for determining the cuts first is quantile, second is 1-quantil...
std::vector< double > uSectorDivider
Defines the sectors boundaries in normalized u coordinates (i.e.
double rarenessThreshold
defined 1 == 100%, if relative frequency of sec-combi to the outer-sector is less than threshold,...
std::string secMapName
Sets the human readable proto-name of the sectorMap.
B2Vector3D vIP
Stores the position of the assumed position of the interaction point - The virtual IP.
ClassDef(SectorMapConfig, 2)
needed for the root library
double seedMaxDist2IPZ
Stores a cut for maximum distance of the seed in z of the given virtual IP.
double pTmax
stores pTCuts for min (.first) and max (.second) ptCut.
unsigned nHitsMin
Stores the minimal number of hits a TC must have to be accepted as TC (vIP-Hits are ignored).
std::vector< int > allowedLayers
stores allowed layers to be used (including virtual IP with layer 0).