test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Functions | Variables
trackingPlots Namespace Reference

Classes

class  Iteration
 
class  TrackingPlotFolder
 
class  TrackingSummaryTable
 
class  TrackingTimingTable
 

Functions

def _appendTrackingPlots
 
def _collhelper
 
def _constructSummary
 
def _iterModuleMap
 
def _mapCollectionToAlgoQuality
 
def _stepModuleMap
 
def _summaryBinRename
 
def _trackingFolders
 
def _trackingRefFileFallbackSLHC
 
def _trackingSubFoldersFallbackSLHC
 

Variables

tuple _chargemisid
 
tuple _collLabelMap = collections.OrderedDict(map(_collhelper, ["generalTracks"]+_possibleTrackingColls))
 
tuple _collLabelMapHp = collections.OrderedDict(map(_collhelper, ["generalTracks"]+filter(lambda n: "Step" in n, _possibleTrackingColls)))
 
dictionary _common = {"ymin": 0, "ymax": _maxEff}
 PackedCandidate plots. More...
 
dictionary _common2 = {}
 
dictionary _commonLabelSize = {}
 
dictionary _commonStatus = {}
 
tuple _dedx
 
tuple _dupandfake1
 
tuple _dupandfake2
 
tuple _dupandfake3
 
tuple _dupandfake4
 
tuple _effandfake1
 
tuple _effandfake2
 
tuple _effandfake3
 
tuple _effandfake4
 
tuple _hitsAndPt
 
list _iterations
 
float _legendDy_2rows = -0.025
 
float _legendDy_2rows_3cols = -0.17
 
float _legendDy_4rows = 0.09
 
list _max3DLayers = [5, 10, 20]
 
list _maxEff = [0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 0.8, 1.025]
 Per track collection plots. More...
 
list _maxFake = [0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 0.8, 1.025]
 
list _maxHits = [5, 10, 20, 40, 60, 80]
 
list _maxLayers = [5, 10, 25]
 
int _maxPixelLayers = 8
 
list _min3DLayers = [0, 5, 10]
 
list _minHits = [0, 5, 10]
 
list _minLayers = [0, 5, 10]
 
list _minMaxN = [5e-1, 5, 5e1, 5e2, 5e3, 5e4, 5e5, 5e6, 5e7, 5e8, 5e9]
 
list _minMaxResol = [1e-5, 4e-5, 1e-4, 4e-4, 1e-3, 4e-3, 1e-2, 4e-2, 0.1, 0.4, 1]
 
tuple _packedCandidateCovarianceMatrix1
 
tuple _packedCandidateCovarianceMatrix2
 
tuple _packedCandidateFlow
 
tuple _packedCandidateHits
 
tuple _packedCandidateHitsHitPattern
 
tuple _packedCandidateImpactParameter1
 
tuple _packedCandidateImpactParameter2
 
tuple _packedCandidateKinematics
 
list _packedCandidatePlots
 
tuple _packedCandidateVertex
 
tuple _pixelTiming
 
list _possibleTrackingColls
 
dictionary _possibleTrackingCollsOld
 
list _possibleTrackingNonIterationColls
 Summary plots. More...
 
tuple _pulls
 
tuple _pvassociation1
 
tuple _pvassociation2
 
tuple _pvassociation3
 
list _recoBasedPlots
 
tuple _resolutionsEta
 
tuple _resolutionsPt
 
list _seedingBuildingPlots
 
list _simBasedPlots
 
list _summaryPlots
 
list _summaryPlotsHp
 
list _summaryPlotsSeeds
 
list _timeFolders
 
tuple _timing_iterations
 
tuple _timing_summary
 
tuple _tplifetime
 
tuple _tuning
 
string loopSubFolders = "timing"
 
tuple plotter = Plotter()
 
tuple timePlotter = Plotter()
 
tuple tpPlotter = Plotter()
 

Function Documentation

def trackingPlots._appendTrackingPlots (   lastDirName,
  name,
  algoPlots,
  onlyForPileup = False,
  seeding = False,
  rawSummary = False 
)
private

Definition at line 811 of file trackingPlots.py.

References _trackingFolders().

812 def _appendTrackingPlots(lastDirName, name, algoPlots, onlyForPileup=False, seeding=False, rawSummary=False):
813  # to keep backward compatibility, this set of plots has empty name
814  plotter.append(name, _trackingFolders(lastDirName), TrackingPlotFolder(*algoPlots, onlyForPileup=onlyForPileup, purpose=PlotPurpose.TrackingIteration, fallbackRefFiles=[_trackingRefFileFallbackSLHC]), fallbackDqmSubFolders=[_trackingSubFoldersFallbackSLHC])
815  summaryName = ""
816  if name != "":
817  summaryName += name+"_"
818  summaryName += "summary"
819  summaryPlots = []
820  if rawSummary:
821  summaryPlots.extend([_summaryRaw, _summaryRawN])
822  summaryPlots.extend(_summaryPlots)
823  plotter.append(summaryName, _trackingFolders(lastDirName),
824  PlotFolder(*summaryPlots, loopSubFolders=False, onlyForPileup=onlyForPileup,
825  purpose=PlotPurpose.TrackingSummary, page="summary", section=name))
826  plotter.append(summaryName+"_highPurity", _trackingFolders(lastDirName),
827  PlotFolder(*_summaryPlotsHp, loopSubFolders=False, onlyForPileup=onlyForPileup,
828  purpose=PlotPurpose.TrackingSummary, page="summary",
829  section=name+"_highPurity" if name != "" else "highPurity"),
830  fallbackNames=[summaryName]) # backward compatibility for release validation, the HP plots used to be in the same directory with all-track plots
831  if seeding:
832  plotter.append(summaryName+"_seeds", _trackingFolders(lastDirName),
833  PlotFolder(*_summaryPlotsSeeds, loopSubFolders=False, onlyForPileup=onlyForPileup,
834  purpose=PlotPurpose.TrackingSummary, page="summary",
835  section=name+"_seeds"))
836 
837  plotter.appendTable(summaryName, _trackingFolders(lastDirName), TrackingSummaryTable(section=name))
838  plotter.appendTable(summaryName+"_highPurity", _trackingFolders(lastDirName), TrackingSummaryTable(section=name+"_highPurity" if name != "" else "highPurity", highPurity=True))
839 _appendTrackingPlots("Track", "", _simBasedPlots+_recoBasedPlots)
840 _appendTrackingPlots("TrackAllTPEffic", "allTPEffic", _simBasedPlots, onlyForPileup=True)
841 _appendTrackingPlots("TrackFromPV", "fromPV", _simBasedPlots+_recoBasedPlots, onlyForPileup=True)
842 _appendTrackingPlots("TrackFromPVAllTP", "fromPVAllTP", _simBasedPlots+_recoBasedPlots, onlyForPileup=True)
843 _appendTrackingPlots("TrackFromPVAllTP2", "fromPVAllTP2", _simBasedPlots+_recoBasedPlots, onlyForPileup=True)
844 _appendTrackingPlots("TrackSeeding", "seeding", _seedingBuildingPlots, seeding=True)
845 _appendTrackingPlots("TrackBuilding", "building", _seedingBuildingPlots)
846 _appendTrackingPlots("TrackConversion", "conversion", _simBasedPlots+_recoBasedPlots, rawSummary=True)
847 
848 # MiniAOD
849 plotter.append("packedCandidate", _trackingFolders("PackedCandidate"),
850  PlotFolder(*_packedCandidatePlots, loopSubFolders=False,
851  purpose=PlotPurpose.MiniAOD, page="miniaod", section="PackedCandidate"))
852 plotter.append("packedCandidateLostTracks", _trackingFolders("PackedCandidate/lostTracks"),
853  PlotFolder(*_packedCandidatePlots, loopSubFolders=False,
854  purpose=PlotPurpose.MiniAOD, page="miniaod", section="PackedCandidate (lostTracks)"))
855 
# Timing
def _appendTrackingPlots
def trackingPlots._collhelper (   name)
private

Definition at line 425 of file trackingPlots.py.

426 def _collhelper(name):
return (name, [name])
def trackingPlots._constructSummary (   mapping = None,
  highPurity = False,
  byOriginalAlgo = False,
  byAlgoMask = False,
  seeds = False,
  midfix = "" 
)
private

Definition at line 460 of file trackingPlots.py.

References _summaryBinRename().

