1 import FWCore.ParameterSet.Config
as cms
2 from DQMServices.Core.DQMEDHarvester
import DQMEDHarvester
4 import DQM.SiPixelPhase1Common.TriggerEventFlag_cfi
as trigger
6 SiPixelPhase1TrackResidualsResidualsX = DefaultHistoTrack.clone(
8 title =
"Track Residuals X",
9 range_min = -0.1, range_max = 0.1, range_nbins = 100,
10 xlabel =
"(x_rec - x_pred) [cm]",
13 StandardSpecification2DProfile,
14 Specification().groupBy(
"PXBarrel/PXLayer").saveAll(),
15 Specification().groupBy(
"PXForward/PXDisk").saveAll(),
17 Specification().groupBy(
"PXBarrel/PXLayer/LumiBlock")
19 .groupBy(
"PXBarrel/PXLayer",
"EXTEND_X")
22 Specification().groupBy(
"PXForward/PXDisk/LumiBlock")
24 .groupBy(
"PXForward/PXDisk",
"EXTEND_X")
27 Specification(PerLayer1D).groupBy(
"PXBarrel/Shell/PXLayer").
save(),
28 Specification(PerLayer1D).groupBy(
"PXForward/HalfCylinder/PXRing/PXDisk").
save()
32 SiPixelPhase1TrackResidualsResidualsY = SiPixelPhase1TrackResidualsResidualsX.clone(
34 title =
"Track Residuals Y",
35 xlabel =
"(y_rec - y_pred) [cm]",
38 SiPixelPhase1TrackResidualsResOnEdgeX = DefaultHistoTrack.clone(
39 name =
"residual_OnEdge_x",
40 title =
"Track Residuals X (OnEdge Clusters)",
41 range_min = -0.1, range_max = 0.1, range_nbins = 100,
42 xlabel =
"(x_rec - x_pred) [cm]",
45 Specification().groupBy(
"PXBarrel/PXLayer").saveAll(),
46 Specification().groupBy(
"PXForward/PXDisk").saveAll(),
47 Specification(PerLayer1D).groupBy(
"PXBarrel/Shell/PXLayer").
save(),
48 Specification(PerLayer1D).groupBy(
"PXForward/HalfCylinder/PXRing/PXDisk").
save()
52 SiPixelPhase1TrackResidualsResOnEdgeY = SiPixelPhase1TrackResidualsResOnEdgeX.clone(
53 name =
"residual_OnEdge_y",
54 title =
"Track Residuals Y (OnEdge Clusters)",
55 xlabel =
"(y_rec - y_pred) [cm]",
59 SiPixelPhase1TrackResidualsResOtherBadX = DefaultHistoTrack.clone(
60 name =
"residual_OtherBad_x",
61 title =
"Track Residuals X (OtherBad Clusters)",
62 range_min = -0.1, range_max = 0.1, range_nbins = 100,
63 xlabel =
"(x_rec - x_pred) [cm]",
66 Specification().groupBy(
"PXBarrel/PXLayer").saveAll(),
67 Specification().groupBy(
"PXForward/PXDisk").saveAll(),
68 Specification(PerLayer1D).groupBy(
"PXBarrel/Shell/PXLayer").
save(),
69 Specification(PerLayer1D).groupBy(
"PXForward/HalfCylinder/PXRing/PXDisk").
save()
73 SiPixelPhase1TrackResidualsResOtherBadY = SiPixelPhase1TrackResidualsResOtherBadX.clone(
74 name =
"residual_OtherBad_y",
75 title =
"Track Residuals Y (OtherBad Clusters)",
76 xlabel =
"(y_rec - y_pred) [cm]",
80 SiPixelPhase1TrackNormResX = DefaultHistoTrack.clone(
81 topFolderName= cms.string(
"PixelPhase1/Tracks/ResidualsExtra"),
83 title =
"Normalized Residuals X",
84 range_min = -5, range_max = 5, range_nbins = 100,
85 xlabel =
"(x_rec - x_pred)/x_err",
88 Specification().groupBy(
"PXBarrel/PXLayer").saveAll(),
89 Specification().groupBy(
"PXForward/PXDisk").saveAll(),
90 Specification(PerLayer1D).groupBy(
"PXBarrel/Shell/PXLayer").
save(),
91 Specification(PerLayer1D).groupBy(
"PXForward/HalfCylinder/PXRing/PXDisk").
save()
95 SiPixelPhase1TrackNormResY = SiPixelPhase1TrackNormResX.clone(
97 title =
"Normalized Residuals Y",
98 range_min = -5, range_max = 5, range_nbins = 100,
99 xlabel =
"(y_rec - y_pred)/y_err",
102 SiPixelPhase1TrackDRnRX = DefaultHistoTrack.clone(
103 topFolderName= cms.string(
"PixelPhase1/Tracks/ResidualsExtra"),
105 title =
"Distribution of RMS of Normalized Residuals X",
106 range_min = -5, range_max = 5, range_nbins = 100,
107 xlabel =
"#sigma_{(x_rec - x_pred)/x_err}",
110 StandardSpecification2DProfile
114 SiPixelPhase1TrackDRnRY = SiPixelPhase1TrackDRnRX.clone(
116 title =
"Distribution of RMS of Normalized Residuals Y",
117 range_min = -5, range_max = 5, range_nbins = 100,
118 xlabel =
"#sigma_{(y_rec - y_pred)/y_err}",
122 SiPixelPhase1TrackResidualsConf = cms.VPSet(
123 SiPixelPhase1TrackResidualsResidualsX,
124 SiPixelPhase1TrackResidualsResidualsY,
125 SiPixelPhase1TrackResidualsResOnEdgeX,
126 SiPixelPhase1TrackResidualsResOnEdgeY,
127 SiPixelPhase1TrackResidualsResOtherBadX,
128 SiPixelPhase1TrackResidualsResOtherBadY,
129 SiPixelPhase1TrackNormResX,
130 SiPixelPhase1TrackNormResY,
131 SiPixelPhase1TrackDRnRX,
132 SiPixelPhase1TrackDRnRY
135 from DQMServices.Core.DQMEDAnalyzer
import DQMEDAnalyzer
136 SiPixelPhase1TrackResidualsAnalyzer =
DQMEDAnalyzer(
'SiPixelPhase1TrackResiduals',
137 trajectoryInput = cms.string(
"refittedForPixelDQM"),
138 Tracks = cms.InputTag(
"refittedForPixelDQM"),
139 vertices = cms.InputTag(
"offlinePrimaryVertices"),
140 histograms = SiPixelPhase1TrackResidualsConf,
141 geometry = SiPixelPhase1Geometry,
142 triggerflags = trigger.SiPixelPhase1Triggers,
143 VertexCut = cms.untracked.bool(
True)
147 histograms = SiPixelPhase1TrackResidualsConf,
148 geometry = SiPixelPhase1Geometry
T reduce(std::vector< T > x, Op op)