Belle II Software development
SVDDQMEfficiencyModule.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/core/HistoModule.h>
13#include <framework/datastore/StoreArray.h>
14
15#include <svd/dataobjects/SVDCluster.h>
16#include <svd/dataobjects/SVDSummaryPlots.h>
17
18#include <vxd/geometry/GeoCache.h>
19#include <vxd/dataobjects/VxdID.h>
20
21#include <tracking/dataobjects/SVDIntercept.h>
22#include <tracking/dataobjects/RecoTrack.h>
23
24#include "TH2D.h"
25
26namespace Belle2 {
36
37 public:
38
43
44 private:
45
49 void event() override final;
50
54 void initialize() override final;
55
59 void defineHisto() override final;
60
61
62 bool isGoodIntercept(SVDIntercept* inter);
66 std::string m_svdClustersName;
67 std::string m_interceptsName;
79 // double m_d0cut; /**<d0-Cut for tracks */
80 // double m_z0cut; /**<z0-Cut for tracks */
81 double m_pcut;
82 double m_momCut;
83 double m_ptCut;
84 unsigned int m_minSVDHits;
85 unsigned int m_minCDCHits;
87 /* Histograms to later determine efficiency */
88
91 bool m_3Samples = false;
98 std::map<VxdID, TH2D*> m_h_track_hits;
99 std::map<VxdID, TH2D*> m_h_matched_clusterU;
100 std::map<VxdID, TH2D*> m_h_matched_clusterV;
101 std::map<VxdID, TH2D*> m_h_matched3_clusterU;
102 std::map<VxdID, TH2D*> m_h_matched3_clusterV;
103 std::map<VxdID, TH2D*> m_h_matched6_clusterU;
104 std::map<VxdID, TH2D*> m_h_matched6_clusterV;
114 };
116}
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
Definition: HistoModule.h:29
Creates the basic histograms for SVD Efficiency DQM.
float m_fiducialV
stay away from the U border by m_fiducialU (in cm)
SVDDQMEfficiencyModule()
Constructor: Sets the description, the properties and the parameters of the module.
std::string m_svdClustersName
SVDClusters StoreArray name.
std::map< VxdID, TH2D * > m_h_track_hits
track hits histogram map to sensorID
void initialize() override final
initializes the need store arrays, trees and histograms
unsigned int m_minCDCHits
Required hits in CDC for tracks.
bool m_saveExpertHistos
save additional histograms id set True
std::map< VxdID, TH2D * > m_h_matched6_clusterV
matched V-hits histogram map to sensorID for 6 samples
StoreArray< SVDIntercept > m_intercepts
SVDIntercept StoreArray.
SVDSummaryPlots * m_MatchedHits3Sample
matched hits summary plot for 3 samples
VXD::GeoCache & m_geoCache
BelleII Geometry.
std::map< VxdID, TH2D * > m_h_matched3_clusterV
matched V-hits histogram map to sensorID for 3 samples
unsigned int m_minSVDHits
Required hits in SVD strips for tracks.
StoreArray< SVDCluster > m_svdClusters
SVDCluster StoreArray.
double m_momCut
Cut on fitted track momentum.
int m_u_bins
number of U-bins for expert histogram
std::map< VxdID, TH2D * > m_h_matched_clusterU
matched U-hits histogram map to sensorID
std::map< VxdID, TH2D * > m_h_matched6_clusterU
matched U-hits histogram map to sensorID for 6 samples
float m_fiducialU
stay away from the U border by m_fiducialU (in cm)
void defineHisto() override final
actually defines the trees and histograms
double m_pcut
pValue-Cut for tracks
bool isGoodIntercept(SVDIntercept *inter)
returns true if the track related to the intercept passes the selection cuts
void event() override final
main function which fills trees and histograms
std::string m_histogramDirectoryName
name of the directory where to store the histograms
float m_maxResidV
max distance cut in cm V side
bool m_3Samples
if true enable 3 samples histograms analysis
SVDSummaryPlots * m_MatchedHits6Sample
matched hits summary plot for 6 samples
std::map< VxdID, TH2D * > m_h_matched3_clusterU
matched U-hits histogram map to sensorID for 3 samples
int m_v_bins
number of V-bins for expert histogram
SVDSummaryPlots * m_MatchedHits
matched hits summary plot
SVDSummaryPlots * m_TrackHits
track hits summary plot
StoreArray< RecoTrack > m_recoTracks
RecoTrack StoreArray.
double m_ptCut
Cut on fitted track pt.
std::string m_interceptsName
SVDIntercepts StoreArray name.
SVDSummaryPlots * m_TrackHits3Sample
track hits summary plot for 3 samples
std::map< VxdID, TH2D * > m_h_matched_clusterV
matched V-hits histogram map to sensorID
SVDSummaryPlots * m_TrackHits6Sample
track hits summary plot for 6 samples
float m_maxResidU
max distance cut in cm U side
SVDIntercept stores the U,V coordinates and uncertainties of the intersection of a track with an SVD ...
Definition: SVDIntercept.h:22
class to summarize SVD quantities per sensor and side
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Class to faciliate easy access to sensor information of the VXD like coordinate transformations or pi...
Definition: GeoCache.h:39
Abstract base class for different kinds of events.