461 def _constructSummary(mapping=None, highPurity=False, byOriginalAlgo=False, byAlgoMask=False, seeds=False, midfix=""):
462  _common = {"drawStyle": "EP", "xbinlabelsize": 10, "xbinlabeloption": "d"}
463  _commonN = {"ylog": True, "ymin": _minMaxN, "ymax": _minMaxN}
464  _commonN.update(_common)
465  _commonAB = {"mapping": mapping,
466  "renameBin": lambda bl: _summaryBinRename(bl, highPurity, byOriginalAlgo, byAlgoMask, seeds),
467  "ignoreMissingBins": True,
468  }
469  if byOriginalAlgo or byAlgoMask:
470  _commonAB["minExistingBins"] = 2
471  prefix = "summary"+midfix
472 
473  h_eff = "effic_vs_coll"
474  h_eff_allpt = "effic_vs_coll_allPt"
475  h_fakerate = "fakerate_vs_coll"
476  h_duplicaterate = "duplicatesRate_coll"
477  h_pileuprate = "pileuprate_coll"
478 
479  h_reco = "num_reco_coll"
480  h_true = "num_assoc(recoToSim)_coll"
481  h_fake = Subtract("num_fake_coll_orig", "num_reco_coll", "num_assoc(recoToSim)_coll")
482  h_duplicate = "num_duplicate_coll"
483  h_pileup = "num_pileup_coll"
484  if mapping is not None:
485  h_eff = AggregateBins("efficiency", h_eff, **_commonAB)
486  h_eff_allpt = AggregateBins("efficiencyAllPt", h_eff_allpt, **_commonAB)
487  h_fakerate = AggregateBins("fakerate", h_fakerate, **_commonAB)
488  h_duplicaterate = AggregateBins("duplicatesRate", h_duplicaterate, **_commonAB)
489  h_pileuprate = AggregateBins("pileuprate", h_pileuprate, **_commonAB)
490 
491  h_reco = AggregateBins("num_reco_coll", h_reco, **_commonAB)
492  h_true = AggregateBins("num_true_coll", h_true, **_commonAB)
493  h_fake = AggregateBins("num_fake_coll", h_fake, **_commonAB)
494  h_duplicate = AggregateBins("num_duplicate_coll", h_duplicate, **_commonAB)
495  h_pileup = AggregateBins("num_pileup_coll", h_pileup, **_commonAB)
496 
497  summary = PlotGroup(prefix, [
498  Plot(h_eff, title="Efficiency vs collection", ytitle="Efficiency", ymin=1e-3, ymax=1, ylog=True, **_common),
499  Plot(h_eff_allpt, title="Efficiency vs collection (no pT cut in denominator)", ytitle="Efficiency", ymin=1e-3, ymax=1, ylog=True, **_common),
500 
501  Plot(h_fakerate, title="Fakerate vs collection", ytitle="Fake rate", ymax=_maxFake, **_common),
502  Plot(h_duplicaterate, title="Duplicates rate vs collection", ytitle="Duplicates rate", ymax=_maxFake, **_common),
503  Plot(h_pileuprate, title="Pileup rate vs collection", ytitle="Pileup rate", ymax=_maxFake, **_common),
504  ])
505  summaryN = PlotGroup(prefix+"_ntracks", [
506  Plot(h_reco, ytitle="Tracks", title="Number of tracks vs collection", **_commonN),
507  Plot(h_true, ytitle="True tracks", title="Number of true tracks vs collection", **_commonN),
508  Plot(h_fake, ytitle="Fake tracks", title="Number of fake tracks vs collection", **_commonN),
509  Plot(h_duplicate, ytitle="Duplicate tracks", title="Number of duplicate tracks vs collection", **_commonN),
510  Plot(h_pileup, ytitle="Pileup tracks", title="Number of pileup tracks vs collection", **_commonN),
511  ])
512 
513  return (summary, summaryN)
514 
515 (_summaryRaw, _summaryRawN) = _constructSummary(midfix="Raw")
516 (_summary, _summaryN) = _constructSummary(_collLabelMap)
517 (_summaryHp, _summaryNHp) = _constructSummary(_collLabelMapHp, highPurity=True)
518 (_summaryByOriginalAlgo, _summaryByOriginalAlgoN) = _constructSummary(_collLabelMapHp, byOriginalAlgo=True, midfix="ByOriginalAlgo")
519 (_summaryByOriginalAlgoHp, _summaryByOriginalAlgoNHp) = _constructSummary(_collLabelMapHp, byOriginalAlgo=True, midfix="ByOriginalAlgo", highPurity=True)
520 (_summaryByAlgoMask, _summaryByAlgoMaskN) = _constructSummary(_collLabelMapHp, byAlgoMask=True, midfix="ByAlgoMask")
521 (_summaryByAlgoMaskHp, _summaryByAlgoMaskNHp) = _constructSummary(_collLabelMapHp, byAlgoMask=True, midfix="ByAlgoMask", highPurity=True)
522 (_summarySeeds, _summarySeedsN) = _constructSummary(_collLabelMapHp, seeds=True)
def trackingPlots._iterModuleMap (   includeConvStep = True,
  onlyConvStep = False 
)
private

Definition at line 1002 of file trackingPlots.py.

References alcazmumu_cfi.filter.

Referenced by trackingPlots.TrackingTimingTable.create().

1003 def _iterModuleMap(includeConvStep=True, onlyConvStep=False):
1004  iterations = _iterations
1005  if not includeConvStep:
1006  iterations = filter(lambda i: i.name() != "ConvStep", iterations)
1007  if onlyConvStep:
1008  iterations = filter(lambda i: i.name() == "ConvStep", iterations)
return collections.OrderedDict([(i.name(), i.all()) for i in iterations])
def trackingPlots._mapCollectionToAlgoQuality (   collName)
private

Definition at line 351 of file trackingPlots.py.

References python.rootplot.root2matplotlib.replace().

Referenced by _summaryBinRename(), trackingPlots.TrackingSummaryTable.create(), and trackingPlots.TrackingPlotFolder.translateSubFolder().

352 def _mapCollectionToAlgoQuality(collName):
353  if "Hp" in collName:
354  quality = "highPurity"
355  else:
356  quality = ""
357  hasPtCut = False
358  if "Pt" in collName:
359  if "Step" in collName:
360  hasPtCut = collName.index("Pt") > collName.index("Step")
361  else:
362  hasPtCut = True
363  collNameNoQuality = collName.replace("Hp", "")
364  if hasPtCut:
365  quality += "Pt"
366  collNameNoQuality = collNameNoQuality.replace("Pt", "")
367  if "ByOriginalAlgo" in collName:
368  quality += "ByOriginalAlgo"
369  collNameNoQuality = collNameNoQuality.replace("ByOriginalAlgo", "")
370  if "ByAlgoMask" in collName:
371  quality += "ByAlgoMask"
372  collNameNoQuality = collNameNoQuality.replace("ByAlgoMask", "")
373  collNameNoQuality = collNameNoQuality.replace("Tracks", "", 1) # make summary naming consistent with iteration folders
374  collNameLow = collNameNoQuality.lower().replace("frompv2", "").replace("frompv", "").replace("frompvalltp", "").replace("alltp", "")
375 
376  if collNameLow.find("seed") == 0:
377  if quality != "":
378  raise Exception("Assumption of empty quality for seeds failed, got quality '%s'" % quality)
379  collNameLow = collNameLow[4:]
380  if collNameLow == "initialstepseedspresplitting":
381  collNameLow = "initialsteppresplittingseeds"
382  elif collNameLow == "muonseededseedsinout":
383  collNameLow = "muonseededstepinoutseeds"
384  elif collNameLow == "muonseededseedsoutin":
385  collNameLow = "muonseededstepoutinseeds"
386 
387  i_seeds = collNameLow.index("seeds")
388  quality = collNameLow[i_seeds:]
389 
390  collNameLow = collNameLow[:i_seeds]
391 
392  algo = None
393  prefixes = ["cutsreco", "cutsrecofrompv", "cutsrecofrompv2", "cutsrecofrompvalltp"]
394  if collNameLow in ["general", "generalfrompv"]+prefixes:
395  algo = "ootb"
396  else:
397  def testColl(coll):
398  for pfx in prefixes:
399  if coll == collNameLow.replace(pfx, ""):
400  return True
401  return False
402 
403  for coll in _possibleTrackingColls:
404  if testColl(coll.lower()):
405  algo = coll
406  break
407  # next try "old style"
408  if algo is None:
409  for coll, name in _possibleTrackingCollsOld.iteritems():
410  if testColl(coll.lower()):
411  algo = name
412  break
413 
414  # fallback
415  if algo is None:
416  algo = collNameNoQuality
417 
418  # fix for track collection naming convention
419  if algo == "muonSeededInOut":
420  algo = "muonSeededStepInOut"
421  if algo == "muonSeededOutIn":
422  algo = "muonSeededStepOutIn"
423 
424  return (algo, quality)
def _mapCollectionToAlgoQuality
def trackingPlots._stepModuleMap ( )
private

