23     monAlg = helper.addAlgorithm(algConfObj, 
'DQTLumiMonAlg'+triggerPath)
 
   26         monAlg.TriggerChain = triggerChain
 
   28             triggerPath = triggerChain
 
   30         triggerPath = 
'AnyTrigger' 
   32     groupPath = 
'GLOBAL/Luminosity/'+triggerPath
 
   33     group = helper.addGroup(monAlg, 
'default', groupPath, 
'run')
 
   34     pixelgroup = helper.addGroup(monAlg, 
'pixel', groupPath, 
'run')
 
   35     nLooseT = 
'Number of Loose Vertices' 
   36     nTightT = 
'Number of Tight Vertices' 
   37     nPixClusterT = 
'Number of Pixel Clusters' 
   40     monAlg.TightTrackWeight = 0.01
 
   41     monAlg.TightNTracks = 4
 
   43     lbdict = { 
'xmin': 
min(flags.Input.LumiBlockNumbers)-0.5 
if flags.Input.LumiBlockNumbers 
else 0.5,
 
   44                'xmax': 
max(flags.Input.LumiBlockNumbers)+0.5 
if flags.Input.LumiBlockNumbers 
else 1.5 }
 
   45     lbdict[
'xbins'] = 
int(lbdict[
'xmax']-lbdict[
'xmin'])
 
   48     group.defineHistogram(
'avgIntPerXing', type=
'TH1F', xbins=100, xmin=0, xmax=100,
 
   49                           title=
'Average number of interactions per bunch Xing')
 
   50     group.defineHistogram(
'intPerXing', type=
'TH1F', xbins=100, xmin=0, xmax=100,
 
   51                           title=
'Actual number of interactions per bunch Xing')
 
   54     group.defineHistogram(
'LB,avgLumi', type=
'TProfile',
 
   55                           title=
'Average Lumi vs LB', opt=
'kAddBinsDynamically',
 
   56                           merge=
'merge', **lbdict)
 
   57     group.defineHistogram(
'LB,avgIntPerXing', type=
'TProfile',
 
   58                           title=
'Number of interactions per event;LB;<#mu>_{LB}',
 
   59                           opt=
'kAddBinsDynamically', merge=
'merge', **lbdict)
 
   60     group.defineHistogram(
'LB,lumiPerBCID', type=
'TProfile',
 
   61                           title=
'Instantaneous Luminosity vs LB', opt=
'kAddBinsDynamically',
 
   62                           merge=
'merge', **lbdict)
 
   63     group.defineHistogram(
'LB,intPerXing', type=
'TProfile',
 
   64                           title=
'Instaneous interactions vs LB', opt=
'kAddBinsDynamically',
 
   65                           merge=
'merge', **lbdict)
 
   66     group.defineHistogram(
'LB,duration', type=
'TProfile',
 
   67                           title=
'Lumi Block time in sec vs LB', opt=
'kAddBinsDynamically',
 
   68                           merge=
'merge', **lbdict)
 
   69     group.defineHistogram(
'LB,avgLiveFrac', type=
'TProfile',
 
   70                           title=
'Average live fraction lumi over all BCIDs vs LB',
 
   71                           opt=
'kAddBinsDynamically', merge=
'merge', **lbdict)
 
   72     group.defineHistogram(
'LB,liveFracPerBCID', type=
'TProfile',
 
   73                           title=
'Current BCID lumi vs LB', opt=
'kAddBinsDynamically',
 
   74                           merge=
'merge', **lbdict)
 
   75     group.defineHistogram(
'LB,lumiWeight', type=
'TProfile',
 
   76                           title=
'Current BCID lumi vs LB', opt=
'kAddBinsDynamically',
 
   77                           merge=
'merge', **lbdict)
 
   80     group.defineHistogram(
'LB,nLooseVtx', type=
'TProfile',
 
   81                           title=nLooseT+
' per event;LB;<NlooseVtx/event>_{LB}',
 
   82                           opt=
'kAddBinsDynamically', merge=
'merge', **lbdict)
 
   83     group.defineHistogram(
'LB,nTightVtx', type=
'TProfile',
 
   84                           title=nTightT+
' per event;LB;<NtightVtx/event>_{LB}',
 
   85                           opt=
'kAddBinsDynamically', merge=
'merge', **lbdict)
 
   88     group.defineHistogram(
'LB,nLooseVtxPerAvgMu', type=
'TProfile', opt=
'kAddBinsDynamically',
 
   89                           title=nLooseT+
' per event per Mu;LB;<NlooseVtx/event/#mu>_{LB}',
 
   90                           merge=
'merge', **lbdict)
 
   91     group.defineHistogram(
'LB,nTightVtxPerAvgMu', type=
'TProfile', opt=
'kAddBinsDynamically',
 
   92                           title=nTightT+
' per event per Mu;LB;<NtightVtx/event/#mu>_{LB}',
 
   93                           merge=
'merge', **lbdict)
 
   96     group.defineHistogram(
'avgIntPerXing,nLooseVtx', type=
'TProfile', xbins=250, xmin=0, xmax=100,
 
   97                           title=nLooseT+
' per event;#mu;NlooseVtx/event')
 
   98     group.defineHistogram(
'avgIntPerXing,nTightVtx', type=
'TProfile', xbins=250, xmin=0, xmax=100,
 
   99                           title=nTightT+
' per event;#mu;NtightVtx/event')
 
  102     pixelgroup.defineHistogram(
'LB,nClustersAll', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  103                                title=nPixClusterT+
', all;LB;<NclustersAll/event>_{LB}',
 
  104                                merge=
'merge', **lbdict)
 
  105     pixelgroup.defineHistogram(
'LB,nClustersECA', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  106                                title=nPixClusterT+
', endcap A;LB;<NlustersECA/event>_{LB}',
 
  107                                merge=
'merge', **lbdict)
 
  108     pixelgroup.defineHistogram(
'LB,nClustersECC', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  109                                title=nPixClusterT+
', endcap C;LB;<NclustersECC/event>_{LB}',
 
  110                                merge=
'merge', **lbdict)
 
  111     pixelgroup.defineHistogram(
'LB,nClustersB0', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  112                                title=nPixClusterT+
', barrel layer 0;LB;<NclustersB0/event>_{LB}',
 
  113                                merge=
'merge', **lbdict)
 
  114     pixelgroup.defineHistogram(
'LB,nClustersB1', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  115                                title=nPixClusterT+
', barrel layer 1;LB;<NclustersB1/event>_{LB}',
 
  116                                merge=
'merge', **lbdict)
 
  117     pixelgroup.defineHistogram(
'LB,nClustersB2', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  118                                title=nPixClusterT+
', barrel layer 2;LB;<NclustersB2/event>_{LB}',
 
  119                                merge=
'merge', **lbdict)
 
  122     pixelgroup.defineHistogram(
'LB,nClustersAllPerAvgMu', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  123                                title=nPixClusterT+
' per Mu, all;LB;<NclustersAll/event/#mu>_{LB}',
 
  124                                merge=
'merge', **lbdict)
 
  125     pixelgroup.defineHistogram(
'LB,nClustersECAPerAvgMu', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  126                                title=nPixClusterT+
' per Mu, endcap A;LB;<NlustersECA/event/#mu>_{LB}',
 
  127                                merge=
'merge', **lbdict)
 
  128     pixelgroup.defineHistogram(
'LB,nClustersECCPerAvgMu', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  129                                title=nPixClusterT+
' per Mu, endcap C;LB;<NclustersECC/event/#mu>_{LB}',
 
  130                                merge=
'merge', **lbdict)
 
  131     pixelgroup.defineHistogram(
'LB,nClustersB0PerAvgMu', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  132                                title=nPixClusterT+
' per Mu, barrel layer 0;LB;<NclustersB0/event/#mu>_{LB}',
 
  133                                merge=
'merge', **lbdict)
 
  134     pixelgroup.defineHistogram(
'LB,nClustersB1PerAvgMu', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  135                                title=nPixClusterT+
' per Mu, barrel layer 1;LB;<NclustersB1/event/#mu>_{LB}',
 
  136                                merge=
'merge', **lbdict)
 
  137     pixelgroup.defineHistogram(
'LB,nClustersB2PerAvgMu', type=
'TProfile', opt=
'kAddBinsDynamically',
 
  138                                title=nPixClusterT+
' per Mu, barrel layer 2;LB;<NclustersB2/event/#mu>_{LB}',
 
  139                                merge=
'merge', **lbdict)
 
  142     pixelgroup.defineHistogram(
'avgIntPerXing,nClustersAll', type=
'TProfile',
 
  143                                xbins=250, xmin=0, xmax=100,
 
  144                                title=nPixClusterT+
', all;#mu;NclustersAll/event')
 
  145     pixelgroup.defineHistogram(
'avgIntPerXing,nClustersECA', type=
'TProfile',
 
  146                                xbins=250, xmin=0, xmax=100,
 
  147                                title=nPixClusterT+
', endcap A;#mu;NclustersECA/event')
 
  148     pixelgroup.defineHistogram(
'avgIntPerXing,nClustersECC', type=
'TProfile',
 
  149                                xbins=250, xmin=0, xmax=100,
 
  150                                title=nPixClusterT+
', endcap C;#mu;NclustersECC/event')
 
  151     pixelgroup.defineHistogram(
'avgIntPerXing,nClustersB0', type=
'TProfile',
 
  152                                xbins=250, xmin=0, xmax=100,
 
  153                                title=nPixClusterT+
', barrel layer 0;#mu;NclustersB0/event')
 
  154     pixelgroup.defineHistogram(
'avgIntPerXing,nClustersB1', type=
'TProfile',
 
  155                                xbins=250, xmin=0, xmax=100,
 
  156                                title=nPixClusterT+
', barrel layer 1;#mu;NclustersB1/event')
 
  157     pixelgroup.defineHistogram(
'avgIntPerXing,nClustersB2', type=
'TProfile',
 
  158                                xbins=250, xmin=0, xmax=100,
 
  159                                title=nPixClusterT+
', barrel layer 2;#mu;NclustersB2/event')