Belle II Software  release-05-02-19
SVDDQMEfficiencyModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2016 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Gaetano De Marino, Giulia Casarosa *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 
12 #pragma once
13 
14 #include <framework/core/HistoModule.h>
15 #include <framework/datastore/StoreArray.h>
16 
17 #include <svd/dataobjects/SVDCluster.h>
18 #include <svd/dataobjects/SVDSummaryPlots.h>
19 
20 #include <vxd/geometry/GeoCache.h>
21 #include <vxd/dataobjects/VxdID.h>
22 
23 #include <tracking/dataobjects/SVDIntercept.h>
24 #include <tracking/dataobjects/RecoTrack.h>
25 
26 #include "TH2D.h"
27 
28 namespace Belle2 {
40  class SVDDQMEfficiencyModule : public HistoModule {
41 
42  public:
43 
48 
49  private:
50 
54  void event() override final;
55 
59  void initialize() override final;
60 
64  void defineHisto() override final;
65 
66 
67  bool isGoodIntercept(SVDIntercept* inter);
69  VXD::GeoCache& m_geoCache;
71  std::string m_svdClustersName;
72  std::string m_interceptsName;
78  float m_fiducialU;
79  float m_fiducialV;
81  float m_maxResidU;
82  float m_maxResidV;
84  // double m_d0cut; /**<d0-Cut for tracks */
85  // double m_z0cut; /**<z0-Cut for tracks */
86  double m_pcut;
87  double m_momCut;
88  double m_ptCut;
89  unsigned int m_minSVDHits;
90  unsigned int m_minCDCHits;
92  /* Histograms to later determine efficiency */
93 
98  int m_u_bins;
99  int m_v_bins;
101  std::map<VxdID, TH2D*> m_h_track_hits;
102  std::map<VxdID, TH2D*> m_h_matched_clusterU;
103  std::map<VxdID, TH2D*> m_h_matched_clusterV;
105  SVDSummaryPlots* m_MatchedHits = nullptr;
107  };
109 }
Belle2::SVDIntercept
SVDIntercept stores the U,V coordinates and uncertainties of the intersection of a track with an SVD ...
Definition: SVDIntercept.h:32
Belle2::VxdID
Class to uniquely identify a any structure of the PXD and SVD.
Definition: VxdID.h:43
Belle2::SVDDQMEfficiencyModule::m_ptCut
double m_ptCut
Cut on fitted track pt.
Definition: SVDDQMEfficiencyModule.h:96
Belle2::SVDDQMEfficiencyModule::m_svdClustersName
std::string m_svdClustersName
SVDClusters StoreArray name.
Definition: SVDDQMEfficiencyModule.h:79
Belle2::SVDDQMEfficiencyModule::m_MatchedHits
SVDSummaryPlots * m_MatchedHits
matched hits summary plot
Definition: SVDDQMEfficiencyModule.h:113
Belle2::SVDDQMEfficiencyModule::m_interceptsName
std::string m_interceptsName
SVDIntercepts StoreArray name.
Definition: SVDDQMEfficiencyModule.h:80
Belle2::SVDDQMEfficiencyModule::m_fiducialV
float m_fiducialV
stay away from the U border by m_fiducialU (in cm)
Definition: SVDDQMEfficiencyModule.h:87
Belle2::SVDDQMEfficiencyModule::m_saveExpertHistos
bool m_saveExpertHistos
save additional histograms id set True
Definition: SVDDQMEfficiencyModule.h:104
Belle2::SVDDQMEfficiencyModule::m_h_matched_clusterU
std::map< VxdID, TH2D * > m_h_matched_clusterU
matched U-hits histogram map to sensorID
Definition: SVDDQMEfficiencyModule.h:110
Belle2::SVDDQMEfficiencyModule::m_TrackHits
SVDSummaryPlots * m_TrackHits
track hits summary plot
Definition: SVDDQMEfficiencyModule.h:112
Belle2::SVDDQMEfficiencyModule::SVDDQMEfficiencyModule
SVDDQMEfficiencyModule()
Constructor: Sets the description, the properties and the parameters of the module.
Definition: SVDDQMEfficiencyModule.cc:25
Belle2::SVDDQMEfficiencyModule::m_pcut
double m_pcut
pValue-Cut for tracks
Definition: SVDDQMEfficiencyModule.h:94
Belle2::RecoTrack
This is the Reconstruction Event-Data Model Track.
Definition: RecoTrack.h:78
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::SVDDQMEfficiencyModule::m_maxResidU
float m_maxResidU
max distance cut in cm U side
Definition: SVDDQMEfficiencyModule.h:89
Belle2::SVDDQMEfficiencyModule::m_svdClusters
StoreArray< SVDCluster > m_svdClusters
SVDCluster StoreArray.
Definition: SVDDQMEfficiencyModule.h:82
Belle2::SVDDQMEfficiencyModule::isGoodIntercept
bool isGoodIntercept(SVDIntercept *inter)
returns true if the track related to the intercept passes the selection cuts
Definition: SVDDQMEfficiencyModule.cc:209
Belle2::SVDDQMEfficiencyModule::initialize
void initialize() override final
initializes the need store arrays, trees and histograms
Definition: SVDDQMEfficiencyModule.cc:64
Belle2::SVDDQMEfficiencyModule::defineHisto
void defineHisto() override final
actually defines the trees and histograms
Definition: SVDDQMEfficiencyModule.cc:168
Belle2::SVDDQMEfficiencyModule::m_v_bins
int m_v_bins
number of V-bins for expert histogram
Definition: SVDDQMEfficiencyModule.h:107
Belle2::SVDDQMEfficiencyModule::m_h_track_hits
std::map< VxdID, TH2D * > m_h_track_hits
track hits histogram map to sensorID
Definition: SVDDQMEfficiencyModule.h:109
Belle2::SVDSummaryPlots
class to summarize SVD quantities per sensor and side
Definition: SVDSummaryPlots.h:35
Belle2::SVDDQMEfficiencyModule::m_minCDCHits
unsigned int m_minCDCHits
Required hits in CDC for tracks.
Definition: SVDDQMEfficiencyModule.h:98
Belle2::SVDDQMEfficiencyModule::m_intercepts
StoreArray< SVDIntercept > m_intercepts
SVDIntercept StoreArray.
Definition: SVDDQMEfficiencyModule.h:83
Belle2::SVDCluster
The SVD Cluster class This class stores all information about reconstructed SVD clusters.
Definition: SVDCluster.h:38
Belle2::SVDDQMEfficiencyModule::m_maxResidV
float m_maxResidV
max distance cut in cm V side
Definition: SVDDQMEfficiencyModule.h:90
Belle2::SVDDQMEfficiencyModule::m_recoTracks
StoreArray< RecoTrack > m_recoTracks
RecoTrack StoreArray.
Definition: SVDDQMEfficiencyModule.h:84
Belle2::SVDDQMEfficiencyModule::m_geoCache
VXD::GeoCache & m_geoCache
BelleII Geometry.
Definition: SVDDQMEfficiencyModule.h:77
Belle2::SVDDQMEfficiencyModule::m_h_matched_clusterV
std::map< VxdID, TH2D * > m_h_matched_clusterV
matched V-hits histogram map to sensorID
Definition: SVDDQMEfficiencyModule.h:111
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::SVDDQMEfficiencyModule::event
void event() override final
main function which fills trees and histograms
Definition: SVDDQMEfficiencyModule.cc:78
Belle2::SVDDQMEfficiencyModule::m_fiducialU
float m_fiducialU
stay away from the U border by m_fiducialU (in cm)
Definition: SVDDQMEfficiencyModule.h:86
Belle2::SVDDQMEfficiencyModule::m_u_bins
int m_u_bins
number of U-bins for expert histogram
Definition: SVDDQMEfficiencyModule.h:106
Belle2::SVDDQMEfficiencyModule::m_momCut
double m_momCut
Cut on fitted track momentum.
Definition: SVDDQMEfficiencyModule.h:95
Belle2::SVDDQMEfficiencyModule::m_minSVDHits
unsigned int m_minSVDHits
Required hits in SVD strips for tracks.
Definition: SVDDQMEfficiencyModule.h:97
Belle2::SVDDQMEfficiencyModule::m_histogramDirectoryName
std::string m_histogramDirectoryName
name of the directory where to store the histograms
Definition: SVDDQMEfficiencyModule.h:102