Definition at line 1009 of file trackingPlots.py.

1010 def _stepModuleMap():
1011  def getProp(prop):
1012  ret = []
1013  for i in _iterations:
1014  if i.name() == "ConvStep":
1015  continue
1016  ret.extend(getattr(i, prop)())
1017  return ret
1018 
1019  return collections.OrderedDict([
1020  ("ClusterMask", getProp("clusterMasking")),
1021  ("Seeding", getProp("seeding")),
1022  ("Building", getProp("building")),
1023  ("Fitting", getProp("fit")),
1024  ("Selection", getProp("selection")),
1025  ("Other", getProp("other"))
1026  ])
def trackingPlots._summaryBinRename (   binLabel,
  highPurity,
  byOriginalAlgo,
  byAlgoMask,
  seeds 
)
private

Definition at line 429 of file trackingPlots.py.

References _mapCollectionToAlgoQuality(), and pileupCalc.upper.

Referenced by _constructSummary().

430 def _summaryBinRename(binLabel, highPurity, byOriginalAlgo, byAlgoMask, seeds):
431  (algo, quality) = _mapCollectionToAlgoQuality(binLabel)
432  if algo == "ootb":
433  algo = "generalTracks"
434  ret = None
435 
436  if byOriginalAlgo:
437  if algo != "generalTracks" and "ByOriginalAlgo" not in quality:
438  return None
439  quality = quality.replace("ByOriginalAlgo", "")
440  if byAlgoMask:
441  if algo != "generalTracks" and "ByAlgoMask" not in quality:
442  return None
443  quality = quality.replace("ByAlgoMask", "")
444 
445  if highPurity:
446  if quality == "highPurity":
447  ret = algo
448  elif seeds:
449  i_seeds = quality.find("seeds")
450  if i_seeds == 0:
451  ret = algo
452  seedSubColl = quality[i_seeds+5:]
453  if seedSubColl != "":
454  ret += seedSubColl[0].upper() + seedSubColl[1:]
455  else:
456  if quality == "":
457  ret = algo
458 
459  return ret
def _mapCollectionToAlgoQuality
def trackingPlots._trackingFolders (   lastDirName = "Track")
private

Definition at line 742 of file trackingPlots.py.

Referenced by _appendTrackingPlots().

743 def _trackingFolders(lastDirName="Track"):
744  return [
745  "DQMData/Run 1/Tracking/Run summary/"+lastDirName,
746  "DQMData/Tracking/"+lastDirName,
747  "DQMData/Run 1/RecoTrackV/Run summary/"+lastDirName,
748  "DQMData/RecoTrackV/"+lastDirName,
749  ]
def trackingPlots._trackingRefFileFallbackSLHC (   path)
private

Definition at line 341 of file trackingPlots.py.

343  for (old, new) in [("initialStep", "iter0"),
344  ("lowPtTripletStep", "iter1"),
345  ("pixelPairStep", "iter2"),
346  ("mixedTripletStep", "iter4"),
347  ("muonSeededStepInOut", "iter9"),
348  ("muonSeededStepOutIn", "iter10")]:
349  path = path.replace(old, new)
350  return path
def _trackingRefFileFallbackSLHC
def trackingPlots._trackingSubFoldersFallbackSLHC (   subfolder)
private

Definition at line 329 of file trackingPlots.py.

330 def _trackingSubFoldersFallbackSLHC(subfolder):
331  ret = subfolder.replace("trackingParticleRecoAsssociation", "AssociatorByHitsRecoDenom")
332  for (old, new) in [("InitialStep", "Zero"),
333  ("LowPtTripletStep", "First"),
334  ("PixelPairStep", "Second"),
335  ("MixedTripletStep", "Fourth"),
336  ("MuonSeededStepInOut", "Ninth"),
337  ("MuonSeededStepOutIn", "Tenth")]:
338  ret = ret.replace(old, new)
339  if ret == subfolder:
340  return None
return ret
def _trackingSubFoldersFallbackSLHC

Variable Documentation

tuple trackingPlots._chargemisid
Initial value:
1 = PlotGroup("chargemisid", [
2  Plot("chargeMisIdRate", xtitle="#eta", ytitle="charge mis-id rate vs #eta", ymax=0.05),
3  Plot("chargeMisIdRate_Pt", xtitle="p_{T}", ytitle="charge mis-id rate vs p_{T}", xmax=300, ymax=0.1, xlog=True),
4  Plot("chargeMisIdRate_hit", xtitle="hits", ytitle="charge mis-id rate vs hits", title=""),
5  Plot("chargeMisIdRate_phi", xtitle="#phi", ytitle="charge mis-id rate vs #phi", title="", ymax=0.01),
6  Plot("chargeMisIdRate_dxy", xtitle="dxy", ytitle="charge mis-id rate vs dxy", ymax=0.1),
7  Plot("chargeMisIdRate_dz", xtitle="dz", ytitle="charge mis-id rate vs dz", ymax=0.1)
8 ])

Definition at line 232 of file trackingPlots.py.

tuple trackingPlots._collLabelMap = collections.OrderedDict(map(_collhelper, ["generalTracks"]+_possibleTrackingColls))

Definition at line 427 of file trackingPlots.py.

tuple trackingPlots._collLabelMapHp = collections.OrderedDict(map(_collhelper, ["generalTracks"]+filter(lambda n: "Step" in n, _possibleTrackingColls)))

Definition at line 428 of file trackingPlots.py.

dictionary trackingPlots._common = {"ymin": 0, "ymax": _maxEff}

PackedCandidate plots.

Definition at line 77 of file trackingPlots.py.

dictionary trackingPlots._common2 = {}

Definition at line 163 of file trackingPlots.py.

dictionary trackingPlots._commonLabelSize = {}

Definition at line 533 of file trackingPlots.py.

dictionary trackingPlots._commonStatus = {}

Definition at line 530 of file trackingPlots.py.

tuple trackingPlots._dedx
Initial value:
1 = PlotGroup("dedx", [
2  Plot("h_dedx_estim1", xtitle="dE/dx, harm2", **_common),
3  Plot("h_dedx_estim2", xtitle="dE/dx, trunc40", **_common),
4  Plot("h_dedx_nom1", xtitle="dE/dx number of measurements", title="", **_common),
5  Plot("h_dedx_sat1", xtitle="dE/dx number of measurements with saturation", title="", **_common),
6  ],
7  legendDy=_legendDy_2rows
8 )

Definition at line 223 of file trackingPlots.py.

tuple trackingPlots._dupandfake1
Initial value:
1 = PlotGroup("dupandfake1", [
2  Plot("fakeratePt", xtitle="track p_{T} (GeV)", ytitle="fakerate vs p_{T}", xlog=True, ymax=_maxFake),
3  Plot("duplicatesRate_Pt", xtitle="track p_{T} (GeV)", ytitle="duplicates rate vs p_{T}", ymax=_maxFake, xlog=True),
4  Plot("pileuprate_Pt", xtitle="track p_{T} (GeV)", ytitle="pileup rate vs p_{T}", ymax=_maxFake, xlog=True),
5  Plot("fakerate", xtitle="track #eta", ytitle="fakerate vs #eta", title="", ymax=_maxFake),
6  Plot("duplicatesRate", xtitle="track #eta", ytitle="duplicates rate vs #eta", title="", ymax=_maxFake),
7  Plot("pileuprate", xtitle="track #eta", ytitle="pileup rate vs #eta", title="", ymax=_maxFake),
8  Plot("fakerate_vs_phi", xtitle="track #phi", ytitle="fakerate vs #phi", ymax=_maxFake),
9  Plot("duplicatesRate_phi", xtitle="track #phi", ytitle="duplicates rate vs #phi", ymax=_maxFake),
10  Plot("pileuprate_phi", xtitle="track #phi", ytitle="pileup rate vs #phi", ymax=_maxFake),
11 ], ncols=3)

Definition at line 90 of file trackingPlots.py.

