Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:10:03

0001 import FWCore.ParameterSet.Config as cms
0002 from DQMServices.Core.DQMEDHarvester import DQMEDHarvester
0003 
0004 from DQMOffline.Trigger.SiPixel_OfflineMonitoring_HistogramManager_cfi import *
0005 
0006 # order is important and it should follow ordering in hltSiPixelPhase1ClustersConf VPSet
0007 hltSiPixelPhase1TrackClustersOnTrackCharge = hltDefaultHistoTrack.clone(
0008   name = "charge",
0009   title = "Corrected Cluster Charge (OnTrack)",
0010   range_min = 0, range_max = 200e3, range_nbins = 200,
0011   xlabel = "Charge (electrons)",
0012   specs = VPSet(
0013     hltStandardSpecifications1D,
0014     StandardSpecification2DProfile
0015   )
0016 )
0017 
0018 hltSiPixelPhase1TrackClustersOnTrackCorrCharge = hltDefaultHistoTrack.clone(
0019   name = "charge_cor",
0020   title = "Tempalte Corrected Cluster Charge (OnTrack)",
0021   range_min = 0, range_max = 200e3, range_nbins = 200,
0022   xlabel = "Charge (electrons)",
0023   enabled=False,
0024   specs = VPSet(
0025     hltStandardSpecifications1D
0026   )
0027 )
0028 
0029 hltSiPixelPhase1TrackTemplateCorr = hltSiPixelPhase1TrackClustersOnTrackCorrCharge.clone(
0030   name = "template_corr",
0031   title = "Tempalte Correction",
0032   range_min = 0, range_max = 20, range_nbins = 200,
0033   xlabel = "A.U.",
0034   enabled=False
0035 )
0036 
0037 hltSiPixelPhase1TrackClustersOnTrackBigPixelCharge = DefaultHistoTrack.clone(
0038   name = "bigpixelcharge",
0039   title = "Corrected Big Pixel Charge (OnTrack)",
0040   range_min = 0, range_max = 80e3, range_nbins = 100,
0041   xlabel = "Charge (electrons)",
0042   enabled=False,
0043 
0044   specs = VPSet(
0045     Specification().groupBy("PXBarrel").save(),
0046     Specification().groupBy("PXForward").save(),
0047     Specification().groupBy("PXBarrel/PXLayer").save(),
0048     Specification().groupBy("PXForward/PXDisk").save()
0049   )
0050 )
0051 
0052 hltSiPixelPhase1TrackClustersOnTrackNotBigPixelCharge = DefaultHistoTrack.clone(
0053   name = "notbigpixelcharge",
0054   title = "Corrected Not Big Pixel Charge (OnTrack)",
0055   range_min = 0, range_max = 80e3, range_nbins = 100,
0056   xlabel = "Charge (electrons)",
0057   enabled=False,
0058 
0059   specs = VPSet(
0060     Specification().groupBy("PXBarrel").save(),
0061     Specification().groupBy("PXForward").save(),
0062     Specification().groupBy("PXBarrel/PXLayer").save(),
0063     Specification().groupBy("PXForward/PXDisk").save()
0064   )
0065 )
0066 
0067 hltSiPixelPhase1TrackClustersOnTrackSize = hltDefaultHistoTrack.clone(
0068   name = "size",
0069   title = "Total Cluster Size (OnTrack)",
0070   range_min = 0, range_max = 30, range_nbins = 30,
0071   xlabel = "size[pixels]",
0072 
0073   specs = VPSet(
0074     hltStandardSpecifications1D
0075   )
0076 )
0077 
0078 
0079 hltSiPixelPhase1TrackClustersOnTrackShape = hltDefaultHistoTrack.clone(
0080   enabled = False,
0081   name = "shapeFilter",
0082   title = "Shape filter (OnTrack)",
0083   range_min = 0, range_max = 2, range_nbins = 2,
0084   xlabel = "shapeFilter",
0085 
0086   specs = VPSet(
0087     Specification().groupBy("PXBarrel/PXLayer").saveAll(),
0088     Specification().groupBy("PXForward/PXDisk").saveAll(),
0089     StandardSpecification2DProfile,
0090 
0091     Specification().groupBy("PXBarrel/PXLayer/Lumisection")
0092                    .reduce("MEAN")
0093                    .groupBy("PXBarrel/PXLayer", "EXTEND_X")
0094                    .save(),
0095 
0096     Specification().groupBy("PXForward/PXDisk/Lumisection")
0097                    .reduce("MEAN")
0098                    .groupBy("PXForward/PXDisk", "EXTEND_X")
0099                    .save(),
0100   )
0101 )
0102 
0103 hltSiPixelPhase1TrackClustersOnTrackNClusters = hltDefaultHistoTrack.clone(
0104   name = "clusters_ontrack",
0105   title = "Clusters_onTrack",
0106   range_min = 0, range_max = 40000, range_nbins = 4000,
0107   xlabel = "clusters",
0108   dimensions = 0,
0109   specs = VPSet(
0110     Specification().groupBy("PXBarrel/PXLayer" + "/DetId/Event")
0111                    .reduce("COUNT")
0112                    .groupBy("PXBarrel/PXLayer")
0113                    .saveAll(),
0114     Specification().groupBy("PXForward/PXDisk" + "/DetId/Event")
0115                    .reduce("COUNT")
0116                    .groupBy("PXForward/PXDisk")
0117                    .saveAll(),
0118     StandardSpecificationInclusive_Num,
0119     StandardSpecificationTrend_Num
0120   )
0121 )
0122 
0123 hltSiPixelPhase1TrackClustersOnTrackPositionB = hltDefaultHistoTrack.clone(
0124   name = "clusterposition_zphi_ontrack",
0125   title = "Cluster_onTrack Positions",
0126   range_min   =  -60, range_max   =  60, range_nbins   = 600,
0127   range_y_min = -3.2, range_y_max = 3.2, range_y_nbins = 200,
0128   xlabel = "Global Z", ylabel = "Global \phi",
0129   dimensions = 2,
0130   specs = VPSet(
0131     Specification().groupBy("PXBarrel/PXLayer").save(),
0132 #    Specification().groupBy("").save(),
0133   )
0134 )
0135 
0136 hltSiPixelPhase1TrackClustersOnTrackPositionF = hltDefaultHistoTrack.clone(
0137   name = "clusterposition_xy_ontrack",
0138   title = "Cluster_onTrack Positions",
0139   xlabel = "Global X", ylabel = "Global Y",
0140   range_min   = -20, range_max   = 20, range_nbins   = 200,
0141   range_y_min = -20, range_y_max = 20, range_y_nbins = 200,
0142   dimensions = 2,
0143   specs = VPSet(
0144     Specification().groupBy("PXForward/PXDisk").save(),
0145   )
0146 )
0147 
0148 hltSiPixelPhase1DigisHitmapOnTrack = hltDefaultHistoTrack.clone(
0149   enabled = False,
0150   name = "digi_occupancy_ontrack",
0151   title = "Digi Occupancy (OnTrack)",
0152   ylabel = "#digis",
0153   dimensions = 0,
0154   specs = VPSet(
0155     Specification(PerModule).groupBy("PXBarrel/Shell/PXLayer/SignedLadder/PXModuleName/row/col")
0156                             .groupBy("PXBarrel/Shell/PXLayer/SignedLadder/PXModuleName/row", "EXTEND_X")
0157                             .groupBy("PXBarrel/Shell/PXLayer/SignedLadder/PXModuleName", "EXTEND_Y")
0158                             .save(),
0159     Specification(PerModule).groupBy("PXForward/HalfCylinder/PXRing/PXDisk/SignedBlade/PXModuleName/row/col")
0160                             .groupBy("PXForward/HalfCylinder/PXRing/PXDisk/SignedBlade/PXModuleName/row", "EXTEND_X")
0161                             .groupBy("PXForward/HalfCylinder/PXRing/PXDisk/SignedBlade/PXModuleName", "EXTEND_Y")
0162                             .save(),
0163   )
0164 )
0165 
0166 hltSiPixelPhase1DigisNdigisOnTrack = hltDefaultHistoTrack.clone(
0167   enabled = False,
0168   name = "digis on-track", # 'Count of' added automatically
0169   title = "Digis on-track",
0170   xlabel = "digis (on-track)",
0171   range_min = 0,
0172   range_max = 300,
0173   range_nbins = 50,
0174   dimensions = 0, # this is a count
0175 
0176   specs = VPSet(
0177     StandardSpecificationTrend_Num,
0178     StandardSpecification2DProfile_Num,
0179     
0180     Specification().groupBy("PXBarrel/PXLayer/Event") #this will produce inclusive counts per Layer/Disk
0181                              .reduce("COUNT")    
0182                              .groupBy("PXBarrel/PXLayer")
0183                              .save(nbins=100, xmin=0, xmax=40000),
0184     Specification().groupBy("PXForward/PXDisk/Event")
0185                              .reduce("COUNT")    
0186                              .groupBy("PXForward/PXDisk/")
0187                              .save(nbins=100, xmin=0, xmax=20000),
0188   )
0189 )
0190 
0191 
0192 hltSiPixelPhase1TrackClustersNTracks = hltDefaultHistoTrack.clone(
0193   name = "ntracks",
0194   title = "Number of Tracks",
0195   xlabel = "All - Pixel - BPIX - FPIX",
0196   range_min = 1, range_max = 5, range_nbins = 4,
0197   dimensions = 1,
0198   specs = VPSet(
0199     Specification().groupBy("").save()
0200   )
0201 )
0202 
0203 hltSiPixelPhase1TrackClustersNTracksInVolume = hltDefaultHistoTrack.clone(
0204   name = "ntracksinpixvolume",
0205   title = "Number of Tracks in Pixel fiducial Volume",
0206   xlabel = "without hits - with hits",
0207   range_min = 0, range_max = 2, range_nbins = 2,
0208   dimensions = 1,
0209   specs = VPSet(
0210     Specification().groupBy("").save()
0211   )
0212 )
0213 
0214 hltSiPixelPhase1ClustersSizeVsEtaOnTrackOuter = hltDefaultHistoTrack.clone(
0215   name = "sizeyvseta_on_track_outer",
0216   title = "Cluster Size along Beamline vs. Track #eta (OnTrack) outer ladders",
0217   xlabel = "Track #eta",
0218   ylabel = "length [pixels]",
0219   range_min = -3.2, range_max  = 3.2, range_nbins   = 64,
0220   range_y_min =  0, range_y_max = 30, range_y_nbins = 30,
0221   dimensions = 2,
0222   specs = VPSet(
0223     Specification().groupBy("PXBarrel/PXLayer").save()
0224   )
0225 )
0226 
0227 hltSiPixelPhase1ClustersSizeVsEtaOnTrackInner = hltSiPixelPhase1ClustersSizeVsEtaOnTrackOuter.clone(
0228   name = "sizeyvseta_on_track_inner",
0229   title = "Cluster Size along Beamline vs. Track #eta (OnTrack) inner ladders",
0230 )
0231 
0232 
0233 hltSiPixelPhase1TrackClustersOnTrackSizeYOuter = hltSiPixelPhase1ClustersSizeVsEtaOnTrackOuter.clone(
0234   name = "sizey_on_track_outer",
0235   title = "Cluster Size along Beamline vs. prediction (OnTrack) outer ladders",
0236   xlabel = "prediction",
0237   ylabel = "length [pixels]",
0238   range_min = 0, range_max  = 30, range_nbins   = 60
0239 )
0240 
0241 hltSiPixelPhase1TrackClustersOnTrackSizeYInner = hltSiPixelPhase1TrackClustersOnTrackSizeYOuter.clone(
0242   name = "sizey_on_track_inner",
0243   title = "Cluster Size along Beamline vs. prediction (OnTrack) inner ladders",
0244 )
0245 
0246 hltSiPixelPhase1TrackClustersOnTrackSizeYF = hltSiPixelPhase1TrackClustersOnTrackSizeYOuter.clone(
0247   name = "sizey_on_track_forward",
0248   title = "Cluster Size ortogonal to Beamline vs. prediction (OnTrack) forward",
0249   range_y_min =  0, range_y_max = 10, range_y_nbins = 10,
0250   range_min = 0, range_max  = 10, range_nbins   = 20,
0251   specs = VPSet(
0252     Specification().groupBy("PXForward/PXDisk").save(),
0253   )
0254 )
0255 
0256 
0257 hltSiPixelPhase1TrackClustersOnTrackSizeXOuter = hltSiPixelPhase1TrackClustersOnTrackSizeYOuter.clone(
0258   name = "sizex_on_track_outer",
0259   title = "Cluster Size along radial vs. prediction (OnTrack) outer ladders",
0260   range_min = 0, range_max  = 8, range_nbins   = 16,
0261   range_y_min =  0, range_y_max = 8, range_y_nbins = 8
0262 
0263 )
0264 
0265 hltSiPixelPhase1TrackClustersOnTrackSizeXInner = hltSiPixelPhase1TrackClustersOnTrackSizeXOuter.clone(
0266   name = "sizex_on_track_inner",
0267   title = "Cluster Size along radial vs. prediction (OnTrack) inner ladders",
0268 )
0269 
0270 hltSiPixelPhase1TrackClustersOnTrackSizeXF = hltSiPixelPhase1TrackClustersOnTrackSizeYF.clone(
0271   name = "sizex_on_track_forward",
0272   title = "Cluster Size radial vs. prediction (OnTrack) forward",
0273 )
0274 
0275 
0276 
0277 hltSiPixelPhase1TrackClustersOnTrackSizeXYOuter = hltSiPixelPhase1TrackClustersOnTrackSizeYOuter.clone(
0278   name = "sizexy_on_track_outer",
0279   title = "Cluster Size x vs y (OnTrack) outer ladders",
0280   xlabel = "y size",
0281   ylabel = "x size",
0282   range_min = 0, range_max  = 20, range_nbins   = 20,
0283   range_y_min = 0, range_y_max = 10, range_y_nbins = 10
0284 )
0285 
0286 hltSiPixelPhase1TrackClustersOnTrackSizeXYInner = hltSiPixelPhase1TrackClustersOnTrackSizeXYOuter.clone(
0287  name = "sizexy_on_track_inner",
0288  title = "Cluster Size x vs y (OnTrack) inner ladders"
0289 )
0290 
0291 hltSiPixelPhase1TrackClustersOnTrackSizeXYF = hltSiPixelPhase1TrackClustersOnTrackSizeYF.clone(
0292   name = "sizexy_on_track_forward",
0293   title = "Cluster Size x vs y (OnTrack) forward",
0294   xlabel = "y size",
0295   ylabel = "x size",
0296   range_min = 0, range_max  = 10, range_nbins   = 10,
0297   range_y_min = 0, range_y_max = 10, range_y_nbins = 10
0298 
0299 )
0300 
0301 hltSiPixelPhase1ClustersChargeVsSizeOnTrack = hltDefaultHistoTrack.clone(
0302   name = "chargevssize_on_track",
0303   title = "Cluster Charge vs. Cluster Size (OnTrack)",
0304   xlabel = "size[pixels]",
0305   ylabel = "Cluster charge",
0306   range_min =  0, range_max = 30, range_nbins = 15,
0307   range_y_min = 0, range_y_max = 80e3, range_y_nbins = 100,
0308   dimensions = 2,
0309   specs = VPSet(
0310     Specification().groupBy("PXBarrel/PXLayer").save(),
0311     Specification().groupBy("PXForward/PXDisk").save()
0312   )
0313 )
0314 
0315 hltSiPixelPhase1TrackClustersOnTrackChargeOuter = hltDefaultHistoTrack.clone(
0316   name = "chargeOuter",
0317   title = "Corrected Cluster Charge (OnTrack) outer ladders",
0318   range_min = 0, range_max = 150e3, range_nbins = 150,
0319   xlabel = "Charge (electrons)",
0320 
0321   specs = VPSet(
0322     Specification().groupBy("PXBarrel/PXLayer").save()
0323   )
0324 )
0325 
0326 hltSiPixelPhase1TrackClustersOnTrackChargeInner = hltSiPixelPhase1TrackClustersOnTrackChargeOuter.clone(
0327   name = "chargeInner",
0328   title = "Corrected Cluster Charge (OnTrack) inner ladders"
0329 )
0330 
0331 
0332 hltSiPixelPhase1TrackClustersOnTrackCorrChargeOuter = hltDefaultHistoTrack.clone(
0333   name = "chargeOuter_corr",
0334   title = "Template Corrected Cluster Charge (OnTrack) outer ladders",
0335   range_min = 0, range_max = 80e3, range_nbins = 100,
0336   xlabel = "Charge (electrons)",
0337   enabled = False,
0338   specs = VPSet(
0339     Specification().groupBy("PXBarrel/PXLayer").save()
0340   )
0341 )
0342 
0343 hltSiPixelPhase1TrackClustersOnTrackCorrChargeInner = hltSiPixelPhase1TrackClustersOnTrackCorrChargeOuter.clone(
0344   name = "chargeInner_corr",
0345   title = "Template Corrected Cluster Charge (OnTrack) inner ladders",
0346   enabled = False
0347 )
0348 
0349 hltSiPixelPhase1TrackTemplateCorrOuter = hltSiPixelPhase1TrackClustersOnTrackCorrChargeOuter.clone(
0350   name = "templateOuter_corr",
0351   title = "Template Correction outer ladders",
0352   range_min = 0, range_max = 3, range_nbins = 150,
0353   xlabel = "A.U.",
0354   enabled = False
0355 )
0356 
0357 hltSiPixelPhase1TrackTemplateCorrInner = hltSiPixelPhase1TrackTemplateCorrOuter.clone(
0358   name = "templateInner_corr",
0359   title = "Template Correction inner ladders",
0360   enabled = False
0361 )
0362 
0363 hltSiPixelPhase1TrackClustersOnTrackShapeOuter = hltDefaultHistoTrack.clone(
0364   enabled = False,
0365   name = "shapeFilterOuter",
0366   title = "Shape filter (OnTrack) Outer Ladders",
0367   range_min = 0, range_max = 2, range_nbins = 2,
0368   xlabel = "shapeFilter",
0369   specs = VPSet(
0370     Specification().groupBy("PXBarrel/PXLayer").save()
0371   )
0372 )
0373 
0374 hltSiPixelPhase1TrackClustersOnTrackShapeInner = hltSiPixelPhase1TrackClustersOnTrackShapeOuter.clone(
0375   enabled = False,
0376   name = "shapeFilterInner",
0377   title = "Shape filter (OnTrack) Inner Ladders",
0378 )
0379 
0380 hltSiPixelPhase1TrackClustersConf = cms.VPSet(
0381 ### IT HAS TO BE IN SYNCH W/
0382 ### THE LIST DEFINED IN THE ENUM
0383 ### https://cmssdt.cern.ch/lxr/source/DQM/SiPixelPhase1TrackClusters/src/SiPixelPhase1TrackClusters.cc#0063
0384    hltSiPixelPhase1TrackClustersOnTrackCharge,
0385    hltSiPixelPhase1TrackClustersOnTrackCorrCharge,
0386    hltSiPixelPhase1TrackTemplateCorr,
0387    hltSiPixelPhase1TrackClustersOnTrackBigPixelCharge,
0388    hltSiPixelPhase1TrackClustersOnTrackNotBigPixelCharge,
0389    hltSiPixelPhase1TrackClustersOnTrackSize,
0390    hltSiPixelPhase1TrackClustersOnTrackShape,
0391    hltSiPixelPhase1TrackClustersOnTrackNClusters,
0392    hltSiPixelPhase1TrackClustersOnTrackPositionB,
0393    hltSiPixelPhase1TrackClustersOnTrackPositionF,
0394    hltSiPixelPhase1DigisHitmapOnTrack,
0395    hltSiPixelPhase1DigisNdigisOnTrack,
0396 
0397    hltSiPixelPhase1TrackClustersNTracks,
0398    hltSiPixelPhase1TrackClustersNTracksInVolume,
0399 
0400    hltSiPixelPhase1ClustersSizeVsEtaOnTrackOuter,
0401    hltSiPixelPhase1ClustersSizeVsEtaOnTrackInner,
0402    hltSiPixelPhase1TrackClustersOnTrackChargeOuter,
0403    hltSiPixelPhase1TrackClustersOnTrackChargeInner,
0404    hltSiPixelPhase1TrackClustersOnTrackCorrChargeOuter,
0405    hltSiPixelPhase1TrackClustersOnTrackCorrChargeInner,
0406    hltSiPixelPhase1TrackTemplateCorrOuter,
0407    hltSiPixelPhase1TrackTemplateCorrInner,
0408 
0409    hltSiPixelPhase1TrackClustersOnTrackShapeOuter,
0410    hltSiPixelPhase1TrackClustersOnTrackShapeInner,
0411 
0412    hltSiPixelPhase1TrackClustersOnTrackSizeXOuter,
0413    hltSiPixelPhase1TrackClustersOnTrackSizeXInner,
0414    hltSiPixelPhase1TrackClustersOnTrackSizeXF,
0415    hltSiPixelPhase1TrackClustersOnTrackSizeYOuter,
0416    hltSiPixelPhase1TrackClustersOnTrackSizeYInner,
0417    hltSiPixelPhase1TrackClustersOnTrackSizeYF,
0418 
0419    hltSiPixelPhase1TrackClustersOnTrackSizeXYOuter,
0420    hltSiPixelPhase1TrackClustersOnTrackSizeXYInner,
0421    hltSiPixelPhase1TrackClustersOnTrackSizeXYF,
0422    hltSiPixelPhase1ClustersChargeVsSizeOnTrack
0423 )
0424 
0425 from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
0426 hltSiPixelPhase1TrackClustersAnalyzer = DQMEDAnalyzer('SiPixelPhase1TrackClusters',
0427         VertexCut  = cms.untracked.bool(False),
0428         clusters   = cms.InputTag("hltSiPixelClusters"),
0429         tracks     = cms.InputTag("hltrefittedForPixelDQM"), 
0430         clusterShapeCache = cms.InputTag("hltSiPixelClusterShapeCache"),
0431         vertices = cms.InputTag(""),
0432         histograms = hltSiPixelPhase1TrackClustersConf,
0433         geometry   = hltSiPixelPhase1Geometry
0434 )
0435 
0436 from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3
0437 pp_on_PbPb_run3.toModify(hltSiPixelPhase1TrackClustersAnalyzer,
0438                          clusters   = "hltSiPixelClustersAfterSplittingPPOnAA")
0439 
0440 hltSiPixelPhase1TrackClustersHarvester = DQMEDHarvester("SiPixelPhase1Harvester",
0441         histograms = hltSiPixelPhase1TrackClustersConf,
0442         geometry   = hltSiPixelPhase1Geometry
0443 )