File indexing completed on 2025-06-04 22:36:31
0001 import os
0002 import sys
0003 import copy
0004 import collections
0005
0006 import ROOT
0007 from ROOT import TFile, TString
0008 from ROOT import gDirectory
0009 ROOT.gROOT.SetBatch(True)
0010 ROOT.PyConfig.IgnoreCommandLineOptions = True
0011
0012 from Validation.RecoTrack.plotting.plotting import Plot, PlotGroup, PlotFolder, Plotter, PlotOnSideGroup
0013 from Validation.RecoTrack.plotting.html import PlotPurpose
0014 import Validation.RecoTrack.plotting.plotting as plotting
0015 import Validation.RecoTrack.plotting.validation as validation
0016 import Validation.RecoTrack.plotting.html as html
0017
0018 from Validation.HGCalValidation.HGCalValidator_cff import hgcalValidator
0019 from Validation.HGCalValidation.PostProcessorHGCAL_cfi import lcToCP_linking, simDict, TSbyHits_CP, TSbyLCs, TSbyLCs_CP, TSbyHits, variables
0020
0021 hgcVal_dqm = "DQMData/Run 1/HGCAL/Run summary/HGCalValidator/"
0022
0023 geometryscenario = 47
0024
0025
0026
0027
0028
0029
0030
0031
0032 '''
0033 layerscheme = { 'lastLayerEEzm': 0, 'lastLayerFHzm': 0, 'maxlayerzm': 0, 'lastLayerEEzp': 0, 'lastLayerFHzp': 0, 'maxlayerzp': 0 }
0034
0035 #Let's take the relevant values of layerscheme from the dqm file.
0036 theDQMfile = "DQM_V0001_R000000001__Global__CMSSW_X_Y_Z__RECO.root"
0037 if not os.path.isfile(theDQMfile):
0038 print("Error: file", theDQMfile, "not found, exit")
0039 sys.exit(0)
0040
0041
0042 #Take general info from the first file is sufficient.
0043 thefile = TFile( theDQMfile )
0044 GeneralInfoDirectory = hgcVal_dqm + 'GeneralInfo'
0045
0046 if not gDirectory.GetDirectory( GeneralInfoDirectory ):
0047 print("Error: GeneralInfo directory not found in DQM file, exit")
0048 sys.exit(0)
0049
0050 keys = gDirectory.GetDirectory( GeneralInfoDirectory ).GetListOfKeys()
0051 key = keys[0]
0052 layvalue = 0
0053 while key:
0054 obj = key.ReadObj()
0055 for laykey in layerscheme.keys():
0056 if laykey in obj.GetName():
0057 layvalue = obj.GetName()[len("<"+laykey+">i="):-len("</"+laykey+">")]
0058 layerscheme[laykey] = layvalue
0059 #print(layvalue)
0060 key = keys.After(key)
0061
0062 thefile.Close()
0063
0064 print(layerscheme)
0065 #TODO: Anticipating the fine/coarse layer information in CMSSW we overwrite values from DQM file
0066 #For now values returned for
0067 # 'lastLayerFHzp': '104', 'lastLayerFHzm': '52'
0068 #are not the one expected. Will come back to this when there will be info in CMSSW to put in DQM file.
0069 #For V9:
0070 #layerscheme = { 'lastLayerEEzm': 28, 'lastLayerFHzm': 40, 'maxlayerzm': 52, 'lastLayerEEzp': 80, 'lastLayerFHzp': 92, 'maxlayerzp': 104 }
0071 #For V10:
0072 layerscheme = { 'lastLayerEEzm': 28, 'lastLayerFHzm': 40, 'maxlayerzm': 50, 'lastLayerEEzp': 78, 'lastLayerFHzp': 90, 'maxlayerzp': 100 }
0073 #For V16
0074 layerscheme = { 'lastLayerEEzm': 26, 'lastLayerFHzm': 37, 'maxlayerzm': 47, 'lastLayerEEzp': 73, 'lastLayerFHzp': 84, 'maxlayerzp': 94 }
0075 '''
0076
0077
0078 layerscheme = {}
0079
0080 if geometryscenario == 52:
0081 layerscheme = { 'lastLayerEEzm': 28, 'lastLayerFHzm': 40, 'maxlayerzm': 52, 'lastLayerEEzp': 80, 'lastLayerFHzp': 92, 'maxlayerzp': 104 }
0082 elif geometryscenario == 50:
0083 layerscheme = { 'lastLayerEEzm': 28, 'lastLayerFHzm': 40, 'maxlayerzm': 50, 'lastLayerEEzp': 78, 'lastLayerFHzp': 90, 'maxlayerzp': 100 }
0084 elif geometryscenario == 47:
0085 layerscheme = { 'lastLayerEEzm': 26, 'lastLayerFHzm': 37, 'maxlayerzm': 47, 'lastLayerEEzp': 73, 'lastLayerFHzp': 84, 'maxlayerzp': 94 }
0086
0087
0088 lastLayerEEzm = layerscheme['lastLayerEEzm']
0089 lastLayerFHzm = layerscheme['lastLayerFHzm']
0090 maxlayerzm = layerscheme['maxlayerzm']
0091 lastLayerEEzp = layerscheme['lastLayerEEzp']
0092 lastLayerFHzp = layerscheme['lastLayerFHzp']
0093 maxlayerzp = layerscheme['maxlayerzp']
0094
0095 hitlayerscheme = { 'EE_min': 1,'EE_max': 28, 'HESilicon_min': 1, 'HESilicon_max': 22, 'HEScintillator_min': 9 , 'HEScintillator_max': 22 }
0096
0097
0098 EE_min = hitlayerscheme['EE_min']
0099 EE_max = hitlayerscheme['EE_max']
0100 HESilicon_min = hitlayerscheme['HESilicon_min']
0101 HESilicon_max = hitlayerscheme['HESilicon_max']
0102 HEScintillator_min = hitlayerscheme['HEScintillator_min']
0103 HEScintillator_max = hitlayerscheme['HEScintillator_max']
0104
0105 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65 }
0106 _legend_common = {"legendDx": -0.3,
0107 "legendDy": -0.05,
0108 "legendDw": 0.1}
0109
0110 _SelectedCaloParticles = PlotGroup("SelectedCaloParticles", [
0111 Plot("num_caloparticle_eta", xtitle="", **_common),
0112 Plot("caloparticle_energy", xtitle="", **_common),
0113 Plot("caloparticle_pt", xtitle="", **_common),
0114 Plot("caloparticle_phi", xtitle="", **_common),
0115 Plot("Eta vs Zorigin", xtitle="", **_common),
0116 ])
0117
0118
0119 _common = {"stat": True, "drawStyle": "hist", "statx": 0.38, "staty": 0.68 }
0120 _num_reco_cluster_eta = PlotGroup("num_reco_cluster_eta", [
0121 Plot("num_reco_cluster_eta", xtitle="", **_common),
0122 ],ncols=1)
0123
0124 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65 }
0125
0126 _mixedhitsclusters = PlotGroup("mixedhitsclusters", [
0127 Plot("mixedhitscluster_zminus", xtitle="", **_common),
0128 Plot("mixedhitscluster_zplus", xtitle="", **_common),
0129 ],ncols=2)
0130
0131 _mixedhitssimclusters = PlotGroup("mixedhitssimclusters", [
0132 Plot("mixedhitssimcluster_zminus", xtitle="", **_common),
0133 Plot("mixedhitssimcluster_zplus", xtitle="", **_common),
0134 ],ncols=2)
0135
0136
0137 _common = {"stat": True, "drawStyle": "hist", "statx": 0.45, "staty": 0.65 }
0138
0139 _energyclustered = PlotGroup("energyclustered", [
0140 Plot("energyclustered_zminus", xtitle="", **_common),
0141 Plot("energyclustered_zplus", xtitle="", **_common),
0142 ],ncols=2)
0143
0144
0145 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65 }
0146
0147 _longdepthbarycentre = PlotGroup("longdepthbarycentre", [
0148 Plot("longdepthbarycentre_zminus", xtitle="", **_common),
0149 Plot("longdepthbarycentre_zplus", xtitle="", **_common),
0150 ],ncols=2)
0151
0152 _common_layerperthickness = {}
0153 _common_layerperthickness.update(_common)
0154 _common_layerperthickness['xmin'] = 0.
0155 _common_layerperthickness['xmax'] = 100
0156
0157 _totclusternum_thick = PlotGroup("totclusternum_thick", [
0158 Plot("totclusternum_thick_120", xtitle="", **_common_layerperthickness),
0159 Plot("totclusternum_thick_200", xtitle="", **_common_layerperthickness),
0160 Plot("totclusternum_thick_300", xtitle="", **_common_layerperthickness),
0161 Plot("totclusternum_thick_-1", xtitle="", **_common_layerperthickness),
0162 Plot("mixedhitscluster", xtitle="", **_common_layerperthickness),
0163 ])
0164
0165 _totsimclusternum_thick = PlotGroup("totsimclusternum_thick", [
0166 Plot("totsimclusternum_thick_120", xtitle="", **_common_layerperthickness),
0167 Plot("totsimclusternum_thick_200", xtitle="", **_common_layerperthickness),
0168 Plot("totsimclusternum_thick_300", xtitle="", **_common_layerperthickness),
0169 Plot("totsimclusternum_thick_-1", xtitle="", **_common_layerperthickness),
0170 Plot("mixedhitssimcluster", xtitle="", **_common_layerperthickness),
0171 ])
0172
0173
0174 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65, "ylog": True}
0175
0176 _cellsenedens_thick = PlotGroup("cellsenedens_thick", [
0177 Plot("cellsenedens_thick_120", xtitle="", **_common),
0178 Plot("cellsenedens_thick_200", xtitle="", **_common),
0179 Plot("cellsenedens_thick_300", xtitle="", **_common),
0180 Plot("cellsenedens_thick_-1", xtitle="", **_common),
0181 ])
0182
0183
0184 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65 }
0185
0186
0187
0188
0189
0190 _totclusternum_layer_EE_zminus = PlotGroup("totclusternum_layer_EE", [
0191 Plot("totclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0192 ], ncols=7)
0193
0194 _totclusternum_layer_FH_zminus = PlotGroup("totclusternum_layer_FH", [
0195 Plot("totclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0196 ], ncols=7)
0197
0198 _totclusternum_layer_BH_zminus = PlotGroup("totclusternum_layer_BH", [
0199 Plot("totclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0200 ], ncols=7)
0201
0202 _totsimclusternum_layer_EE_zminus = PlotGroup("totsimclusternum_layer_EE_zminus", [
0203 Plot("totsimclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0204 ], ncols=4)
0205
0206 _totsimclusternum_layer_FH_zminus = PlotGroup("totsimclusternum_layer_FH_zminus", [
0207 Plot("totsimclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0208 ], ncols=4)
0209
0210 _totsimclusternum_layer_BH_zminus = PlotGroup("totsimclusternum_layer_BH_zminus", [
0211 Plot("totsimclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0212 ], ncols=4)
0213
0214 _energyclustered_perlayer_EE_zminus = PlotGroup("energyclustered_perlayer_EE", [
0215 Plot("energyclustered_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0216 ], ncols=7)
0217
0218 _energyclustered_perlayer_FH_zminus = PlotGroup("energyclustered_perlayer_FH", [
0219 Plot("energyclustered_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0220 ], ncols=7)
0221
0222 _energyclustered_perlayer_BH_zminus = PlotGroup("energyclustered_perlayer_BH", [
0223 Plot("energyclustered_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0224 ], ncols=7)
0225
0226
0227
0228 _common_cells = {}
0229 _common_cells.update(_common)
0230 _common_cells["xmin"] = 0
0231 _common_cells["xmax"] = 50
0232 _common_cells["ymin"] = 0.1
0233 _common_cells["ymax"] = 10000
0234 _common_cells["ylog"] = True
0235 _cellsnum_perthick_perlayer_120_EE_zminus = PlotGroup("cellsnum_perthick_perlayer_120_EE", [
0236 Plot("cellsnum_perthick_perlayer_120_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzm)
0237 ], ncols=7)
0238
0239 _cellsnum_perthick_perlayer_120_FH_zminus = PlotGroup("cellsnum_perthick_perlayer_120_FH", [
0240 Plot("cellsnum_perthick_perlayer_120_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzm,lastLayerFHzm)
0241 ], ncols=7)
0242
0243 _cellsnum_perthick_perlayer_120_BH_zminus = PlotGroup("cellsnum_perthick_perlayer_120_BH", [
0244 Plot("cellsnum_perthick_perlayer_120_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerFHzm,maxlayerzm)
0245 ], ncols=7)
0246
0247
0248 _cellsnum_perthick_perlayer_200_EE_zminus = PlotGroup("cellsnum_perthick_perlayer_200_EE", [
0249 Plot("cellsnum_perthick_perlayer_200_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzm)
0250 ], ncols=7)
0251
0252 _cellsnum_perthick_perlayer_200_FH_zminus = PlotGroup("cellsnum_perthick_perlayer_200_FH", [
0253 Plot("cellsnum_perthick_perlayer_200_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzm,lastLayerFHzm)
0254 ], ncols=7)
0255
0256 _cellsnum_perthick_perlayer_200_BH_zminus = PlotGroup("cellsnum_perthick_perlayer_200_BH", [
0257 Plot("cellsnum_perthick_perlayer_200_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerFHzm,maxlayerzm)
0258 ], ncols=7)
0259
0260
0261 _cellsnum_perthick_perlayer_300_EE_zminus = PlotGroup("cellsnum_perthick_perlayer_300_EE", [
0262 Plot("cellsnum_perthick_perlayer_300_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzm)
0263 ], ncols=7)
0264
0265 _cellsnum_perthick_perlayer_300_FH_zminus = PlotGroup("cellsnum_perthick_perlayer_300_FH", [
0266 Plot("cellsnum_perthick_perlayer_300_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzm,lastLayerFHzm)
0267 ], ncols=7)
0268
0269 _cellsnum_perthick_perlayer_300_BH_zminus = PlotGroup("cellsnum_perthick_perlayer_300_BH", [
0270 Plot("cellsnum_perthick_perlayer_300_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerFHzm,maxlayerzm)
0271 ], ncols=7)
0272
0273
0274 _cellsnum_perthick_perlayer_scint_EE_zminus = PlotGroup("cellsnum_perthick_perlayer_Sci_EE", [
0275 Plot("cellsnum_perthick_perlayer_-1_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzm)
0276 ], ncols=7)
0277
0278 _cellsnum_perthick_perlayer_scint_FH_zminus = PlotGroup("cellsnum_perthick_perlayer_Sci_FH", [
0279 Plot("cellsnum_perthick_perlayer_-1_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzm,lastLayerFHzm)
0280 ], ncols=7)
0281
0282 _cellsnum_perthick_perlayer_scint_BH_zminus = PlotGroup("cellsnum_perthick_perlayer_Sci_BH", [
0283 Plot("cellsnum_perthick_perlayer_-1_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerFHzm,maxlayerzm)
0284 ], ncols=7)
0285
0286
0287
0288 _common_distance = {}
0289 _common_distance.update(_common)
0290 _common_distance.update(_legend_common)
0291 _common_distance["xmax"] = 150
0292 _common_distance["stat"] = False
0293 _common_distance["ymin"] = 1e-3
0294 _common_distance["ymax"] = 10000
0295 _common_distance["ylog"] = True
0296
0297 _distancetomaxcell_perthickperlayer_120_EE_zminus = PlotGroup("distancetomaxcell_perthickperlayer_120_EE", [
0298 Plot("distancetomaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0299 ], ncols=7)
0300
0301 _distancetomaxcell_perthickperlayer_120_FH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_120_FH", [
0302 Plot("distancetomaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0303 ], ncols=7)
0304
0305 _distancetomaxcell_perthickperlayer_120_BH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_120_BH", [
0306 Plot("distancetomaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0307 ], ncols=7)
0308
0309
0310 _distancetomaxcell_perthickperlayer_200_EE_zminus = PlotGroup("distancetomaxcell_perthickperlayer_200_EE", [
0311 Plot("distancetomaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0312 ], ncols=7)
0313
0314 _distancetomaxcell_perthickperlayer_200_FH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_200_FH", [
0315 Plot("distancetomaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0316 ], ncols=7)
0317
0318 _distancetomaxcell_perthickperlayer_200_BH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_200_BH", [
0319 Plot("distancetomaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0320 ], ncols=7)
0321
0322
0323 _distancetomaxcell_perthickperlayer_300_EE_zminus = PlotGroup("distancetomaxcell_perthickperlayer_300_EE", [
0324 Plot("distancetomaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0325 ], ncols=7)
0326
0327 _distancetomaxcell_perthickperlayer_300_FH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_300_FH", [
0328 Plot("distancetomaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0329 ], ncols=7)
0330
0331 _distancetomaxcell_perthickperlayer_300_BH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_300_BH", [
0332 Plot("distancetomaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0333 ], ncols=7)
0334
0335
0336 _distancetomaxcell_perthickperlayer_scint_EE_zminus = PlotGroup("distancetomaxcell_perthickperlayer_Sci_EE", [
0337 Plot("distancetomaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0338 ], ncols=7)
0339
0340 _distancetomaxcell_perthickperlayer_scint_FH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_Sci_FH", [
0341 Plot("distancetomaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0342 ], ncols=7)
0343
0344 _distancetomaxcell_perthickperlayer_scint_BH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_Sci_BH", [
0345 Plot("distancetomaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0346 ], ncols=7)
0347
0348
0349
0350 _distancebetseedandmaxcell_perthickperlayer_120_EE_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_120_EE", [
0351 Plot("distancebetseedandmaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0352 ], ncols=7)
0353
0354 _distancebetseedandmaxcell_perthickperlayer_120_FH_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_120_FH", [
0355 Plot("distancebetseedandmaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0356 ], ncols=7)
0357
0358 _distancebetseedandmaxcell_perthickperlayer_120_BH_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_120_BH", [
0359 Plot("distancebetseedandmaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0360 ], ncols=7)
0361
0362
0363 _distancebetseedandmaxcell_perthickperlayer_200_EE_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_200_EE", [
0364 Plot("distancebetseedandmaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0365 ], ncols=7)
0366
0367 _distancebetseedandmaxcell_perthickperlayer_200_FH_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_200_FH", [
0368 Plot("distancebetseedandmaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0369 ], ncols=7)
0370
0371 _distancebetseedandmaxcell_perthickperlayer_200_BH_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_200_BH", [
0372 Plot("distancebetseedandmaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0373 ], ncols=7)
0374
0375
0376 _distancebetseedandmaxcell_perthickperlayer_300_EE_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_300_EE", [
0377 Plot("distancebetseedandmaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0378 ], ncols=7)
0379
0380 _distancebetseedandmaxcell_perthickperlayer_300_FH_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_300_FH", [
0381 Plot("distancebetseedandmaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0382 ], ncols=7)
0383
0384 _distancebetseedandmaxcell_perthickperlayer_300_BH_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_300_BH", [
0385 Plot("distancebetseedandmaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0386 ], ncols=7)
0387
0388
0389 _distancebetseedandmaxcell_perthickperlayer_scint_EE_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_Sci_EE", [
0390 Plot("distancebetseedandmaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0391 ], ncols=7)
0392
0393 _distancebetseedandmaxcell_perthickperlayer_scint_FH_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_Sci_FH", [
0394 Plot("distancebetseedandmaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0395 ], ncols=7)
0396
0397 _distancebetseedandmaxcell_perthickperlayer_scint_BH_zminus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_Sci_BH", [
0398 Plot("distancebetseedandmaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0399 ], ncols=7)
0400
0401
0402
0403 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_EE_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_EE", [
0404 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0405 ], ncols=7)
0406
0407 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_FH_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_FH", [
0408 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0409 ], ncols=7)
0410
0411 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_BH_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_BH", [
0412 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0413 ], ncols=7)
0414
0415
0416 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_EE_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_EE", [
0417 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0418 ], ncols=7)
0419
0420 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_FH_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_FH", [
0421 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0422 ], ncols=7)
0423
0424 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_BH_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_BH", [
0425 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0426 ], ncols=7)
0427
0428
0429 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_EE_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_EE", [
0430 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0431 ], ncols=7)
0432
0433 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_FH_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_FH", [
0434 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0435 ], ncols=7)
0436
0437 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_BH_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_BH", [
0438 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0439 ], ncols=7)
0440
0441
0442 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_EE_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_Sci_EE", [
0443 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0444 ], ncols=7)
0445
0446 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_FH_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_Sci_FH", [
0447 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0448 ], ncols=7)
0449
0450 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_BH_zminus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_Sci_BH", [
0451 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0452 ], ncols=7)
0453
0454
0455
0456 _distancetoseedcell_perthickperlayer_120_EE_zminus = PlotGroup("distancetoseedcell_perthickperlayer_120_EE", [
0457 Plot("distancetoseedcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0458 ], ncols=7)
0459
0460 _distancetoseedcell_perthickperlayer_120_FH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_120_FH", [
0461 Plot("distancetoseedcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0462 ], ncols=7)
0463
0464 _distancetoseedcell_perthickperlayer_120_BH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_120_BH", [
0465 Plot("distancetoseedcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0466 ], ncols=7)
0467
0468
0469 _distancetoseedcell_perthickperlayer_200_EE_zminus = PlotGroup("distancetoseedcell_perthickperlayer_200_EE", [
0470 Plot("distancetoseedcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0471 ], ncols=7)
0472
0473 _distancetoseedcell_perthickperlayer_200_FH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_200_FH", [
0474 Plot("distancetoseedcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0475 ], ncols=7)
0476
0477 _distancetoseedcell_perthickperlayer_200_BH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_200_BH", [
0478 Plot("distancetoseedcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0479 ], ncols=7)
0480
0481
0482 _distancetoseedcell_perthickperlayer_300_EE_zminus = PlotGroup("distancetoseedcell_perthickperlayer_300_EE", [
0483 Plot("distancetoseedcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0484 ], ncols=7)
0485
0486 _distancetoseedcell_perthickperlayer_300_FH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_300_FH", [
0487 Plot("distancetoseedcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0488 ], ncols=7)
0489
0490 _distancetoseedcell_perthickperlayer_300_BH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_300_BH", [
0491 Plot("distancetoseedcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0492 ], ncols=7)
0493
0494
0495 _distancetoseedcell_perthickperlayer_scint_EE_zminus = PlotGroup("distancetoseedcell_perthickperlayer_Sci_EE", [
0496 Plot("distancetoseedcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0497 ], ncols=7)
0498
0499 _distancetoseedcell_perthickperlayer_scint_FH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_Sci_FH", [
0500 Plot("distancetoseedcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0501 ], ncols=7)
0502
0503 _distancetoseedcell_perthickperlayer_scint_BH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_Sci_BH", [
0504 Plot("distancetoseedcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0505 ], ncols=7)
0506
0507
0508
0509
0510 _common = {"stat": True, "drawStyle": "EP", "staty": 0.65 }
0511
0512 _distancetomaxcell_perthickperlayer_eneweighted_120_EE_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_120_EE", [
0513 Plot("distancetomaxcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0514 ], ncols=7)
0515
0516 _distancetomaxcell_perthickperlayer_eneweighted_120_FH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_120_FH", [
0517 Plot("distancetomaxcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0518 ], ncols=7)
0519
0520 _distancetomaxcell_perthickperlayer_eneweighted_120_BH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_120_BH", [
0521 Plot("distancetomaxcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0522 ], ncols=7)
0523
0524
0525 _distancetomaxcell_perthickperlayer_eneweighted_200_EE_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_200_EE", [
0526 Plot("distancetomaxcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0527 ], ncols=7)
0528
0529 _distancetomaxcell_perthickperlayer_eneweighted_200_FH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_200_FH", [
0530 Plot("distancetomaxcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0531 ], ncols=7)
0532
0533 _distancetomaxcell_perthickperlayer_eneweighted_200_BH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_200_BH", [
0534 Plot("distancetomaxcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0535 ], ncols=7)
0536
0537
0538 _distancetomaxcell_perthickperlayer_eneweighted_300_EE_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_300_EE", [
0539 Plot("distancetomaxcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0540 ], ncols=7)
0541
0542 _distancetomaxcell_perthickperlayer_eneweighted_300_FH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_300_FH", [
0543 Plot("distancetomaxcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0544 ], ncols=7)
0545
0546 _distancetomaxcell_perthickperlayer_eneweighted_300_BH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_300_BH", [
0547 Plot("distancetomaxcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0548 ], ncols=7)
0549
0550 _distancetomaxcell_perthickperlayer_eneweighted_scint_EE_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_Sci_EE", [
0551 Plot("distancetomaxcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0552 ], ncols=7)
0553
0554 _distancetomaxcell_perthickperlayer_eneweighted_scint_FH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_Sci_FH", [
0555 Plot("distancetomaxcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0556 ], ncols=7)
0557
0558 _distancetomaxcell_perthickperlayer_eneweighted_scint_BH_zminus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_Sci_BH", [
0559 Plot("distancetomaxcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0560 ], ncols=7)
0561
0562
0563
0564
0565 _distancetoseedcell_perthickperlayer_eneweighted_120_EE_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_120_EE", [
0566 Plot("distancetoseedcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0567 ], ncols=7)
0568
0569 _distancetoseedcell_perthickperlayer_eneweighted_120_FH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_120_FH", [
0570 Plot("distancetoseedcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0571 ], ncols=7)
0572
0573 _distancetoseedcell_perthickperlayer_eneweighted_120_BH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_120_BH", [
0574 Plot("distancetoseedcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0575 ], ncols=7)
0576
0577
0578 _distancetoseedcell_perthickperlayer_eneweighted_200_EE_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_200_EE", [
0579 Plot("distancetoseedcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0580 ], ncols=7)
0581
0582 _distancetoseedcell_perthickperlayer_eneweighted_200_FH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_200_FH", [
0583 Plot("distancetoseedcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0584 ], ncols=7)
0585
0586 _distancetoseedcell_perthickperlayer_eneweighted_200_BH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_200_BH", [
0587 Plot("distancetoseedcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0588 ], ncols=7)
0589
0590
0591 _distancetoseedcell_perthickperlayer_eneweighted_300_EE_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_300_EE", [
0592 Plot("distancetoseedcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0593 ], ncols=7)
0594
0595 _distancetoseedcell_perthickperlayer_eneweighted_300_FH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_300_FH", [
0596 Plot("distancetoseedcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0597 ], ncols=7)
0598
0599 _distancetoseedcell_perthickperlayer_eneweighted_300_BH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_300_BH", [
0600 Plot("distancetoseedcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0601 ], ncols=7)
0602
0603
0604 _distancetoseedcell_perthickperlayer_eneweighted_scint_EE_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_Sci_EE", [
0605 Plot("distancetoseedcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
0606 ], ncols=7)
0607
0608 _distancetoseedcell_perthickperlayer_eneweighted_scint_FH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_Sci_FH", [
0609 Plot("distancetoseedcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
0610 ], ncols=7)
0611
0612 _distancetoseedcell_perthickperlayer_eneweighted_scint_BH_zminus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_Sci_BH", [
0613 Plot("distancetoseedcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
0614 ], ncols=7)
0615
0616
0617 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65 }
0618
0619
0620
0621
0622 _totclusternum_layer_EE_zplus = PlotGroup("totclusternum_layer_EE", [
0623 Plot("totclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0624 ], ncols=7)
0625
0626 _totclusternum_layer_FH_zplus = PlotGroup("totclusternum_layer_FH", [
0627 Plot("totclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0628 ], ncols=7)
0629
0630 _totclusternum_layer_BH_zplus = PlotGroup("totclusternum_layer_BH", [
0631 Plot("totclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0632 ], ncols=7)
0633
0634 _totsimclusternum_layer_EE_zplus = PlotGroup("totsimclusternum_layer_EE_zplus", [
0635 Plot("totsimclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0636 ], ncols=4)
0637
0638 _totsimclusternum_layer_FH_zplus = PlotGroup("totsimclusternum_layer_FH_zplus", [
0639 Plot("totsimclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0640 ], ncols=4)
0641
0642 _totsimclusternum_layer_BH_zplus = PlotGroup("totsimclusternum_layer_BH_zplus", [
0643 Plot("totsimclusternum_layer_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0644 ], ncols=4)
0645
0646 _energyclustered_perlayer_EE_zplus = PlotGroup("energyclustered_perlayer_EE", [
0647 Plot("energyclustered_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0648 ], ncols=7)
0649
0650 _energyclustered_perlayer_FH_zplus = PlotGroup("energyclustered_perlayer_FH", [
0651 Plot("energyclustered_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0652 ], ncols=7)
0653
0654 _energyclustered_perlayer_BH_zplus = PlotGroup("energyclustered_perlayer_BH", [
0655 Plot("energyclustered_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0656 ], ncols=7)
0657
0658
0659
0660 _cellsnum_perthick_perlayer_120_EE_zplus = PlotGroup("cellsnum_perthick_perlayer_120_EE", [
0661 Plot("cellsnum_perthick_perlayer_120_{:02d}".format(i), xtitle="", **_common_cells) for i in range(maxlayerzm,lastLayerEEzp)
0662 ], ncols=7)
0663
0664 _cellsnum_perthick_perlayer_120_FH_zplus = PlotGroup("cellsnum_perthick_perlayer_120_FH", [
0665 Plot("cellsnum_perthick_perlayer_120_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzp,lastLayerFHzp)
0666 ], ncols=7)
0667 _cellsnum_perthick_perlayer_120_BH_zplus = PlotGroup("cellsnum_perthick_perlayer_120_BH", [
0668 Plot("cellsnum_perthick_perlayer_120_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerFHzp,maxlayerzp)
0669 ], ncols=7)
0670
0671
0672 _cellsnum_perthick_perlayer_200_EE_zplus = PlotGroup("cellsnum_perthick_perlayer_200_EE", [
0673 Plot("cellsnum_perthick_perlayer_200_{:02d}".format(i), xtitle="", **_common_cells) for i in range(maxlayerzm,lastLayerEEzp)
0674 ], ncols=7)
0675
0676 _cellsnum_perthick_perlayer_200_FH_zplus = PlotGroup("cellsnum_perthick_perlayer_200_FH", [
0677 Plot("cellsnum_perthick_perlayer_200_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzp,lastLayerFHzp)
0678 ], ncols=7)
0679
0680 _cellsnum_perthick_perlayer_200_BH_zplus = PlotGroup("cellsnum_perthick_perlayer_200_BH", [
0681 Plot("cellsnum_perthick_perlayer_200_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerFHzp,maxlayerzp)
0682 ], ncols=7)
0683
0684 _cellsnum_perthick_perlayer_300_EE_zplus = PlotGroup("cellsnum_perthick_perlayer_300_EE", [
0685 Plot("cellsnum_perthick_perlayer_300_{:02d}".format(i), xtitle="", **_common_cells) for i in range(maxlayerzm,lastLayerEEzp)
0686 ], ncols=7)
0687
0688 _cellsnum_perthick_perlayer_300_FH_zplus = PlotGroup("cellsnum_perthick_perlayer_300_FH", [
0689 Plot("cellsnum_perthick_perlayer_300_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzp,lastLayerFHzp)
0690 ], ncols=7)
0691 _cellsnum_perthick_perlayer_300_BH_zplus = PlotGroup("cellsnum_perthick_perlayer_300_BH", [
0692 Plot("cellsnum_perthick_perlayer_300_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerFHzp,maxlayerzp)
0693 ], ncols=7)
0694
0695
0696 _cellsnum_perthick_perlayer_scint_EE_zplus = PlotGroup("cellsnum_perthick_perlayer_Sci_EE", [
0697 Plot("cellsnum_perthick_perlayer_-1_{:02d}".format(i), xtitle="", **_common_cells) for i in range(maxlayerzm,lastLayerEEzp)
0698 ], ncols=7)
0699
0700 _cellsnum_perthick_perlayer_scint_FH_zplus = PlotGroup("cellsnum_perthick_perlayer_Sci_FH", [
0701 Plot("cellsnum_perthick_perlayer_-1_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerEEzp,lastLayerFHzp)
0702 ], ncols=7)
0703
0704 _cellsnum_perthick_perlayer_scint_BH_zplus = PlotGroup("cellsnum_perthick_perlayer_Sci_BH", [
0705 Plot("cellsnum_perthick_perlayer_-1_{:02d}".format(i), xtitle="", **_common_cells) for i in range(lastLayerFHzp,maxlayerzp)
0706 ], ncols=7)
0707
0708
0709
0710 _common_distance = {}
0711 _common_distance.update(_common)
0712 _common_distance.update(_legend_common)
0713 _common_distance["xmax"] = 150
0714 _common_distance["stat"] = False
0715 _common_distance["ymin"] = 1e-3
0716 _common_distance["ymax"] = 10000
0717 _common_distance["ylog"] = True
0718
0719 _distancetomaxcell_perthickperlayer_120_EE_zplus = PlotGroup("distancetomaxcell_perthickperlayer_120_EE", [
0720 Plot("distancetomaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0721 ], ncols=7)
0722
0723 _distancetomaxcell_perthickperlayer_120_FH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_120_FH", [
0724 Plot("distancetomaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0725 ], ncols=7)
0726
0727 _distancetomaxcell_perthickperlayer_120_BH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_120_BH", [
0728 Plot("distancetomaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0729 ], ncols=7)
0730
0731
0732 _distancetomaxcell_perthickperlayer_200_EE_zplus = PlotGroup("distancetomaxcell_perthickperlayer_200_EE", [
0733 Plot("distancetomaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0734 ], ncols=7)
0735
0736 _distancetomaxcell_perthickperlayer_200_FH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_200_FH", [
0737 Plot("distancetomaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0738 ], ncols=7)
0739
0740 _distancetomaxcell_perthickperlayer_200_BH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_200_BH", [
0741 Plot("distancetomaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0742 ], ncols=7)
0743
0744
0745 _distancetomaxcell_perthickperlayer_300_EE_zplus = PlotGroup("distancetomaxcell_perthickperlayer_300_EE", [
0746 Plot("distancetomaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0747 ], ncols=7)
0748
0749 _distancetomaxcell_perthickperlayer_300_FH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_300_FH", [
0750 Plot("distancetomaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0751 ], ncols=7)
0752
0753 _distancetomaxcell_perthickperlayer_300_BH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_300_BH", [
0754 Plot("distancetomaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0755 ], ncols=7)
0756
0757
0758 _distancetomaxcell_perthickperlayer_scint_EE_zplus = PlotGroup("distancetomaxcell_perthickperlayer_Sci_EE", [
0759 Plot("distancetomaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0760 ], ncols=7)
0761
0762 _distancetomaxcell_perthickperlayer_scint_FH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_Sci_FH", [
0763 Plot("distancetomaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0764 ], ncols=7)
0765
0766 _distancetomaxcell_perthickperlayer_scint_BH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_Sci_BH", [
0767 Plot("distancetomaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0768 ], ncols=7)
0769
0770
0771
0772 _distancebetseedandmaxcell_perthickperlayer_120_EE_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_120_EE", [
0773 Plot("distancebetseedandmaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0774 ], ncols=7)
0775
0776 _distancebetseedandmaxcell_perthickperlayer_120_FH_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_120_FH", [
0777 Plot("distancebetseedandmaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0778 ], ncols=7)
0779
0780 _distancebetseedandmaxcell_perthickperlayer_120_BH_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_120_BH", [
0781 Plot("distancebetseedandmaxcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0782 ], ncols=7)
0783
0784
0785 _distancebetseedandmaxcell_perthickperlayer_200_EE_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_200_EE", [
0786 Plot("distancebetseedandmaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0787 ], ncols=7)
0788
0789 _distancebetseedandmaxcell_perthickperlayer_200_FH_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_200_FH", [
0790 Plot("distancebetseedandmaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0791 ], ncols=7)
0792
0793 _distancebetseedandmaxcell_perthickperlayer_200_BH_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_200_BH", [
0794 Plot("distancebetseedandmaxcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0795 ], ncols=7)
0796
0797
0798 _distancebetseedandmaxcell_perthickperlayer_300_EE_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_300_EE", [
0799 Plot("distancebetseedandmaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0800 ], ncols=7)
0801
0802 _distancebetseedandmaxcell_perthickperlayer_300_FH_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_300_FH", [
0803 Plot("distancebetseedandmaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0804 ], ncols=7)
0805
0806 _distancebetseedandmaxcell_perthickperlayer_300_BH_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_300_BH", [
0807 Plot("distancebetseedandmaxcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0808 ], ncols=7)
0809
0810
0811 _distancebetseedandmaxcell_perthickperlayer_scint_EE_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_Sci_EE", [
0812 Plot("distancebetseedandmaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0813 ], ncols=7)
0814
0815 _distancebetseedandmaxcell_perthickperlayer_scint_FH_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_Sci_FH", [
0816 Plot("distancebetseedandmaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0817 ], ncols=7)
0818
0819 _distancebetseedandmaxcell_perthickperlayer_scint_BH_zplus = PlotGroup("distancebetseedandmaxcell_perthickperlayer_Sci_BH", [
0820 Plot("distancebetseedandmaxcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0821 ], ncols=7)
0822
0823
0824
0825 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_EE_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_EE", [
0826 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0827 ], ncols=7)
0828
0829 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_FH_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_FH", [
0830 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0831 ], ncols=7)
0832
0833 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_BH_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_BH", [
0834 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0835 ], ncols=7)
0836
0837
0838 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_EE_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_EE", [
0839 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0840 ], ncols=7)
0841
0842 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_FH_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_FH", [
0843 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0844 ], ncols=7)
0845
0846 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_BH_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_BH", [
0847 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0848 ], ncols=7)
0849
0850
0851 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_EE_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_EE", [
0852 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0853 ], ncols=7)
0854
0855 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_FH_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_FH", [
0856 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0857 ], ncols=7)
0858
0859 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_BH_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_BH", [
0860 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0861 ], ncols=7)
0862
0863
0864 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_EE_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_Sci_EE", [
0865 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0866 ], ncols=7)
0867
0868 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_FH_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_Sci_FH", [
0869 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0870 ], ncols=7)
0871
0872 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_BH_zplus = PlotGroup("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_Sci_BH", [
0873 Plot("distancebetseedandmaxcellvsclusterenergy_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0874 ], ncols=7)
0875
0876
0877
0878
0879 _distancetoseedcell_perthickperlayer_120_EE_zplus = PlotGroup("distancetoseedcell_perthickperlayer_120_EE", [
0880 Plot("distancetoseedcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0881 ], ncols=7)
0882
0883 _distancetoseedcell_perthickperlayer_120_FH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_120_FH", [
0884 Plot("distancetoseedcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0885 ], ncols=7)
0886
0887 _distancetoseedcell_perthickperlayer_120_BH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_120_BH", [
0888 Plot("distancetoseedcell_perthickperlayer_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0889 ], ncols=7)
0890
0891
0892 _distancetoseedcell_perthickperlayer_200_EE_zplus = PlotGroup("distancetoseedcell_perthickperlayer_200_EE", [
0893 Plot("distancetoseedcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0894 ], ncols=7)
0895
0896 _distancetoseedcell_perthickperlayer_200_FH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_200_FH", [
0897 Plot("distancetoseedcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0898 ], ncols=7)
0899
0900 _distancetoseedcell_perthickperlayer_200_BH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_200_BH", [
0901 Plot("distancetoseedcell_perthickperlayer_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0902 ], ncols=7)
0903
0904
0905 _distancetoseedcell_perthickperlayer_300_EE_zplus = PlotGroup("distancetoseedcell_perthickperlayer_300_EE", [
0906 Plot("distancetoseedcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0907 ], ncols=7)
0908
0909 _distancetoseedcell_perthickperlayer_300_FH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_300_FH", [
0910 Plot("distancetoseedcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0911 ], ncols=7)
0912
0913 _distancetoseedcell_perthickperlayer_300_BH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_300_BH", [
0914 Plot("distancetoseedcell_perthickperlayer_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0915 ], ncols=7)
0916
0917
0918 _distancetoseedcell_perthickperlayer_scint_EE_zplus = PlotGroup("distancetoseedcell_perthickperlayer_Sci_EE", [
0919 Plot("distancetoseedcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0920 ], ncols=7)
0921
0922 _distancetoseedcell_perthickperlayer_scint_FH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_Sci_FH", [
0923 Plot("distancetoseedcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0924 ], ncols=7)
0925
0926 _distancetoseedcell_perthickperlayer_scint_BH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_Sci_BH", [
0927 Plot("distancetoseedcell_perthickperlayer_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0928 ], ncols=7)
0929
0930
0931
0932
0933 _common = {"stat": True, "drawStyle": "EP", "staty": 0.65 }
0934
0935
0936 _distancetomaxcell_perthickperlayer_eneweighted_120_EE_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_120_EE", [
0937 Plot("distancetomaxcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0938 ], ncols=7)
0939
0940 _distancetomaxcell_perthickperlayer_eneweighted_120_FH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_120_FH", [
0941 Plot("distancetomaxcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0942 ], ncols=7)
0943
0944 _distancetomaxcell_perthickperlayer_eneweighted_120_BH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_120_BH", [
0945 Plot("distancetomaxcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0946 ], ncols=7)
0947
0948
0949 _distancetomaxcell_perthickperlayer_eneweighted_200_EE_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_200_EE", [
0950 Plot("distancetomaxcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0951 ], ncols=7)
0952 _distancetomaxcell_perthickperlayer_eneweighted_200_FH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_200_FH", [
0953 Plot("distancetomaxcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0954 ], ncols=7)
0955
0956 _distancetomaxcell_perthickperlayer_eneweighted_200_BH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_200_BH", [
0957 Plot("distancetomaxcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0958 ], ncols=7)
0959
0960
0961 _distancetomaxcell_perthickperlayer_eneweighted_300_EE_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_300_EE", [
0962 Plot("distancetomaxcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0963 ], ncols=7)
0964
0965 _distancetomaxcell_perthickperlayer_eneweighted_300_FH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_300_FH", [
0966 Plot("distancetomaxcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0967 ], ncols=7)
0968
0969 _distancetomaxcell_perthickperlayer_eneweighted_300_BH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_300_BH", [
0970 Plot("distancetomaxcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0971 ], ncols=7)
0972
0973
0974 _distancetomaxcell_perthickperlayer_eneweighted_scint_EE_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_Sci_EE", [
0975 Plot("distancetomaxcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0976 ], ncols=7)
0977
0978 _distancetomaxcell_perthickperlayer_eneweighted_scint_FH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_Sci_FH", [
0979 Plot("distancetomaxcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0980 ], ncols=7)
0981
0982 _distancetomaxcell_perthickperlayer_eneweighted_scint_BH_zplus = PlotGroup("distancetomaxcell_perthickperlayer_eneweighted_Sci_BH", [
0983 Plot("distancetomaxcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0984 ], ncols=7)
0985
0986
0987
0988 _distancetoseedcell_perthickperlayer_eneweighted_120_EE_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_120_EE", [
0989 Plot("distancetoseedcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
0990 ], ncols=7)
0991
0992 _distancetoseedcell_perthickperlayer_eneweighted_120_FH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_120_FH", [
0993 Plot("distancetoseedcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
0994 ], ncols=7)
0995
0996 _distancetoseedcell_perthickperlayer_eneweighted_120_BH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_120_BH", [
0997 Plot("distancetoseedcell_perthickperlayer_eneweighted_120_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
0998 ], ncols=7)
0999
1000
1001 _distancetoseedcell_perthickperlayer_eneweighted_200_EE_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_200_EE", [
1002 Plot("distancetoseedcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
1003 ], ncols=7)
1004
1005 _distancetoseedcell_perthickperlayer_eneweighted_200_FH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_200_FH", [
1006 Plot("distancetoseedcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
1007 ], ncols=7)
1008
1009 _distancetoseedcell_perthickperlayer_eneweighted_200_BH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_200_BH", [
1010 Plot("distancetoseedcell_perthickperlayer_eneweighted_200_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
1011 ], ncols=7)
1012
1013
1014 _distancetoseedcell_perthickperlayer_eneweighted_300_EE_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_300_EE", [
1015 Plot("distancetoseedcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
1016 ], ncols=7)
1017
1018 _distancetoseedcell_perthickperlayer_eneweighted_300_FH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_300_FH", [
1019 Plot("distancetoseedcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
1020 ], ncols=7)
1021
1022 _distancetoseedcell_perthickperlayer_eneweighted_300_BH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_300_BH", [
1023 Plot("distancetoseedcell_perthickperlayer_eneweighted_300_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
1024 ], ncols=7)
1025
1026
1027 _distancetoseedcell_perthickperlayer_eneweighted_scint_EE_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_Sci_EE", [
1028 Plot("distancetoseedcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
1029 ], ncols=7)
1030
1031 _distancetoseedcell_perthickperlayer_eneweighted_scint_FH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_Sci_FH", [
1032 Plot("distancetoseedcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
1033 ], ncols=7)
1034
1035 _distancetoseedcell_perthickperlayer_eneweighted_scint_BH_zplus = PlotGroup("distancetoseedcell_perthickperlayer_eneweighted_Sci_BH", [
1036 Plot("distancetoseedcell_perthickperlayer_eneweighted_-1_{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
1037 ], ncols=7)
1038
1039 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65 }
1040
1041
1042
1043
1044
1045 _common_score = {"title": "Score CaloParticle to LayerClusters in z-",
1046 "stat": False,
1047 "ymin": 0.1,
1048 "ymax": 1000,
1049 "xmin": 0,
1050 "xmax": 1,
1051 "drawStyle": "hist",
1052 "lineWidth": 1,
1053 "ylog": True
1054 }
1055 _common_score.update(_legend_common)
1056 _score_caloparticle_to_layerclusters_zminus = PlotGroup("score_caloparticle_to_layercluster", [
1057 Plot("Score_caloparticle2layercl_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_score) for i in range(0,maxlayerzm)
1058 ], ncols=10 )
1059
1060 _common_score = {"title": "Score LayerCluster to CaloParticles in z-",
1061 "stat": False,
1062 "ymin": 0.1,
1063 "ymax": 1000,
1064 "xmin": 0,
1065 "xmax": 1,
1066 "drawStyle": "hist",
1067 "lineWidth": 1,
1068 "ylog": True
1069 }
1070 _common_score.update(_legend_common)
1071 _score_layercluster_to_caloparticles_zminus = PlotGroup("score_layercluster_to_caloparticle", [
1072 Plot("Score_layercl2caloparticle_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_score) for i in range(0,maxlayerzm)
1073 ], ncols=8 )
1074
1075 _common_shared= {"title": "Shared Energy CaloParticle To Layer Cluster in z-",
1076 "stat": False,
1077 "legend": False,
1078 }
1079 _common_shared.update(_legend_common)
1080 _shared_plots_zminus = [Plot("SharedEnergy_caloparticle2layercl_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(0,maxlayerzm)]
1081 _shared_plots_zminus.extend([Plot("SharedEnergy_caloparticle2layercl_vs_eta_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(0,maxlayerzm)])
1082 _shared_plots_zminus.extend([Plot("SharedEnergy_caloparticle2layercl_vs_phi_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(0,maxlayerzm)])
1083 _sharedEnergy_caloparticle_to_layercluster_zminus = PlotGroup("sharedEnergy_caloparticle_to_layercluster", _shared_plots_zminus, ncols=8)
1084
1085 _common_shared= {"title": "Shared Energy Layer Cluster To CaloParticle in z-",
1086 "stat": False,
1087 "legend": False,
1088 }
1089 _common_shared.update(_legend_common)
1090 _shared_plots2_zminus = [Plot("SharedEnergy_layercluster2caloparticle_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(0,maxlayerzm)]
1091 _common_shared= {"title": "Shared Energy Layer Cluster To Best CaloParticle in z-",
1092 "stat": False,
1093 "legend": False,
1094 "ymin": 0,
1095 "ymax": 1
1096 }
1097 _common_shared.update(_legend_common)
1098 _shared_plots2_zminus.extend([Plot("SharedEnergy_layercl2caloparticle_vs_eta_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(0,maxlayerzm)])
1099 _shared_plots2_zminus.extend([Plot("SharedEnergy_layercl2caloparticle_vs_phi_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(0,maxlayerzm)])
1100 _sharedEnergy_layercluster_to_caloparticle_zminus = PlotGroup("sharedEnergy_layercluster_to_caloparticle", _shared_plots2_zminus, ncols=8)
1101
1102
1103 _common_assoc = {
1104 "stat": False,
1105 "legend": False,
1106 "xbinlabels": ["", "TN(pur)", "FN(ineff.)", "FP(fake)", "TP(eff)"],
1107 "xbinlabeloption": "h",
1108 "drawStyle": "hist",
1109 "ymin": 0.1,
1110 "ymax": 10000,
1111 "ylog": True}
1112 _common_assoc.update(_legend_common)
1113 _cell_association_table_zminus = PlotGroup("cellAssociation_table", [
1114 Plot("cellAssociation_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_assoc) for i in range(0,maxlayerzm)
1115 ], ncols=8 )
1116
1117 _bin_count = 0
1118 _xbinlabels = [ "{:02d}".format(i+1) for i in range(0,maxlayerzm) ]
1119 _xtitle = "Layer Numbers in z-"
1120 _common_eff = {"stat": False, "legend": False, "ymin": 0.0, "ymax": 1.1, "xbinlabeloption": "d"}
1121 _effplots_zminus_eta = [Plot("effic_eta_layer{:02d}".format(i), xtitle="", **_common_eff) for i in range(0,maxlayerzm)]
1122 _effplots_zminus_phi = [Plot("effic_phi_layer{:02d}".format(i), xtitle="", **_common_eff) for i in range(0,maxlayerzm)]
1123 _common_eff = {"stat": False, "legend": False, "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloption": "v", "ymin": 0.0, "ymax": 1.1}
1124 _common_eff["xmin"] = _bin_count
1125 _common_eff["xmax"] = maxlayerzm
1126 _bin_count += 4*maxlayerzm
1127 _effplots_zminus = [Plot("globalEfficiencies", xtitle=_xtitle, ytitle="Efficiency", **_common_eff)]
1128 _efficiencies_zminus_eta = PlotGroup("Efficiencies_vs_eta", _effplots_zminus_eta, ncols=10)
1129 _efficiencies_zminus_phi = PlotGroup("Efficiencies_vs_phi", _effplots_zminus_phi, ncols=10)
1130 _efficiencies_zminus = PlotGroup("Efficiencies_vs_layer", _effplots_zminus, ncols=1)
1131
1132 _common_dup = {"stat": False, "legend": False, "ymin":0.0, "ymax":1.1}
1133 _dupplots_zminus_eta = [Plot("duplicate_eta_layer{:02d}".format(i), xtitle="", **_common_dup) for i in range(0,maxlayerzm)]
1134 _dupplots_zminus_phi = [Plot("duplicate_phi_layer{:02d}".format(i), xtitle="", **_common_dup) for i in range(0,maxlayerzm)]
1135 _common_dup = {"stat": False, "legend": False, "title": "Global Duplicates in z-", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloption": "v", "ymin": 0.0, "ymax": 1.1}
1136 _common_dup["xmin"] = _bin_count
1137 _common_dup["xmax"] = _common_dup["xmin"] + maxlayerzm
1138 _bin_count += 4*maxlayerzm
1139 _dupplots_zminus = [Plot("globalEfficiencies", xtitle=_xtitle, ytitle="Duplicates", **_common_dup)]
1140 _duplicates_zminus_eta = PlotGroup("Duplicates_vs_eta", _dupplots_zminus_eta, ncols=10)
1141 _duplicates_zminus_phi = PlotGroup("Duplicates_vs_phi", _dupplots_zminus_phi, ncols=10)
1142 _duplicates_zminus = PlotGroup("Duplicates_vs_layer", _dupplots_zminus, ncols=1)
1143
1144 _common_fake = {"stat": False, "legend": False, "ymin":0.0, "ymax":1.1}
1145 _fakeplots_zminus_eta = [Plot("fake_eta_layer{:02d}".format(i), xtitle="", **_common_fake) for i in range(0,maxlayerzm)]
1146 _fakeplots_zminus_phi = [Plot("fake_phi_layer{:02d}".format(i), xtitle="", **_common_fake) for i in range(0,maxlayerzm)]
1147 _common_fake = {"stat": False, "legend": False, "title": "Global Fake Rates in z-", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloption": "v", "ymin": 0.0, "ymax": 1.1}
1148 _common_fake["xmin"] = _bin_count
1149 _common_fake["xmax"] = _common_fake["xmin"] + maxlayerzm
1150 _bin_count += 4*maxlayerzm
1151 _common_fake["xbinlabelsize"] = 10.
1152 _fakeplots_zminus = [Plot("globalEfficiencies", xtitle=_xtitle, ytitle="Fake Rate", **_common_fake)]
1153 _fakes_zminus_eta = PlotGroup("FakeRate_vs_eta", _fakeplots_zminus_eta, ncols=10)
1154 _fakes_zminus_phi = PlotGroup("FakeRate_vs_phi", _fakeplots_zminus_phi, ncols=10)
1155 _fakes_zminus = PlotGroup("FakeRate_vs_layer", _fakeplots_zminus, ncols=1)
1156
1157 _common_merge = {"stat": False, "legend": False, "ymin":0.0, "ymax":1.1}
1158 _mergeplots_zminus_eta = [Plot("merge_eta_layer{:02d}".format(i), xtitle="", **_common_merge) for i in range(0,maxlayerzm)]
1159 _mergeplots_zminus_phi = [Plot("merge_phi_layer{:02d}".format(i), xtitle="", **_common_merge) for i in range(0,maxlayerzm)]
1160 _common_merge = {"stat": False, "legend": False, "title": "Global Merge Rates in z-", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloption": "v", "ymin": 0.0, "ymax": 1.1}
1161 _common_merge["xmin"] = _bin_count
1162 _common_merge["xmax"] = _common_merge["xmin"] + maxlayerzm
1163 _bin_count += 4*maxlayerzm
1164 _common_merge["xbinlabelsize"] = 10.
1165 _mergeplots_zminus = [Plot("globalEfficiencies", xtitle=_xtitle, ytitle="Merge Rate", **_common_merge)]
1166 _merges_zminus_eta = PlotGroup("MergeRate_vs_eta", _mergeplots_zminus_eta, ncols=10)
1167 _merges_zminus_phi = PlotGroup("MergeRate_vs_phi", _mergeplots_zminus_phi, ncols=10)
1168 _merges_zminus = PlotGroup("MergeRate_vs_layer", _mergeplots_zminus, ncols=1)
1169
1170
1171 _common_energy_score = dict(removeEmptyBins=False, xbinlabelsize=10,
1172 stat=True,
1173 xbinlabeloption="d",
1174 ncols=1,
1175 xmin=0.001,
1176 xmax=1.,
1177 ymin=0.01,
1178 ymax=1.)
1179 _energyscore_cp2lc_zminus = PlotGroup("Energy_vs_Score_CP2LC", [Plot("Energy_vs_Score_caloparticle2layer_perlayer{:02d}".format(i), title="Energy_vs_Score_CP2LC",
1180 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_energy_score) for i in range(0, maxlayerzm)
1181 ], ncols=10)
1182
1183 _energyscore_cp2lc_zplus = PlotGroup("Energy_vs_Score_CP2LC", [Plot("Energy_vs_Score_caloparticle2layer_perlayer{:02d}".format(i), title="Energy_vs_Score_CP2LC",
1184 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_energy_score) for i in range(maxlayerzm,maxlayerzp)
1185 ], ncols=10)
1186 _common_energy_score["xmin"]=-0.1
1187 _energyscore_lc2cp_zminus = PlotGroup("Energy_vs_Score_LC2CP", [Plot("Energy_vs_Score_layer2caloparticle_perlayer{:02d}".format(i), title="Energy_vs_Score_LC2CP",
1188 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_energy_score) for i in range(0, maxlayerzm)
1189 ], ncols=10)
1190 _energyscore_lc2cp_zplus = PlotGroup("Energy_vs_Score_LC2CP", [Plot("Energy_vs_Score_layer2caloparticle_perlayer{:02d}".format(i), title="Energy_vs_Score_LC2CP",
1191 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_energy_score) for i in range(maxlayerzm,maxlayerzp)
1192 ], ncols=10)
1193
1194
1195
1196
1197 _common_score = {"title": "Score CaloParticle to LayerClusters in z+",
1198 "stat": False,
1199 "ymin": 0.1,
1200 "ymax": 1000,
1201 "xmin": 0,
1202 "xmax": 1,
1203 "drawStyle": "hist",
1204 "lineWidth": 1,
1205 "ylog": True
1206 }
1207 _common_score.update(_legend_common)
1208 _score_caloparticle_to_layerclusters_zplus = PlotGroup("score_caloparticle_to_layercluster", [
1209 Plot("Score_caloparticle2layercl_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_score) for i in range(maxlayerzm,maxlayerzp)
1210 ], ncols=10 )
1211
1212 _common_score = {"title": "Score LayerCluster to CaloParticles in z+",
1213 "stat": False,
1214 "ymin": 0.1,
1215 "ymax": 1000,
1216 "xmin": 0,
1217 "xmax": 1,
1218 "drawStyle": "hist",
1219 "lineWidth": 1,
1220 "ylog": True
1221 }
1222 _common_score.update(_legend_common)
1223 _score_layercluster_to_caloparticles_zplus = PlotGroup("score_layercluster_to_caloparticle", [
1224 Plot("Score_layercl2caloparticle_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_score) for i in range(maxlayerzm,maxlayerzp)
1225 ], ncols=8 )
1226
1227 _common_shared= {"title": "Shared Energy CaloParticle To Layer Cluster in z+",
1228 "stat": False,
1229 "legend": False,
1230 }
1231 _common_shared.update(_legend_common)
1232 _shared_plots_zplus = [Plot("SharedEnergy_caloparticle2layercl_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(maxlayerzm,maxlayerzp)]
1233 _shared_plots_zplus.extend([Plot("SharedEnergy_caloparticle2layercl_vs_eta_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(maxlayerzm,maxlayerzp)])
1234 _shared_plots_zplus.extend([Plot("SharedEnergy_caloparticle2layercl_vs_phi_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(maxlayerzm,maxlayerzp)])
1235 _sharedEnergy_caloparticle_to_layercluster_zplus = PlotGroup("sharedEnergy_caloparticle_to_layercluster", _shared_plots_zplus, ncols=8)
1236
1237 _common_shared= {"title": "Shared Energy Layer Cluster To CaloParticle in z+",
1238 "stat": False,
1239 "legend": False,
1240 }
1241 _common_shared.update(_legend_common)
1242 _shared_plots2_zplus = [Plot("SharedEnergy_layercluster2caloparticle_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(maxlayerzm,maxlayerzp)]
1243 _common_shared= {"title": "Shared Energy Layer Cluster To Best CaloParticle in z+",
1244 "stat": False,
1245 "legend": False,
1246 "ymin": 0,
1247 "ymax": 1,
1248 }
1249 _common_shared.update(_legend_common)
1250 _shared_plots2_zplus.extend([Plot("SharedEnergy_layercl2caloparticle_vs_eta_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(maxlayerzm,maxlayerzp)])
1251 _shared_plots2_zplus.extend([Plot("SharedEnergy_layercl2caloparticle_vs_phi_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_shared) for i in range(maxlayerzm,maxlayerzp)])
1252 _sharedEnergy_layercluster_to_caloparticle_zplus = PlotGroup("sharedEnergy_layercluster_to_caloparticle", _shared_plots2_zplus, ncols=8)
1253
1254
1255 _common_assoc = {
1256 "stat": False,
1257 "legend": False,
1258 "xbinlabels": ["", "TN(pur)", "FN(ineff.)", "FP(fake)", "TP(eff)"],
1259 "xbinlabeloption": "h",
1260 "drawStyle": "hist",
1261 "ymin": 0.1,
1262 "ymax": 10000,
1263 "ylog": True}
1264 _common_assoc.update(_legend_common)
1265 _cell_association_table_zplus = PlotGroup("cellAssociation_table", [
1266 Plot("cellAssociation_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_assoc) for i in range(maxlayerzm,maxlayerzp)
1267 ], ncols=8 )
1268
1269
1270 _bin_count = maxlayerzm
1271 _xtitle = "Layer Numbers in z+"
1272 _common_eff = {"stat": False, "legend": False, "ymin":0.0, "ymax":1.1}
1273 _effplots_zplus_eta = [Plot("effic_eta_layer{:02d}".format(i), xtitle="", **_common_eff) for i in range(maxlayerzm,maxlayerzp)]
1274 _effplots_zplus_phi = [Plot("effic_phi_layer{:02d}".format(i), xtitle="", **_common_eff) for i in range(maxlayerzm,maxlayerzp)]
1275 _common_eff = {"stat": False, "legend": False, "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloption": "v", "ymin": 0.0, "ymax": 1.1}
1276 _common_eff["xmin"] = _bin_count
1277 _common_eff["xmax"] = _common_eff["xmin"] + maxlayerzm
1278 _bin_count += 4*maxlayerzm
1279 _effplots_zplus = [Plot("globalEfficiencies", xtitle=_xtitle, ytitle="Efficiency", **_common_eff)]
1280 _efficiencies_zplus_eta = PlotGroup("Efficiencies_vs_eta", _effplots_zplus_eta, ncols=10)
1281 _efficiencies_zplus_phi = PlotGroup("Efficiencies_vs_phi", _effplots_zplus_phi, ncols=10)
1282 _efficiencies_zplus = PlotGroup("Efficiencies_vs_layer", _effplots_zplus, ncols=1)
1283
1284 _common_dup = {"stat": False, "legend": False, "ymin": 0.0, "ymax": 1.1}
1285 _dupplots_zplus_eta = [Plot("duplicate_eta_layer{:02d}".format(i), xtitle="", **_common_dup) for i in range(maxlayerzm,maxlayerzp)]
1286 _dupplots_zplus_phi = [Plot("duplicate_phi_layer{:02d}".format(i), xtitle="", **_common_dup) for i in range(maxlayerzm,maxlayerzp)]
1287 _common_dup = {"stat": False, "legend": False, "title": "Global Duplicates in z+", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloption": "v", "ymin": 0.0, "ymax": 1.1}
1288 _common_dup["xmin"] = _bin_count
1289 _common_dup["xmax"] = _common_dup["xmin"] + maxlayerzm
1290 _bin_count += 4*maxlayerzm
1291 _dupplots_zplus = [Plot("globalEfficiencies", xtitle=_xtitle, ytitle="Duplicates", **_common_dup)]
1292 _duplicates_zplus_eta = PlotGroup("Duplicates_vs_eta", _dupplots_zplus_eta, ncols=10)
1293 _duplicates_zplus_phi = PlotGroup("Duplicates_vs_phi", _dupplots_zplus_phi, ncols=10)
1294 _duplicates_zplus = PlotGroup("Duplicates_vs_layer", _dupplots_zplus, ncols=1)
1295
1296 _common_fake = {"stat": False, "legend": False, "ymin": 0.0, "ymax": 1.1}
1297 _fakeplots_zplus_eta = [Plot("fake_eta_layer{:02d}".format(i), xtitle="", **_common_fake) for i in range(maxlayerzm,maxlayerzp)]
1298 _fakeplots_zplus_phi = [Plot("fake_phi_layer{:02d}".format(i), xtitle="", **_common_fake) for i in range(maxlayerzm,maxlayerzp)]
1299 _common_fake = {"stat": False, "legend": False, "title": "Global Fake Rates in z+", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloption": "v", "ymin": 0.0, "ymax": 1.1}
1300 _common_fake["xmin"] = _bin_count
1301 _common_fake["xmax"] = _common_fake["xmin"] + maxlayerzm
1302 _bin_count += 4*maxlayerzm
1303 _fakeplots_zplus = [Plot("globalEfficiencies", xtitle=_xtitle, ytitle="Fake Rate", **_common_fake)]
1304 _fakes_zplus_eta = PlotGroup("FakeRate_vs_eta", _fakeplots_zplus_eta, ncols=10)
1305 _fakes_zplus_phi = PlotGroup("FakeRate_vs_phi", _fakeplots_zplus_phi, ncols=10)
1306 _fakes_zplus = PlotGroup("FakeRate_vs_layer", _fakeplots_zplus, ncols=1)
1307
1308 _common_merge = {"stat": False, "legend": False, "ymin": 0.0, "ymax": 1.1}
1309 _mergeplots_zplus_eta = [Plot("merge_eta_layer{:02d}".format(i), xtitle="", **_common_merge) for i in range(maxlayerzm,maxlayerzp)]
1310 _mergeplots_zplus_phi = [Plot("merge_phi_layer{:02d}".format(i), xtitle="", **_common_merge) for i in range(maxlayerzm,maxlayerzp)]
1311 _common_merge = {"stat": False, "legend": False, "title": "Global Merge Rates in z+", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloption": "v", "ymin": 0.0, "ymax": 1.1}
1312 _common_merge["xmin"] = _bin_count
1313 _common_merge["xmax"] = _common_merge["xmin"] + maxlayerzm
1314 _bin_count += 4*maxlayerzm
1315 _mergeplots_zplus = [Plot("globalEfficiencies", xtitle=_xtitle, ytitle="Merge Rate", **_common_merge)]
1316 _merges_zplus_eta = PlotGroup("MergeRate_vs_eta", _mergeplots_zplus_eta, ncols=10)
1317 _merges_zplus_phi = PlotGroup("MergeRate_vs_phi", _mergeplots_zplus_phi, ncols=10)
1318 _merges_zplus = PlotGroup("MergeRate_vs_layer", _mergeplots_zplus, ncols=1)
1319
1320
1321
1322
1323
1324 _common_sc_score = {"title": "Score SimCluster to LayerClusters in z-",
1325 "stat": False,
1326 "ymin": 0.1,
1327 "ymax": 10**6,
1328 "xmin": 0,
1329 "xmax": 1,
1330 "drawStyle": "hist",
1331 "lineWidth": 1,
1332 "ylog": True
1333 }
1334 _common_sc_score.update(_legend_common)
1335 _score_simcluster_to_layerclusters_zminus = PlotGroup("score_simcluster_to_layercluster_zminus", [
1336 Plot("Score_simcluster2layercl_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_score) for i in range(0,maxlayerzm)
1337 ], ncols=10 )
1338
1339 _common_sc_score = {"title": "Score LayerCluster to SimClusters in z-",
1340 "stat": False,
1341 "ymin": 0.1,
1342 "ymax": 10**6,
1343 "xmin": 0,
1344 "xmax": 1,
1345 "drawStyle": "hist",
1346 "lineWidth": 1,
1347 "ylog": True
1348 }
1349 _common_sc_score.update(_legend_common)
1350 _score_layercluster_to_simclusters_zminus = PlotGroup("score_layercluster_to_simcluster_zminus", [
1351 Plot("Score_layercl2simcluster_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_score) for i in range(0,maxlayerzm)
1352 ], ncols=8 )
1353
1354 _common_sc_shared= {"title": "Shared Energy SimCluster To Layer Cluster in z-",
1355 "stat": False,
1356 "legend": False,
1357 }
1358 _common_sc_shared.update(_legend_common)
1359 _shared_sc_plots_zminus = [Plot("SharedEnergy_simcluster2layercl_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(0,maxlayerzm)]
1360 _shared_sc_plots_zminus.extend([Plot("SharedEnergy_simcluster2layercl_vs_eta_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(0,maxlayerzm)])
1361 _shared_sc_plots_zminus.extend([Plot("SharedEnergy_simcluster2layercl_vs_phi_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(0,maxlayerzm)])
1362 _sharedEnergy_simcluster_to_layercluster_zminus = PlotGroup("sharedEnergy_simcluster_to_layercluster_zminus", _shared_sc_plots_zminus, ncols=8)
1363
1364 _common_sc_shared= {"title": "Shared Energy Layer Cluster To SimCluster in z-",
1365 "stat": False,
1366 "legend": False,
1367 }
1368 _common_sc_shared.update(_legend_common)
1369 _shared_plots2_sc_zminus = [Plot("SharedEnergy_layercluster2simcluster_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(0,maxlayerzm)]
1370 _common_sc_shared= {"title": "Shared Energy Layer Cluster To Best SimCluster in z-",
1371 "stat": False,
1372 "legend": False,
1373 "ymin": 0,
1374 "ymax": 1
1375 }
1376 _common_sc_shared.update(_legend_common)
1377 _shared_plots2_sc_zminus.extend([Plot("SharedEnergy_layercl2simcluster_vs_eta_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(0,maxlayerzm)])
1378 _shared_plots2_sc_zminus.extend([Plot("SharedEnergy_layercl2simcluster_vs_phi_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(0,maxlayerzm)])
1379 _sharedEnergy_layercluster_to_simcluster_zminus = PlotGroup("sharedEnergy_layercluster_to_simcluster_zminus", _shared_plots2_sc_zminus, ncols=8)
1380
1381 _bin_count = 0
1382 _xbinlabels = [ "L{:02d}".format(i+1) for i in range(0,maxlayerzm) ]
1383 _common_eff = {"stat": False, "legend": False}
1384 _effplots_sc_zminus_eta = [Plot("effic_eta_layer{:02d}".format(i), xtitle="", **_common_eff) for i in range(0,maxlayerzm)]
1385 _effplots_sc_zminus_phi = [Plot("effic_phi_layer{:02d}".format(i), xtitle="", **_common_eff) for i in range(0,maxlayerzm)]
1386 _common_eff = {"stat": False, "legend": False, "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloptions": "v"}
1387 _common_eff["xmin"] = _bin_count
1388 _common_eff["xmax"] = maxlayerzm
1389 _bin_count += 4*maxlayerzm
1390 _effplots_sc_zminus = [Plot("globalEfficiencies_zminus", xtitle="Global Efficiencies in z-", **_common_eff)]
1391 _efficiencies_sc_zminus_eta = PlotGroup("Efficiencies_vs_eta_zminus", _effplots_sc_zminus_eta, ncols=10)
1392 _efficiencies_sc_zminus_phi = PlotGroup("Efficiencies_vs_phi_zminus", _effplots_sc_zminus_phi, ncols=10)
1393 _efficiencies_sc_zminus = PlotGroup("Eff_Dup_Fake_Merge_Global_zminus", _effplots_sc_zminus, ncols=4)
1394
1395 _common_dup = {"stat": False, "legend": False}
1396 _dupplots_sc_zminus_eta = [Plot("duplicate_eta_layer{:02d}".format(i), xtitle="", **_common_dup) for i in range(0,maxlayerzm)]
1397 _dupplots_sc_zminus_phi = [Plot("duplicate_phi_layer{:02d}".format(i), xtitle="", **_common_dup) for i in range(0,maxlayerzm)]
1398 _common_dup = {"stat": False, "legend": False, "title": "Global Duplicates in z-", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloptions": "v"}
1399 _common_dup["xmin"] = _bin_count
1400 _common_dup["xmax"] = _common_dup["xmin"] + maxlayerzm
1401 _bin_count += 4*maxlayerzm
1402 _dupplots_sc_zminus = [Plot("globalDublicates_zminus", xtitle="Global Duplicates in z-", **_common_dup)]
1403 _duplicates_sc_zminus_eta = PlotGroup("Duplicates_vs_eta_zminus", _dupplots_sc_zminus_eta, ncols=10)
1404 _duplicates_sc_zminus_phi = PlotGroup("Duplicates_vs_phi_zminus", _dupplots_sc_zminus_phi, ncols=10)
1405 _duplicates_sc_zminus = PlotGroup("Eff_Dup_Fake_Merge_Global_zminus", _dupplots_sc_zminus, ncols=4)
1406
1407 _common_fake = {"stat": False, "legend": False}
1408 _fakeplots_sc_zminus_eta = [Plot("fake_eta_layer{:02d}".format(i), xtitle="", **_common_fake) for i in range(0,maxlayerzm)]
1409 _fakeplots_sc_zminus_phi = [Plot("fake_phi_layer{:02d}".format(i), xtitle="", **_common_fake) for i in range(0,maxlayerzm)]
1410 _common_fake = {"stat": False, "legend": False, "title": "Global Fake Rates in z-", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloptions": "v"}
1411 _common_fake["xmin"] = _bin_count
1412 _common_fake["xmax"] = _common_fake["xmin"] + maxlayerzm
1413 _bin_count += 4*maxlayerzm
1414 _common_fake["xbinlabels"] = [ "L{:02d}".format(i+1) for i in range(0,maxlayerzm) ]
1415 _common_fake["xbinlabelsize"] = 10.
1416 _fakeplots_sc_zminus = [Plot("globalFakes_zminus", xtitle="Global Fake Rate in z-", **_common_fake)]
1417 _fakes_sc_zminus_eta = PlotGroup("FakeRate_vs_eta_zminus", _fakeplots_sc_zminus_eta, ncols=10)
1418 _fakes_sc_zminus_phi = PlotGroup("FakeRate_vs_phi_zminus", _fakeplots_sc_zminus_phi, ncols=10)
1419 _fakes_sc_zminus = PlotGroup("Eff_Dup_Fake_Merge_Global_zminus", _fakeplots_sc_zminus, ncols=4)
1420
1421 _common_merge = {"stat": False, "legend": False}
1422 _mergeplots_sc_zminus_eta = [Plot("merge_eta_layer{:02d}".format(i), xtitle="", **_common_merge) for i in range(0,maxlayerzm)]
1423 _mergeplots_sc_zminus_phi = [Plot("merge_phi_layer{:02d}".format(i), xtitle="", **_common_merge) for i in range(0,maxlayerzm)]
1424 _common_merge = {"stat": False, "legend": False, "title": "Global Merge Rates in z-", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloptions": "v"}
1425 _common_merge["xmin"] = _bin_count
1426 _common_merge["xmax"] = _common_merge["xmin"] + maxlayerzm
1427 _bin_count += 4*maxlayerzm
1428 _common_merge["xbinlabels"] = [ "L{:02d}".format(i+1) for i in range(0,maxlayerzm) ]
1429 _common_merge["xbinlabelsize"] = 10.
1430 _mergeplots_sc_zminus = [Plot("globalMergeRate_zminus", xtitle="Global merge Rate in z-", **_common_merge)]
1431 _merges_sc_zminus_eta = PlotGroup("MergeRate_vs_eta_zminus", _mergeplots_sc_zminus_eta, ncols=10)
1432 _merges_sc_zminus_phi = PlotGroup("MergeRate_vs_phi_zminus", _mergeplots_sc_zminus_phi, ncols=10)
1433 _merges_sc_zminus = PlotGroup("Eff_Dup_Fake_Merge_Global_zminus", _mergeplots_sc_zminus, ncols=4)
1434
1435 _common_energy_score = dict(removeEmptyBins=False, xbinlabelsize=10,
1436 stat=True,
1437 xbinlabeloption="d",
1438 ncols=1,
1439 ylog=True,
1440 xlog=True,
1441 xmin=0.001,
1442 xmax=1.,
1443 ymin=0.01,
1444 ymax=1.)
1445 _energyscore_sc2lc_zminus = PlotGroup("Energy_vs_Score_SC2LC_zminus", [Plot("Energy_vs_Score_simcluster2layer_perlayer{:02d}".format(i), title="Energy_vs_Score_SC2LC",
1446 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_energy_score) for i in range(0, maxlayerzm)
1447 ], ncols=10)
1448
1449 _energyscore_sc2lc_zplus = PlotGroup("Energy_vs_Score_SC2LC_zplus", [Plot("Energy_vs_Score_simcluster2layer_perlayer{:02d}".format(i), title="Energy_vs_Score_SC2LC",
1450 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_energy_score) for i in range(maxlayerzm,maxlayerzp)
1451 ], ncols=10)
1452
1453 _common_energy_score["xlog"]=False
1454 _common_energy_score["ylog"]=False
1455 _common_energy_score["xmin"]=-0.1
1456 _energyscore_lc2sc_zminus = PlotGroup("Energy_vs_Score_LC2SC_zminus", [Plot("Energy_vs_Score_layer2simcluster_perlayer{:02d}".format(i), title="Energy_vs_Score_LC2SC",
1457 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_energy_score) for i in range(0, maxlayerzm)
1458 ], ncols=10)
1459 _energyscore_lc2sc_zplus = PlotGroup("Energy_vs_Score_LC2SC_zplus", [Plot("Energy_vs_Score_layer2simcluster_perlayer{:02d}".format(i), title="Energy_vs_Score_LC2SC",
1460 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_energy_score) for i in range(maxlayerzm,maxlayerzp)
1461 ], ncols=10)
1462
1463
1464
1465
1466 _common_sc_score = {"title": "Score SimCluster to LayerClusters in z+",
1467 "stat": False,
1468 "ymin": 0.1,
1469 "ymax": 1000,
1470 "xmin": 0,
1471 "xmax": 1,
1472 "drawStyle": "hist",
1473 "lineWidth": 1,
1474 "ylog": True
1475 }
1476 _common_sc_score.update(_legend_common)
1477 _score_simcluster_to_layerclusters_zplus = PlotGroup("score_simcluster_to_layercluster_zplus", [
1478 Plot("Score_simcluster2layercl_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_score) for i in range(maxlayerzm,maxlayerzp)
1479 ], ncols=10 )
1480
1481 _common_sc_score = {"title": "Score LayerCluster to SimClusters in z+",
1482 "stat": False,
1483 "ymin": 0.1,
1484 "ymax": 1000,
1485 "xmin": 0,
1486 "xmax": 1,
1487 "drawStyle": "hist",
1488 "lineWidth": 1,
1489 "ylog": True
1490 }
1491 _common_sc_score.update(_legend_common)
1492 _score_layercluster_to_simclusters_zplus = PlotGroup("score_layercluster_to_simcluster_zplus", [
1493 Plot("Score_layercl2simcluster_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_score) for i in range(maxlayerzm,maxlayerzp)
1494 ], ncols=8 )
1495
1496 _common_sc_shared= {"title": "Shared Energy SimCluster To Layer Cluster in z+",
1497 "stat": False,
1498 "legend": False,
1499 }
1500 _common_sc_shared.update(_legend_common)
1501 _shared_sc_plots_zplus = [Plot("SharedEnergy_simcluster2layercl_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(maxlayerzm,maxlayerzp)]
1502 _shared_sc_plots_zplus.extend([Plot("SharedEnergy_simcluster2layercl_vs_eta_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(maxlayerzm,maxlayerzp)])
1503 _shared_sc_plots_zplus.extend([Plot("SharedEnergy_simcluster2layercl_vs_phi_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(maxlayerzm,maxlayerzp)])
1504 _sharedEnergy_simcluster_to_layercluster_zplus = PlotGroup("sharedEnergy_simcluster_to_layercluster_zplus", _shared_sc_plots_zplus, ncols=8)
1505
1506 _common_sc_shared= {"title": "Shared Energy Layer Cluster To SimCluster in z+",
1507 "stat": False,
1508 "legend": False,
1509 }
1510 _common_sc_shared.update(_legend_common)
1511 _shared_plots2_sc_zplus = [Plot("SharedEnergy_layercluster2simcluster_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(maxlayerzm,maxlayerzp)]
1512 _common_sc_shared= {"title": "Shared Energy Layer Cluster To Best SimCluster in z+",
1513 "stat": False,
1514 "legend": False,
1515 "ymin": 0,
1516 "ymax": 1,
1517 }
1518 _common_sc_shared.update(_legend_common)
1519 _shared_plots2_sc_zplus.extend([Plot("SharedEnergy_layercl2simcluster_vs_eta_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(maxlayerzm,maxlayerzp)])
1520 _shared_plots2_sc_zplus.extend([Plot("SharedEnergy_layercl2simcluster_vs_phi_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_sc_shared) for i in range(maxlayerzm,maxlayerzp)])
1521 _sharedEnergy_layercluster_to_simcluster_zplus = PlotGroup("sharedEnergy_layercluster_to_simcluster_zplus", _shared_plots2_sc_zplus, ncols=8)
1522
1523
1524 _bin_count = maxlayerzm
1525 _common_eff = {"stat": False, "legend": False}
1526 _effplots_sc_zplus_eta = [Plot("effic_eta_layer{:02d}".format(i), xtitle="", **_common_eff) for i in range(maxlayerzm,maxlayerzp)]
1527 _effplots_sc_zplus_phi = [Plot("effic_phi_layer{:02d}".format(i), xtitle="", **_common_eff) for i in range(maxlayerzm,maxlayerzp)]
1528 _common_eff = {"stat": False, "legend": False, "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloptions": "v"}
1529 _common_eff["xmin"] = _bin_count
1530 _common_eff["xmax"] = _common_eff["xmin"] + maxlayerzm
1531 _bin_count += 4*maxlayerzm
1532 _effplots_sc_zplus = [Plot("globalEfficiencies_zplus", xtitle="Global Efficiencies in z+", **_common_eff)]
1533 _efficiencies_sc_zplus_eta = PlotGroup("Efficiencies_vs_eta_zplus", _effplots_sc_zplus_eta, ncols=10)
1534 _efficiencies_sc_zplus_phi = PlotGroup("Efficiencies_vs_phi_zplus", _effplots_sc_zplus_phi, ncols=10)
1535 _efficiencies_sc_zplus = PlotGroup("Eff_Dup_Fake_Merge_Global_zplus", _effplots_sc_zplus, ncols=4)
1536
1537 _common_dup = {"stat": False, "legend": False}
1538 _dupplots_sc_zplus_eta = [Plot("duplicate_eta_layer{:02d}".format(i), xtitle="", **_common_dup) for i in range(maxlayerzm,maxlayerzp)]
1539 _dupplots_sc_zplus_phi = [Plot("duplicate_phi_layer{:02d}".format(i), xtitle="", **_common_dup) for i in range(maxlayerzm,maxlayerzp)]
1540 _common_dup = {"stat": False, "legend": False, "title": "Global Duplicates in z+", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloptions": "v"}
1541 _common_dup["xmin"] = _bin_count
1542 _common_dup["xmax"] = _common_dup["xmin"] + maxlayerzm
1543 _bin_count += 4*maxlayerzm
1544 _dupplots_sc_zplus = [Plot("globalDuplicates_zplus", xtitle="Global Duplicates in z+", **_common_dup)]
1545 _duplicates_sc_zplus_eta = PlotGroup("Duplicates_vs_eta_zplus", _dupplots_sc_zplus_eta, ncols=10)
1546 _duplicates_sc_zplus_phi = PlotGroup("Duplicates_vs_phi_zplus", _dupplots_sc_zplus_phi, ncols=10)
1547 _duplicates_sc_zplus = PlotGroup("Eff_Dup_Fake_Merge_Global_zplus", _dupplots_sc_zplus, ncols=4)
1548
1549 _common_fake = {"stat": False, "legend": False}
1550 _fakeplots_sc_zplus_eta = [Plot("fake_eta_layer{:02d}".format(i), xtitle="", **_common_fake) for i in range(maxlayerzm,maxlayerzp)]
1551 _fakeplots_sc_zplus_phi = [Plot("fake_phi_layer{:02d}".format(i), xtitle="", **_common_fake) for i in range(maxlayerzm,maxlayerzp)]
1552 _common_fake = {"stat": False, "legend": False, "title": "Global Fake Rates in z+", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloptions": "v"}
1553 _common_fake["xmin"] = _bin_count
1554 _common_fake["xmax"] = _common_fake["xmin"] + maxlayerzm
1555 _bin_count += 4*maxlayerzm
1556 _fakeplots_sc_zplus = [Plot("globalFakeRate_zplus", xtitle="Global Fake Rate in z+", **_common_fake)]
1557 _fakes_sc_zplus_eta = PlotGroup("FakeRate_vs_eta_zplus", _fakeplots_sc_zplus_eta, ncols=10)
1558 _fakes_sc_zplus_phi = PlotGroup("FakeRate_vs_phi_zplus", _fakeplots_sc_zplus_phi, ncols=10)
1559 _fakes_sc_zplus = PlotGroup("Eff_Dup_Fake_Merge_Global_zplus", _fakeplots_sc_zplus, ncols=4)
1560
1561 _common_merge = {"stat": False, "legend": False}
1562 _mergeplots_sc_zplus_eta = [Plot("merge_eta_layer{:02d}".format(i), xtitle="", **_common_merge) for i in range(maxlayerzm,maxlayerzp)]
1563 _mergeplots_sc_zplus_phi = [Plot("merge_phi_layer{:02d}".format(i), xtitle="", **_common_merge) for i in range(maxlayerzm,maxlayerzp)]
1564 _common_merge = {"stat": False, "legend": False, "title": "Global Merge Rates in z+", "xbinlabels": _xbinlabels, "xbinlabelsize": 12, "xbinlabeloptions": "v"}
1565 _common_merge["xmin"] = _bin_count
1566 _common_merge["xmax"] = _common_merge["xmin"] + maxlayerzm
1567 _bin_count += 4*maxlayerzm
1568 _mergeplots_sc_zplus = [Plot("globalMergeRate_zplus", xtitle="Global merge Rate in z+", **_common_merge)]
1569 _merges_sc_zplus_eta = PlotGroup("MergeRate_vs_eta_zplus", _mergeplots_sc_zplus_eta, ncols=10)
1570 _merges_sc_zplus_phi = PlotGroup("MergeRate_vs_phi_zplus", _mergeplots_sc_zplus_phi, ncols=10)
1571 _merges_sc_zplus = PlotGroup("Eff_Dup_Fake_Merge_Global_zplus", _mergeplots_sc_zplus, ncols=4)
1572
1573
1574 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65 }
1575
1576
1577
1578
1579 _common_score = {"stat": False, "legend": False
1580 ,"ymin": 0.1
1581 ,"ymax": 100000
1582 ,"xmin": 0
1583
1584 ,"drawStyle": "hist"
1585 ,"lineWidth": 1
1586 ,"ylog": True
1587 ,"xlog": True
1588 ,"xtitle": "Default"
1589 }
1590 _common_score.update(_legend_common)
1591
1592 score_to_trackster = ["","Pur","Dupl"]
1593 _score_caloparticle_to_tracksters = PlotGroup("ScoreCaloParticlesToTracksters", [], ncols=len(score_to_trackster))
1594 _score_simtrackster_to_tracksters = PlotGroup("ScoreSimTrackstersToTracksters", [], ncols=len(score_to_trackster))
1595 for score in score_to_trackster:
1596 _score_caloparticle_to_tracksters.append(Plot("Score"+score+"_caloparticle2trackster", **_common_score))
1597 _score_simtrackster_to_tracksters.append(Plot("Score"+score+"_simtrackster2trackster", **_common_score))
1598
1599 score_trackster_to = ["","Fake","Merge"]
1600 _score_trackster_to_caloparticles = PlotGroup("ScoreTrackstersToCaloParticles", [], ncols=len(score_trackster_to))
1601 _score_trackster_to_simtracksters = PlotGroup("ScoreTrackstersToSimTracksters", [], ncols=len(score_trackster_to))
1602 for score in score_trackster_to:
1603 _score_trackster_to_caloparticles.append(Plot("Score"+score+"_trackster2caloparticle", **_common_score))
1604 _score_trackster_to_simtracksters.append(Plot("Score"+score+"_trackster2simtrackster", **_common_score))
1605
1606
1607 _common_shared = {"stat": False, "legend": False, "xtitle": 'Default', "ytitle": 'Default'}
1608 _common_shared.update(_legend_common)
1609 _common_energy_score = dict(removeEmptyBins=True, xbinlabelsize=10, xbinlabeloption="d", drawStyle="COLZ", adjustMarginRight=0.1, legend=False, xtitle='Default', ytitle='Default')
1610
1611
1612
1613 _sharedEnergy_to_trackster = []
1614 _sharedEnergy_trackster_to = []
1615 versions = ["", "_assoc", "_assoc_vs_eta", "_assoc_vs_phi"]
1616
1617 _score_simtrackster_to_trackster = []
1618 _score_trackster_to_simtrackster = []
1619 score_versions_simToReco = ["", "Dupl", "Pur"]
1620 score_versions_recoToSim= ["", "Fake", "Merge"]
1621
1622 _energyscore_to_trackster = []
1623 _energyscore_trackster_to = []
1624 en_vs_score = ["","best","secBest"]
1625 for val in simDict:
1626 _sharedEnergy_to_trackster.append(PlotGroup("SharedEnergy_"+val+"ToTrackster", [], ncols=2))
1627 print("appending plot group", "SharedEnergy_"+val+"ToTrackster")
1628 _sharedEnergy_trackster_to.append(PlotGroup("SharedEnergy_TracksterTo"+val, [], ncols=2))
1629 print("appending plot group", "SharedEnergy_TracksterTo"+val)
1630 _score_simtrackster_to_trackster.append(PlotGroup("Score_"+val+"2trackster", [], ncols=3))
1631 print("appending plot group", "Score_"+val+"2trackster")
1632 _score_trackster_to_simtrackster.append(PlotGroup("Score_trackster2"+val, [], ncols=3))
1633 print("appending plot group", "Score_trackster2"+val)
1634 for ver in versions:
1635 _sharedEnergy_to_trackster[-1].append(Plot("SharedEnergy_"+val+"2trackster"+ver, **_common_shared))
1636 print("appending plot ", "SharedEnergy_"+val+"2trackster"+ver)
1637 _sharedEnergy_trackster_to[-1].append(Plot("SharedEnergy_trackster2"+val+ver, **_common_shared))
1638 print("appending plot ", "SharedEnergy_trackster2"+val+ver)
1639 for ver in score_versions_simToReco:
1640 _score_simtrackster_to_trackster[-1].append(Plot("Score"+ver+"_"+val+"2trackster", **_common_score))
1641 print("appending plot ", "Score"+ver+"_"+val+"2trackster")
1642 for ver in score_versions_recoToSim:
1643 _score_trackster_to_simtrackster[-1].append(Plot("Score"+ver+"_trackster2"+val, **_common_score))
1644 print("appending plot ", "Score"+ver+"_trackster2"+val)
1645
1646
1647 _energyscore_to_trackster.append(PlotGroup("Energy_vs_Score_"+val+"ToTracksters", [], ncols=len(en_vs_score)))
1648 _energyscore_trackster_to.append(PlotGroup("Energy_vs_Score_TrackstersTo"+val, [], ncols=len(en_vs_score)))
1649 for ver in en_vs_score:
1650 _energyscore_to_trackster[-1].append(Plot("Energy_vs_Score_"+val+"2"+ver+"Trackster", **_common_energy_score))
1651 print("appending plot ", "Energy_vs_Score_"+val+"2"+ver+"Trackster")
1652 _energyscore_trackster_to[-1].append(Plot("Energy_vs_Score_trackster2"+ver+val, **_common_energy_score))
1653 print("appending plot ", "Energy_vs_Score_trackster2"+ver+val)
1654 _common_assoc = {
1655 "stat": False,
1656 "legend": False,
1657 "xbinlabels": ["", "TN(pur)", "FN(ineff.)", "FP(fake)", "TP(eff)"],
1658 "xbinlabeloption": "h",
1659 "drawStyle": "hist",
1660 "ymin": 0.1,
1661 "ymax": 10000000,
1662 "ylog": True}
1663 _common_assoc.update(_legend_common)
1664 _cell_association_table = PlotGroup("cellAssociation_table", [
1665 Plot("cellAssociation_perlayer{:02d}".format(i), xtitle="Layer {:02d} in z-".format(i%maxlayerzm+1) if (i<maxlayerzm) else "Layer {:02d} in z+".format(i%maxlayerzm+1), **_common_assoc) for i in range(0,maxlayerzm)
1666 ], ncols=8 )
1667
1668
1669 _common_metric = {"stat": False, "legend": False, "xbinlabelsize": 14, "xbinlabeloption": "d", "ymin": 0.0, "ymax": 1.1}
1670 _common_metric_logx = _common_metric.copy()
1671 _common_metric_logx["xlog"] = True
1672
1673 _efficiencies = []
1674 _purities = []
1675 _duplicates = []
1676 _fakes = []
1677 _merges = []
1678 for val in simDict:
1679 _effplots = [Plot("globalEfficiencies", xtitle="", **_common_metric)]
1680 _purityplots = [Plot("globalEfficiencies", xtitle="", **_common_metric)]
1681 _dupplots = [Plot("globalEfficiencies", xtitle="", **_common_metric)]
1682 _fakeplots = [Plot("globalEfficiencies", xtitle="", **_common_metric)]
1683 _mergeplots = [Plot("globalEfficiencies", xtitle="", **_common_metric)]
1684
1685 for v in variables:
1686 kwargs = _common_metric_logx if v in ["energy","pt"] else _common_metric
1687 _effplots.extend([Plot("effic_"+v+simDict[val], xtitle = variables[v][0]+variables[v][1], **kwargs)])
1688 print("appending plot", "effic_"+v+simDict[val])
1689 _purityplots.extend([Plot("purity_"+v+simDict[val], xtitle = variables[v][0]+variables[v][1], **kwargs)])
1690 print("appending plot", "purity_"+v+simDict[val])
1691 _dupplots.extend([Plot("duplicate_"+v+simDict[val], xtitle = variables[v][0]+variables[v][1], **kwargs)])
1692 print("appending plot", "duplicate_"+v+simDict[val])
1693 _fakeplots.extend([Plot("fake_"+v+simDict[val], xtitle = variables[v][0]+variables[v][1], **kwargs)])
1694 print("appending plot", "fake_"+v+simDict[val])
1695 _mergeplots.extend([Plot("merge_"+v+simDict[val], xtitle = variables[v][0]+variables[v][1], **kwargs)])
1696 print("appending plot", "merge_"+v+simDict[val])
1697
1698 _efficiencies.append(PlotGroup("Efficiencies"+simDict[val], _effplots, ncols=3))
1699 print("appending plot group", "Efficiencies"+simDict[val])
1700 _purities.append(PlotGroup("Purities"+simDict[val], _purityplots, ncols=3))
1701 print("appending plot group", "Purities"+simDict[val])
1702 _duplicates.append(PlotGroup("Duplicates"+simDict[val], _dupplots, ncols=3))
1703 _fakes.append(PlotGroup("FakeRate"+simDict[val], _fakeplots, ncols=3))
1704 _merges.append(PlotGroup("MergeRate"+simDict[val], _mergeplots, ncols=3))
1705
1706
1707
1708 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65, "xtitle": "Default"}
1709
1710 _tottracksternum = PlotGroup("TotalNumberofTracksters", [
1711 Plot("tottracksternum", **_common)
1712 ],ncols=1)
1713
1714 _trackster_layernum_plots = [Plot("trackster_firstlayer", **_common)]
1715 _trackster_layernum_plots.extend([Plot("trackster_lastlayer", **_common)])
1716 _trackster_layernum_plots.extend([Plot("trackster_layersnum", **_common)])
1717 _trackster_layernum = PlotGroup("LayerNumbersOfTrackster", _trackster_layernum_plots, ncols=3)
1718
1719 _common["xmax"] = 150
1720 _clusternum_in_trackster = PlotGroup("NumberofLayerClustersinTrackster",[
1721 Plot("clusternum_in_trackster", **_common)
1722 ],ncols=1)
1723
1724 _common = {"stat": True, "drawStyle": "pcolz", "staty": 0.65, "xtitle": "Default", "ytitle": "Default"}
1725
1726 _clusternum_in_trackster_vs_layer = PlotGroup("NumberofLayerClustersinTracksterPerLayer",[
1727 Plot("clusternum_in_trackster_vs_layer", **_common)
1728 ],ncols=1)
1729
1730 _common["scale"] = 100.
1731
1732 _multiplicity_numberOfEventsHistogram = hgcVal_dqm + "ticlTrackstersMerge/multiplicity_numberOfEventsHistogram"
1733 _multiplicity_zminus_numberOfEventsHistogram = hgcVal_dqm + "ticlTrackstersMerge/multiplicity_zminus_numberOfEventsHistogram"
1734 _multiplicity_zplus_numberOfEventsHistogram = hgcVal_dqm + "ticlTrackstersMerge/multiplicity_zplus_numberOfEventsHistogram"
1735
1736 _multiplicityOfLCinTST_plots = [Plot("multiplicityOfLCinTST",
1737 drawCommand = "colz text45", normalizeToNumberOfEvents = True, **_common)]
1738 _multiplicityOfLCinTST_plots.extend([Plot("multiplicityOfLCinTST_vs_layerclusterenergy",
1739 drawCommand = "colz text45", normalizeToNumberOfEvents = True, **_common)])
1740 _multiplicityOfLCinTST_plots.extend([Plot("multiplicityOfLCinTST_vs_layercluster_zplus",
1741 drawCommand = "colz text45", normalizeToNumberOfEvents = True, **_common)])
1742 _multiplicityOfLCinTST_plots.extend([Plot("multiplicityOfLCinTST_vs_layercluster_zminus",
1743 drawCommand = "colz text45", normalizeToNumberOfEvents = True, **_common)])
1744 _multiplicityOfLCinTST = PlotGroup("MultiplicityofLCinTST", _multiplicityOfLCinTST_plots, ncols=2)
1745
1746 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65}
1747
1748
1749
1750 _clusternum_in_trackster_perlayer_zminus_EE = PlotGroup("NumberofLayerClustersinTracksterPerLayer_zminus_EE", [
1751 Plot("clusternum_in_trackster_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm)
1752 ], ncols=7)
1753
1754 _clusternum_in_trackster_perlayer_zminus_FH = PlotGroup("NumberofLayerClustersinTracksterPerLayer_zminus_FH", [
1755 Plot("clusternum_in_trackster_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzm,lastLayerFHzm)
1756 ], ncols=7)
1757
1758 _clusternum_in_trackster_perlayer_zminus_BH = PlotGroup("NumberofLayerClustersinTracksterPerLayer_zminus_BH", [
1759 Plot("clusternum_in_trackster_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzm,maxlayerzm)
1760 ], ncols=7)
1761
1762
1763
1764
1765 _clusternum_in_trackster_perlayer_zplus_EE = PlotGroup("NumberofLayerClustersinTracksterPerLayer_zplus_EE", [
1766 Plot("clusternum_in_trackster_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(maxlayerzm,lastLayerEEzp)
1767 ], ncols=7)
1768
1769 _clusternum_in_trackster_perlayer_zplus_FH = PlotGroup("NumberofLayerClustersinTracksterPerLayer_zplus_FH", [
1770 Plot("clusternum_in_trackster_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerEEzp,lastLayerFHzp)
1771 ], ncols=7)
1772
1773 _clusternum_in_trackster_perlayer_zplus_BH = PlotGroup("NumberofLayerClustersinTracksterPerLayer_zplus_BH", [
1774 Plot("clusternum_in_trackster_perlayer{:02d}".format(i), xtitle="", **_common) for i in range(lastLayerFHzp,maxlayerzp)
1775 ], ncols=7)
1776
1777
1778 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65, "xtitle": "Default"}
1779
1780
1781 _trackster_eppe_plots = [Plot("trackster_eta", **_common)]
1782 _trackster_eppe_plots.extend([Plot("trackster_phi", **_common)])
1783 _trackster_eppe_plots.extend([Plot("trackster_pt", **_common)])
1784 _trackster_eppe_plots.extend([Plot("trackster_energy", **_common)])
1785 _trackster_eppe = PlotGroup("EtaPhiPtEnergy", _trackster_eppe_plots, ncols=2)
1786
1787 _trackster_xyz_plots = [Plot("trackster_x", **_common)]
1788 _trackster_xyz_plots.extend([Plot("trackster_y", **_common)])
1789 _trackster_xyz_plots.extend([Plot("trackster_z", **_common)])
1790 _trackster_xyz = PlotGroup("XYZ", _trackster_xyz_plots, ncols=3)
1791
1792
1793
1794
1795
1796
1797 cand_plots_names = ["N of tracksters in candidate", "Candidates PDG Id", "Candidates charge", "Candidates type"]
1798 _candidate_nts_plots = []
1799 for name in cand_plots_names:
1800 _candidate_nts_plots.extend([Plot(name, **_common)])
1801 _candidatesPlots1 = PlotGroup("General_plots_pid_type", _candidate_nts_plots, ncols=2)
1802
1803 cand_plots_names = ["Candidates pT", "Candidates raw energy", "Candidates regressed energy"]
1804 _candidate_nts_plots = []
1805 for name in cand_plots_names:
1806 _candidate_nts_plots.extend([Plot(name, **_common)])
1807 _candidatesPlots2 = PlotGroup("General_plots_pt_energy", _candidate_nts_plots, ncols=3)
1808
1809 _candidatesPlots = [_candidatesPlots1, _candidatesPlots2]
1810
1811
1812 cand_type = ["charged_hadrons", "electrons", "muons", "neutral_hadrons", "neutral_pions", "photons"]
1813 cand_plots_names = [" candidates PDG Id", " candidates charge", " candidates type"]
1814 cand_plots_names_den = ["den_fake_cand_vs_energy_", "den_fake_cand_vs_eta_", "den_fake_cand_vs_phi_", "den_fake_cand_vs_pt_"]
1815
1816 _all_cand_type_plots = []
1817 for ct in cand_type:
1818 cand_type_plots = [Plot("N of tracksters in candidate for "+ct, title="N of tracksters in candidate for "+ct.replace("_", " "), **_common)]
1819 for name in cand_plots_names:
1820 cand_type_plots.extend([Plot(ct+name, title=ct.replace("_", " ")+name, **_common)])
1821 _all_cand_type_plots.append(cand_type_plots)
1822
1823 _all_cand_ene_plots = []
1824 for ct in cand_type:
1825 name = "candidates regressed energy"
1826 cand_type_plots = [Plot(ct+name, title=ct.replace("_", " ")+" "+name, **_common)]
1827 for name in cand_plots_names_den:
1828 cand_type_plots.extend([Plot(name+ct, title=ct.replace("_", " ")+" candidates "+name.replace("den_fake_cand_vs_", "").replace("_", ""), **_common)])
1829 _all_cand_ene_plots.append(cand_type_plots)
1830
1831
1832 _common_eff_fake = {"stat": False, "legend": False, "xbinlabelsize": 14, "xtitle": "Default", "xbinlabeloption": "d", "ymin": 0.0, "ymax": 1.1}
1833 _all_cand_eff_plots = []
1834 for ct in cand_type:
1835 cand_eff_plots = []
1836 for var in ["pt", "energy", "eta", "phi"]:
1837 for cut in ["track", "pid", "energy"]:
1838 cand_eff_plots.extend([Plot("eff_"+ct+"_"+cut+"_"+var, title=cut + " efficiency for "+ct.replace("_", " ")+" vs "+var, ytitle="Efficiency", **_common_eff_fake)])
1839 _all_cand_eff_plots.append(cand_eff_plots)
1840
1841 _all_cand_fake_plots = []
1842 for ct in cand_type:
1843 cand_fake_plots = []
1844 for var in ["pt", "energy", "eta", "phi"]:
1845 for cut in ["track", "pid", "energy"]:
1846 cand_fake_plots.extend([Plot("fake_"+ct+"_"+cut+"_"+var, title=cut + " fake rate for "+ct.replace("_", " ")+" vs "+var, ytitle="Fake rate", **_common_eff_fake)])
1847 _all_cand_fake_plots.append(cand_fake_plots)
1848
1849 _allCandidatesPlots = [[],[],[],[],[],[]]
1850 for i in range(6):
1851 _allCandidatesPlots[i].extend([PlotGroup(cand_type[i]+"_type", _all_cand_type_plots[i], ncols=2), PlotGroup(cand_type[i]+"_kin", _all_cand_ene_plots[i], ncols=3), PlotGroup(cand_type[i]+"_eff", _all_cand_eff_plots[i], ncols=3), PlotGroup(cand_type[i]+"_fake", _all_cand_fake_plots[i], ncols=3)])
1852
1853
1854
1855
1856
1857 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65, "ymin": 0.1, "ylog": True}
1858
1859 _HitValidation = PlotGroup("HitValidation", [
1860 Plot("heeEnSim", title="SimHits_EE_Energy", **_common),
1861 Plot("hebEnSim", title="SimHits_HE_Silicon_Energy", **_common),
1862 Plot("hefEnSim", title="SimHits_HE_Scintillator_Energy", **_common),
1863 ])
1864
1865 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65}
1866
1867 _Occupancy_EE_zplus = PlotGroup("Occupancy_EE_zplus", [Plot("HitOccupancy_Plus_layer_{:02d}".format(i), title="Occupancy_EE_zplus",
1868 xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
1869 ], ncols=7)
1870
1871 _Occupancy_HE_Silicon_zplus = PlotGroup("Occupancy_HE_Silicon_zplus", [Plot("HitOccupancy_Plus_layer_{:02d}".format(i), title="Occupancy_HE_zplus",
1872 xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
1873 ], ncols=7)
1874
1875 _Occupancy_HE_Scintillator_zplus = PlotGroup("Occupancy_HE_Scintillator_zplus", [Plot("HitOccupancy_Plus_layer_{:02d}".format(i), title="Occupancy_HE_Scintillator_zplus",
1876 xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
1877 ], ncols=7)
1878
1879 _Occupancy_EE_zminus = PlotGroup("Occupancy_EE_zminus", [Plot("HitOccupancy_Minus_layer_{:02d}".format(i), title="Occupancy_EE_zminus",
1880 xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
1881 ], ncols=7)
1882
1883 _Occupancy_HE_Silicon_zminus = PlotGroup("Occupancy_HE_Silicon_zminus", [Plot("HitOccupancy_Minus_layer_{:02d}".format(i), title="Occupancy_HE_Silicon_zminus",
1884 xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
1885 ], ncols=7)
1886
1887 _Occupancy_HE_Scintillator_zminus = PlotGroup("Occupancy_HE_Scintillator_zminus", [Plot("HitOccupancy_Minus_layer_{:02d}".format(i), title="Occupancy_HE_Scintillator_zminus",
1888 xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
1889 ], ncols=7)
1890
1891 _common_etaphi = dict(removeEmptyBins=False, xbinlabelsize=10, xbinlabeloption="d", ymin=None)
1892
1893 _EtaPhi_EE_zplus = PlotGroup("EtaPhi_EE_zplus", [Plot("EtaPhi_Plus_layer_{:02d}".format(i), title="EtaPhi_EE_zplus",
1894 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_etaphi) for i in range(EE_min,EE_max+1)
1895 ], ncols=7)
1896
1897 _EtaPhi_HE_Silicon_zplus = PlotGroup("EtaPhi_HE_Silicon_zplus", [Plot("EtaPhi_Plus_layer_{:02d}".format(i), title="EtaPhi_HE_Silicon_zplus",
1898 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_etaphi) for i in range(HESilicon_min,HESilicon_max+1)
1899 ], ncols=7)
1900
1901 _EtaPhi_HE_Scintillator_zplus = PlotGroup("EtaPhi_HE_Scintillator_zplus", [Plot("EtaPhi_Plus_layer_{:02d}".format(i), title="EtaPhi_HE_Scintillator_zplus",
1902 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_etaphi) for i in range(HEScintillator_min,HEScintillator_max+1)
1903 ], ncols=7)
1904
1905 _EtaPhi_EE_zminus = PlotGroup("EtaPhi_EE_zminus", [Plot("EtaPhi_Minus_layer_{:02d}".format(i), title="EtaPhi_EE_zminus",
1906 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_etaphi) for i in range(EE_min,EE_max+1)
1907 ], ncols=7)
1908
1909 _EtaPhi_HE_Silicon_zminus = PlotGroup("EtaPhi_HE_Silicon_zminus", [Plot("EtaPhi_Minus_layer_{:02d}".format(i), title="EtaPhi_HE_Silicon_zminus",
1910 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_etaphi) for i in range(HESilicon_min,HESilicon_max+1)
1911 ], ncols=7)
1912
1913 _EtaPhi_HE_Scintillator_zminus = PlotGroup("EtaPhi_HE_Scintillator_zminus", [Plot("EtaPhi_Minus_layer_{:02d}".format(i), title="EtaPhi_HE_Scintillator_zminus",
1914 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_etaphi) for i in range(HEScintillator_min,HEScintillator_max+1)
1915 ], ncols=7)
1916
1917 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65, "ymin": 0.1, "ylog": True}
1918
1919 _Energy_EE_0 = PlotGroup("Energy_Time_0_EE", [Plot("energy_time_0_layer_{:02d}".format(i), title="Energy_Time_0_EE",
1920 xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
1921 ], ncols=7)
1922
1923 _Energy_HE_Silicon_0 = PlotGroup("Energy_Time_0_HE_Silicon", [Plot("energy_time_0_layer_{:02d}".format(i), title="Energy_Time_0_HE_Silicon",
1924 xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
1925 ], ncols=7)
1926
1927 _Energy_HE_Scintillator_0 = PlotGroup("Energy_Time_0_HE_Scintillator", [Plot("energy_time_0_layer_{:02d}".format(i), title="Energy_Time_0_HE_Scintillator",
1928 xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
1929 ], ncols=7)
1930
1931 _Energy_EE_1 = PlotGroup("Energy_Time_1_EE", [Plot("energy_time_1_layer_{:02d}".format(i), title="Energy_Time_1_EE",
1932 xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
1933 ], ncols=7)
1934
1935 _Energy_HE_Silicon_1 = PlotGroup("Energy_Time_1_HE_Silicon", [Plot("energy_time_1_layer_{:02d}".format(i), title="Energy_Time_1_HE_Silicon",
1936 xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
1937 ], ncols=7)
1938
1939 _Energy_HE_Scintillator_1 = PlotGroup("Energy_Time_1_HE_Scintillator", [Plot("energy_time_1_layer_{:02d}".format(i), title="Energy_Time_1_HE_Scintillator",
1940 xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
1941 ], ncols=7)
1942
1943 _Energy_EE = PlotGroup("Energy_EE", [Plot("energy_layer_{:02d}".format(i), title="Energy_EE",
1944 xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
1945 ], ncols=7)
1946
1947 _Energy_HE_Silicon = PlotGroup("Energy_HE_Silicon", [Plot("energy_layer_{:02d}".format(i), title="Energy_HE_Silicon",
1948 xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
1949 ], ncols=7)
1950
1951 _Energy_HE_Scintillator = PlotGroup("Energy_HE_Scintillator", [Plot("energy_layer_{:02d}".format(i), title="Energy_HE_Scintillator",
1952 xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
1953 ], ncols=7)
1954
1955 _DigiHits_ADC_EE = PlotGroup("ADC_EE", [Plot("ADC_layer_{:02d}".format(i), title="DigiHits_ADC_EE",
1956 xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
1957 ], ncols=7)
1958
1959 _DigiHits_ADC_HE_Silicon = PlotGroup("ADC_HE_Silicon", [Plot("ADC_layer_{:02d}".format(i), title="DigiHits_ADC_HE_Silicon",
1960 xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
1961 ], ncols=7)
1962
1963 _DigiHits_ADC_HE_Scintillator = PlotGroup("ADC_HE_Scintillator", [Plot("ADC_layer_{:02d}".format(i), title="DigiHits_ADC_HE_Scintillator",
1964 xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
1965 ], ncols=7)
1966
1967 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65}
1968
1969 _DigiHits_Occupancy_EE_zplus = PlotGroup("Occupancy_EE_zplus", [Plot("DigiOccupancy_Plus_layer_{:02d}".format(i), title="DigiHits_Occupancy_EE_zplus",
1970 xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
1971 ], ncols=7)
1972
1973 _DigiHits_Occupancy_HE_Silicon_zplus = PlotGroup("Occupancy_HE_Silicon_zplus", [Plot("DigiOccupancy_Plus_layer_{:02d}".format(i), title="DigiHits_Occupancy_HE_Silicon_zplus",
1974 xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
1975 ], ncols=7)
1976
1977 _DigiHits_Occupancy_HE_Scintillator_zplus = PlotGroup("Occupancy_HE_Scintillator_zplus", [Plot("DigiOccupancy_Plus_layer_{:02d}".format(i), title="DigiHits_Occupancy_HE_Scintillator_zplus",
1978 xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
1979 ], ncols=7)
1980
1981 _DigiHits_Occupancy_EE_zminus = PlotGroup("Occupancy_EE_zminus", [Plot("DigiOccupancy_Minus_layer_{:02d}".format(i), title="DigiHits_Occupancy_EE_zminus",
1982 xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
1983 ], ncols=7)
1984
1985 _DigiHits_Occupancy_HE_Silicon_zminus = PlotGroup("Occupancy_HE_Silicon_zminus", [Plot("DigiOccupancy_Minus_layer_{:02d}".format(i), title="DigiHits_Occupancy_HE_Silicon_zminus",
1986 xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
1987 ], ncols=7)
1988
1989 _DigiHits_Occupancy_HE_Scintillator_zminus = PlotGroup("Occupancy_HE_Scintillator_zminus", [Plot("DigiOccupancy_Minus_layer_{:02d}".format(i), title="DigiHits_Occupancy_HE_Scintillator_zminus",
1990 xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
1991 ], ncols=7)
1992
1993 _common_XY = dict(removeEmptyBins=True, xbinlabelsize=10, xbinlabeloption="d", ymin=None)
1994
1995 _DigiHits_Occupancy_XY_EE = PlotGroup("Occupancy_XY_EE", [Plot("DigiOccupancy_XY_layer_{:02d}".format(i), title="DigiHits_Occupancy_XY_EE",
1996 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_XY) for i in range(EE_min,EE_max+1)
1997 ], ncols=7)
1998
1999 _DigiHits_Occupancy_XY_HE_Silicon = PlotGroup("Occupancy_XY_HE_Silicon", [Plot("DigiOccupancy_XY_layer_{:02d}".format(i), title="DigiHits_Occupancy_XY_HE_Silicon",
2000 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_XY) for i in range(HESilicon_min,HESilicon_max+1)
2001 ], ncols=7)
2002
2003 _DigiHits_Occupancy_XY_HE_Scintillator = PlotGroup("Occupancy_XY_HE_Scintillator", [Plot("DigiOccupancy_XY_layer_{:02d}".format(i), title="DigiHits_Occupancy_XY_HE_Scintillator",
2004 xtitle="Layer {}".format(i), drawStyle="COLZ", adjustMarginRight=0.1, **_common_XY) for i in range(HEScintillator_min,HEScintillator_max+1)
2005 ], ncols=7)
2006
2007 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65, "ymin": 0.1, "ylog": True}
2008
2009 _DigiHits_TOA_EE = PlotGroup("TOA_EE", [
2010 Plot("TOA_layer_{:02d}".format(i), title="TOA_EE", xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
2011 ], ncols=7)
2012
2013 _DigiHits_TOA_HE_Silicon = PlotGroup("TOA_HE_Silicon", [
2014 Plot("TOA_layer_{:02d}".format(i), title="TOA_HE_Silicon", xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
2015 ], ncols=7)
2016
2017 _DigiHits_TOA_HE_Scintillator = PlotGroup("TOA_HE_Scintillator", [
2018 Plot("TOA_layer_{:02d}".format(i), title="TOA_HE_Scintillator", xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
2019 ], ncols=7)
2020
2021 _DigiHits_TOT_EE = PlotGroup("TOT_EE", [
2022 Plot("TOT_layer_{:02d}".format(i), title="TOT_EE", xtitle="Layer {}".format(i), **_common) for i in range(EE_min,EE_max+1)
2023 ], ncols=7)
2024
2025 _DigiHits_TOT_HE_Silicon = PlotGroup("TOT_HE_Silicon", [
2026 Plot("TOT_layer_{:02d}".format(i), title="TOT_HE_Silicon", xtitle="Layer {}".format(i), **_common) for i in range(HESilicon_min,HESilicon_max+1)
2027 ], ncols=7)
2028
2029 _DigiHits_TOT_HE_Scintillator = PlotGroup("TOT_HE_Scintillator", [
2030 Plot("TOT_layer_{:02d}".format(i), title="TOT_HE_Scintillator", xtitle="Layer {}".format(i), **_common) for i in range(HEScintillator_min,HEScintillator_max+1)
2031 ], ncols=7)
2032
2033
2034
2035 _common = {"stat": True, "drawStyle": "hist", "staty": 0.65, "ymin": 0.1, "ylog": False}
2036
2037 _LayerOccupancy = PlotGroup("LayerOccupancy", [
2038 Plot("LayerOccupancy", title="LayerOccupancy", **_common)], ncols=1)
2039
2040 _ReconstructableEnergyOverCPenergy = PlotGroup("ReconstructableEnergyOverCPenergy", [
2041 Plot("h_EoP_CPene_100_calib_fraction", title="EoP_CPene_100_calib_fraction", **_common),
2042 Plot("h_EoP_CPene_200_calib_fraction", title="EoP_CPene_200_calib_fraction", **_common),
2043 Plot("h_EoP_CPene_300_calib_fraction", title="EoP_CPene_300_calib_fraction", **_common),
2044 Plot("h_EoP_CPene_scint_calib_fraction", title="EoP_CPene_scint_calib_fraction", **_common),
2045 ])
2046
2047 _ParticleFlowClusterHGCalFromTrackster_Closest_EoverCPenergy = PlotGroup("ParticleFlowClusterHGCalFromTrackster", [
2048 Plot("hgcal_EoP_CPene_100_calib_fraction", title="hgcal_EoP_CPene_100_calib_fraction", **_common),
2049 Plot("hgcal_EoP_CPene_200_calib_fraction", title="hgcal_EoP_CPene_200_calib_fraction", **_common),
2050 Plot("hgcal_EoP_CPene_300_calib_fraction", title="hgcal_EoP_CPene_300_calib_fraction", **_common),
2051 Plot("hgcal_EoP_CPene_scint_calib_fraction", title="hgcal_EoP_CPene_scint_calib_fraction", **_common),
2052 ])
2053
2054 _EcalDrivenGsfElectronsFromTrackster_Closest_EoverCPenergy = PlotGroup("EcalDrivenGsfElectronsFromTrackster", [
2055 Plot("hgcal_ele_EoP_CPene_100_calib_fraction", title="hgcal_ele_EoP_CPene_100_calib_fraction", **_common),
2056 Plot("hgcal_ele_EoP_CPene_200_calib_fraction", title="hgcal_ele_EoP_CPene_200_calib_fraction", **_common),
2057 Plot("hgcal_ele_EoP_CPene_300_calib_fraction", title="hgcal_ele_EoP_CPene_300_calib_fraction", **_common),
2058 Plot("hgcal_ele_EoP_CPene_scint_calib_fraction", title="hgcal_ele_EoP_CPene_scint_calib_fraction", **_common),
2059 ])
2060
2061 _PhotonsFromTrackster_Closest_EoverCPenergy = PlotGroup("PhotonsFromTrackster", [
2062 Plot("hgcal_photon_EoP_CPene_100_calib_fraction", title="hgcal_photon_EoP_CPene_100_calib_fraction", **_common),
2063 Plot("hgcal_photon_EoP_CPene_200_calib_fraction", title="hgcal_photon_EoP_CPene_200_calib_fraction", **_common),
2064 Plot("hgcal_photon_EoP_CPene_300_calib_fraction", title="hgcal_photon_EoP_CPene_300_calib_fraction", **_common),
2065 Plot("hgcal_photon_EoP_CPene_scint_calib_fraction", title="hgcal_photon_EoP_CPene_scint_calib_fraction", **_common),
2066 ])
2067
2068
2069 hgcalLayerClustersPlotter = Plotter()
2070 layerClustersLabel = 'Layer Clusters'
2071
2072 lc_general_clusterlevel = [
2073
2074
2075 _totclusternum_thick,
2076
2077
2078
2079
2080 _num_reco_cluster_eta,
2081 _energyclustered,
2082 _mixedhitsclusters,
2083 _longdepthbarycentre,
2084
2085
2086 _cellsenedens_thick
2087 ]
2088
2089 lc_clusterlevel_zminus = [
2090
2091 _totclusternum_layer_EE_zminus,
2092 _totclusternum_layer_FH_zminus,
2093 _totclusternum_layer_BH_zminus,
2094
2095 _energyclustered_perlayer_EE_zminus,
2096 _energyclustered_perlayer_FH_zminus,
2097 _energyclustered_perlayer_BH_zminus
2098 ]
2099
2100 lc_cellevel_zminus = [
2101
2102
2103
2104
2105 _cellsnum_perthick_perlayer_120_EE_zminus,
2106 _cellsnum_perthick_perlayer_120_FH_zminus,
2107 _cellsnum_perthick_perlayer_120_BH_zminus,
2108 _cellsnum_perthick_perlayer_200_EE_zminus,
2109 _cellsnum_perthick_perlayer_200_FH_zminus,
2110 _cellsnum_perthick_perlayer_200_BH_zminus,
2111 _cellsnum_perthick_perlayer_300_EE_zminus,
2112 _cellsnum_perthick_perlayer_300_FH_zminus,
2113 _cellsnum_perthick_perlayer_300_BH_zminus,
2114 _cellsnum_perthick_perlayer_scint_EE_zminus,
2115 _cellsnum_perthick_perlayer_scint_FH_zminus,
2116 _cellsnum_perthick_perlayer_scint_BH_zminus,
2117
2118 _cell_association_table_zminus
2119 ]
2120
2121 lc_cp_association_zminus = [
2122
2123 _efficiencies_zminus,
2124 _efficiencies_zminus_eta,
2125 _efficiencies_zminus_phi,
2126
2127 _duplicates_zminus,
2128 _duplicates_zminus_eta,
2129 _duplicates_zminus_phi,
2130
2131 _fakes_zminus,
2132 _fakes_zminus_eta,
2133 _fakes_zminus_phi,
2134
2135 _merges_zminus,
2136 _merges_zminus_eta,
2137 _merges_zminus_phi,
2138
2139 _score_caloparticle_to_layerclusters_zminus,
2140
2141 _score_layercluster_to_caloparticles_zminus,
2142
2143 _sharedEnergy_caloparticle_to_layercluster_zminus,
2144
2145 _sharedEnergy_layercluster_to_caloparticle_zminus,
2146
2147 _energyscore_cp2lc_zminus,
2148
2149 _energyscore_lc2cp_zminus
2150 ]
2151
2152 lc_zminus_extended = [
2153
2154
2155
2156
2157
2158 _distancetomaxcell_perthickperlayer_120_EE_zminus,
2159 _distancetomaxcell_perthickperlayer_120_FH_zminus,
2160 _distancetomaxcell_perthickperlayer_120_BH_zminus,
2161 _distancetomaxcell_perthickperlayer_200_EE_zminus,
2162 _distancetomaxcell_perthickperlayer_200_FH_zminus,
2163 _distancetomaxcell_perthickperlayer_200_BH_zminus,
2164 _distancetomaxcell_perthickperlayer_300_EE_zminus,
2165 _distancetomaxcell_perthickperlayer_300_FH_zminus,
2166 _distancetomaxcell_perthickperlayer_300_BH_zminus,
2167 _distancetomaxcell_perthickperlayer_scint_EE_zminus,
2168 _distancetomaxcell_perthickperlayer_scint_FH_zminus,
2169 _distancetomaxcell_perthickperlayer_scint_BH_zminus,
2170 _distancetoseedcell_perthickperlayer_120_EE_zminus,
2171 _distancetoseedcell_perthickperlayer_120_FH_zminus,
2172 _distancetoseedcell_perthickperlayer_120_BH_zminus,
2173 _distancetoseedcell_perthickperlayer_200_EE_zminus,
2174 _distancetoseedcell_perthickperlayer_200_FH_zminus,
2175 _distancetoseedcell_perthickperlayer_200_BH_zminus,
2176 _distancetoseedcell_perthickperlayer_300_EE_zminus,
2177 _distancetoseedcell_perthickperlayer_300_FH_zminus,
2178 _distancetoseedcell_perthickperlayer_300_BH_zminus,
2179 _distancetoseedcell_perthickperlayer_scint_EE_zminus,
2180 _distancetoseedcell_perthickperlayer_scint_FH_zminus,
2181 _distancetoseedcell_perthickperlayer_scint_BH_zminus,
2182 _distancetomaxcell_perthickperlayer_eneweighted_120_EE_zminus,
2183 _distancetomaxcell_perthickperlayer_eneweighted_120_FH_zminus,
2184 _distancetomaxcell_perthickperlayer_eneweighted_120_BH_zminus,
2185 _distancetomaxcell_perthickperlayer_eneweighted_200_EE_zminus,
2186 _distancetomaxcell_perthickperlayer_eneweighted_200_FH_zminus,
2187 _distancetomaxcell_perthickperlayer_eneweighted_200_BH_zminus,
2188 _distancetomaxcell_perthickperlayer_eneweighted_300_EE_zminus,
2189 _distancetomaxcell_perthickperlayer_eneweighted_300_FH_zminus,
2190 _distancetomaxcell_perthickperlayer_eneweighted_300_BH_zminus,
2191 _distancetomaxcell_perthickperlayer_eneweighted_scint_EE_zminus,
2192 _distancetomaxcell_perthickperlayer_eneweighted_scint_FH_zminus,
2193 _distancetomaxcell_perthickperlayer_eneweighted_scint_BH_zminus,
2194 _distancetoseedcell_perthickperlayer_eneweighted_120_EE_zminus,
2195 _distancetoseedcell_perthickperlayer_eneweighted_120_FH_zminus,
2196 _distancetoseedcell_perthickperlayer_eneweighted_120_BH_zminus,
2197 _distancetoseedcell_perthickperlayer_eneweighted_200_EE_zminus,
2198 _distancetoseedcell_perthickperlayer_eneweighted_200_FH_zminus,
2199 _distancetoseedcell_perthickperlayer_eneweighted_200_BH_zminus,
2200 _distancetoseedcell_perthickperlayer_eneweighted_300_EE_zminus,
2201 _distancetoseedcell_perthickperlayer_eneweighted_300_FH_zminus,
2202 _distancetoseedcell_perthickperlayer_eneweighted_300_BH_zminus,
2203 _distancetoseedcell_perthickperlayer_eneweighted_scint_EE_zminus,
2204 _distancetoseedcell_perthickperlayer_eneweighted_scint_FH_zminus,
2205 _distancetoseedcell_perthickperlayer_eneweighted_scint_BH_zminus,
2206 _distancebetseedandmaxcell_perthickperlayer_120_EE_zminus,
2207 _distancebetseedandmaxcell_perthickperlayer_120_FH_zminus,
2208 _distancebetseedandmaxcell_perthickperlayer_120_BH_zminus,
2209 _distancebetseedandmaxcell_perthickperlayer_200_EE_zminus,
2210 _distancebetseedandmaxcell_perthickperlayer_200_FH_zminus,
2211 _distancebetseedandmaxcell_perthickperlayer_200_BH_zminus,
2212 _distancebetseedandmaxcell_perthickperlayer_300_EE_zminus,
2213 _distancebetseedandmaxcell_perthickperlayer_300_FH_zminus,
2214 _distancebetseedandmaxcell_perthickperlayer_300_BH_zminus,
2215 _distancebetseedandmaxcell_perthickperlayer_scint_EE_zminus,
2216 _distancebetseedandmaxcell_perthickperlayer_scint_FH_zminus,
2217 _distancebetseedandmaxcell_perthickperlayer_scint_BH_zminus,
2218 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_EE_zminus,
2219 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_FH_zminus,
2220 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_BH_zminus,
2221 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_EE_zminus,
2222 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_FH_zminus,
2223 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_BH_zminus,
2224 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_EE_zminus,
2225 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_FH_zminus,
2226 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_BH_zminus,
2227 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_EE_zminus,
2228 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_FH_zminus,
2229 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_BH_zminus
2230 ]
2231
2232 lc_clusterlevel_zplus = [
2233
2234 _totclusternum_layer_EE_zplus,
2235 _totclusternum_layer_FH_zplus,
2236 _totclusternum_layer_BH_zplus,
2237
2238 _energyclustered_perlayer_EE_zplus,
2239 _energyclustered_perlayer_FH_zplus,
2240 _energyclustered_perlayer_BH_zplus
2241 ]
2242
2243 lc_cellevel_zplus = [
2244
2245 _cellsnum_perthick_perlayer_120_EE_zplus,
2246 _cellsnum_perthick_perlayer_120_FH_zplus,
2247 _cellsnum_perthick_perlayer_120_BH_zplus,
2248 _cellsnum_perthick_perlayer_200_EE_zplus,
2249 _cellsnum_perthick_perlayer_200_FH_zplus,
2250 _cellsnum_perthick_perlayer_200_BH_zplus,
2251 _cellsnum_perthick_perlayer_300_EE_zplus,
2252 _cellsnum_perthick_perlayer_300_FH_zplus,
2253 _cellsnum_perthick_perlayer_300_BH_zplus,
2254 _cellsnum_perthick_perlayer_scint_EE_zplus,
2255 _cellsnum_perthick_perlayer_scint_FH_zplus,
2256 _cellsnum_perthick_perlayer_scint_BH_zplus,
2257
2258 _cell_association_table_zplus
2259 ]
2260
2261 lc_cp_association_zplus = [
2262
2263 _efficiencies_zplus,
2264 _efficiencies_zplus_eta,
2265 _efficiencies_zplus_phi,
2266
2267 _duplicates_zplus,
2268 _duplicates_zplus_eta,
2269 _duplicates_zplus_phi,
2270
2271 _fakes_zplus,
2272 _fakes_zplus_eta,
2273 _fakes_zplus_phi,
2274
2275 _merges_zplus,
2276 _merges_zplus_eta,
2277 _merges_zplus_phi,
2278
2279 _score_caloparticle_to_layerclusters_zplus,
2280
2281 _score_layercluster_to_caloparticles_zplus,
2282
2283 _sharedEnergy_caloparticle_to_layercluster_zplus,
2284
2285 _sharedEnergy_layercluster_to_caloparticle_zplus,
2286 _energyscore_cp2lc_zplus,
2287 _energyscore_lc2cp_zplus
2288 ]
2289
2290 lc_zplus_extended = [
2291
2292 _distancetomaxcell_perthickperlayer_120_EE_zplus,
2293 _distancetomaxcell_perthickperlayer_120_FH_zplus,
2294 _distancetomaxcell_perthickperlayer_120_BH_zplus,
2295 _distancetomaxcell_perthickperlayer_200_EE_zplus,
2296 _distancetomaxcell_perthickperlayer_200_FH_zplus,
2297 _distancetomaxcell_perthickperlayer_200_BH_zplus,
2298 _distancetomaxcell_perthickperlayer_300_EE_zplus,
2299 _distancetomaxcell_perthickperlayer_300_FH_zplus,
2300 _distancetomaxcell_perthickperlayer_300_BH_zplus,
2301 _distancetomaxcell_perthickperlayer_scint_EE_zplus,
2302 _distancetomaxcell_perthickperlayer_scint_FH_zplus,
2303 _distancetomaxcell_perthickperlayer_scint_BH_zplus,
2304 _distancetoseedcell_perthickperlayer_120_EE_zplus,
2305 _distancetoseedcell_perthickperlayer_120_FH_zplus,
2306 _distancetoseedcell_perthickperlayer_120_BH_zplus,
2307 _distancetoseedcell_perthickperlayer_200_EE_zplus,
2308 _distancetoseedcell_perthickperlayer_200_FH_zplus,
2309 _distancetoseedcell_perthickperlayer_200_BH_zplus,
2310 _distancetoseedcell_perthickperlayer_300_EE_zplus,
2311 _distancetoseedcell_perthickperlayer_300_FH_zplus,
2312 _distancetoseedcell_perthickperlayer_300_BH_zplus,
2313 _distancetoseedcell_perthickperlayer_scint_EE_zplus,
2314 _distancetoseedcell_perthickperlayer_scint_FH_zplus,
2315 _distancetoseedcell_perthickperlayer_scint_BH_zplus,
2316 _distancetomaxcell_perthickperlayer_eneweighted_120_EE_zplus,
2317 _distancetomaxcell_perthickperlayer_eneweighted_120_FH_zplus,
2318 _distancetomaxcell_perthickperlayer_eneweighted_120_BH_zplus,
2319 _distancetomaxcell_perthickperlayer_eneweighted_200_EE_zplus,
2320 _distancetomaxcell_perthickperlayer_eneweighted_200_FH_zplus,
2321 _distancetomaxcell_perthickperlayer_eneweighted_200_BH_zplus,
2322 _distancetomaxcell_perthickperlayer_eneweighted_300_EE_zplus,
2323 _distancetomaxcell_perthickperlayer_eneweighted_300_FH_zplus,
2324 _distancetomaxcell_perthickperlayer_eneweighted_300_BH_zplus,
2325 _distancetomaxcell_perthickperlayer_eneweighted_scint_EE_zplus,
2326 _distancetomaxcell_perthickperlayer_eneweighted_scint_FH_zplus,
2327 _distancetomaxcell_perthickperlayer_eneweighted_scint_BH_zplus,
2328 _distancetoseedcell_perthickperlayer_eneweighted_120_EE_zplus,
2329 _distancetoseedcell_perthickperlayer_eneweighted_120_FH_zplus,
2330 _distancetoseedcell_perthickperlayer_eneweighted_120_BH_zplus,
2331 _distancetoseedcell_perthickperlayer_eneweighted_200_EE_zplus,
2332 _distancetoseedcell_perthickperlayer_eneweighted_200_FH_zplus,
2333 _distancetoseedcell_perthickperlayer_eneweighted_200_BH_zplus,
2334 _distancetoseedcell_perthickperlayer_eneweighted_300_EE_zplus,
2335 _distancetoseedcell_perthickperlayer_eneweighted_300_FH_zplus,
2336 _distancetoseedcell_perthickperlayer_eneweighted_300_BH_zplus,
2337 _distancetoseedcell_perthickperlayer_eneweighted_scint_EE_zplus,
2338 _distancetoseedcell_perthickperlayer_eneweighted_scint_FH_zplus,
2339 _distancetoseedcell_perthickperlayer_eneweighted_scint_BH_zplus,
2340 _distancebetseedandmaxcell_perthickperlayer_120_EE_zplus,
2341 _distancebetseedandmaxcell_perthickperlayer_120_FH_zplus,
2342 _distancebetseedandmaxcell_perthickperlayer_120_BH_zplus,
2343 _distancebetseedandmaxcell_perthickperlayer_200_EE_zplus,
2344 _distancebetseedandmaxcell_perthickperlayer_200_FH_zplus,
2345 _distancebetseedandmaxcell_perthickperlayer_200_BH_zplus,
2346 _distancebetseedandmaxcell_perthickperlayer_300_EE_zplus,
2347 _distancebetseedandmaxcell_perthickperlayer_300_FH_zplus,
2348 _distancebetseedandmaxcell_perthickperlayer_300_BH_zplus,
2349 _distancebetseedandmaxcell_perthickperlayer_scint_EE_zplus,
2350 _distancebetseedandmaxcell_perthickperlayer_scint_FH_zplus,
2351 _distancebetseedandmaxcell_perthickperlayer_scint_BH_zplus,
2352 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_EE_zplus,
2353 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_FH_zplus,
2354 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_120_BH_zplus,
2355 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_EE_zplus,
2356 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_FH_zplus,
2357 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_200_BH_zplus,
2358 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_EE_zplus,
2359 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_FH_zplus,
2360 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_300_BH_zplus,
2361 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_EE_zplus,
2362 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_FH_zplus,
2363 _distancebetseedandmaxcellvsclusterenergy_perthickperlayer_scint_BH_zplus
2364 ]
2365
2366 def append_hgcalLayerClustersPlots(collection = hgcalValidator.label_layerClusterPlots._InputTag__moduleLabel, name_collection = layerClustersLabel, extended = False):
2367 print('extended : ',extended)
2368 regions_ClusterLevel = ["General: Cluster Level", "Z-minus: Cluster Level", "Z-plus: Cluster Level"]
2369 regions_CellLevel = ["Z-minus: Cell Level", "Z-plus: Cell Level"]
2370 regions_LCtoCP_association = ["Z-minus: LC_CP association", "Z-plus: LC_CP association"]
2371
2372 plots_lc_general_clusterlevel = lc_general_clusterlevel
2373 plots_lc_clusterlevel_zminus = lc_clusterlevel_zminus
2374 plots_lc_cellevel_zminus = lc_cellevel_zminus
2375 plots_lc_clusterlevel_zplus = lc_clusterlevel_zplus
2376 plots_lc_cellevel_zplus = lc_cellevel_zplus
2377 plots_lc_cp_association_zminus = lc_cp_association_zminus
2378 plots_lc_cp_association_zplus = lc_cp_association_zplus
2379
2380 if extended :
2381
2382
2383 plots_lc_cellevel_zminus = lc_cellevel_zminus + lc_zminus_extended
2384 plots_lc_cellevel_zplus = lc_cellevel_zplus + lc_zplus_extended
2385
2386
2387
2388 setPlots_ClusterLevel = [plots_lc_general_clusterlevel, plots_lc_clusterlevel_zminus, plots_lc_clusterlevel_zplus]
2389 setPlots_CellLevel = [plots_lc_cellevel_zminus, plots_lc_cellevel_zplus]
2390 setPlots_LCtoCP_association = [plots_lc_cp_association_zminus, plots_lc_cp_association_zplus]
2391 for reg, setPlot in zip(regions_ClusterLevel, setPlots_ClusterLevel):
2392 hgcalLayerClustersPlotter.append(collection+"_"+reg, [
2393 _hgcalFolders(collection + "/ClusterLevel")
2394 ], PlotFolder(
2395 *setPlot,
2396 loopSubFolders=False,
2397 purpose=PlotPurpose.Timing, page=layerClustersLabel, section=reg))
2398 for reg, setPlot in zip(regions_CellLevel, setPlots_CellLevel):
2399 hgcalLayerClustersPlotter.append(collection+"_"+reg, [
2400 _hgcalFolders(collection + "/CellLevel")
2401 ], PlotFolder(
2402 *setPlot,
2403 loopSubFolders=False,
2404 purpose=PlotPurpose.Timing, page=layerClustersLabel, section=reg))
2405 for reg, setPlot in zip(regions_LCtoCP_association, setPlots_LCtoCP_association):
2406 hgcalLayerClustersPlotter.append(collection+"_"+reg, [
2407 _hgcalFolders(collection + "/" + lcToCP_linking)
2408 ], PlotFolder(
2409 *setPlot,
2410 loopSubFolders=False,
2411 purpose=PlotPurpose.Timing, page=layerClustersLabel, section=reg))
2412
2413
2414
2415 sc_clusterlevel = [
2416
2417
2418 _totsimclusternum_thick,
2419
2420
2421 _totsimclusternum_layer_EE_zminus,
2422 _totsimclusternum_layer_FH_zminus,
2423 _totsimclusternum_layer_BH_zminus,
2424
2425 _totsimclusternum_layer_EE_zplus,
2426 _totsimclusternum_layer_FH_zplus,
2427 _totsimclusternum_layer_BH_zplus,
2428
2429
2430 _mixedhitssimclusters,
2431 ]
2432
2433 sc_ticltracksters = [
2434
2435
2436 _score_simcluster_to_layerclusters_zminus,
2437
2438 _score_simcluster_to_layerclusters_zplus,
2439
2440
2441 _score_layercluster_to_simclusters_zminus,
2442
2443 _score_layercluster_to_simclusters_zplus,
2444
2445
2446 _sharedEnergy_simcluster_to_layercluster_zminus,
2447
2448 _sharedEnergy_simcluster_to_layercluster_zplus,
2449
2450
2451 _sharedEnergy_layercluster_to_simcluster_zminus,
2452
2453 _sharedEnergy_layercluster_to_simcluster_zplus,
2454
2455
2456 _efficiencies_sc_zminus,
2457 _duplicates_sc_zminus,
2458 _fakes_sc_zminus,
2459 _merges_sc_zminus,
2460 _efficiencies_sc_zminus_eta,
2461 _efficiencies_sc_zminus_phi,
2462
2463 _efficiencies_sc_zplus,
2464 _duplicates_sc_zplus,
2465 _fakes_sc_zplus,
2466 _merges_sc_zplus,
2467 _efficiencies_sc_zplus_eta,
2468 _efficiencies_sc_zplus_phi,
2469
2470
2471 _duplicates_sc_zminus_eta,
2472 _duplicates_sc_zminus_phi,
2473
2474 _duplicates_sc_zplus_eta,
2475 _duplicates_sc_zplus_phi,
2476
2477
2478 _fakes_sc_zminus_eta,
2479 _fakes_sc_zminus_phi,
2480
2481 _fakes_sc_zplus_eta,
2482 _fakes_sc_zplus_phi,
2483
2484
2485 _merges_sc_zminus_eta,
2486 _merges_sc_zminus_phi,
2487
2488 _merges_sc_zplus_eta,
2489 _merges_sc_zplus_phi,
2490
2491
2492 _energyscore_sc2lc_zminus,
2493
2494 _energyscore_sc2lc_zplus,
2495
2496
2497 _energyscore_lc2sc_zminus,
2498
2499 _energyscore_lc2sc_zplus
2500 ]
2501
2502 hgcalSimClustersPlotter = Plotter()
2503
2504 def append_hgcalSimClustersPlots(collection, name_collection):
2505 if collection == hgcalValidator.label_SimClustersLevel._InputTag__moduleLabel:
2506 hgcalSimClustersPlotter.append(collection, [
2507 _hgcalFolders(hgcalValidator.label_SimClusters._InputTag__moduleLabel +"/"+ collection)
2508 ], PlotFolder(
2509 *sc_clusterlevel,
2510 loopSubFolders=False,
2511 purpose=PlotPurpose.Timing, page="SimClusters", section=name_collection))
2512 else:
2513 hgcalSimClustersPlotter.append(collection, [
2514 _hgcalFolders(hgcalValidator.label_SimClusters._InputTag__moduleLabel +"/"+collection)
2515 ], PlotFolder(
2516 *sc_ticltracksters,
2517 loopSubFolders=False,
2518 purpose=PlotPurpose.Timing, page="SimClusters", section=name_collection))
2519
2520
2521
2522 def _hgcalFolders(lastDirName="hgcalLayerClusters"):
2523 return hgcVal_dqm + lastDirName
2524
2525 _trackstersPlots = [
2526 _trackster_eppe,
2527 _trackster_xyz,
2528 _tottracksternum,
2529 _clusternum_in_trackster,
2530 _clusternum_in_trackster_vs_layer,
2531 _clusternum_in_trackster_perlayer_zminus_EE,
2532 _clusternum_in_trackster_perlayer_zminus_FH,
2533 _clusternum_in_trackster_perlayer_zminus_BH,
2534 _clusternum_in_trackster_perlayer_zplus_EE,
2535 _clusternum_in_trackster_perlayer_zplus_FH,
2536 _clusternum_in_trackster_perlayer_zplus_BH,
2537 _trackster_layernum,
2538 _multiplicityOfLCinTST,
2539 ]
2540
2541 _trackstersToSimTracksterFromCPByHitsPlots = [
2542 _efficiencies[0],
2543 _purities[0],
2544 _duplicates[0],
2545 _fakes[0],
2546 _merges[0],
2547 _score_simtrackster_to_trackster[0],
2548 _score_trackster_to_simtrackster[0],
2549 _sharedEnergy_to_trackster[0],
2550 _sharedEnergy_trackster_to[0],
2551 _energyscore_to_trackster[0],
2552 _energyscore_trackster_to[0],
2553 ]
2554
2555 _trackstersToSimTracksterByLCsPlots = [
2556 _efficiencies[1],
2557 _purities[1],
2558 _duplicates[1],
2559 _fakes[1],
2560 _merges[1],
2561 _score_simtrackster_to_trackster[1],
2562 _score_trackster_to_simtrackster[1],
2563 _sharedEnergy_to_trackster[1],
2564 _sharedEnergy_trackster_to[1],
2565 _energyscore_to_trackster[1],
2566 _energyscore_trackster_to[1],
2567 ]
2568
2569 _trackstersToSimTracksterFromCPByLCsPlots = [
2570 _efficiencies[2],
2571 _purities[2],
2572 _duplicates[2],
2573 _fakes[2],
2574 _merges[2],
2575 _score_simtrackster_to_trackster[2],
2576 _score_trackster_to_simtrackster[2],
2577 _sharedEnergy_to_trackster[2],
2578 _sharedEnergy_trackster_to[2],
2579 _energyscore_to_trackster[2],
2580 _energyscore_trackster_to[2],
2581 ]
2582
2583 _trackstersToSimTracksterByHitsPlots = [
2584 _efficiencies[3],
2585 _purities[3],
2586 _duplicates[3],
2587 _fakes[3],
2588 _merges[3],
2589 _score_simtrackster_to_trackster[3],
2590 _score_trackster_to_simtrackster[3],
2591 _sharedEnergy_to_trackster[3],
2592 _sharedEnergy_trackster_to[3],
2593 _energyscore_to_trackster[3],
2594 _energyscore_trackster_to[3],
2595 ]
2596
2597 hgcalTrackstersPlotter = Plotter()
2598 def append_hgcalTrackstersPlots(collection = 'ticlTrackstersMerge', name_collection = "TrackstersMerge"):
2599
2600 hgcalTrackstersPlotter.append(collection, [
2601 _hgcalFolders(collection+ "/" + hgcalValidator.label_TS.value())
2602 ], PlotFolder(
2603 *_trackstersPlots,
2604 loopSubFolders=False,
2605 purpose=PlotPurpose.Timing, page="Tracksters", section=name_collection))
2606
2607
2608
2609 hgcalTrackstersPlotter.append(collection, [
2610 _hgcalFolders(collection + "/" + TSbyHits_CP)
2611 ], PlotFolder(
2612 *_trackstersToSimTracksterFromCPByHitsPlots,
2613 loopSubFolders=False,
2614 purpose=PlotPurpose.Timing
2615 ,page="Trackster to SimTracksters from CP Associated by Hits"
2616 ,section=name_collection)
2617 )
2618
2619 hgcalTrackstersPlotter.append(collection, [
2620 _hgcalFolders(collection + "/" + TSbyLCs)
2621 ], PlotFolder(
2622 *_trackstersToSimTracksterByLCsPlots,
2623 loopSubFolders=False,
2624 purpose=PlotPurpose.Timing
2625 ,page="Trackster to SimTracksters Associated by LCs"
2626 ,section=name_collection)
2627 )
2628
2629 hgcalTrackstersPlotter.append(collection, [
2630 _hgcalFolders(collection + "/" + TSbyLCs_CP)
2631 ], PlotFolder(
2632 *_trackstersToSimTracksterFromCPByLCsPlots,
2633 loopSubFolders=False,
2634 purpose=PlotPurpose.Timing
2635 ,page="Trackster to SimTracksters from CP Associated by LCs"
2636 ,section=name_collection)
2637 )
2638
2639 hgcalTrackstersPlotter.append(collection, [
2640 _hgcalFolders(collection + "/" + TSbyHits)
2641 ], PlotFolder(
2642 *_trackstersToSimTracksterByHitsPlots,
2643 loopSubFolders=False,
2644 purpose=PlotPurpose.Timing
2645 ,page="Trackster to SimTracksters Associated by Hits"
2646 ,section=name_collection)
2647 )
2648
2649
2650
2651
2652 _common_Calo = {"stat": False, "drawStyle": "hist", "staty": 0.65, "ymin": 0.0, "ylog": False, "xtitle": "Default", "ytitle": "Default"}
2653
2654 hgcalCaloParticlesPlotter = Plotter()
2655 def append_hgcalCaloParticlesPlots(files, collection = '-211', name_collection = "pion-"):
2656
2657 list_2D_histos = ["Energy of Rec-matched Hits vs layer",
2658 "Energy of Rec-matched Hits vs layer (1SC)",
2659 "Rec-matched Hits Sum Energy vs layer"]
2660
2661 dqmfolder = hgcVal_dqm + "SelectedCaloParticles/" + collection
2662 templateFile = ROOT.TFile.Open(files[0])
2663 if not gDirectory.GetDirectory(dqmfolder):
2664 print("Error: GeneralInfo directory %s not found in DQM file, exit"%dqmfolder)
2665 return hgcalTrackstersPlotter
2666
2667 keys = gDirectory.GetDirectory(dqmfolder,True).GetListOfKeys()
2668 key = keys[0]
2669 while key:
2670 obj = key.ReadObj()
2671 name = obj.GetName()
2672 fileName = TString(name)
2673 fileName.ReplaceAll(" ","_")
2674 pg = PlotGroup(fileName.Data(),[
2675 Plot(name,
2676 drawCommand = "",
2677 normalizeToNumberOfEvents = True, **_common_Calo)
2678 ],
2679 ncols=1)
2680
2681 if name in list_2D_histos :
2682 pg = PlotOnSideGroup(plotName.Data(),
2683 Plot(name,
2684 drawCommand = "COLZ",
2685 normalizeToNumberOfEvents = True, **_common_Calo)
2686 ,
2687 ncols=1)
2688
2689 hgcalCaloParticlesPlotter.append("CaloParticles_"+name_collection, [
2690 dqmfolder
2691 ], PlotFolder(
2692 pg,
2693 loopSubFolders=False,
2694 purpose=PlotPurpose.Timing, page="CaloParticles", section=name_collection)
2695 )
2696
2697 key = keys.After(key)
2698
2699 templateFile.Close()
2700
2701 return hgcalCaloParticlesPlotter
2702
2703
2704 def create_hgcalTrackstersPlotter(files, collection = 'ticlTrackstersMerge', name_collection = "TrackstersMerge"):
2705 grouped = {"cosAngle Beta": PlotGroup("cosAngle_Beta_per_layer",[],ncols=10), "cosAngle Beta Weighted": PlotGroup("cosAngle_Beta_Weighted_per_layer",[],ncols=10)}
2706 groupingFlag = " on Layer "
2707
2708 hgcalTrackstersPlotter = Plotter()
2709 dqmfolder = hgcVal_dqm + collection
2710
2711
2712 _common["ymin"] = 0.0
2713 _common["staty"] = 0.85
2714 templateFile = ROOT.TFile.Open(files[0])
2715 if not gDirectory.GetDirectory(dqmfolder):
2716 print("Error: GeneralInfo directory %s not found in DQM file, exit"%dqmfolder)
2717 return hgcalTrackstersPlotter
2718
2719 keys = gDirectory.GetDirectory(dqmfolder,True).GetListOfKeys()
2720 key = keys[0]
2721 while key:
2722 obj = key.ReadObj()
2723 name = obj.GetName()
2724 plotName = TString(name)
2725 plotName.ReplaceAll(" ","_")
2726
2727 if groupingFlag in name:
2728 for group in grouped:
2729 if group+groupingFlag in name:
2730 grouped[group].append(Plot(name,
2731 xtitle="Default", ytitle="Default",
2732 **_common)
2733 )
2734 print("Adding %s to %s"%(name,group))
2735 else:
2736 pg = None
2737 if obj.InheritsFrom("TH2"):
2738 pg = PlotOnSideGroup(plotName.Data(),
2739 Plot(name,
2740 xtitle="Default", ytitle="Default",
2741 drawCommand = "COLZ",
2742 **_common),
2743 ncols=1)
2744 elif obj.InheritsFrom("TH1"):
2745 pg = PlotGroup(plotName.Data(),
2746 [Plot(name,
2747 xtitle="Default", ytitle="Default",
2748 drawCommand = "COLZ",
2749 **_common)
2750 ],
2751 ncols=1, legendDh=-0.03 * len(files))
2752
2753 if (pg is not None):
2754 hgcalTrackstersPlotter.append(name_collection+"_TICLDebugger",
2755 [dqmfolder], PlotFolder(pg,
2756 loopSubFolders=False,
2757 purpose=PlotPurpose.Timing, page="Tracksters", section=name_collection)
2758
2759 )
2760
2761 key = keys.After(key)
2762
2763 for group in grouped:
2764 hgcalTrackstersPlotter.append(name_collection+"_TICLDebugger",
2765 [dqmfolder], PlotFolder(grouped[group],
2766 loopSubFolders=False,
2767 purpose=PlotPurpose.Timing, page="Tracksters", section=name_collection)
2768
2769 )
2770
2771 templateFile.Close()
2772
2773 return hgcalTrackstersPlotter
2774
2775
2776 _common_Calo = {"stat": False, "drawStyle": "hist", "staty": 0.65, "ymin": 0.0, "ylog": False, "xtitle": "Default", "ytitle": "Default"}
2777
2778 hgcalCaloParticlesPlotter = Plotter()
2779
2780 def append_hgcalCaloParticlesPlots(files, collection = '-211', name_collection = "pion-"):
2781 dqmfolder = hgcVal_dqm + "SelectedCaloParticles/" + collection
2782 print(dqmfolder)
2783
2784 templateFile = ROOT.TFile.Open(files[0])
2785 keys = gDirectory.GetDirectory(dqmfolder,True).GetListOfKeys()
2786 key = keys[0]
2787 while key:
2788 obj = key.ReadObj()
2789 name = obj.GetName()
2790 plotName = TString(name)
2791 plotName.ReplaceAll(" ","_")
2792
2793 pg = None
2794 if obj.InheritsFrom("TH2"):
2795 pg = PlotOnSideGroup(plotName.Data(),
2796 Plot(name,
2797 drawCommand = "COLZ",
2798 normalizeToNumberOfEvents = True, **_common_Calo),
2799 ncols=1)
2800 elif obj.InheritsFrom("TH1"):
2801 pg = PlotGroup(plotName.Data(),[
2802 Plot(name,
2803 drawCommand = "",
2804 normalizeToNumberOfEvents = True, **_common_Calo)
2805 ],
2806 ncols=1)
2807
2808 if (pg is not None):
2809 hgcalCaloParticlesPlotter.append("CaloParticles_"+name_collection, [
2810 dqmfolder
2811 ], PlotFolder(
2812 pg,
2813 loopSubFolders=False,
2814 purpose=PlotPurpose.Timing, page="CaloParticles", section=name_collection)
2815 )
2816
2817 key = keys.After(key)
2818
2819 templateFile.Close()
2820
2821 return hgcalCaloParticlesPlotter
2822
2823
2824
2825 def _hgcalHitFolders(dirName="HGCalSimHitsV/HGCalEESensitive"):
2826 return "DQMData/Run 1/HGCAL/Run summary/"+dirName
2827
2828 hgcalHitPlotter = Plotter()
2829 hitsLabel = 'Hits'
2830 simHitsLabel = 'Simulated Hits'
2831
2832 hgcalHitPlotter.append("SimHits_Validation", [
2833 "DQMData/Run 1/HGCAL/Run summary/HGCalSimHitsV/HitValidation",
2834 ], PlotFolder(
2835 _HitValidation,
2836 loopSubFolders=False,
2837 purpose=PlotPurpose.Timing, page=hitsLabel, section=simHitsLabel
2838 ))
2839
2840 def append_hgcalHitsPlots(collection = "HGCalSimHitsV", name_collection = "Simulated Hits"):
2841 _hitsCommonPlots_EE = [
2842 _Occupancy_EE_zplus,
2843 _Occupancy_EE_zminus,
2844 _EtaPhi_EE_zminus,
2845 _EtaPhi_EE_zplus
2846 ]
2847 _hitsCommonPlots_HE_Sil = [
2848 _Occupancy_HE_Silicon_zplus,
2849 _Occupancy_HE_Silicon_zminus,
2850 _EtaPhi_HE_Silicon_zminus,
2851 _EtaPhi_HE_Silicon_zplus
2852 ]
2853 _hitsCommonPlots_HE_Sci = [
2854 _Occupancy_HE_Scintillator_zplus,
2855 _Occupancy_HE_Scintillator_zminus,
2856 _EtaPhi_HE_Scintillator_zminus,
2857 _EtaPhi_HE_Scintillator_zplus
2858 ]
2859
2860 regions = ["HGCalEESensitive", "HGCalHESiliconSensitive", "HGCalHEScintillatorSensitive"]
2861 setPlots = [_hitsCommonPlots_EE, _hitsCommonPlots_HE_Sil, _hitsCommonPlots_HE_Sci]
2862 if "SimHits" in collection :
2863 _hitsCommonPlots_EE.append(_Energy_EE_0)
2864 _hitsCommonPlots_EE.append(_Energy_EE_1)
2865 _hitsCommonPlots_HE_Sil.append(_Energy_HE_Silicon_0)
2866 _hitsCommonPlots_HE_Sil.append( _Energy_HE_Silicon_1)
2867 _hitsCommonPlots_HE_Sil.append(_Energy_HE_Scintillator_0)
2868 _hitsCommonPlots_HE_Sil.append(_Energy_HE_Scintillator_1)
2869 if "RecHits" in collection :
2870 _hitsCommonPlots_EE.append(_Energy_EE)
2871 _hitsCommonPlots_HE_Sil.append(_Energy_HE_Silicon)
2872 _hitsCommonPlots_HE_Sil.append(_Energy_HE_Scintillator)
2873
2874 for reg, setPlot in zip(regions, setPlots):
2875 dirName = collection+"/"+reg
2876 print(dirName)
2877 hgcalHitPlotter.append(collection, [
2878 _hgcalHitFolders(dirName)
2879 ], PlotFolder(
2880 *setPlot,
2881 loopSubFolders=False,
2882 purpose=PlotPurpose.Timing, page=hitsLabel, section=name_collection))
2883
2884 _digisCommonPlots_EE = [
2885 _DigiHits_Occupancy_EE_zplus,
2886 _DigiHits_Occupancy_EE_zminus,
2887 _DigiHits_Occupancy_XY_EE,
2888 _DigiHits_ADC_EE,
2889 _DigiHits_TOA_EE,
2890 _DigiHits_TOT_EE,
2891 ]
2892 _digisCommonPlots_HE_Sil = [
2893 _DigiHits_Occupancy_HE_Silicon_zplus,
2894 _DigiHits_Occupancy_HE_Silicon_zminus,
2895 _DigiHits_Occupancy_XY_HE_Silicon,
2896 _DigiHits_ADC_HE_Silicon,
2897 _DigiHits_TOA_HE_Silicon,
2898 _DigiHits_TOT_HE_Silicon,
2899 ]
2900 _digisCommonPlots_HE_Sci = [
2901 _DigiHits_Occupancy_HE_Scintillator_zplus,
2902 _DigiHits_Occupancy_HE_Scintillator_zminus,
2903 _DigiHits_Occupancy_XY_HE_Scintillator,
2904 _DigiHits_ADC_HE_Scintillator,
2905 _DigiHits_TOA_HE_Scintillator,
2906 _DigiHits_TOT_HE_Scintillator,
2907 ]
2908
2909 def append_hgcalDigisPlots(collection = "HGCalDigisV", name_collection = "Digis"):
2910 regions = ["HGCalEESensitive", "HGCalHESiliconSensitive", "HGCalHEScintillatorSensitive"]
2911 setPlots = [_digisCommonPlots_EE, _digisCommonPlots_HE_Sil, _digisCommonPlots_HE_Sci]
2912 for reg, setPlot in zip(regions, setPlots):
2913 dirName = collection+"/"+reg
2914 print(dirName)
2915 hgcalHitPlotter.append(name_collection, [
2916 _hgcalHitFolders(dirName)
2917 ], PlotFolder(
2918 *setPlot,
2919 loopSubFolders=False,
2920 purpose=PlotPurpose.Timing, page=hitsLabel, section=name_collection))
2921
2922
2923
2924 hgcalHitCalibPlotter = Plotter()
2925 hitCalibrationLabel = 'Calibrated RecHits'
2926
2927 hgcalHitCalibPlotter.append("Layer_Occupancy", [
2928 "DQMData/Run 1/HGCalHitCalibration/Run summary",
2929 ], PlotFolder(
2930 _LayerOccupancy,
2931 loopSubFolders=False,
2932 purpose=PlotPurpose.Timing, page=hitCalibrationLabel, section=hitCalibrationLabel
2933 ))
2934 hgcalHitCalibPlotter.append("ReconstructableEnergyOverCPenergy", [
2935 "DQMData/Run 1/HGCalHitCalibration/Run summary",
2936 ], PlotFolder(
2937 _ReconstructableEnergyOverCPenergy,
2938 loopSubFolders=False,
2939 purpose=PlotPurpose.Timing, page=hitCalibrationLabel, section=hitCalibrationLabel
2940 ))
2941
2942 hgcalHitCalibPlotter.append("ParticleFlowClusterHGCalFromTrackster_Closest_EoverCPenergy", [
2943 "DQMData/Run 1/HGCalHitCalibration/Run summary",
2944 ], PlotFolder(
2945 _ParticleFlowClusterHGCalFromTrackster_Closest_EoverCPenergy,
2946 loopSubFolders=False,
2947 purpose=PlotPurpose.Timing, page=hitCalibrationLabel, section=hitCalibrationLabel
2948 ))
2949
2950 hgcalHitCalibPlotter.append("PhotonsFromTrackster_Closest_EoverCPenergy", [
2951 "DQMData/Run 1/HGCalHitCalibration/Run summary",
2952 ], PlotFolder(
2953 _PhotonsFromTrackster_Closest_EoverCPenergy,
2954 loopSubFolders=False,
2955 purpose=PlotPurpose.Timing, page=hitCalibrationLabel, section=hitCalibrationLabel
2956 ))
2957
2958 hgcalHitCalibPlotter.append("EcalDrivenGsfElectronsFromTrackster_Closest_EoverCPenergy", [
2959 "DQMData/Run 1/HGCalHitCalibration/Run summary",
2960 ], PlotFolder(
2961 _EcalDrivenGsfElectronsFromTrackster_Closest_EoverCPenergy,
2962 loopSubFolders=False,
2963 purpose=PlotPurpose.Timing, page=hitCalibrationLabel, section=hitCalibrationLabel
2964 ))
2965
2966 hgcalTICLCandPlotter = Plotter()
2967
2968 hgcalTICLCandPlotter.append('ticlCandidates', [
2969 "DQMData/Run 1/HGCAL/Run summary/HGCalValidator/"+hgcalValidator.ticlCandidates.value(),
2970 ], PlotFolder(
2971 *_candidatesPlots,
2972 loopSubFolders=False,
2973 purpose=PlotPurpose.Timing, page="General", section="Candidates"))
2974
2975 for i in range(6):
2976 hgcalTICLCandPlotter.append('ticlCandidates', [
2977 "DQMData/Run 1/HGCAL/Run summary/HGCalValidator/"+hgcalValidator.ticlCandidates.value()+"/"+cand_type[i],
2978 ], PlotFolder(
2979 *_allCandidatesPlots[i],
2980 loopSubFolders=False,
2981 purpose=PlotPurpose.Timing, page=cand_type[i], section="Candidates"))