tuple trackingPlots._dupandfake2
Initial value:
1 = PlotGroup("dupandfake2", [
2  Plot("fakerate_vs_dxy", xtitle="track dxy (cm)", ytitle="fakerate vs dxy", ymax=_maxFake),
3  Plot("duplicatesRate_dxy", xtitle="track dxy (cm)", ytitle="duplicates rate vs dxy", ymax=_maxFake),
4  Plot("pileuprate_dxy", xtitle="track dxy (cm)", ytitle="pileup rate vs dxy", ymax=_maxFake),
5  #
6  Plot("fakerate_vs_dxypv", xtitle="track dxy(PV) (cm)", ytitle="fakerate vs dxy(PV)", ymax=_maxFake),
7  Plot("duplicatesRate_dxypv", xtitle="track dxy(PV) (cm)", ytitle="duplicates rate vs dxy(PV)", ymax=_maxFake),
8  Plot("pileuprate_dxypv", xtitle="track dxy(PV) (cm)", ytitle="pileup rate vs dxy(PV)", ymax=_maxFake),
9  #
10  Plot("fakerate_vs_dz", xtitle="track dz (cm)", ytitle="fakerate vs dz", title="", ymax=_maxFake),
11  Plot("duplicatesRate_dz", xtitle="track dz (cm)", ytitle="duplicates rate vs dz", title="", ymax=_maxFake),
12  Plot("pileuprate_dz", xtitle="track dz (cm)", ytitle="pileup rate vs dz", title="", ymax=_maxFake),
13  #
14  Plot("fakerate_vs_dzpv", xtitle="track dz(PV) (cm)", ytitle="fakerate vs dz(PV)", title="", ymax=_maxFake),
15  Plot("duplicatesRate_dzpv", xtitle="track dz(PV) (cm)", ytitle="duplicates rate vs dz(PV)", title="", ymax=_maxFake),
16  Plot("pileuprate_dzpv", xtitle="track dz(PV) (cm)", ytitle="pileup rate vs dz(PV)", title="", ymax=_maxFake),
17 ],
18  ncols=3, legendDy=_legendDy_4rows
19 )

Definition at line 101 of file trackingPlots.py.

tuple trackingPlots._dupandfake3
Initial value:
1 = PlotGroup("dupandfake3", [
2  Plot("fakerate_vs_hit", xtitle="track hits", ytitle="fakerate vs hits", ymax=_maxFake, xmin=_minHits, xmax=_maxHits),
3  Plot("duplicatesRate_hit", xtitle="track hits", ytitle="duplicates rate vs hits", ymax=_maxFake, xmin=_minHits, xmax=_maxHits),
4  Plot("pileuprate_hit", xtitle="track hits", ytitle="pileup rate vs hits", ymax=_maxFake, xmin=_minHits, xmax=_maxHits),
5  #
6  Plot("fakerate_vs_layer", xtitle="track layers", ytitle="fakerate vs layer", ymax=_maxFake, xmin=_minLayers, xmax=_maxLayers),
7  Plot("duplicatesRate_layer", xtitle="track layers", ytitle="duplicates rate vs layers", ymax=_maxFake, xmin=_minLayers, xmax=_maxLayers),
8  Plot("pileuprate_layer", xtitle="track layers", ytitle="pileup rate vs layers", ymax=_maxFake, xmin=_minLayers, xmax=_maxLayers),
9  #
10  Plot("fakerate_vs_pixellayer", xtitle="track pixel layers", ytitle="fakerate vs pixel layers", title="", ymax=_maxFake, xmax=_maxPixelLayers),
11  Plot("duplicatesRate_pixellayer", xtitle="track pixel layers", ytitle="duplicates rate vs pixel layers", title="", ymax=_maxFake, xmax=_maxPixelLayers),
12  Plot("pileuprate_pixellayer", xtitle="track pixel layers", ytitle="pileup rate vs pixel layers", title="", ymax=_maxFake, xmax=_maxPixelLayers),
13  #
14  Plot("fakerate_vs_3Dlayer", xtitle="track 3D layers", ytitle="fakerate vs 3D layers", ymax=_maxFake, xmin=_min3DLayers, xmax=_max3DLayers),
15  Plot("duplicatesRate_3Dlayer", xtitle="track 3D layers", ytitle="duplicates rate vs 3D layers", ymax=_maxFake, xmin=_min3DLayers, xmax=_max3DLayers),
16  Plot("pileuprate_3Dlayer", xtitle="track 3D layers", ytitle="pileup rate vs 3D layers", ymax=_maxFake, xmin=_min3DLayers, xmax=_max3DLayers)
17 ],
18  ncols=3, legendDy=_legendDy_4rows
19 )

Definition at line 120 of file trackingPlots.py.

tuple trackingPlots._dupandfake4
Initial value:
1 = PlotGroup("dupandfake4", [
2  Plot("fakerate_vs_vertpos", xtitle="track ref. point xy (cm)", ytitle="fakerate vs xy", ymax=_maxFake),
3  Plot("duplicatesRate_vertpos", xtitle="track ref. point xy (cm)", ytitle="duplicates rate vs xy", ymax=_maxFake),
4  Plot("pileuprate_vertpos", xtitle="track ref. point xy (cm)", ytitle="pileup rate vs xy", ymax=_maxFake),
5  #
6  Plot("fakerate_vs_zpos", xtitle="track ref. point z (cm)", ytitle="fakerate vs z", ymax=_maxFake),
7  Plot("duplicatesRate_zpos", xtitle="track ref. point z (cm)", ytitle="duplicates rate vs z", ymax=_maxFake),
8  Plot("pileuprate_zpos", xtitle="track ref. point z (cm)", ytitle="pileup rate vs z", ymax=_maxFake),
9  #
10  Plot("fakerate_vs_dr", xtitle="track min #DeltaR", ytitle="fakerate vs #DeltaR", xlog=True, ymax=_maxFake),
11  Plot("duplicatesRate_dr", xtitle="track min #DeltaR", ytitle="duplicates rate vs #DeltaR", xlog=True, ymax=_maxFake),
12  Plot("pileuprate_dr", xtitle="track min #DeltaR", ytitle="pileup rate vs #DeltaR", xlog=True, ymax=_maxFake),
13  #
14  Plot("fakerate_vs_chi2", xtitle="track #chi^{2}", ytitle="fakerate vs #chi^{2}", ymax=_maxFake),
15  Plot("duplicatesRate_chi2", xtitle="track #chi^{2}", ytitle="duplicates rate vs #chi^{2}", ymax=_maxFake),
16  Plot("pileuprate_chi2", xtitle="track #chi^{2}", ytitle="pileup rate vs #chi^{2}", ymax=_maxFake)
17 ],
18  ncols=3, legendDy=_legendDy_4rows
19 )

Definition at line 139 of file trackingPlots.py.

tuple trackingPlots._effandfake1
Initial value:
1 = PlotGroup("effandfake1", [
2  Plot("efficPt", title="Efficiency vs p_{T}", xtitle="TP p_{T} (GeV)", ytitle="efficiency vs p_{T}", xlog=True, ymax=_maxEff),
3  Plot(FakeDuplicate("fakeduprate_vs_pT", assoc="num_assoc(recoToSim)_pT", dup="num_duplicate_pT", reco="num_reco_pT", title="fake+duplicates vs p_{T}"),
4  xtitle="track p_{T} (GeV)", ytitle="fake+duplicates rate vs p_{T}", ymax=_maxFake, xlog=True),
5  Plot("effic", xtitle="TP #eta", ytitle="efficiency vs #eta", title="", ymax=_maxEff),
6  Plot(FakeDuplicate("fakeduprate_vs_eta", assoc="num_assoc(recoToSim)_eta", dup="num_duplicate_eta", reco="num_reco_eta", title=""),
7  xtitle="track #eta", ytitle="fake+duplicates rate vs #eta", ymax=_maxFake),
8  Plot("effic_vs_phi", xtitle="TP #phi", ytitle="efficiency vs #phi", ymax=_maxEff),
9  Plot(FakeDuplicate("fakeduprate_vs_phi", assoc="num_assoc(recoToSim)_phi", dup="num_duplicate_phi", reco="num_reco_phi", title="fake+duplicates vs #phi"),
10  xtitle="track #phi", ytitle="fake+duplicates rate vs #phi", ymax=_maxFake),
11 ])

Definition at line 33 of file trackingPlots.py.

tuple trackingPlots._effandfake2
Initial value:
1 = PlotGroup("effandfake2", [
2  Plot("effic_vs_dxy", title="Efficiency vs dxy", xtitle="TP dxy (cm)", ytitle="efficiency vs dxy", ymax=_maxEff),
3  Plot(FakeDuplicate("fakeduprate_vs_dxy", assoc="num_assoc(recoToSim)_dxy", dup="num_duplicate_dxy", reco="num_reco_dxy", title="fake+duplicates vs dxy"),
4  xtitle="track dxy (cm)", ytitle="fake+duplicates rate vs dxy", ymax=_maxFake),
5  Plot("effic_vs_dxypv", title="Efficiency vs dxy(PV)", xtitle="TP dxy(PV) (cm)", ytitle="efficiency vs dxy(PV)", ymax=_maxEff),
6  Plot(FakeDuplicate("fakeduprate_vs_dxypv", assoc="num_assoc(recoToSim)_dxypv", dup="num_duplicate_dxypv", reco="num_reco_dxypv", title="fake+duplicates vs dxy(PV)"),
7  xtitle="track dxy(PV) (cm)", ytitle="fake+duplicates rate vs dxy(PV)", ymax=_maxFake),
8  Plot("effic_vs_dz", xtitle="TP dz (cm)", ytitle="Efficiency vs dz", title="", ymax=_maxEff),
9  Plot(FakeDuplicate("fakeduprate_vs_dz", assoc="num_assoc(recoToSim)_dz", dup="num_duplicate_dz", reco="num_reco_dz", title=""),
10  xtitle="track dz (cm)", ytitle="fake+duplicates rate vs dz", ymax=_maxFake),
11  Plot("effic_vs_dzpv", xtitle="TP dz(PV) (cm)", ytitle="Efficiency vs dz(PV)", title="", ymax=_maxEff),
12  Plot(FakeDuplicate("fakeduprate_vs_dz(PV)", assoc="num_assoc(recoToSim)_dzpv", dup="num_duplicate_dzpv", reco="num_reco_dzpv", title=""),
13  xtitle="track dz(PV) (cm)", ytitle="fake+duplicates rate vs dz(PV)", ymax=_maxFake),
14 ],
15  legendDy=_legendDy_4rows
16 )

