Belle II Software release-09-00-00
AlignDQMModule.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#pragma once
10
11#include <tracking/dqmUtils/DQMHistoModuleBase.h>
12
13#include <Math/Vector3D.h>
14
15namespace Belle2 {
29 class AlignDQMModule : public DQMHistoModuleBase { // <- derived from HistoModule class
30
31 public:
34 /* Destructor */
35 ~AlignDQMModule() { }
36
38 virtual void event() override;
40 virtual void endRun() override;
41
44 virtual void defineHisto() override;
45
49 virtual TH1F* Create(std::string name, std::string title, int nbinsx, double xlow, double xup, std::string xTitle,
50 std::string yTitle) override;
52 virtual TH2F* Create(std::string name, std::string title, int nbinsx, double xlow, double xup, int nbinsy, double ylow, double yup,
53 std::string xTitle, std::string yTitle, std::string zTitle) override;
54
60 virtual void FillHelixParametersAndCorrelations(const TrackFitResult* tfr) override;
62 virtual void FillPositionSensors(ROOT::Math::XYZVector residual_um, ROOT::Math::XYZVector position, int sensorIndex);
64 virtual void FillLayers(ROOT::Math::XYZVector residual_um, float phi_deg, float theta_deg, int layerIndex);
67 protected:
73 virtual void DefineHelixParametersAndCorrelations() override;
75 void DefineSensors();
77 virtual void DefineLayers();
82 TH2F** m_ResMeanPosUVSensCounts = nullptr;
84 TH2F** m_ResMeanUPosUVSens = nullptr;
86 TH2F** m_ResMeanVPosUVSens = nullptr;
88 TH2F** m_ResUPosUSens = nullptr;
90 TH2F** m_ResUPosVSens = nullptr;
92 TH2F** m_ResVPosUSens = nullptr;
94 TH2F** m_ResVPosVSens = nullptr;
96 TH1F** m_ResMeanUPosUSens = nullptr;
98 TH1F** m_ResMeanUPosVSens = nullptr;
100 TH1F** m_ResMeanVPosUSens = nullptr;
102 TH1F** m_ResMeanVPosVSens = nullptr;
103
108 TH2F** m_ResMeanUPhiThetaLayer = nullptr;
110 TH2F** m_ResMeanVPhiThetaLayer = nullptr;
112 TH2F** m_ResUPhiLayer = nullptr;
114 TH2F** m_ResUThetaLayer = nullptr;
116 TH2F** m_ResVPhiLayer = nullptr;
118 TH2F** m_ResVThetaLayer = nullptr;
120 TH1F** m_ResMeanUPhiLayer = nullptr;
122 TH1F** m_ResMeanUThetaLayer = nullptr;
124 TH1F** m_ResMeanVPhiLayer = nullptr;
126 TH1F** m_ResMeanVThetaLayer = nullptr;
127
130 TH2F* m_PhiZ0 = nullptr;
132 TH2F* m_PhiMomPt = nullptr;
134 TH2F* m_PhiOmega = nullptr;
136 TH2F* m_PhiTanLambda = nullptr;
138 TH2F* m_D0MomPt = nullptr;
140 TH2F* m_D0Omega = nullptr;
142 TH2F* m_D0TanLambda = nullptr;
144 TH2F* m_Z0MomPt = nullptr;
146 TH2F* m_Z0Omega = nullptr;
148 TH2F* m_Z0TanLambda = nullptr;
150 TH2F* m_MomPtOmega = nullptr;
152 TH2F* m_MomPtTanLambda = nullptr;
154 TH2F* m_OmegaTanLambda = nullptr;
155 };
157}
DQM of Alignment for off line residuals per sensor, layer, keep also On-Line DQM from tracking: their...
TH1F ** m_ResMeanVPosVSens
ResidaulMeanV vs V for sensor.
void DefineSensors()
Define histograms which depend on position for individual sensors.
TH1F ** m_ResMeanUPosVSens
ResidaulMeanU vs V for sensor.
TH2F ** m_ResVPosUSens
ResidaulV vs U for sensor.
virtual void FillHelixParametersAndCorrelations(const TrackFitResult *tfr) override
Fill histograms with helix parameters and their correlations.
TH2F * m_MomPtTanLambda
Track momentum Pt vs.
TH2F * m_PhiMomPt
Phi - the angle of the transverse momentum in the r-phi plane vs.
TH2F * m_PhiTanLambda
Phi - the angle of the transverse momentum in the r-phi plane vs.
TH2F ** m_ResMeanVPhiThetaLayer
ResidaulMeanU vs Phi vs Theta for Layer.
virtual void event() override
Module function event.
TH2F ** m_ResUPhiLayer
ResidaulU vs Phi for Layer.
virtual TH1F * Create(std::string name, std::string title, int nbinsx, double xlow, double xup, std::string xTitle, std::string yTitle) override
Function to create TH1F and add it to the vector of histograms (m_histograms).
virtual void endRun() override
Module function endRun.
TH2F ** m_ResMeanPhiThetaLayerCounts
Special Alignment related: Layer level.
TH1F ** m_ResMeanUPhiLayer
ResidaulMeanU vs Phi for Layer.
TH2F ** m_ResMeanVPosUVSens
ResidaulMeanU vs U vs V for sensor.
TH2F * m_MomPtOmega
Track momentum Pt vs.
TH2F ** m_ResMeanPosUVSensCounts
Special Alignment related: Sensor level.
TH2F * m_Z0TanLambda
z0 - the z0 coordinate of the perigee vs.
TH2F ** m_ResMeanUPhiThetaLayer
ResidaulMeanU vs Phi vs Theta for Layer.
TH1F ** m_ResMeanVPhiLayer
ResidaulMeanV vs Phi for Layer.
virtual void FillPositionSensors(ROOT::Math::XYZVector residual_um, ROOT::Math::XYZVector position, int sensorIndex)
Fill histograms which depend on position for individual sensors.
AlignDQMModule()
Constructor.
TH2F ** m_ResVThetaLayer
ResidaulV vs Theta for Layer.
TH2F * m_Z0Omega
z0 - the z0 coordinate of the perigee vs.
TH2F ** m_ResMeanUPosUVSens
ResidaulMeanU vs U vs V for sensor.
TH2F * m_OmegaTanLambda
Omega - the curvature of the track vs.
virtual void DefineHelixParametersAndCorrelations() override
All the following Define- functions should be used in the defineHisto() function to define histograms...
virtual void FillLayers(ROOT::Math::XYZVector residual_um, float phi_deg, float theta_deg, int layerIndex)
Fill histograms which depend on layerIndex.
TH1F ** m_ResMeanUThetaLayer
ResidaulMeanU vs Theta for Layer.
TH2F * m_PhiOmega
Phi - the angle of the transverse momentum in the r-phi plane vs.
TH2F * m_PhiZ0
helix parameters and their correlations
TH2F ** m_ResVPosVSens
ResidaulV vs V for sensor.
TH1F ** m_ResMeanUPosUSens
ResidaulMeanU vs U for sensor.
TH2F ** m_ResUPosVSens
ResidaulU vs V for sensor.
TH2F * m_Z0MomPt
z0 - the z0 coordinate of the perigee vs.
TH2F ** m_ResUPosUSens
ResidaulU vs U for sensor.
TH2F * m_D0MomPt
d0 - signed distance to the IP in r-phi vs.
TH1F ** m_ResMeanVThetaLayer
ResidaulMeanV vs Theta for Layer.
TH2F ** m_ResVPhiLayer
ResidaulV vs Phi for Layer.
TH2F * m_D0Omega
d0 - signed distance to the IP in r-phi vs.
TH1F ** m_ResMeanVPosUSens
ResidaulMeanV vs U for sensor.
TH2F * m_D0TanLambda
d0 - signed distance to the IP in r-phi vs.
virtual void DefineLayers()
Define histograms which depend on layerIndex.
TH2F ** m_ResUThetaLayer
ResidaulU vs Theta for Layer.
virtual void defineHisto() override
Histogram definitions such as TH1(), TH2(), TNtuple(), TTree()....
This class serves as a base for the TrackDQMModule and AlignDQMModule (and possibly other DQM histogr...
Values of the result of a track fit with a given particle hypothesis.
Abstract base class for different kinds of events.