Definition at line 45 of file trackingPlots.py.

tuple trackingPlots._effandfake3
Initial value:
1 = PlotGroup("effandfake3", [
2  Plot("effic_vs_hit", xtitle="TP hits", ytitle="efficiency vs hits", xmin=_minHits, xmax=_maxHits, ymax=_maxEff),
3  Plot(FakeDuplicate("fakeduprate_vs_hit", assoc="num_assoc(recoToSim)_hit", dup="num_duplicate_hit", reco="num_reco_hit", title="fake+duplicates vs hit"),
4  xtitle="track hits", ytitle="fake+duplicates rate vs hits", xmin=_minHits, xmax=_maxHits, ymax=_maxFake),
5  Plot("effic_vs_layer", xtitle="TP layers", ytitle="efficiency vs layers", xmin=_minLayers, xmax=_maxLayers, ymax=_maxEff),
6  Plot(FakeDuplicate("fakeduprate_vs_layer", assoc="num_assoc(recoToSim)_layer", dup="num_duplicate_layer", reco="num_reco_layer", title="fake+duplicates vs layer"),
7  xtitle="track layers", ytitle="fake+duplicates rate vs layers", xmin=_minLayers, xmax=_maxLayers, ymax=_maxFake),
8  Plot("effic_vs_pixellayer", xtitle="TP pixel layers", ytitle="efficiency vs pixel layers", title="", xmax=_maxPixelLayers, ymax=_maxEff),
9  Plot(FakeDuplicate("fakeduprate_vs_pixellayer", assoc="num_assoc(recoToSim)_pixellayer", dup="num_duplicate_pixellayer", reco="num_reco_pixellayer", title=""),
10  xtitle="track pixel layers", ytitle="fake+duplicates rate vs pixel layers", xmax=_maxPixelLayers, ymax=_maxFake),
11  Plot("effic_vs_3Dlayer", xtitle="TP 3D layers", ytitle="efficiency vs 3D layers", xmin=_min3DLayers, xmax=_max3DLayers, ymax=_maxEff),
12  Plot(FakeDuplicate("fakeduprate_vs_3Dlayer", assoc="num_assoc(recoToSim)_3Dlayer", dup="num_duplicate_3Dlayer", reco="num_reco_3Dlayer", title="fake+duplicates vs 3D layer"),
13  xtitle="track 3D layers", ytitle="fake+duplicates rate vs 3D layers", xmin=_min3DLayers, xmax=_max3DLayers, ymax=_maxFake),
14 ],
15  legendDy=_legendDy_4rows
16 )

Definition at line 61 of file trackingPlots.py.

tuple trackingPlots._effandfake4
Initial value:
1 = PlotGroup("effandfake4", [
2  Plot("effic_vs_vertpos", xtitle="TP vert xy (cm)", ytitle="efficiency vs vert xy", **_common),
3  Plot(FakeDuplicate("fakeduprate_vs_vertpos", assoc="num_assoc(recoToSim)_vertpos", dup="num_duplicate_vertpos", reco="num_reco_vertpos", title="fake+duplicates vs. ref. point xy"),
4  xtitle="track ref. point xy (cm)", ytitle="fake+duplicates vs xy", ymax=_maxFake),
5  Plot("effic_vs_zpos", xtitle="TP vert z (cm)", ytitle="efficiency vs vert z", **_common),
6  Plot(FakeDuplicate("fakeduprate_vs_zpos", assoc="num_assoc(recoToSim)_zpos", dup="num_duplicate_zpos", reco="num_reco_zpos", title="fake+duplicates vs. ref. point z"),
7  xtitle="track ref. point z (cm)", ytitle="fake+duplicates vs z", ymax=_maxFake),
8  Plot("effic_vs_dr", xlog=True, xtitle="TP min #DeltaR", ytitle="efficiency vs dr", **_common),
9  Plot(FakeDuplicate("fakeduprate_vs_dr", assoc="num_assoc(recoToSim)_dr", dup="num_duplicate_dr", reco="num_reco_dr", title="fake+duplicates vs. #DeltaR"),
10  xtitle="track min #DeltaR", ytitle="fake+duplicates vs #DeltaR", xlog=True, ymax=_maxFake),
11 ])

Definition at line 78 of file trackingPlots.py.

tuple trackingPlots._hitsAndPt
Initial value:
1 = PlotGroup("hitsAndPt", [
2  Plot("missing_inner_layers", xmin=_minLayers, xmax=_maxLayers, ymax=1, **_common),
3  Plot("missing_outer_layers", xmin=_minLayers, xmax=_maxLayers, ymax=1, **_common),
4  Plot("hits_eta", stat=True, statx=0.38, xtitle="track #eta", ytitle="<hits> vs #eta", ymin=_minHits, ymax=_maxHits, statyadjust=[0,0,-0.15],
5  fallback={"name": "nhits_vs_eta", "profileX": True}),
6  Plot("hits", stat=True, xtitle="track hits", xmin=_minHits, xmax=_maxHits, ylog=True, ymin=[5e-1, 5, 5e1, 5e2, 5e3], drawStyle="hist"),
7  Plot("num_simul_pT", xtitle="TP p_{T}", xlog=True, ymax=[1e-1, 2e-1, 5e-1, 1], **_common),
8  Plot("num_reco_pT", xtitle="track p_{T}", xlog=True, ymax=[1e-1, 2e-1, 5e-1, 1], **_common)
9 ])

Definition at line 241 of file trackingPlots.py.

list trackingPlots._iterations

Definition at line 906 of file trackingPlots.py.

float trackingPlots._legendDy_2rows = -0.025

Definition at line 29 of file trackingPlots.py.

float trackingPlots._legendDy_2rows_3cols = -0.17

Definition at line 30 of file trackingPlots.py.

float trackingPlots._legendDy_4rows = 0.09

Definition at line 28 of file trackingPlots.py.

list trackingPlots._max3DLayers = [5, 10, 20]

Definition at line 26 of file trackingPlots.py.

list trackingPlots._maxEff = [0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 0.8, 1.025]

Per track collection plots.

Definition at line 13 of file trackingPlots.py.

list trackingPlots._maxFake = [0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 0.8, 1.025]

Definition at line 14 of file trackingPlots.py.

list trackingPlots._maxHits = [5, 10, 20, 40, 60, 80]

Definition at line 21 of file trackingPlots.py.

list trackingPlots._maxLayers = [5, 10, 25]

Definition at line 23 of file trackingPlots.py.

int trackingPlots._maxPixelLayers = 8

Definition at line 24 of file trackingPlots.py.

list trackingPlots._min3DLayers = [0, 5, 10]

Definition at line 25 of file trackingPlots.py.

list trackingPlots._minHits = [0, 5, 10]

Definition at line 20 of file trackingPlots.py.

list trackingPlots._minLayers = [0, 5, 10]

Definition at line 22 of file trackingPlots.py.

list trackingPlots._minMaxN = [5e-1, 5, 5e1, 5e2, 5e3, 5e4, 5e5, 5e6, 5e7, 5e8, 5e9]

Definition at line 18 of file trackingPlots.py.

list trackingPlots._minMaxResol = [1e-5, 4e-5, 1e-4, 4e-4, 1e-3, 4e-3, 1e-2, 4e-2, 0.1, 0.4, 1]

Definition at line 17 of file trackingPlots.py.

tuple trackingPlots._packedCandidateCovarianceMatrix1
Initial value:
1 = PlotGroup("covarianceMatrix1", [
2  Plot("diffCovQoverpQoverp", xtitle="cov(qoverp, qoverp)", **_commonLabelSize),
3  Plot("diffCovQoverpQoverpStatus", **_commonStatus),
4  Plot("diffCovQoverpQoverpUnderOverFlowSign", xtitle="cov(qoverp, qoverp)", **_common),
5  Plot("diffCovLambdaLambda", xtitle="cov(lambda, lambda)", **_commonLabelSize),
6  Plot("diffCovLambdaLambdaStatus", **_commonStatus),
7  Plot("diffCovLambdaLambdaUnderOverFlowSign", xtitle="cov(lambda, lambda)", **_common),
8  Plot("diffCovLambdaDsz", xtitle="cov(lambda, dsz)", **_commonLabelSize),
9  Plot("diffCovLambdaDszStatus", **_commonStatus),
10  Plot("diffCovLambdaDszUnderOverFlowSign", xtitle="cov(lambda, dsz)", **_common),
11  Plot("diffCovPhiPhi", xtitle="cov(phi, phi)", **_commonLabelSize),
12  Plot("diffCovPhiPhiStatus", **_commonStatus),
13  Plot("diffCovPhiPhiUnderOverFlowSign", xtitle="cov(phi, phi)", **_common),
14 ],
15  ncols=3, legendDy=_legendDy_4rows
16 )

Definition at line 588 of file trackingPlots.py.

tuple trackingPlots._packedCandidateCovarianceMatrix2
Initial value:
1 = PlotGroup("covarianceMatrix2", [
2  Plot("diffCovPhiDxy", xtitle="cov(phi, dxy)", **_commonLabelSize),
3  Plot("diffCovPhiDxyStatus", **_commonStatus),
4  Plot("diffCovPhiDxyUnderOverFlowSign", xtitle="cov(phi, dxy)", **_common),
5  Plot("diffCovDxyDxy", xtitle="cov(dxy, dxy)", adjustMarginRight=0.02, **_commonLabelSize),
6  Plot("diffCovDxyDxyStatus", **_commonStatus),
7  Plot("diffCovDxyDxyUnderOverFlowSign", xtitle="cov(dxy, dxy)", **_common),
8  Plot("diffCovDxyDsz", xtitle="cov(dxy, dsz)", adjustMarginRight=0.02, **_commonLabelSize),
9  Plot("diffCovDxyDszStatus", **_commonStatus),
10  Plot("diffCovDxyDszUnderOverFlowSign", xtitle="cov(dxy, dsz)", **_common),
11  Plot("diffCovDszDsz", xtitle="cov(dsz, dsz)", adjustMarginRight=0.02, **_commonLabelSize),
12  Plot("diffCovDszDszStatus", **_commonStatus),
13  Plot("diffCovDszDszUnderOverFlowSign", xtitle="cov(dsz, dsz)", **_common),
14 ],
15  ncols=3, legendDy=_legendDy_4rows
16 )

Definition at line 604 of file trackingPlots.py.

tuple trackingPlots._packedCandidateFlow
Initial value:
1 = PlotGroup("flow", [
2  Plot("selectionFlow", xbinlabelsize=10, xbinlabeloption="d", adjustMarginRight=0.1, drawStyle="hist", ylog=True, ymin=[0.9, 9, 9e1, 9e2, 9e3, 9e4, 9e5, 9e6, 9e7]),
3  Plot("diffCharge", xtitle="Charge", **_common),
4  Plot("diffIsHighPurity", xtitle="High purity status", **_common),
5  Plot("diffNdof", xtitle="ndof", **_common),
6  Plot("diffNormalizedChi2", xtitle="#chi^{2}/ndof", **_common),
7 ])

Definition at line 537 of file trackingPlots.py.

tuple trackingPlots._packedCandidateHits
Initial value:
1 = PlotGroup("hits", [
2  Plot("diffNumberOfHits", xtitle="Hits", **_common),
3  Plot("diffNumberOfPixelHits", xtitle="Pixel hits", **_common),
4  Plot("diffLostInnerHits", xtitle="Lost inner hits", **_common),
5  Plot("numberHitsOverMax", xtitle="Number of overflown hits", **_common),
6  Plot("numberPixelHitsOverMax", xtitle="Number of overflown pixel hits", **_common),
7  Plot("numberStripHitsOverMax", xtitle="Number of overflown strip hits", **_common),
8 ],
9  ncols=3, legendDy=_legendDy_2rows_3cols
10 )

Definition at line 553 of file trackingPlots.py.

tuple trackingPlots._packedCandidateHitsHitPattern
Initial value:
1 = PlotGroup("hitsHitPattern", [
2  Plot("diffHitPatternNumberOfValidHits", xtitle="Valid hits (via HitPattern)", **_common),
3  Plot("diffHitPatternNumberOfValidPixelHits", xtitle="Valid pixel hits (via HitPattern)", **_common),
4  Plot("diffHitPatternHasValidHitInFirstPixelBarrel", xtitle="Has valid hit in BPix1 layer (via HitPattern)", **_common),
5  Plot("diffHitPatternNumberOfLostPixelHits", xtitle="Lost pixel hits (via HitPattern)", **_common),
6 ],
7  legendDy=_legendDy_2rows
8 )

Definition at line 545 of file trackingPlots.py.

tuple trackingPlots._packedCandidateImpactParameter1
Initial value:
1 = PlotGroup("impactParameter1", [
2  Plot("diffDxyAssocPV", xtitle="dxy(assocPV)", adjustMarginRight=0.02, **_commonLabelSize),
3  Plot("diffDxyAssocPVStatus", **_commonStatus),
4  Plot("diffDxyAssocPVUnderOverFlowSign", xtitle="dxy(assocPV)", **_common),
5  Plot("diffDzAssocPV", xtitle="dz(assocPV)", adjustMarginRight=0.02, **_commonLabelSize),
6  Plot("diffDzAssocPVStatus", **_commonStatus),
7  Plot("diffDzAssocPVUnderOverFlowSign", xtitle="dz(assocPV)", **_common),
8  Plot("diffDxyError", xtitle="dxyError()", adjustMarginRight=0.02, **_commonLabelSize),
9  Plot("diffDszError", xtitle="dszError()", adjustMarginRight=0.02, **_commonLabelSize),
10  Plot("diffDzError", xtitle="dzError()", adjustMarginRight=0.02, **_commonLabelSize),
11 
12 ],
13  ncols=3
14 )

Definition at line 564 of file trackingPlots.py.

tuple trackingPlots._packedCandidateImpactParameter2
Initial value:
1 = PlotGroup("impactParameter2", [
2  Plot("diffDxyPV", xtitle="dxy(PV) via PC", **_commonLabelSize),
3  Plot("diffDzPV", xtitle="dz(PV) via PC", **_commonLabelSize),
4  Plot("diffTrackDxyAssocPV", xtitle="dxy(PV) via PC::bestTrack()", **_commonLabelSize),
5  Plot("diffTrackDzAssocPV", xtitle="dz(PV) via PC::bestTrack()", **_commonLabelSize),
6  Plot("diffTrackDxyError", xtitle="dxyError() via PC::bestTrack()", adjustMarginRight=0.02, **_commonLabelSize),
7  Plot("diffTrackDzError", xtitle="dzError() via PC::bestTrack()", **_commonLabelSize),
8 ])

Definition at line 579 of file trackingPlots.py.

tuple trackingPlots._packedCandidateKinematics
Initial value:
1 = PlotGroup("kinematics", [
2  Plot("diffPt", xtitle="p_{T}", **_common),
3  Plot("diffPtError", xtitle="p_{T} error", **_common),
4  Plot("diffEta", xtitle="#eta", **_common),
5  Plot("diffEtaError", xtitle="#eta error", **_common),
6  Plot("diffPhi", xtitle="#phi", **_common),
7 ])

Definition at line 631 of file trackingPlots.py.

list trackingPlots._packedCandidatePlots
Initial value:
1 = [
2  _packedCandidateFlow,
3  _packedCandidateKinematics,
4  _packedCandidateVertex,
5  _packedCandidateImpactParameter1,
6  _packedCandidateImpactParameter2,
7  _packedCandidateCovarianceMatrix1,
8  _packedCandidateCovarianceMatrix2,
9  _packedCandidateHits,
10  _packedCandidateHitsHitPattern,
11 ]

Definition at line 799 of file trackingPlots.py.

tuple trackingPlots._packedCandidateVertex
Initial value:
1 = PlotGroup("vertex", [
2  Plot("diffVx", xtitle="Reference point x", **_common),
3  Plot("diffVy", xtitle="Reference point y", **_common),
4  Plot("diffVz", xtitle="Reference point z", **_common),
5 ],
6  legendDy=_legendDy_2rows
7 )

Definition at line 622 of file trackingPlots.py.

tuple trackingPlots._pixelTiming
Initial value:
1 = PlotGroup("pixelTiming", [
2  Plot(AggregateBins("pixel", "reconstruction_step_module_average", {"pixelTracks": ["pixelTracks"]}), ytitle="Average processing time [ms]", title="Average processing time / event", drawStyle="HIST")
3 ])

Definition at line 1101 of file trackingPlots.py.

list trackingPlots._possibleTrackingColls
Initial value:
1 = [
2  'initialStepPreSplitting',
3  'initialStep',
4  'highPtTripletStep', # phase1
5  'lowPtQuadStep', # phase1
6  'lowPtTripletStep',
7  'pixelPairStep',
8  'detachedQuadStep', # phase1
9  'detachedTripletStep',
10  'mixedTripletStepA', # seeds
11  'mixedTripletStepB', # seeds
12  'mixedTripletStep',
13  'pixelLessStep',
14  'tobTecStepPair', # seeds
15  'tobTecStepTripl', # seeds
16  'tobTecStep',
17  'jetCoreRegionalStep',
18  'muonSeededStepInOut',
19  'muonSeededStepOutIn',
20  'duplicateMerge',
21 ]

Definition at line 295 of file trackingPlots.py.

dictionary trackingPlots._possibleTrackingCollsOld
Initial value:
1 = {
2  "Zero" : "iter0",
3  "First" : "iter1",
4  "Second": "iter2",
5  "Third" : "iter3",
6  "Fourth": "iter4",
7  "Fifth" : "iter5",
8  "Sixth" : "iter6",
9  "Seventh": "iter7",
10  "Ninth" : "iter9",
11  "Tenth" : "iter10",
12 }

Definition at line 316 of file trackingPlots.py.

list trackingPlots._possibleTrackingNonIterationColls
Initial value:
1 = [
2  'ak4PFJets',
3  'btvLike',
4 ]

Summary plots.

Definition at line 291 of file trackingPlots.py.

tuple trackingPlots._pulls
Initial value:
1 = PlotGroup("pulls", [
2  Plot("pullPt", **_common),
3  Plot("pullQoverp", **_common),
4  Plot("pullPhi", **_common),
5  Plot("pullTheta", **_common),
6  Plot("pullDxy", **_common),
7  Plot("pullDz", **_common),
8 ],
9  legendDx=0.1, legendDw=-0.1, legendDh=-0.015
10 )

Definition at line 258 of file trackingPlots.py.

tuple trackingPlots._pvassociation1
Initial value:
1 = PlotGroup("pvassociation1", [
2  Plot(ROC("effic_vs_fakepileup_dzpvcut", "effic_vs_dzpvcut", FakeDuplicate("fakepileup_vs_dzpvcut", assoc="num_assoc(recoToSim)_dzpvcut", reco="num_reco_dzpvcut", dup="num_pileup_dzpvcut")),
3  xtitle="Efficiency vs. cut on dz(PV)", **_common),
4  Plot(ROC("effic_vs_fakepileup2_dzpvcut", "effic_vs_dzpvcut", FakeDuplicate("fakepileup_vs_dzpvcut", assoc="num_assoc(recoToSim)_dzpvcut", reco="num_reco_dzpvcut", dup="num_pileup_dzpvcut"), zaxis=True),
5  xtitle="Efficiency", ztitle="Cut on dz(PV)", **_common2),
6  #
7  Plot(ROC("effic_vs_fakepileup_dzpvsigcut", "effic_vs_dzpvsigcut", FakeDuplicate("fakepileup_vs_dzpvsigcut", assoc="num_assoc(recoToSim)_dzpvsigcut", reco="num_reco_dzpvsigcut", dup="num_pileup_dzpvsigcut")),
8  xtitle="Efficiency vs. cut on dz(PV)/dzError", **_common),
9  Plot(ROC("effic_vs_fakepileup2_dzpvsigcut", "effic_vs_dzpvsigcut", FakeDuplicate("fakepileup_vs_dzpvsigcut", assoc="num_assoc(recoToSim)_dzpvsigcut", reco="num_reco_dzpvsigcut", dup="num_pileup_dzpvsigcut"), zaxis=True),
10  xtitle="Efficiency", ztitle="Cut on dz(PV)/dzError", **_common2),
11  ##
12  Plot(ROC("effic_vs_fakepileup_dzpvcut_pt", "effic_vs_dzpvcut_pt", FakeDuplicate("fakepileup_vs_dzpvcut_pt", assoc="num_assoc(recoToSim)_dzpvcut_pt", reco="num_reco_dzpvcut_pt", dup="num_pileup_dzpvcut_pt")),
13  xtitle="Efficiency (p_{T} weighted) vs. cut on dz(PV)", **_common),
14  Plot(ROC("effic_vs_fakepileup2_dzpvcut_pt", "effic_vs_dzpvcut_pt", FakeDuplicate("fakepileup_vs_dzpvcut_pt", assoc="num_assoc(recoToSim)_dzpvcut_pt", reco="num_reco_dzpvcut_pt", dup="num_pileup_dzpvcut_pt"), zaxis=True),
15  xtitle="Efficiency (p_{T} weighted)", ztitle="Cut on dz(PV)", **_common2),
16  #
17  Plot(ROC("effic_vs_fakepileup_dzpvsigcut_pt", "effic_vs_dzpvsigcut_pt", FakeDuplicate("fakepileup_vs_dzpvsigcut_pt", assoc="num_assoc(recoToSim)_dzpvsigcut_pt", reco="num_reco_dzpvsigcut_pt", dup="num_pileup_dzpvsigcut_pt")),
18  xtitle="Efficiency (p_{T} weighted) vs. cut on dz(PV)/dzError", **_common),
19  Plot(ROC("effic_vs_fakepileup2_dzpvsigcut_pt", "effic_vs_dzpvsigcut_pt", FakeDuplicate("fakepileup_vs_dzpvsigcut_pt", assoc="num_assoc(recoToSim)_dzpvsigcut_pt", reco="num_reco_dzpvsigcut_pt", dup="num_pileup_dzpvsigcut_pt"), zaxis=True),
20  xtitle="Efficiency (p_{T} weighted)", ztitle="Cut on dz(PV)/dzError", **_common2),
21 ], onlyForPileup=True,
22  legendDy=_legendDy_4rows
23 )

Definition at line 170 of file trackingPlots.py.

tuple trackingPlots._pvassociation2
Initial value:
1 = PlotGroup("pvassociation2", [
2  Plot("effic_vs_dzpvcut", xtitle="Cut on dz(PV) (cm)", ytitle="Efficiency vs. cut on dz(PV)", ymax=_maxEff),
3  Plot("effic_vs_dzpvcut2", xtitle="Cut on dz(PV) (cm)", ytitle="Efficiency (excl. trk eff)", ymax=_maxEff),
4  Plot("fakerate_vs_dzpvcut", xtitle="Cut on dz(PV) (cm)", ytitle="Fake rate vs. cut on dz(PV)", ymax=_maxFake),
5  Plot("pileuprate_dzpvcut", xtitle="Cut on dz(PV) (cm)", ytitle="Pileup rate vs. cut on dz(PV)", ymax=_maxFake),
6  #
7  Plot("effic_vs_dzpvsigcut", xtitle="Cut on dz(PV)/dzError", ytitle="Efficiency vs. cut on dz(PV)/dzError", ymax=_maxEff),
8  Plot("effic_vs_dzpvsigcut2", xtitle="Cut on dz(PV)/dzError", ytitle="Efficiency (excl. trk eff)", ymax=_maxEff),
9  Plot("fakerate_vs_dzpvsigcut", xtitle="Cut on dz(PV)/dzError", ytitle="Fake rate vs. cut on dz(PV)/dzError", ymax=_maxFake),
10  Plot("pileuprate_dzpvsigcut", xtitle="Cut on dz(PV)/dzError", ytitle="Pileup rate vs. cut on dz(PV)/dzError", ymax=_maxFake),
11 ], onlyForPileup=True,
12  legendDy=_legendDy_4rows
13 )

Definition at line 193 of file trackingPlots.py.

tuple trackingPlots._pvassociation3
Initial value:
1 = PlotGroup("pvassociation3", [
2  Plot("effic_vs_dzpvcut_pt", xtitle="Cut on dz(PV) (cm)", ytitle="Efficiency (p_{T} weighted)", ymax=_maxEff),
3  Plot("effic_vs_dzpvcut2_pt", xtitle="Cut on dz(PV) (cm)", ytitle="Efficiency (p_{T} weighted, excl. trk eff)", ymax=_maxEff),
4  Plot("fakerate_vs_dzpvcut_pt", xtitle="Cut on dz(PV) (cm)", ytitle="Fake rate (p_{T} weighted)", ymax=_maxFake),
5  Plot("pileuprate_dzpvcut_pt", xtitle="Cut on dz(PV) (cm)", ytitle="Pileup rate (p_{T} weighted)", ymax=_maxFake),
6  #
7  Plot("effic_vs_dzpvsigcut_pt", xtitle="Cut on dz(PV)/dzError", ytitle="Efficiency (p_{T} weighted)", ymax=_maxEff),
8  Plot("effic_vs_dzpvsigcut2_pt", xtitle="Cut on dz(PV)/dzError", ytitle="Efficiency (p_{T} weighted, excl. trk eff)", ymax=_maxEff),
9  Plot("fakerate_vs_dzpvsigcut_pt", xtitle="Cut on dz(PV)/dzError", ytitle="Fake rate (p_{T} weighted)", ymax=_maxFake),
10  Plot("pileuprate_dzpvsigcut_pt", xtitle="Cut on dz(PV)/dzError", ytitle="Pileup rate (p_{T} weighted)", ymax=_maxFake),
11 ], onlyForPileup=True,
12  legendDy=_legendDy_4rows
13 )

Definition at line 206 of file trackingPlots.py.

list trackingPlots._recoBasedPlots
Initial value:
1 = [
2  _dupandfake1,
3  _dupandfake2,
4  _dupandfake3,
5  _dupandfake4,
6  _pvassociation1,
7  _pvassociation2,
8  _pvassociation3,
9  _dedx,
10 # _chargemisid,
11  _hitsAndPt,
12  _pulls,
13  _resolutionsEta,
14  _resolutionsPt,
15  _tuning,
16 ]

Definition at line 756 of file trackingPlots.py.

tuple trackingPlots._resolutionsEta
Initial value:
1 = PlotGroup("resolutionsEta", [
2  Plot("phires_vs_eta_Sigma", ytitle="#sigma(#delta #phi) [rad]", **_common),
3  Plot("cotThetares_vs_eta_Sigma", ytitle="#sigma(#delta cot(#theta))", **_common),
4  Plot("dxyres_vs_eta_Sigma", ytitle="#sigma(#delta d_{0}) [cm]", **_common),
5  Plot("dzres_vs_eta_Sigma", ytitle="#sigma(#delta z_{0}) [cm]", **_common),
6  Plot("ptres_vs_eta_Sigma", ytitle="#sigma(#delta p_{T}/p_{T})", **_common),
7 ])

Definition at line 269 of file trackingPlots.py.

tuple trackingPlots._resolutionsPt
Initial value:
1 = PlotGroup("resolutionsPt", [
2  Plot("phires_vs_pt_Sigma", ytitle="#sigma(#delta #phi) [rad]", **_common),
3  Plot("cotThetares_vs_pt_Sigma", ytitle="#sigma(#delta cot(#theta))", **_common),
4  Plot("dxyres_vs_pt_Sigma", ytitle="#sigma(#delta d_{0}) [cm]", **_common),
5  Plot("dzres_vs_pt_Sigma", ytitle="#sigma(#delta z_{0}) [cm]", **_common),
6  Plot("ptres_vs_pt_Sigma", ytitle="#sigma(#delta p_{T}/p_{T})", **_common),
7 ])

Definition at line 277 of file trackingPlots.py.

list trackingPlots._seedingBuildingPlots
Initial value:
1 = _simBasedPlots+[
2  _dupandfake1,
3  _dupandfake2,
4  _dupandfake3,
5  _dupandfake4,
6  _hitsAndPt,
7 ]

Definition at line 772 of file trackingPlots.py.

list trackingPlots._simBasedPlots
Initial value:
1 = [
2  _effandfake1,
3  _effandfake2,
4  _effandfake3,
5  _effandfake4,
6 ]

Definition at line 750 of file trackingPlots.py.

list trackingPlots._summaryPlots
Initial value:
1 = [
2  _summary,
3  _summaryN,
4  _summaryByOriginalAlgo,
5  _summaryByOriginalAlgoN,
6  _summaryByAlgoMask,
7  _summaryByAlgoMaskN,
8 ]

Definition at line 779 of file trackingPlots.py.

list trackingPlots._summaryPlotsHp
Initial value:
1 = [
2  _summaryHp,
3  _summaryNHp,
4  _summaryByOriginalAlgoHp,
5  _summaryByOriginalAlgoNHp,
6  _summaryByAlgoMaskHp,
7  _summaryByAlgoMaskNHp,
8 ]

Definition at line 787 of file trackingPlots.py.

list trackingPlots._summaryPlotsSeeds
Initial value:
1 = [
2  _summarySeeds,
3  _summarySeedsN,
4 ]

Definition at line 795 of file trackingPlots.py.

list trackingPlots._timeFolders
Initial value:
1 = [
2  "DQMData/Run 1/DQM/Run summary/TimerService/Paths",
3  "DQMData/Run 1/DQM/Run summary/TimerService/process RECO/Paths",
4 ]

Definition at line 1105 of file trackingPlots.py.

tuple trackingPlots._timing_iterations
Initial value:
1 = PlotGroup("iterations", [
2  Plot(AggregateBins(i.name(), "reconstruction_step_module_average", collections.OrderedDict(i.modules()), ignoreMissingBins=True),
3  ytitle="Average processing time (ms)", title=i.name(), **_common)
4  for i in _iterations
5 ],
6  legend=False
7 )

Definition at line 1094 of file trackingPlots.py.

tuple trackingPlots._timing_summary
Initial value:
1 = PlotGroup("summary", [
2  Plot(AggregateBins("iteration", "reconstruction_step_module_average", _iterModuleMap(), ignoreMissingBins=True),
3  ytitle="Average processing time (ms)", title="Average processing time / event", legendDx=-0.4, **_common),
4  Plot(AggregateBins("iteration_fraction", "reconstruction_step_module_average", _iterModuleMap(), ignoreMissingBins=True),
5  ytitle="Fraction", title="", normalizeToUnitArea=True, **_common),
6  #
7  Plot(AggregateBins("step", "reconstruction_step_module_average", _stepModuleMap(), ignoreMissingBins=True),
8  ytitle="Average processing time (ms)", title="Average processing time / event", **_common),
9  Plot(AggregateBins("step_fraction", "reconstruction_step_module_average", _stepModuleMap(), ignoreMissingBins=True),
10  ytitle="Fraction", title="", normalizeToUnitArea=True, **_common),
11 # Plot(AggregateBins("iterative_norm", "reconstruction_step_module_average", _iterModuleMap), ytitle="Average processing time", title="Average processing time / event (normalized)", drawStyle="HIST", xbinlabelsize=0.03, normalizeToUnitArea=True)
12 # Plot(AggregateBins("iterative_norm", "reconstruction_step_module_average", _iterModuleMap, normalizeTo="ak7CaloJets"), ytitle="Average processing time / ak7CaloJets", title="Average processing time / event (normalized to ak7CaloJets)", drawStyle="HIST", xbinlabelsize=0.03)
13 
14  ],
15  legendDy=_legendDy_2rows
16 )

Definition at line 1078 of file trackingPlots.py.

tuple trackingPlots._tplifetime
Initial value:
1 = PlotGroup("tplifetime", [
2  Plot("TPlip", xtitle="TP lip", **_common),
3  Plot("TPtip", xtitle="TP tip", **_common),
4 ])

Definition at line 1119 of file trackingPlots.py.

tuple trackingPlots._tuning
Initial value:
1 = PlotGroup("tuning", [
2  Plot("chi2", stat=True, normalizeToUnitArea=True, ylog=True, ymin=1e-6, ymax=[0.1, 0.2, 0.5, 1.0001], drawStyle="hist", xtitle="#chi^{2}", ratioUncertainty=False),
3  Plot("chi2_prob", stat=True, normalizeToUnitArea=True, drawStyle="hist", xtitle="Prob(#chi^{2})"),
4  Plot("chi2mean", stat=True, title="", xtitle="#eta", ytitle="< #chi^{2} / ndf >", ymax=2.5,
5  fallback={"name": "chi2_vs_eta", "profileX": True}),
6  Plot("ptres_vs_eta_Mean", stat=True, scale=100, title="", xtitle="#eta", ytitle="< #delta p_{T} / p_{T} > [%]", ymin=-1.5, ymax=1.5)
7 ])

Definition at line 250 of file trackingPlots.py.

string trackingPlots.loopSubFolders = "timing"

Definition at line 1114 of file trackingPlots.py.

tuple trackingPlots.plotter = Plotter()

Definition at line 810 of file trackingPlots.py.

tuple trackingPlots.timePlotter = Plotter()

Definition at line 1109 of file trackingPlots.py.

tuple trackingPlots.tpPlotter = Plotter()

Definition at line 1124 of file trackingPlots.py.