13     from AthenaConfiguration.ComponentFactory 
import CompFactory
 
   14     from AthenaConfiguration.ComponentAccumulator 
import ComponentAccumulator
 
   15     from AthenaConfiguration.Enums 
import Format
 
   18     from MagFieldServices.MagFieldServicesConfig 
import AtlasFieldCacheCondAlgCfg
 
   21     from AthenaMonitoring 
import AthMonitorCfgHelper
 
   22     helper = AthMonitorCfgHelper(inputFlags,
'TgcRawDataMonitorCfg')
 
   24     from TrkConfig.AtlasExtrapolatorConfig 
import AtlasExtrapolatorCfg
 
   27     tgcRawDataMonitorTool = CompFactory.TgcRawDataMonitorTool(
"TgcRawDataMonitorTool")
 
   29     from MuonSelectorTools.MuonSelectorToolsConfig 
import MuonSelectionToolCfg
 
   30     tgcRawDataMonAlg = helper.addAlgorithm(CompFactory.TgcRawDataMonitorAlgorithm,
'TgcRawDataMonAlg',
 
   31                                            TrackExtrapolator = extrapolator,
 
   32                                            TgcRawDataMonitorTool = tgcRawDataMonitorTool,
 
   36                                            doExpressProcessing = inputFlags.Common.doExpressProcessing )
 
   38     from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig 
import TrackingGeometryCondAlgCfg
 
   41     doGapByGapHitOcc = 
True 
   42     doGapByGapEffMap = 
False 
   45     tgcRawDataMonAlg.FillGapByGapHistograms = (doGapByGapHitOcc 
or doGapByGapEffMap 
or doHitResiduals)
 
   47     tgcRawDataMonAlg.GRLTool = 
"" 
   49     tgcRawDataMonAlg.UseOnlyCombinedMuons = 
True 
   50     tgcRawDataMonAlg.UseOnlyMuidCoStacoMuons = 
True 
   51     tgcRawDataMonAlg.UseMuonSelectorTool = 
True 
   53     tgcRawDataMonAlg.MonitorThresholdPatterns = 
True 
   54     tgcRawDataMonAlg.ThrPatternList = 
"MU3V,MU3VF,MU3VC,MU5VF,MU8F,MU8FC,MU9VF,MU9VFC,MU8VF,MU8VFC,MU14FCH,MU14FCHR,MU15VFCH,MU15VFCHR,MU18VFCH,MU10BOM,MU12BOM,MU8FH,MU20VFC,MU12FCH,MU4BOM,MU4BO,MU10BO,MU14EOF,MU8EOF,MU3EOF," 
   56     tgcRawDataMonAlg.TagAndProbe = 
True 
   57     tgcRawDataMonAlg.TagAndProbeZmumu = 
False 
   59     if not inputFlags.DQ.triggerDataAvailable:
 
   60         tgcRawDataMonAlg.MuonRoIContainerName = 
'' 
   61         tgcRawDataMonAlg.MuonRoIContainerBCm2Name = 
'' 
   62         tgcRawDataMonAlg.MuonRoIContainerBCm1Name = 
'' 
   63         tgcRawDataMonAlg.MuonRoIContainerBCp1Name = 
'' 
   64         tgcRawDataMonAlg.MuonRoIContainerBCp2Name = 
'' 
   65         tgcRawDataMonAlg.TagAndProbe = 
False 
   66         tgcRawDataMonAlg.MonitorThresholdPatterns = 
False 
   67         tgcRawDataMonAlg.ThrPatternList = 
'' 
   68         tgcRawDataMonAlg.MonitorTriggerMultiplicity = 
False 
   69         tgcRawDataMonAlg.CtpDecisionMoniorList = 
'' 
   70         tgcRawDataMonAlg.UseMuonSelectorTool = 
False 
   72     if inputFlags.Trigger.EDMVersion < 3: 
 
   73         tgcRawDataMonAlg.MuonRoIContainerBCm2Name = 
'' 
   74         tgcRawDataMonAlg.MuonRoIContainerBCm1Name = 
'' 
   75         tgcRawDataMonAlg.MuonRoIContainerBCp1Name = 
'' 
   76         tgcRawDataMonAlg.MuonRoIContainerBCp2Name = 
'' 
   77         tgcRawDataMonAlg.MuRoIThresholdPatternsKey = 
'' 
   78         tgcRawDataMonAlg.TgcCoinDataContainerNextNextBCName = 
'' 
   79         tgcRawDataMonAlg.MonitorThresholdPatterns = 
False 
   81     if inputFlags.Input.Format 
is Format.BS 
or 'TGC_MeasurementsAllBCs' in inputFlags.Input.Collections:
 
   82         tgcRawDataMonAlg.AnaTgcPrd=
True 
   83     if inputFlags.Input.Format 
is Format.BS 
or (
'TrigT1CoinDataCollection' in inputFlags.Input.Collections 
and 
   84                                                 'TrigT1CoinDataCollectionNextBC' in inputFlags.Input.Collections 
and 
   85                                                 'TrigT1CoinDataCollectionPriorBC' in inputFlags.Input.Collections ):
 
   86         tgcRawDataMonAlg.AnaTgcCoin=
True 
   88     mainDir = 
'Muon/MuonRawDataMonitoring/TGC/' 
   91     myGroup = helper.addGroup(tgcRawDataMonAlg,
'TgcRawDataMonitor',mainDir)
 
   94     commonPath = 
'EventInfo/' 
   95     myGroupCommon = helper.addGroup(tgcRawDataMonAlg, 
'TgcRawDataMonitor_Common', mainDir)
 
   96     myGroupCommon.defineHistogram(
'mon_lb;TgcMon_LuminosityBlock',title=
'Luminosity Block;Luminosity Block;Number of events',
 
   97                                   path=commonPath,type=
'TH1F',xbins=10,xmin=0,xmax=10,opt=
'kAddBinsDynamically', merge=
'merge')
 
   98     myGroupCommon.defineHistogram(
'mon_bcid;TgcMon_BCID',title=
'BCID;BCID;Number of events',
 
   99                                   path=commonPath,type=
'TH1F',xbins=4096,xmin=-0.5,xmax=4095.5)
 
  100     myGroupCommon.defineHistogram(
'mon_pileup;TgcMon_Pileup',title=
'Pileup;Pileup;Number of events',
 
  101                                   path=commonPath,type=
'TH1F',xbins=101,xmin=-0.5,xmax=100.5)
 
  102     myGroupCommon.defineHistogram(
'mon_primvtx_z;TgcMon_PrimaryVertexZ',title=
'Primary Vertex Z;Primary Vertex Z [mm];Number of events',
 
  103                                   path=commonPath,type=
'TH1F',xbins=100,xmin=-200.,xmax=200.)
 
  106     myGroupMuon = helper.addGroup(tgcRawDataMonAlg, 
'TgcRawDataMonitor_Muon', mainDir)
 
  107     myGroupMuon.defineHistogram(
'oflmuon_num;TgcMon_OfflineMuon_num',title=
'OfflineMuon_num;OfflineMuon num per event;Number of events',
 
  108                                   path=muonPath,type=
'TH1F',xbins=21,xmin=-0.5,xmax=20.5)
 
  109     myGroupMuon.defineHistogram(
'oflmuon_muonType;TgcMon_OfflineMuon_muonType',title=
'OfflineMuon_muonType;OfflineMuon muonType;Number of events',
 
  110                                   path=muonPath,type=
'TH1F',xbins=21,xmin=-0.5,xmax=20.5)
 
  111     myGroupMuon.defineHistogram(
'oflmuon_author;TgcMon_OfflineMuon_author',title=
'OfflineMuon_author;OfflineMuon author;Number of events',
 
  112                                   path=muonPath,type=
'TH1F',xbins=21,xmin=-0.5,xmax=20.5)
 
  113     myGroupMuon.defineHistogram(
'oflmuon_quality;TgcMon_OfflineMuon_quality',title=
'OfflineMuon_quality;OfflineMuon quality;Number of events',
 
  114                                   path=muonPath,type=
'TH1F',xbins=21,xmin=-0.5,xmax=20.5)
 
  115     myGroupMuon.defineHistogram(
'oflmuon_pt;TgcMon_OfflineMuon_Pt',title=
'OfflineMuon_Pt;OfflineMuon pT [GeV];Number of events',
 
  116                                   path=muonPath,type=
'TH1F',xbins=100,xmin=0,xmax=100)
 
  117     myGroupMuon.defineHistogram(
'oflmuon_eta,oflmuon_phi;TgcMon_OfflineMuon_EtaVsPhi',title=
'OfflineMuon_EtaVsPhi;OfflineMuon Eta;OfflineMuon Phi',
 
  118                                   path=muonPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  119     myGroupMuon.defineHistogram(
'oflmuon_pvdz;TgcMon_OfflineMuon_pvdz',title=
'OfflineMuon_PVDZ;Delta Z [mm];Number of events',
 
  120                                   path=muonPath,type=
'TH1F',xbins=100,xmin=-100,xmax=100)
 
  121     myGroupMuon.defineHistogram(
'oflmuon_pvdca;TgcMon_OfflineMuon_pvdca',title=
'OfflineMuon_PVDCA;DCA [mm];Number of events',
 
  122                                   path=muonPath,type=
'TH1F',xbins=100,xmin=-5,xmax=5)
 
  124     myGroupMuon.defineHistogram(
'oflmuon_probe_num;TgcMon_OfflineMuon_Probe_num',title=
'OfflineMuon_Probe_num;OfflineMuon num per event;Number of events',
 
  125                                   path=muonPath,type=
'TH1F',xbins=21,xmin=-0.5,xmax=20.5)
 
  126     myGroupMuon.defineHistogram(
'oflmuon_probe_muonType;TgcMon_OfflineMuon_Probe_muonType',title=
'OfflineMuon_Probe_muonType;OfflineMuon muonType;Number of events',
 
  127                                   path=muonPath,type=
'TH1F',xbins=21,xmin=-0.5,xmax=20.5)
 
  128     myGroupMuon.defineHistogram(
'oflmuon_probe_author;TgcMon_OfflineMuon_Probe_author',title=
'OfflineMuon_Probe_author;OfflineMuon author;Number of events',
 
  129                                   path=muonPath,type=
'TH1F',xbins=21,xmin=-0.5,xmax=20.5)
 
  130     myGroupMuon.defineHistogram(
'oflmuon_probe_quality;TgcMon_OfflineMuon_Probe_quality',title=
'OfflineMuon_Probe_quality;OfflineMuon quality;Number of events',
 
  131                                   path=muonPath,type=
'TH1F',xbins=21,xmin=-0.5,xmax=20.5)
 
  132     myGroupMuon.defineHistogram(
'oflmuon_probe_pt;TgcMon_OfflineMuon_Probe_Pt',title=
'OfflineMuon_Probe_Pt;OfflineMuon pT [GeV];Number of events',
 
  133                                   path=muonPath,type=
'TH1F',xbins=100,xmin=0,xmax=100)
 
  134     myGroupMuon.defineHistogram(
'oflmuon_probe_eta,oflmuon_probe_phi;TgcMon_OfflineMuon_Probe_EtaVsPhi',title=
'OfflineMuon_Probe_EtaVsPhi;OfflineMuon Eta;OfflineMuon Phi',
 
  135                                   path=muonPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  136     myGroupMuon.defineHistogram(
'oflmuon_probe_pvdz;TgcMon_OfflineMuon_Probe_pvdz',title=
'OfflineMuon_Probe_PVDZ;Delta Z [mm];Number of events',
 
  137                                   path=muonPath,type=
'TH1F',xbins=100,xmin=-100,xmax=100)
 
  138     myGroupMuon.defineHistogram(
'oflmuon_probe_pvdca;TgcMon_OfflineMuon_Probe_pvdca',title=
'OfflineMuon_Probe_PVDCA;DCA [mm];Number of events',
 
  139                                   path=muonPath,type=
'TH1F',xbins=100,xmin=-5,xmax=5)
 
  141     myGroupMuon.defineHistogram(
'oflmuon_deltaR;TgcMon_OfflineMuon_DeltaR',title=
'OfflineMuon_DeltaR;OfflineMuon DeltaR;Number of events',
 
  142                                   path=muonPath,type=
'TH1F',xbins=100,xmin=0,xmax=5)
 
  143     myGroupMuon.defineHistogram(
'oflmuon_deltaR_roi;TgcMon_OfflineMuon_DeltaR_to_RoIs',title=
'OfflineMuon_DeltaR_to_RoIs;OfflineMuon DeltaR to RoIs;Number of events',
 
  144                                   path=muonPath,type=
'TH1F',xbins=100,xmin=0,xmax=5)
 
  145     myGroupMuon.defineHistogram(
'oflmuon_deltaR_hlt;TgcMon_OfflineMuon_DeltaR_to_HLTs',title=
'OfflineMuon_DeltaR_to_HLTs;OfflineMuon DeltaR to HLTs;Number of events',
 
  146                                   path=muonPath,type=
'TH1F',xbins=100,xmin=0,xmax=5)
 
  150     trigThrPatternsPath = 
'TrigPatterns/' 
  151     for monTrig 
in tgcRawDataMonAlg.ThrPatternList.split(
','):
 
  152         if monTrig == 
"":
continue 
  153         monTrigGroup = helper.addGroup(tgcRawDataMonAlg, 
'TgcRawDataMonitor'+monTrig, mainDir)
 
  155         monTrigGroup.defineHistogram(
'l1item_roi_eta_'+monTrig+
';L1Item_MuonRoI_Evt_Eta_'+monTrig,title=
'L1Item_MuonRoI_Evt_Eta_'+monTrig+
';MuonRoI Eta;Entries',
 
  156                                      path=trigThrPatternsPath,type=
'TH1F',xbins=100,xmin=-2.5,xmax=2.5)
 
  157         monTrigGroup.defineHistogram(
'l1item_roi_phi_rpc_'+monTrig+
';L1Item_MuonRoI_Evt_Phi_RPC_'+monTrig,title=
'L1Item_MuonRoI_Evt_Phi_RPC_'+monTrig+
';MuonRoI Phi;Entries',
 
  158                                      path=trigThrPatternsPath,type=
'TH1F',xbins=32,xmin=-math.pi,xmax=math.pi)
 
  159         monTrigGroup.defineHistogram(
'l1item_roi_phi_tgc_'+monTrig+
';L1Item_MuonRoI_Evt_Phi_TGC_'+monTrig,title=
'L1Item_MuonRoI_Evt_Phi_TGC_'+monTrig+
';MuonRoI Phi;Entries',
 
  160                                      path=trigThrPatternsPath,type=
'TH1F',xbins=48,xmin=-math.pi,xmax=math.pi)
 
  162         monTrigGroup.defineHistogram(
'l1item_roi_eta_'+monTrig+
',l1item_roi_phi_'+monTrig+
';L1Item_MuonRoI_Evt_EtaVsPhi_'+monTrig,title=
'L1Item_MuonRoI_Evt_EtaVsPhi_'+monTrig+
';MuonRoI Eta;MuonRoI Phi',
 
  163                                      path=trigThrPatternsPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  164         monTrigGroup.defineHistogram(
'l1item_roi_eta_'+monTrig+
',l1item_roi_thrNumber_'+monTrig+
';L1Item_MuonRoI_Evt_EtaVsThrNumber_'+monTrig,title=
'L1Item_MuonRoI_Evt_EtaVsThrNumber_'+monTrig+
';MuonRoI Eta;MuonRoI Threshold Number',
 
  165                                      path=trigThrPatternsPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=15,ymin=0.5,ymax=15.5)
 
  166         monTrigGroup.defineHistogram(
'l1item_roi_eta_'+monTrig+
',l1item_roi_ismorecand_'+monTrig+
';L1Item_MuonRoI_Evt_EtaVsIsMoreCand_'+monTrig,title=
'L1Item_MuonRoI_Evt_EtaVsIsMoreCand_'+monTrig+
';MuonRoI Eta;MuonRoI IsMoreCand Flag',
 
  167                                      path=trigThrPatternsPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=3,ymin=-1.5,ymax=1.5)
 
  168         monTrigGroup.defineHistogram(
'l1item_roi_eta_'+monTrig+
',l1item_roi_bw3coin_'+monTrig+
';L1Item_MuonRoI_Evt_EtaVsBW3Coin_'+monTrig,title=
'L1Item_MuonRoI_Evt_EtaVsBW3Coin_'+monTrig+
';MuonRoI Eta;MuonRoI BW3Coin Flag',
 
  169                                      path=trigThrPatternsPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=3,ymin=-1.5,ymax=1.5)
 
  170         monTrigGroup.defineHistogram(
'l1item_roi_eta_'+monTrig+
',l1item_roi_innercoin_'+monTrig+
';L1Item_MuonRoI_Evt_EtaVsInnerCoin_'+monTrig,title=
'L1Item_MuonRoI_Evt_EtaVsInnerCoin_'+monTrig+
';MuonRoI Eta;MuonRoI InnerCoin Flag',
 
  171                                      path=trigThrPatternsPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=3,ymin=-1.5,ymax=1.5)
 
  172         monTrigGroup.defineHistogram(
'l1item_roi_eta_'+monTrig+
',l1item_roi_goodmf_'+monTrig+
';L1Item_MuonRoI_Evt_EtaVsGoodMF_'+monTrig,title=
'L1Item_MuonRoI_Evt_EtaVsGoodMF_'+monTrig+
';MuonRoI Eta;MuonRoI GoodMF Flag',
 
  173                                      path=trigThrPatternsPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=3,ymin=-1.5,ymax=1.5)
 
  175         monTrigGroup.defineHistogram(
'l1item_roi_roiNumber_'+monTrig+
',l1item_roi_sector_'+monTrig+
';L1Item_MuonRoI_Evt_SectorVsRoINumber_Barrel_'+monTrig,title=
'L1Item_MuonRoI SectorVsRoINumber Barrel '+monTrig+
';RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  176                                      type=
'TH2F',cutmask=
'l1item_roi_barrel_'+monTrig,path=trigThrPatternsPath,xbins=29,xmin=-0.5,xmax=28.5,ybins=65,ymin=-32.5,ymax=32.5)
 
  177         monTrigGroup.defineHistogram(
'l1item_roi_roiNumber_'+monTrig+
',l1item_roi_sector_'+monTrig+
';L1Item_MuonRoI_Evt_SectorVsRoINumber_Endcap_'+monTrig,title=
'L1Item_MuonRoI SectorVsRoINumber Endcap '+monTrig+
';RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  178                                      type=
'TH2F',cutmask=
'l1item_roi_endcap_'+monTrig,path=trigThrPatternsPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  179         monTrigGroup.defineHistogram(
'l1item_roi_roiNumber_'+monTrig+
',l1item_roi_sector_'+monTrig+
';L1Item_MuonRoI_Evt_SectorVsRoINumber_Forward_'+monTrig,title=
'L1Item_MuonRoI SectorVsRoINumber Forward '+monTrig+
';RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  180                                      type=
'TH2F',cutmask=
'l1item_roi_forward_'+monTrig,path=trigThrPatternsPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  182         monTrigGroup.defineHistogram(
'lumiBlock_l1item_'+monTrig+
',l1item_roi_phi_barrel_'+monTrig+
';L1Item_MuonRoI_Evt_PhiVsLB_Barrel_sideA_'+monTrig,title=
'L1Item_MuonRoI PhiVsLB Barrel sideA '+monTrig+
';Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  183                                      cutmask=
'l1item_roi_sideA_'+monTrig,path=trigThrPatternsPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=32,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  184         monTrigGroup.defineHistogram(
'lumiBlock_l1item_'+monTrig+
',l1item_roi_phi_barrel_'+monTrig+
';L1Item_MuonRoI_Evt_PhiVsLB_Barrel_sideC_'+monTrig,title=
'L1Item_MuonRoI PhiVsLB Barrel sideC '+monTrig+
';Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  185                                      cutmask=
'l1item_roi_sideC_'+monTrig,path=trigThrPatternsPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=32,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  187         monTrigGroup.defineHistogram(
'lumiBlock_l1item_'+monTrig+
',l1item_roi_phi_endcap_'+monTrig+
';L1Item_MuonRoI_Evt_PhiVsLB_Endcap_sideA_'+monTrig,title=
'L1Item_MuonRoI PhiVsLB Endcap sideA '+monTrig+
';Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  188                                      cutmask=
'l1item_roi_sideA_'+monTrig,path=trigThrPatternsPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  189         monTrigGroup.defineHistogram(
'lumiBlock_l1item_'+monTrig+
',l1item_roi_phi_endcap_'+monTrig+
';L1Item_MuonRoI_Evt_PhiVsLB_Endcap_sideC_'+monTrig,title=
'L1Item_MuonRoI PhiVsLB Endcap sideC '+monTrig+
';Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  190                                      cutmask=
'l1item_roi_sideC_'+monTrig,path=trigThrPatternsPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  192         monTrigGroup.defineHistogram(
'lumiBlock_l1item_'+monTrig+
',l1item_roi_phi_forward_'+monTrig+
';L1Item_MuonRoI_Evt_PhiVsLB_Forward_sideA_'+monTrig,title=
'L1Item_MuonRoI PhiVsLB Forward sideA '+monTrig+
';Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  193                                      cutmask=
'l1item_roi_sideA_'+monTrig,path=trigThrPatternsPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=24,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  194         monTrigGroup.defineHistogram(
'lumiBlock_l1item_'+monTrig+
',l1item_roi_phi_forward_'+monTrig+
';L1Item_MuonRoI_Evt_PhiVsLB_Forward_sideC_'+monTrig,title=
'L1Item_MuonRoI PhiVsLB Forward sideC '+monTrig+
';Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  195                                      cutmask=
'l1item_roi_sideC_'+monTrig,path=trigThrPatternsPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=24,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  197         monTrigGroup.defineHistogram(
'muon_passed_l1item_'+monTrig+
',muon_pt_rpc_l1item_'+monTrig+
';L1Item_MuonRoI_Eff_Pt_RPC_'+monTrig,title=
'L1Item_MuonRoI_Eff_Pt_RPC_'+monTrig+
';Offline muon pT [GeV];Efficiency',
 
  198                                 type=
'TEfficiency',path=trigThrPatternsPath,xbins=50,xmin=0,xmax=50)
 
  199         monTrigGroup.defineHistogram(
'muon_passed_l1item_'+monTrig+
',muon_pt_tgc_l1item_'+monTrig+
';L1Item_MuonRoI_Eff_Pt_TGC_'+monTrig,title=
'L1Item_MuonRoI_Eff_Pt_TGC_'+monTrig+
';Offline muon pT [GeV];Efficiency',
 
  200                                 type=
'TEfficiency',path=trigThrPatternsPath,xbins=50,xmin=0,xmax=50)
 
  201         monTrigGroup.defineHistogram(
'muon_passed_l1item_'+monTrig+
',muon_phi_rpc_l1item_'+monTrig+
';L1Item_MuonRoI_Eff_Phi_RPC_'+monTrig,title=
'L1Item_MuonRoI_Eff_Phi_RPC_'+monTrig+
';Offline muon phi [rad.];Efficiency',
 
  202                                 type=
'TEfficiency',path=trigThrPatternsPath,xbins=32,xmin=-math.pi,xmax=math.pi)
 
  203         monTrigGroup.defineHistogram(
'muon_passed_l1item_'+monTrig+
',muon_phi_tgc_l1item_'+monTrig+
';L1Item_MuonRoI_Eff_Phi_TGC_'+monTrig,title=
'L1Item_MuonRoI_Eff_Phi_TGC_'+monTrig+
';Offline muon phi [rad.];Efficiency',
 
  204                                 type=
'TEfficiency',path=trigThrPatternsPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  205         monTrigGroup.defineHistogram(
'muon_passed_l1item_'+monTrig+
',muon_eta_l1item_'+monTrig+
';L1Item_MuonRoI_Eff_Eta_'+monTrig,title=
'L1Item_MuonRoI_Eff_Eta_'+monTrig+
';Offline muon eta;Efficiency',
 
  206                                 type=
'TEfficiency',path=trigThrPatternsPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  207         monTrigGroup.defineHistogram(
'muon_passed_l1item_'+monTrig+
',muon_eta_l1item_'+monTrig+
',muon_phi_l1item_'+monTrig+
';L1Item_MuonRoI_Eff_EtaVsPhi_'+monTrig,title=
'L1Item_MuonRoI_Eff_EtaVsPhi_'+monTrig+
';Offline muon eta; Offline muon phi',
 
  208                                 type=
'TEfficiency',path=trigThrPatternsPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  212     trigMultiPath = 
'TrigMultiplicity/' 
  213     for monTrig 
in tgcRawDataMonAlg.CtpDecisionMoniorList.split(
';'):
 
  214         tmp = monTrig.split(
',')[0]
 
  215         objname = tmp.replace(
'Tit:',
'')
 
  216         if objname == 
"":
continue 
  217         monTrigGroup = helper.addGroup(tgcRawDataMonAlg, 
'TgcRawDataMonitor'+objname, mainDir)
 
  219         monTrigGroup.defineHistogram(
'ctpMultiplicity;'+objname+
'_ctpMultiplicity',title=objname+
' ctpMultiplicity;Ctp Output Multiplicity;Number of events',
 
  220                                 path=trigMultiPath,xbins=11,xmin=-0.5,xmax=10.5)
 
  221         monTrigGroup.defineHistogram(
'rawMultiplicity;'+objname+
'_rawMultiplicity',title=objname+
' rawMultiplicity;Raw Input Multiplicity;Number of events',
 
  222                                 path=trigMultiPath,xbins=11,xmin=-0.5,xmax=10.5)
 
  223         monTrigGroup.defineHistogram(
'countDiff;'+objname+
'_L1CountDiff',title=objname+
' L1CountDiff;Event-by-event N(CTP out)-N(CTP in);Number of events',
 
  224                                 path=trigMultiPath,xbins=11,xmin=-5.5,xmax=5.5)
 
  226         monTrigGroup.defineHistogram(
'roiMatching_CTPin,roiMatching_CTPout;'+objname+
'_RoiMatching',title=objname+
'_RoiMatching;Input;Output',
 
  227                                 path=trigMultiPath,type=
'TH2F',xbins=2,xmin=-0.5,xmax=1.5,ybins=2,ymin=-0.5,ymax=1.5,xlabels=[
'NotExist',
'Exist'],ylabels=[
'NotExist',
'Exist'])
 
  229         monTrigGroup.defineHistogram(
'Eta,Phi;'+objname+
'_L1Count_EtaVsPhi_inOk_outOk',title=objname+
'_L1Count_EtaVsPhi_inOk_outOk;MuonRoI Eta;MuonRoI Phi',
 
  230                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  231         monTrigGroup.defineHistogram(
'Eta,dRmin;'+objname+
'_L1Count_EtaVsdRmin_inOk_outOk',title=objname+
'_L1Count_EtaVsdRmin_inOk_outOk;MuonRoI Eta;Closest dR between Muon RoIs',
 
  232                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=11,ymin=-0.1,ymax=1.0)
 
  233         monTrigGroup.defineHistogram(
'dRmin;'+objname+
'_roi_dRmin_inOk_outOk',title=objname+
'_roi_dRmin_inOk_outOk;Closest dR between Muon RoIs;Number of events',
 
  234                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=11,xmin=-0.1,xmax=1.0)
 
  235         monTrigGroup.defineHistogram(
'ThrNum;'+objname+
'_roi_ThrNum_inOk_outOk',title=objname+
'_roi_ThrNum_inOk_outOk;Threshold number (positive for barrel, negative for endcap);Number of events',
 
  236                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=22,xmin=-15.5,xmax=6.5)
 
  237         monTrigGroup.defineHistogram(
'Charge;'+objname+
'_roi_Charge_inOk_outOk',title=objname+
'_roi_Charge_inOk_outOk;Muon charge;Number of events',
 
  238                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  239         monTrigGroup.defineHistogram(
'BW3Coin;'+objname+
'_roi_BW3Coin_inOk_outOk',title=objname+
'_roi_BW3Coin_inOk_outOk;TGC BW3Coin flag;Number of events',
 
  240                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  241         monTrigGroup.defineHistogram(
'InnerCoin;'+objname+
'_roi_InnerCoin_inOk_outOk',title=objname+
'_roi_InnerCoin_inOk_outOk;TGC InnerCoin flag;Number of events',
 
  242                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  243         monTrigGroup.defineHistogram(
'GoodMF;'+objname+
'_roi_GoodMF_inOk_outOk',title=objname+
'_roi_GoodMF_inOk_outOk;TGC GoodMF flag;Number of events',
 
  244                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  245         monTrigGroup.defineHistogram(
'IsMoreCandInRoI;'+objname+
'_roi_IsMoreCandInRoI_inOk_outOk',title=objname+
'_roi_IsMoreCandInRoI_inOk_outOk;RPC IsMoreCandInRoI flag;Number of events',
 
  246                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  247         monTrigGroup.defineHistogram(
'PhiOverlap;'+objname+
'_roi_PhiOverlap_inOk_outOk',title=objname+
'_roi_PhiOverlap_inOk_outOk;PhiOverlap flag;Number of events',
 
  248                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  249         monTrigGroup.defineHistogram(
'EtaOverlap;'+objname+
'_roi_EtaOverlap_inOk_outOk',title=objname+
'_roi_EtaOverlap_inOk_outOk;EtaOverlap flag;Number of events',
 
  250                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=2,xmin=-0.5,xmax=1.5)
 
  251         monTrigGroup.defineHistogram(
'dRmin,PhiOverlap;'+objname+
'_roi_dRminVsPhiOverlap_inOk_outOk',
 
  252                                 title=objname+
'_roi_dRminVsPhiOverlap_inOk_outOk;Closest dR between Muon RoIs;PhiOverlap flag',
 
  253                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH2F',xbins=11,xmin=-0.1,xmax=1.0,ybins=3,ymin=-1.5,ymax=1.5)
 
  254         monTrigGroup.defineHistogram(
'isVetoed;'+objname+
'_roi_isVetoed_inOk_outOk',title=objname+
'_roi_isVetoed_inOk_outOk;isVetoed flag;Number of events',
 
  255                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=2,xmin=-0.5,xmax=1.5)
 
  256         monTrigGroup.defineHistogram(
'dRmin,isVetoed;'+objname+
'_roi_dRminVsisVetoed_inOk_outOk',
 
  257                                 title=objname+
'_roi_dRminVsisVetoed_inOk_outOk;Closest dR between Muon RoIs;isVetoed flag',
 
  258                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH2F',xbins=11,xmin=-0.1,xmax=1.0,ybins=2,ymin=-0.5,ymax=1.5)
 
  259         monTrigGroup.defineHistogram(
'Eta,isVetoed;'+objname+
'_roi_EtaVsisVetoed_inOk_outOk',
 
  260                                 title=objname+
'_roi_EtaVsisVetoed_inOk_outOk;MuonRoI Eta;isVetoed flag',
 
  261                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  262         monTrigGroup.defineHistogram(
'Eta,pTdiff;'+objname+
'_L1Count_EtaVspTdiff_inOk_outOk',title=objname+
'_L1Count_EtaVspTdiff_inOk_outOk;MuonRoI Eta;pT difference',
 
  263                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=31,ymin=-15.5,ymax=15.5)
 
  264         monTrigGroup.defineHistogram(
'pTdiff;'+objname+
'_roi_pTdiff_inOk_outOk',title=objname+
'_roi_pTdiff_inOk_outOk;pT difference;Number of events',
 
  265                                 cutmask=
'inOk_outOk',path=trigMultiPath,type=
'TH1F',xbins=31,xmin=-15.5,xmax=15.5)
 
  268         monTrigGroup.defineHistogram(
'Eta,Phi;'+objname+
'_L1Count_EtaVsPhi_inOk_outNg',title=objname+
'_L1Count_EtaVsPhi_inOk_outNg;MuonRoI Eta;MuonRoI Phi',
 
  269                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  270         monTrigGroup.defineHistogram(
'Eta,dRmin;'+objname+
'_L1Count_EtaVsdRmin_inOk_outNg',title=objname+
'_L1Count_EtaVsdRmin_inOk_outNg;MuonRoI Eta;Closest dR between Muon RoIs',
 
  271                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=11,ymin=-0.1,ymax=1.0)
 
  272         monTrigGroup.defineHistogram(
'dRmin;'+objname+
'_roi_dRmin_inOk_outNg',title=objname+
'_roi_dRmin_inOk_outNg;Closest dR between Muon RoIs;Number of events',
 
  273                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=11,xmin=-0.1,xmax=1.0)
 
  274         monTrigGroup.defineHistogram(
'ThrNum;'+objname+
'_roi_ThrNum_inOk_outNg',title=objname+
'_roi_ThrNum_inOk_outNg;Threshold number (positive for barrel, negative for endcap);Number of events',
 
  275                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=22,xmin=-15.5,xmax=6.5)
 
  276         monTrigGroup.defineHistogram(
'Charge;'+objname+
'_roi_Charge_inOk_outNg',title=objname+
'_roi_Charge_inOk_outNg;Muon charge;Number of events',
 
  277                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  278         monTrigGroup.defineHistogram(
'BW3Coin;'+objname+
'_roi_BW3Coin_inOk_outNg',title=objname+
'_roi_BW3Coin_inOk_outNg;TGC BW3Coin flag;Number of events',
 
  279                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  280         monTrigGroup.defineHistogram(
'InnerCoin;'+objname+
'_roi_InnerCoin_inOk_outNg',title=objname+
'_roi_InnerCoin_inOk_outNg;TGC InnerCoin flag;Number of events',
 
  281                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  282         monTrigGroup.defineHistogram(
'GoodMF;'+objname+
'_roi_GoodMF_inOk_outNg',title=objname+
'_roi_GoodMF_inOk_outNg;TGC GoodMF flag;Number of events',
 
  283                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  284         monTrigGroup.defineHistogram(
'IsMoreCandInRoI;'+objname+
'_roi_IsMoreCandInRoI_inOk_outNg',title=objname+
'_roi_IsMoreCandInRoI_inOk_outNg;RPC IsMoreCandInRoI flag;Number of events',
 
  285                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  286         monTrigGroup.defineHistogram(
'PhiOverlap;'+objname+
'_roi_PhiOverlap_inOk_outNg',title=objname+
'_roi_PhiOverlap_inOk_outNg;PhiOverlap flag;Number of events',
 
  287                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  288         monTrigGroup.defineHistogram(
'EtaOverlap;'+objname+
'_roi_EtaOverlap_inOk_outNg',title=objname+
'_roi_EtaOverlap_inOk_outNg;EtaOverlap flag;Number of events',
 
  289                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=2,xmin=-0.5,xmax=1.5)
 
  290         monTrigGroup.defineHistogram(
'dRmin,PhiOverlap;'+objname+
'_roi_dRminVsPhiOverlap_inOk_outNg',
 
  291                                 title=objname+
'_roi_dRminVsPhiOverlap_inOk_outNg;Closest dR between Muon RoIs;PhiOverlap flag',
 
  292                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH2F',xbins=11,xmin=-0.1,xmax=1.0,ybins=3,ymin=-1.5,ymax=1.5)
 
  293         monTrigGroup.defineHistogram(
'isVetoed;'+objname+
'_roi_isVetoed_inOk_outNg',title=objname+
'_roi_isVetoed_inOk_outNg;isVetoed flag;Number of events',
 
  294                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=2,xmin=-0.5,xmax=1.5)
 
  295         monTrigGroup.defineHistogram(
'dRmin,isVetoed;'+objname+
'_roi_dRminVsisVetoed_inOk_outNg',
 
  296                                 title=objname+
'_roi_dRminVsisVetoed_inOk_outNg;Closest dR between Muon RoIs;isVetoed flag',
 
  297                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH2F',xbins=11,xmin=-0.1,xmax=1.0,ybins=2,ymin=-0.5,ymax=1.5)
 
  298         monTrigGroup.defineHistogram(
'Eta,isVetoed;'+objname+
'_roi_EtaVsisVetoed_inOk_outNg',
 
  299                                 title=objname+
'_roi_EtaVsisVetoed_inOk_outNg;MuonRoI Eta;isVetoed flag',
 
  300                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  301         monTrigGroup.defineHistogram(
'Eta,pTdiff;'+objname+
'_L1Count_EtaVspTdiff_inOk_outNg',title=objname+
'_L1Count_EtaVspTdiff_inOk_outNg;MuonRoI Eta;pT difference',
 
  302                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=31,ymin=-15.5,ymax=15.5)
 
  303         monTrigGroup.defineHistogram(
'pTdiff;'+objname+
'_roi_pTdiff_inOk_outNg',title=objname+
'_roi_pTdiff_inOk_outNg;pT difference;Number of events',
 
  304                                 cutmask=
'inOk_outNg',path=trigMultiPath,type=
'TH1F',xbins=31,xmin=-15.5,xmax=15.5)
 
  307         monTrigGroup.defineHistogram(
'Eta,Phi;'+objname+
'_L1Count_EtaVsPhi_inNg_outOk',title=objname+
'_L1Count_EtaVsPhi_inNg_outOk;MuonRoI Eta;MuonRoI Phi',
 
  308                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  309         monTrigGroup.defineHistogram(
'Eta,dRmin;'+objname+
'_L1Count_EtaVsdRmin_inNg_outOk',title=objname+
'_L1Count_EtaVsdRmin_inNg_outOk;MuonRoI Eta;Closest dR between Muon RoIs',
 
  310                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=11,ymin=-0.1,ymax=1.0)
 
  311         monTrigGroup.defineHistogram(
'dRmin;'+objname+
'_roi_dRmin_inNg_outOk',title=objname+
'_roi_dRmin_inNg_outOk;Closest dR between Muon RoIs;Number of events',
 
  312                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=11,xmin=-0.1,xmax=1.0)
 
  313         monTrigGroup.defineHistogram(
'ThrNum;'+objname+
'_roi_ThrNum_inNg_outOk',title=objname+
'_roi_ThrNum_inNg_outOk;Threshold number (positive for barrel, negative for endcap);Number of events',
 
  314                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=22,xmin=-15.5,xmax=6.5)
 
  315         monTrigGroup.defineHistogram(
'Charge;'+objname+
'_roi_Charge_inNg_outOk',title=objname+
'_roi_Charge_inNg_outOk;Muon charge;Number of events',
 
  316                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  317         monTrigGroup.defineHistogram(
'BW3Coin;'+objname+
'_roi_BW3Coin_inNg_outOk',title=objname+
'_roi_BW3Coin_inNg_outOk;TGC BW3Coin flag;Number of events',
 
  318                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  319         monTrigGroup.defineHistogram(
'InnerCoin;'+objname+
'_roi_InnerCoin_inNg_outOk',title=objname+
'_roi_InnerCoin_inNg_outOk;TGC InnerCoin flag;Number of events',
 
  320                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  321         monTrigGroup.defineHistogram(
'GoodMF;'+objname+
'_roi_GoodMF_inNg_outOk',title=objname+
'_roi_GoodMF_inNg_outOk;TGC GoodMF flag;Number of events',
 
  322                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  323         monTrigGroup.defineHistogram(
'IsMoreCandInRoI;'+objname+
'_roi_IsMoreCandInRoI_inNg_outOk',title=objname+
'_roi_IsMoreCandInRoI_inNg_outOk;RPC IsMoreCandInRoI flag;Number of events',
 
  324                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  325         monTrigGroup.defineHistogram(
'PhiOverlap;'+objname+
'_roi_PhiOverlap_inNg_outOk',title=objname+
'_roi_PhiOverlap_inNg_outOk;PhiOverlap flag;Number of events',
 
  326                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=3,xmin=-1.5,xmax=1.5)
 
  327         monTrigGroup.defineHistogram(
'EtaOverlap;'+objname+
'_roi_EtaOverlap_inNg_outOk',title=objname+
'_roi_EtaOverlap_inNg_outOk;EtaOverlap flag;Number of events',
 
  328                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=2,xmin=-0.5,xmax=1.5)
 
  329         monTrigGroup.defineHistogram(
'dRmin,PhiOverlap;'+objname+
'_roi_dRminVsPhiOverlap_inNg_outOk',
 
  330                                 title=objname+
'_roi_dRminVsPhiOverlap_inNg_outOk;Closest dR between Muon RoIs;PhiOverlap flag',
 
  331                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH2F',xbins=11,xmin=-0.1,xmax=1.0,ybins=3,ymin=-1.5,ymax=1.5)
 
  332         monTrigGroup.defineHistogram(
'isVetoed;'+objname+
'_roi_isVetoed_inNg_outOk',title=objname+
'_roi_isVetoed_inNg_outOk;isVetoed flag;Number of events',
 
  333                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=2,xmin=-0.5,xmax=1.5)
 
  334         monTrigGroup.defineHistogram(
'dRmin,isVetoed;'+objname+
'_roi_dRminVsisVetoed_inNg_outOk',
 
  335                                 title=objname+
'_roi_dRminVsisVetoed_inNg_outOk;Closest dR between Muon RoIs;isVetoed flag',
 
  336                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH2F',xbins=11,xmin=-0.1,xmax=1.0,ybins=2,ymin=-0.5,ymax=1.5)
 
  337         monTrigGroup.defineHistogram(
'Eta,isVetoed;'+objname+
'_roi_EtaVsisVetoed_inNg_outOk',
 
  338                                 title=objname+
'_roi_EtaVsisVetoed_inNg_outOk;MuonRoI Eta;isVetoed flag',
 
  339                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  340         monTrigGroup.defineHistogram(
'Eta,pTdiff;'+objname+
'_L1Count_EtaVspTdiff_inNg_outOk',title=objname+
'_L1Count_EtaVspTdiff_inNg_outOk;MuonRoI Eta;pT difference',
 
  341                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=31,ymin=-15.5,ymax=15.5)
 
  342         monTrigGroup.defineHistogram(
'pTdiff;'+objname+
'_roi_pTdiff_inNg_outOk',title=objname+
'_roi_pTdiff_inNg_outOk;pT difference;Number of events',
 
  343                                 cutmask=
'inNg_outOk',path=trigMultiPath,type=
'TH1F',xbins=31,xmin=-15.5,xmax=15.5)
 
  350     myGroup.defineHistogram(
'roi_sector,roi_timing;MuonRoI_Evt_SectorVsTiming_Barrel',type=
'TH2F',
 
  351                             title=
'MuonRoI Sector vs Timing Barrel;MuonRoI Trigger Sector +1  (>0 for A, <0 for C);Timing',cutmask=
'roi_barrel',path=trigPath,
 
  352                             xbins=65,xmin=-32.5,xmax=32.5,ybins=5,ymin=-2.5,ymax=2.5,ylabels=[
'-2BC',
'-1BC',
'CurrBC',
'+1BC',
'+2BC'])
 
  353     myGroup.defineHistogram(
'roi_sector,roi_timing;MuonRoI_Evt_SectorVsTiming_Endcap',type=
'TH2F',
 
  354                             title=
'MuonRoI Sector vs Timing Endcap;MuonRoI Trigger Sector +1  (>0 for A, <0 for C);Timing',cutmask=
'roi_endcap',path=trigPath,
 
  355                             xbins=97,xmin=-48.5,xmax=48.5,ybins=5,ymin=-2.5,ymax=2.5,ylabels=[
'-2BC',
'-1BC',
'CurrBC',
'+1BC',
'+2BC'])
 
  356     myGroup.defineHistogram(
'roi_sector,roi_timing;MuonRoI_Evt_SectorVsTiming_Forward',type=
'TH2F',
 
  357                             title=
'MuonRoI Sector vs Timing Forward;MuonRoI Trigger Sector +1  (>0 for A, <0 for C);Timing',cutmask=
'roi_forward',path=trigPath,
 
  358                             xbins=49,xmin=-24.5,xmax=24.5,ybins=5,ymin=-2.5,ymax=2.5,ylabels=[
'-2BC',
'-1BC',
'CurrBC',
'+1BC',
'+2BC'])
 
  360     myGroup.defineHistogram(
'roi_thr,roi_sector;MuonRoI_Evt_SectorVsThreshold_Barrel',title=
'MuonRoI SectorVsThreshold Barrel;Threshold;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  361                             type=
'TH2F',cutmask=
'roi_barrel',path=trigPath,xbins=7,xmin=-0.5,xmax=6.5,ybins=65,ymin=-32.5,ymax=32.5)
 
  362     myGroup.defineHistogram(
'roi_thr,roi_sector;MuonRoI_Evt_SectorVsThreshold_Endcap',title=
'MuonRoI SectorVsThreshold Endcap;Threshold;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  363                             type=
'TH2F',cutmask=
'roi_endcap',path=trigPath,xbins=16,xmin=-0.5,xmax=15.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  364     myGroup.defineHistogram(
'roi_thr,roi_sector;MuonRoI_Evt_SectorVsThreshold_Forward',title=
'MuonRoI SectorVsThreshold Forward;Threshold;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  365                             type=
'TH2F',cutmask=
'roi_forward',path=trigPath,xbins=16,xmin=-0.5,xmax=15.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  367     myGroup.defineHistogram(
'roi_roiNumber,roi_sector;MuonRoI_Evt_SectorVsRoINumber_Barrel',title=
'MuonRoI SectorVsRoINumber Barrel;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  368                             type=
'TH2F',cutmask=
'roi_barrel',path=trigPath,xbins=29,xmin=-0.5,xmax=28.5,ybins=65,ymin=-32.5,ymax=32.5)
 
  369     myGroup.defineHistogram(
'roi_roiNumber,roi_sector;MuonRoI_Evt_SectorVsRoINumber_Endcap',title=
'MuonRoI SectorVsRoINumber Endcap;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  370                             type=
'TH2F',cutmask=
'roi_endcap',path=trigPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  371     myGroup.defineHistogram(
'roi_roiNumber,roi_sector;MuonRoI_Evt_SectorVsRoINumber_Forward',title=
'MuonRoI SectorVsRoINumber Forward;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  372                             type=
'TH2F',cutmask=
'roi_forward',path=trigPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  374     myGroup.defineHistogram(
'roi_roiNumber,roi_sector_wBW3Coin;MuonRoI_Evt_SectorVsRoINumber_wBW3Coin_Endcap',title=
'MuonRoI SectorVsRoINumber wBW3Coin Endcap;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  375                             type=
'TH2F',cutmask=
'roi_endcap',path=trigPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  376     myGroup.defineHistogram(
'roi_roiNumber,roi_sector_wBW3Coin;MuonRoI_Evt_SectorVsRoINumber_wBW3Coin_Forward',title=
'MuonRoI SectorVsRoINumber wBW3Coin Forward;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  377                             type=
'TH2F',cutmask=
'roi_forward',path=trigPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  379     myGroup.defineHistogram(
'roi_roiNumber,roi_sector_wInnerCoin;MuonRoI_Evt_SectorVsRoINumber_wInnerCoin_Endcap',title=
'MuonRoI SectorVsRoINumber wInnerCoin Endcap;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  380                             type=
'TH2F',cutmask=
'roi_endcap',path=trigPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  381     myGroup.defineHistogram(
'roi_roiNumber,roi_sector_wInnerCoin;MuonRoI_Evt_SectorVsRoINumber_wInnerCoin_Forward',title=
'MuonRoI SectorVsRoINumber wInnerCoin Forward;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  382                             type=
'TH2F',cutmask=
'roi_forward',path=trigPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  384     myGroup.defineHistogram(
'roi_charge;MuonRoI_Evt_Charge',title=
'MuonRoI Charge;Charge;Number of events',
 
  385                             cutmask=
'roi_tgc',path=trigPath,xbins=3,xmin=-1.5,xmax=1.5)
 
  386     myGroup.defineHistogram(
'muon_l1passCharge,muon_eta4gev,muon_phi4gev;MuonRoI_Eff_EtaVsPhi_Charge',title=
'MuonRoI_Eff_EtaVsPhi_Charge;Offline muon eta; Offline muon phi',
 
  387                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  388     myGroup.defineHistogram(
'muon_l1passCharge,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_Charge',title=
'MuonRoI_Eff_Pt_TGC_Charge;Offline muon pT [GeV];Efficiency',
 
  389                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  390     myGroup.defineHistogram(
'muon_l1passCharge,muon_eta4gev;MuonRoI_Eff_Eta_Charge',title=
'MuonRoI_Eff_Eta_Charge;Offline muon eta; Efficiency',
 
  391                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  392     myGroup.defineHistogram(
'muon_l1passCharge,muon_phi4gev_tgc;MuonRoI_Eff_Phi_TGC_Charge',title=
'MuonRoI_Eff_Phi_TGC_Charge;Offline muon phi; Efficiency',
 
  393                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  394     myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_Charge_Positive',type=
'TH2F',
 
  395                             title=
'MuonRoI Eta vs Phi Charge Positive;MuonRoI Eta;MuonRoI Phi',cutmask=
'roi_posCharge',path=trigPath,
 
  396                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  397     myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_Charge_Negative',type=
'TH2F',
 
  398                             title=
'MuonRoI Eta vs Phi Charge Negative;MuonRoI Eta;MuonRoI Phi',cutmask=
'roi_negCharge',path=trigPath,
 
  399                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  400     myGroup.defineHistogram(
'roi_thr,roi_charge;MuonRoI_Evt_ChargeVsThr',type=
'TH2F',
 
  401                             title=
'MuonRoI Charge vs Thr;MuonRoI Thresholds;MuonRoI Charge',cutmask=
'roi_tgc',path=trigPath,
 
  402                             xbins=20,xmin=-0.5,xmax=19.5,ybins=3,ymin=-1.5,ymax=1.5)
 
  405     myGroup.defineHistogram(
'roi_innercoin,roi_eta_tgc;MuonRoI_Eff_Eta_wInnerCoin_ThrAll',title=
'MuonRoI Eff Eta wInnerCoin ThrAll;MuonRoI Eta;Efficiency',
 
  406                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  407     myGroup.defineHistogram(
'roi_innercoin,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wInnerCoin_ThrAll',title=
'MuonRoI Eff Phi TGC wInnerCoin ThrAll;MuonRoI Phi;Efficiency',
 
  408                             type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  409     myGroup.defineHistogram(
'roi_innercoin,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wInnerCoin_ThrAll',title=
'MuonRoI Eff Eta vs Phi wInnerCoin ThrAll;MuonRoI Eta;MuonRoI Phi',
 
  410                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  411     myGroup.defineHistogram(
'roi_innercoin,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wInnerCoin_Endcap_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wInnerCoin Endcap ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  412                             type=
'TEfficiency',cutmask=
'roi_endcap',path=trigPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  413     myGroup.defineHistogram(
'roi_innercoin,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wInnerCoin_Forward_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wInnerCoin Forward ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  414                             type=
'TEfficiency',cutmask=
'roi_forward',path=trigPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  416     myGroup.defineHistogram(
'roi_innveto,roi_eta_tgc;MuonRoI_Eff_Eta_wInnerCoinVeto_ThrAll',title=
'MuonRoI Eff Eta wInnerCoinVeto ThrAll;MuonRoI Eta;Efficiency',
 
  417                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  418     myGroup.defineHistogram(
'roi_innveto,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wInnerCoinVeto_ThrAll',title=
'MuonRoI Eff Phi TGC wInnerCoinVeto ThrAll;MuonRoI Phi;Efficiency',
 
  419                             type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  420     myGroup.defineHistogram(
'roi_innveto,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wInnerCoinVeto_ThrAll',title=
'MuonRoI Eff Eta vs Phi wInnerCoinVeto ThrAll;MuonRoI Eta;MuonRoI Phi',
 
  421                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  422     myGroup.defineHistogram(
'roi_innveto,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wInnerCoinVeto_Endcap_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wInnerCoinVeto Endcap ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  423                             type=
'TEfficiency',cutmask=
'roi_endcap',path=trigPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  424     myGroup.defineHistogram(
'roi_innveto,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wInnerCoinVeto_Forward_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wInnerCoinVeto Forward ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  425                             type=
'TEfficiency',cutmask=
'roi_forward',path=trigPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  427     myGroup.defineHistogram(
'roi_bw3coin,roi_eta_tgc;MuonRoI_Eff_Eta_wBW3Coin_ThrAll',title=
'MuonRoI Eff Eta wBW3Coin ThrAll;MuonRoI Eta;Efficiency',
 
  428                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  429     myGroup.defineHistogram(
'roi_bw3coin,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wBW3Coin_ThrAll',title=
'MuonRoI Eff Phi TGC wBW3Coin ThrAll;MuonRoI Phi;Efficiency',
 
  430                             type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  431     myGroup.defineHistogram(
'roi_bw3coin,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wBW3Coin_ThrAll',title=
'MuonRoI Eff Eta vs Phi wBW3Coin ThrAll;MuonRoI Eta;MuonRoI Phi',
 
  432                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  433     myGroup.defineHistogram(
'roi_bw3coin,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wBW3Coin_Endcap_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wBW3Coin Endcap ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  434                             type=
'TEfficiency',cutmask=
'roi_endcap',path=trigPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  435     myGroup.defineHistogram(
'roi_bw3coin,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wBW3Coin_Forward_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wBW3Coin Forward ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  436                             type=
'TEfficiency',cutmask=
'roi_forward',path=trigPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  438     myGroup.defineHistogram(
'roi_bw3coinveto,roi_eta_tgc;MuonRoI_Eff_Eta_wBW3CoinVeto_ThrAll',title=
'MuonRoI Eff Eta wBW3CoinVeto ThrAll;MuonRoI Eta;Efficiency',
 
  439                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  440     myGroup.defineHistogram(
'roi_bw3coinveto,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wBW3CoinVeto_ThrAll',title=
'MuonRoI Eff Phi TGC wBW3CoinVeto ThrAll;MuonRoI Phi;Efficiency',
 
  441                             type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  442     myGroup.defineHistogram(
'roi_bw3coinveto,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wBW3CoinVeto_ThrAll',title=
'MuonRoI Eff Eta vs Phi wBW3CoinVeto ThrAll;MuonRoI Eta;MuonRoI Phi',
 
  443                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  444     myGroup.defineHistogram(
'roi_bw3coinveto,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wBW3CoinVeto_Endcap_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wBW3CoinVeto Endcap ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  445                             type=
'TEfficiency',cutmask=
'roi_endcap',path=trigPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  446     myGroup.defineHistogram(
'roi_bw3coinveto,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wBW3CoinVeto_Forward_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wBW3CoinVeto Forward ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  447                             type=
'TEfficiency',cutmask=
'roi_forward',path=trigPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  449     myGroup.defineHistogram(
'roi_goodmf,roi_eta_tgc;MuonRoI_Eff_Eta_wGoodMF_ThrAll',title=
'MuonRoI Eff Eta wGoodMF ThrAll;MuonRoI Eta;Efficiency',
 
  450                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  451     myGroup.defineHistogram(
'roi_goodmf,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wGoodMF_ThrAll',title=
'MuonRoI Eff Phi TGC wGoodMF ThrAll;MuonRoI Phi;Efficiency',
 
  452                             type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  453     myGroup.defineHistogram(
'roi_goodmf,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wGoodMF_ThrAll',title=
'MuonRoI Eff Eta vs Phi wGoodMF ThrAll;MuonRoI Eta;MuonRoI Phi',
 
  454                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  455     myGroup.defineHistogram(
'roi_goodmf,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wGoodMF_Endcap_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wGoodMF Endcap ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  456                             type=
'TEfficiency',cutmask=
'roi_endcap',path=trigPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  457     myGroup.defineHistogram(
'roi_goodmf,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wGoodMF_Forward_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wGoodMF Forward ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  458                             type=
'TEfficiency',cutmask=
'roi_forward',path=trigPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  460     myGroup.defineHistogram(
'roi_badmf,roi_eta_tgc;MuonRoI_Eff_Eta_wBadMF_ThrAll',title=
'MuonRoI Eff Eta wBadMF ThrAll;MuonRoI Eta;Efficiency',
 
  461                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  462     myGroup.defineHistogram(
'roi_badmf,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wBadMF_ThrAll',title=
'MuonRoI Eff Phi TGC wBadMF ThrAll;MuonRoI Phi;Efficiency',
 
  463                             type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  464     myGroup.defineHistogram(
'roi_badmf,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wBadMF_ThrAll',title=
'MuonRoI Eff Eta vs Phi wBadMF ThrAll;MuonRoI Eta;MuonRoI Phi',
 
  465                             type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  466     myGroup.defineHistogram(
'roi_badmf,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wBadMF_Endcap_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wBadMF Endcap ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  467                             type=
'TEfficiency',cutmask=
'roi_endcap',path=trigPath,xbins=149,xmin=-0.5,xmax=148.5,ybins=97,ymin=-48.5,ymax=48.5)
 
  468     myGroup.defineHistogram(
'roi_badmf,roi_roiNumber,roi_sector;MuonRoI_Eff_SectorVsRoINumber_wBadMF_Forward_ThrAll',title=
'MuonRoI Eff SectorVsRoINumber wBadMF Forward ThrAll;RoI Number;MuonRoI Trigger Sector +1  (>0 for A, <0 for C)',
 
  469                             type=
'TEfficiency',cutmask=
'roi_forward',path=trigPath,xbins=65,xmin=-0.5,xmax=64.5,ybins=49,ymin=-24.5,ymax=24.5)
 
  473     myGroup.defineHistogram(
'roi_bw3coin;MuonRoI_Evt_BW3Coin',title=
'MuonRoI BW3Coin Flag;BW3Coin Flag;Number of events',
 
  474                             cutmask=
'roi_tgc',path=trigPath,xbins=2,xmin=-0.5,xmax=1.5)
 
  475     myGroup.defineHistogram(
'muon_l1passBW3Coin,muon_eta4gev,muon_phi4gev;MuonRoI_Eff_EtaVsPhi_BW3Coin',title=
'MuonRoI_Eff_EtaVsPhi_BW3Coin;Offline muon eta; Offline muon phi',
 
  476                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  477     myGroup.defineHistogram(
'muon_l1passBW3Coin,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_BW3Coin',title=
'MuonRoI_Eff_Pt_TGC_BW3Coin;Offline muon pT [GeV];Efficiency',
 
  478                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  479     myGroup.defineHistogram(
'muon_l1passBW3Coin,muon_eta4gev;MuonRoI_Eff_Eta_BW3Coin',title=
'MuonRoI_Eff_Eta_BW3Coin;Offline muon eta; Efficiency',
 
  480                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  481     myGroup.defineHistogram(
'muon_l1passBW3Coin,muon_phi4gev_tgc;MuonRoI_Eff_Phi_TGC_BW3Coin',title=
'MuonRoI_Eff_Phi_TGC_BW3Coin;Offline muon phi; Efficiency',
 
  482                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,ymax=math.pi)
 
  483     myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_BW3Coin',type=
'TH2F',
 
  484                             title=
'MuonRoI Eta vs Phi BW3Coin;MuonRoI Eta;MuonRoI Phi',cutmask=
'roi_bw3coin',path=trigPath,
 
  485                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  486     myGroup.defineHistogram(
'roi_thr,roi_bw3coin;MuonRoI_Evt_ThrVsBW3Coin',type=
'TH2F',
 
  487                             title=
'MuonRoI Thr vs BW3Coin;MuonRoI Thresholds;MuonRoI BW3Coin',cutmask=
'roi_tgc',path=trigPath,
 
  488                             xbins=20,xmin=-0.5,xmax=19.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  490     myGroup.defineHistogram(
'roi_bw3coinveto;MuonRoI_Evt_BW3CoinVeto',title=
'MuonRoI BW3CoinVeto Flag;BW3CoinVeto Flag;Number of events',
 
  491                             cutmask=
'roi_tgc',path=trigPath,xbins=2,xmin=-0.5,xmax=1.5)
 
  492     myGroup.defineHistogram(
'muon_l1passBW3CoinVeto,muon_eta4gev,muon_phi4gev;MuonRoI_Eff_EtaVsPhi_BW3CoinVeto',title=
'MuonRoI_Eff_EtaVsPhi_BW3CoinVeto;Offline muon eta; Offline muon phi',
 
  493                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  494     myGroup.defineHistogram(
'muon_l1passBW3CoinVeto,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_BW3CoinVeto',title=
'MuonRoI_Eff_Pt_TGC_BW3CoinVeto;Offline muon pT [GeV];Efficiency',
 
  495                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  496     myGroup.defineHistogram(
'muon_l1passBW3CoinVeto,muon_eta4gev;MuonRoI_Eff_Eta_BW3CoinVeto',title=
'MuonRoI_Eff_Eta_BW3CoinVeto;Offline muon eta; Efficiency',
 
  497                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  498     myGroup.defineHistogram(
'muon_l1passBW3CoinVeto,muon_phi4gev_tgc;MuonRoI_Eff_Phi_TGC_BW3CoinVeto',title=
'MuonRoI_Eff_Phi_TGC_BW3CoinVeto;Offline muon phi; Efficiency',
 
  499                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  500     myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_BW3CoinVeto',type=
'TH2F',
 
  501                             title=
'MuonRoI Eta vs Phi BW3CoinVeto;MuonRoI Eta;MuonRoI Phi',cutmask=
'roi_bw3coinveto',path=trigPath,
 
  502                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  503     myGroup.defineHistogram(
'roi_thr,roi_bw3coinveto;MuonRoI_Evt_ThrVsBW3CoinVeto',type=
'TH2F',
 
  504                             title=
'MuonRoI Thr vs BW3CoinVeto;MuonRoI Thresholds;MuonRoI BW3CoinVeto',cutmask=
'roi_tgc',path=trigPath,
 
  505                             xbins=20,xmin=-0.5,xmax=19.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  507     myGroup.defineHistogram(
'roi_innercoin;MuonRoI_Evt_InnerCoin',title=
'MuonRoI InnerCoin Flag;InnerCoin Flag;Number of events',
 
  508                             cutmask=
'roi_tgc',path=trigPath,xbins=2,xmin=-0.5,xmax=1.5)
 
  509     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_eta4gev,muon_phi4gev;MuonRoI_Eff_EtaVsPhi_InnerCoin',title=
'MuonRoI_Eff_EtaVsPhi_InnerCoin;Offline muon eta; Offline muon phi',
 
  510                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  511     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_InnerCoin',title=
'MuonRoI_Eff_Pt_TGC_InnerCoin;Offline muon pT [GeV];Efficiency',
 
  512                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  513     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_eta4gev;MuonRoI_Eff_Eta_InnerCoin',title=
'MuonRoI_Eff_Eta_InnerCoin;Offline muon Eta;Efficiency',
 
  514                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  515     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_phi4gev_tgc;MuonRoI_Eff_Phi_TGC_InnerCoin',title=
'MuonRoI_Eff_Phi_TGC_InnerCoin;Offline muon Phi;Efficiency',
 
  516                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  517     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_phi4gev_1p05eta1p3;MuonRoI_Eff_Phi_TGC_1p05eta1p3_InnerCoin',title=
'MuonRoI_Eff_Phi_TGC_1p05eta1p3_InnerCoin;Offline muon Phi;Efficiency',
 
  518                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  519     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_phi4gev_1p05eta1p3A;MuonRoI_Eff_Phi_TGC_1p05eta1p3A_InnerCoin',title=
'MuonRoI_Eff_Phi_TGC_1p05eta1p3A_InnerCoin;Offline muon Phi;Efficiency',
 
  520                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  521     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_phi4gev_1p05eta1p3C;MuonRoI_Eff_Phi_TGC_1p05eta1p3C_InnerCoin',title=
'MuonRoI_Eff_Phi_TGC_1p05eta1p3C_InnerCoin;Offline muon Phi;Efficiency',
 
  522                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  523     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_phi4gev_1p3eta2p4;MuonRoI_Eff_Phi_TGC_1p3eta2p4_InnerCoin',title=
'MuonRoI_Eff_Phi_TGC_1p3eta2p4_InnerCoin;Offline muon Phi;Efficiency',
 
  524                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  525     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_phi4gev_1p3eta2p4A;MuonRoI_Eff_Phi_TGC_1p3eta2p4A_InnerCoin',title=
'MuonRoI_Eff_Phi_TGC_1p3eta2p4A_InnerCoin;Offline muon Phi;Efficiency',
 
  526                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  527     myGroup.defineHistogram(
'muon_l1passInnerCoin,muon_phi4gev_1p3eta2p4C;MuonRoI_Eff_Phi_TGC_1p3eta2p4C_InnerCoin',title=
'MuonRoI_Eff_Phi_TGC_1p3eta2p4C_InnerCoin;Offline muon Phi;Efficiency',
 
  528                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  529     myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_InnerCoin',type=
'TH2F',
 
  530                             title=
'MuonRoI Eta vs Phi InnerCoin;MuonRoI Eta;MuonRoI Phi',cutmask=
'roi_innercoin',path=trigPath,
 
  531                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  532     myGroup.defineHistogram(
'roi_thr,roi_innercoin;MuonRoI_Evt_ThrVsInnerCoin',type=
'TH2F',
 
  533                             title=
'MuonRoI Thr vs InnerCoin;MuonRoI Thresholds;MuonRoI InnerCoin',cutmask=
'roi_tgc',path=trigPath,
 
  534                             xbins=20,xmin=-0.5,xmax=19.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  536     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_sideA;MuonRoI_Evt_PhiVsLB_wInnerCoinEtaUpTo1p3_sideA',title=
'MuonRoI PhiVsLB wInnerCoinEtaUpTo1p3 sideA;Luminosity block;MuonRoI Phi',
 
  537                             type=
'TH2F',cutmask=
'roi_wInnerCoinEtaUpTo1p3',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  538     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_sideA;MuonRoI_Evt_PhiVsLB_wInnerCoinEtaBeyond1p3_sideA',title=
'MuonRoI PhiVsLB wInnerCoinEtaBeyond1p3 sideA;Luminosity block;MuonRoI Phi',
 
  539                             type=
'TH2F',cutmask=
'roi_wInnerCoinEtaBeyond1p3',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  540     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_sideC;MuonRoI_Evt_PhiVsLB_wInnerCoinEtaUpTo1p3_sideC',title=
'MuonRoI PhiVsLB wInnerCoinEtaUpTo1p3 sideC;Luminosity block;MuonRoI Phi',
 
  541                             type=
'TH2F',cutmask=
'roi_wInnerCoinEtaUpTo1p3',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  542     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_sideC;MuonRoI_Evt_PhiVsLB_wInnerCoinEtaBeyond1p3_sideC',title=
'MuonRoI PhiVsLB wInnerCoinEtaBeyond1p3 sideC;Luminosity block;MuonRoI Phi',
 
  543                             type=
'TH2F',cutmask=
'roi_wInnerCoinEtaBeyond1p3',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  545     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_wBW3Coin_sideA;MuonRoI_Evt_PhiVsLB_wBW3Coin_Endcap_sideA',title=
'MuonRoI PhiVsLB wBW3Coin Endcap sideA;Luminosity block;MuonRoI Phi',
 
  546                             type=
'TH2F',cutmask=
'roi_endcap',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  547     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_wBW3Coin_sideA;MuonRoI_Evt_PhiVsLB_wBW3Coin_Forward_sideA',title=
'MuonRoI PhiVsLB wBW3Coin Forward sideA;Luminosity block;MuonRoI Phi',
 
  548                             type=
'TH2F',cutmask=
'roi_forward',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=24,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  549     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_wBW3Coin_sideC;MuonRoI_Evt_PhiVsLB_wBW3Coin_Endcap_sideC',title=
'MuonRoI PhiVsLB wBW3Coin Endcap sideC;Luminosity block;MuonRoI Phi',
 
  550                             type=
'TH2F',cutmask=
'roi_endcap',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  551     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_wBW3Coin_sideC;MuonRoI_Evt_PhiVsLB_wBW3Coin_Forward_sideC',title=
'MuonRoI PhiVsLB wBW3Coin Forward sideC;Luminosity block;MuonRoI Phi',
 
  552                             type=
'TH2F',cutmask=
'roi_forward',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=24,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  554     myGroup.defineHistogram(
'roi_innveto;MuonRoI_Evt_InnerCoinVeto',title=
'MuonRoI InnerCoinVeto Flag;InnerCoinVeto Flag;Number of events',
 
  555                             cutmask=
'roi_tgc',path=trigPath,xbins=2,xmin=-0.5,xmax=1.5)
 
  556     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_eta4gev,muon_phi4gev;MuonRoI_Eff_EtaVsPhi_InnerCoinVeto',title=
'MuonRoI_Eff_EtaVsPhi_InnerCoinVeto;Offline muon eta; Offline muon phi',
 
  557                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  558     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_InnerCoinVeto',title=
'MuonRoI_Eff_Pt_TGC_InnerCoinVeto;Offline muon pT [GeV];Efficiency',
 
  559                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  560     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_eta4gev;MuonRoI_Eff_Eta_InnerCoinVeto',title=
'MuonRoI_Eff_Eta_InnerCoinVeto;Offline muon Eta;Efficiency',
 
  561                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  562     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_phi4gev_tgc;MuonRoI_Eff_Phi_TGC_InnerCoinVeto',title=
'MuonRoI_Eff_Phi_TGC_InnerCoinVeto;Offline muon Phi;Efficiency',
 
  563                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  564     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_phi4gev_1p05eta1p3;MuonRoI_Eff_Phi_TGC_1p05eta1p3_InnerCoinVeto',title=
'MuonRoI_Eff_Phi_TGC_1p05eta1p3_InnerCoinVeto;Offline muon Phi;Efficiency',
 
  565                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  566     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_phi4gev_1p05eta1p3A;MuonRoI_Eff_Phi_TGC_1p05eta1p3A_InnerCoinVeto',title=
'MuonRoI_Eff_Phi_TGC_1p05eta1p3A_InnerCoinVeto;Offline muon Phi;Efficiency',
 
  567                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  568     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_phi4gev_1p05eta1p3C;MuonRoI_Eff_Phi_TGC_1p05eta1p3C_InnerCoinVeto',title=
'MuonRoI_Eff_Phi_TGC_1p05eta1p3C_InnerCoinVeto;Offline muon Phi;Efficiency',
 
  569                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  570     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_phi4gev_1p3eta2p4;MuonRoI_Eff_Phi_TGC_1p3eta2p4_InnerCoinVeto',title=
'MuonRoI_Eff_Phi_TGC_1p3eta2p4_InnerCoinVeto;Offline muon Phi;Efficiency',
 
  571                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  572     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_phi4gev_1p3eta2p4A;MuonRoI_Eff_Phi_TGC_1p3eta2p4A_InnerCoinVeto',title=
'MuonRoI_Eff_Phi_TGC_1p3eta2p4A_InnerCoinVeto;Offline muon Phi;Efficiency',
 
  573                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  574     myGroup.defineHistogram(
'muon_l1passInnerCoinVeto,muon_phi4gev_1p3eta2p4C;MuonRoI_Eff_Phi_TGC_1p3eta2p4C_InnerCoinVeto',title=
'MuonRoI_Eff_Phi_TGC_1p3eta2p4C_InnerCoinVeto;Offline muon Phi;Efficiency',
 
  575                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  576     myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_InnerCoinVeto',type=
'TH2F',
 
  577                             title=
'MuonRoI Eta vs Phi InnerCoinVeto;MuonRoI Eta;MuonRoI Phi',cutmask=
'roi_innveto',path=trigPath,
 
  578                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  579     myGroup.defineHistogram(
'roi_thr,roi_innveto;MuonRoI_Evt_ThrVsInnerCoinVeto',type=
'TH2F',
 
  580                             title=
'MuonRoI Thr vs InnerCoinVeto;MuonRoI Thresholds;MuonRoI InnerCoinVeto',cutmask=
'roi_tgc',path=trigPath,
 
  581                             xbins=20,xmin=-0.5,xmax=19.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  583     myGroup.defineHistogram(
'roi_goodmf;MuonRoI_Evt_GoodMF',title=
'MuonRoI GoodMF Flag;GoodMF Flag;Number of events',
 
  584                             cutmask=
'roi_tgc',path=trigPath,xbins=2,xmin=-0.5,xmax=1.5)
 
  585     myGroup.defineHistogram(
'muon_l1passGoodMF,muon_eta4gev,muon_phi4gev;MuonRoI_Eff_EtaVsPhi_GoodMF',title=
'MuonRoI_Eff_EtaVsPhi_GoodMF;Offline muon eta; Offline muon phi',
 
  586                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  587     myGroup.defineHistogram(
'muon_l1passGoodMF,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_GoodMF',title=
'MuonRoI_Eff_Pt_TGC_GoodMF;Offline muon pT [GeV];Efficiency',
 
  588                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  589     myGroup.defineHistogram(
'muon_l1passGoodMF,muon_eta4gev;MuonRoI_Eff_Eta_GoodMF',title=
'MuonRoI_Eff_Eta_GoodMF;Offline muon eta; Efficiency',
 
  590                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  591     myGroup.defineHistogram(
'muon_l1passGoodMF,muon_phi4gev_tgc;MuonRoI_Eff_Phi_TGC_GoodMF',title=
'MuonRoI_Eff_Phi_TGC_GoodMF;Offline muon phi; Efficiency',
 
  592                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  593     myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_GoodMF',type=
'TH2F',
 
  594                             title=
'MuonRoI Eta vs Phi GoodMF;MuonRoI Eta;MuonRoI Phi',cutmask=
'roi_goodmf',path=trigPath,
 
  595                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  596     myGroup.defineHistogram(
'roi_thr,roi_goodmf;MuonRoI_Evt_ThrVsGoodMF',type=
'TH2F',
 
  597                             title=
'MuonRoI Thr vs GoodMF;MuonRoI Thresholds;MuonRoI GoodMF',cutmask=
'roi_tgc',path=trigPath,
 
  598                             xbins=20,xmin=-0.5,xmax=19.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  600     myGroup.defineHistogram(
'roi_badmf;MuonRoI_Evt_BadMF',title=
'MuonRoI BadMF Flag;BadMF Flag;Number of events',
 
  601                             cutmask=
'roi_tgc',path=trigPath,xbins=2,xmin=-0.5,xmax=1.5)
 
  602     myGroup.defineHistogram(
'muon_l1passBadMF,muon_eta4gev,muon_phi4gev;MuonRoI_Eff_EtaVsPhi_BadMF',title=
'MuonRoI_Eff_EtaVsPhi_BadMF;Offline muon eta; Offline muon phi',
 
  603                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  604     myGroup.defineHistogram(
'muon_l1passBadMF,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_BadMF',title=
'MuonRoI_Eff_Pt_TGC_BadMF;Offline muon pT [GeV];Efficiency',
 
  605                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  606     myGroup.defineHistogram(
'muon_l1passBadMF,muon_eta4gev;MuonRoI_Eff_Eta_BadMF',title=
'MuonRoI_Eff_Eta_BadMF;Offline muon eta; Efficiency',
 
  607                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  608     myGroup.defineHistogram(
'muon_l1passBadMF,muon_phi4gev_tgc;MuonRoI_Eff_Phi_TGC_BadMF',title=
'MuonRoI_Eff_Phi_TGC_BadMF;Offline muon phi; Efficiency',
 
  609                             cutmask=
'muon_l1passThr1TGC',type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  610     myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_BadMF',type=
'TH2F',
 
  611                             title=
'MuonRoI Eta vs Phi BadMF;MuonRoI Eta;MuonRoI Phi',cutmask=
'roi_badmf',path=trigPath,
 
  612                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  613     myGroup.defineHistogram(
'roi_thr,roi_badmf;MuonRoI_Evt_ThrVsBadMF',type=
'TH2F',
 
  614                             title=
'MuonRoI Thr vs BadMF;MuonRoI Thresholds;MuonRoI BadMF',cutmask=
'roi_tgc',path=trigPath,
 
  615                             xbins=20,xmin=-0.5,xmax=19.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  617     myGroup.defineHistogram(
'roi_ismorecand;MuonRoI_Evt_RpcIsMoreCandInRoI',title=
'MuonRoI RpcIsMoreCandInRoI Flag;RpcIsMoreCandInRoI Flag;Number of events',
 
  618                             cutmask=
'roi_rpc',path=trigPath,xbins=2,xmin=-0.5,xmax=1.5)
 
  619     myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_RpcIsMoreCandInRoI',type=
'TH2F',
 
  620                             title=
'MuonRoI Eta vs Phi RpcIsMoreCandInRoI;MuonRoI Eta;MuonRoI Phi',cutmask=
'roi_ismorecand',path=trigPath,
 
  621                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  622     myGroup.defineHistogram(
'roi_thr,roi_ismorecand;MuonRoI_Evt_ThrVsRpcIsMoreCandInRoI',type=
'TH2F',
 
  623                             title=
'MuonRoI Thr vs RpcIsMoreCandInRoI;MuonRoI Thresholds;MuonRoI RpcIsMoreCandInRoI',cutmask=
'roi_rpc',path=trigPath,
 
  624                             xbins=20,xmin=-0.5,xmax=19.5,ybins=2,ymin=-0.5,ymax=1.5)
 
  626     myGroup.defineHistogram(
'roi_thr;MuonRoI_Evt_Thresholds_RPC',title=
'MuonRoI Thresholds RPC;MuonRoI Threshold number;Number of events',
 
  627                             cutmask=
'roi_rpc',path=trigPath,xbins=20,xmin=-0.5,xmax=19.5)
 
  628     myGroup.defineHistogram(
'roi_thr;MuonRoI_Evt_Thresholds_TGC',title=
'MuonRoI Thresholds TGC;MuonRoI Threshold number;Number of events',
 
  629                             cutmask=
'roi_tgc',path=trigPath,xbins=20,xmin=-0.5,xmax=19.5)
 
  631     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_barrel;MuonRoI_Evt_PhiVsLB_Barrel_sideA',title=
'MuonRoI PhiVsLB Barrel sideA;Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  632                             cutmask=
'roi_sideA',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=32,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  633     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_barrel;MuonRoI_Evt_PhiVsLB_Barrel_sideC',title=
'MuonRoI PhiVsLB Barrel sideC;Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  634                             cutmask=
'roi_sideC',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=32,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  636     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_endcap;MuonRoI_Evt_PhiVsLB_Endcap_sideA',title=
'MuonRoI PhiVsLB Endcap sideA;Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  637                             cutmask=
'roi_sideA',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  638     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_endcap;MuonRoI_Evt_PhiVsLB_Endcap_sideC',title=
'MuonRoI PhiVsLB Endcap sideC;Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  639                             cutmask=
'roi_sideC',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=48,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  641     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_forward;MuonRoI_Evt_PhiVsLB_Forward_sideA',title=
'MuonRoI PhiVsLB Forward sideA;Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  642                             cutmask=
'roi_sideA',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=24,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  643     myGroup.defineHistogram(
'roi_lumiBlock,roi_phi_forward;MuonRoI_Evt_PhiVsLB_Forward_sideC',title=
'MuonRoI PhiVsLB Forward sideC;Luminosity block;MuonRoI Phi',type=
'TH2F',
 
  644                             cutmask=
'roi_sideC',path=trigPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=24,ymin=-math.pi,ymax=math.pi,opt=
'kAddBinsDynamically', merge=
'merge')
 
  647     for n 
in range(1,16):
 
  649         myGroup.defineHistogram(
'roi_eta_wInnerCoin;MuonRoI_Evt_Eta_wInnerCoin_Thr%02d' % n,title=
'MuonRoI Eta wInnerCoin Thr%02d;MuonRoI Eta;Number of events' % n,
 
  650                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  651         myGroup.defineHistogram(
'roi_eta_wBW3Coin;MuonRoI_Evt_Eta_wBW3Coin_Thr%02d' % n,title=
'MuonRoI Eta wBW3Coin Thr%02d;MuonRoI Eta;Number of events' % n,
 
  652                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  654         myGroup.defineHistogram(
'roi_eta_wInnerCoinVeto;MuonRoI_Evt_Eta_wInnerCoinVeto_Thr%02d' % n,title=
'MuonRoI Eta wInnerCoinVeto Thr%02d;MuonRoI Eta;Number of events' % n,
 
  655                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  656         myGroup.defineHistogram(
'roi_eta_wBW3CoinVeto;MuonRoI_Evt_Eta_wBW3CoinVeto_Thr%02d' % n,title=
'MuonRoI Eta wBW3CoinVeto Thr%02d;MuonRoI Eta;Number of events' % n,
 
  657                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  659         myGroup.defineHistogram(
'roi_phi_wInnerCoin;MuonRoI_Evt_Phi_TGC_wInnerCoin_Thr%02d' % n,title=
'MuonRoI Phi TGC wInnerCoin Thr%02d;MuonRoI Phi;Number of events' % n,
 
  660                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  661         myGroup.defineHistogram(
'roi_phi_wBW3Coin;MuonRoI_Evt_Phi_TGC_wBW3Coin_Thr%02d' % n,title=
'MuonRoI Phi TGC wBW3Coin Thr%02d;MuonRoI Phi;Number of events' % n,
 
  662                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  664         myGroup.defineHistogram(
'roi_phi_wInnerCoinVeto;MuonRoI_Evt_Phi_TGC_wInnerCoinVeto_Thr%02d' % n,title=
'MuonRoI Phi TGC wInnerCoinVeto Thr%02d;MuonRoI Phi;Number of events' % n,
 
  665                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  666         myGroup.defineHistogram(
'roi_phi_wBW3CoinVeto;MuonRoI_Evt_Phi_TGC_wBW3CoinVeto_Thr%02d' % n,title=
'MuonRoI Phi TGC wBW3CoinVeto Thr%02d;MuonRoI Phi;Number of events' % n,
 
  667                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  669         myGroup.defineHistogram(
'roi_eta_wInnerCoin,roi_phi_wInnerCoin;MuonRoI_Evt_EtaVsPhi_wInnerCoin_Thr%02d' % n,title=
'MuonRoI Eta vs Phi wInnerCoin Thr%02d;MuonRoI Eta;Number of events' % n,
 
  670                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi,type=
'TH2F')
 
  671         myGroup.defineHistogram(
'roi_eta_wBW3Coin,roi_phi_wBW3Coin;MuonRoI_Evt_EtaVsPhi_wBW3Coin_Thr%02d' % n,title=
'MuonRoI Eta vs Phi wBW3Coin Thr%02d;MuonRoI Eta;Number of events' % n,
 
  672                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi,type=
'TH2F')
 
  674         myGroup.defineHistogram(
'roi_eta_wInnerCoinVeto,roi_phi_wInnerCoinVeto;MuonRoI_Evt_EtaVsPhi_wInnerCoinVeto_Thr%02d' % n,title=
'MuonRoI Eta vs Phi wInnerCoinVeto Thr%02d;MuonRoI Eta;Number of events' % n,
 
  675                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi,type=
'TH2F')
 
  676         myGroup.defineHistogram(
'roi_eta_wBW3CoinVeto,roi_phi_wBW3CoinVeto;MuonRoI_Evt_EtaVsPhi_wBW3CoinVeto_Thr%02d' % n,title=
'MuonRoI Eta vs Phi wBW3CoinVeto Thr%02d;MuonRoI Eta;Number of events' % n,
 
  677                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi,type=
'TH2F')
 
  679         myGroup.defineHistogram(
'roi_eta;MuonRoI_Evt_Eta_Thr%02d' % n,title=
'MuonRoI Eta Thr%02d;MuonRoI Eta;Number of events' % n,
 
  680                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  681         myGroup.defineHistogram(
'roi_eta_rpc;MuonRoI_Evt_Eta_RPC_Thr%02d' % n,title=
'MuonRoI Eta RPC Thr%02d;MuonRoI Eta;Number of events' % n,
 
  682                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  683         myGroup.defineHistogram(
'roi_eta_tgc;MuonRoI_Evt_Eta_TGC_Thr%02d' % n,title=
'MuonRoI Eta TGC Thr%02d;MuonRoI Eta;Number of events' % n,
 
  684                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  685         myGroup.defineHistogram(
'roi_phi_rpc;MuonRoI_Evt_Phi_RPC_Thr%02d' % n,title=
'MuonRoI Phi RPC Thr%02d;MuonRoI Phi;Number of events' % n,
 
  686                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=32,xmin=-math.pi,xmax=math.pi)
 
  687         myGroup.defineHistogram(
'roi_phi_tgc;MuonRoI_Evt_Phi_TGC_Thr%02d' % n,title=
'MuonRoI Phi TGC Thr%02d;MuonRoI Phi;Number of events' % n,
 
  688                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  689         myGroup.defineHistogram(
'roi_eta,roi_phi;MuonRoI_Evt_EtaVsPhi_Thr%02d' % n,type=
'TH2F',title=
'MuonRoI Eta vs Phi Thr%02d;MuonRoI Eta;MuonRoI Phi' % n,
 
  690                                 cutmask=
'thrmask'+
str(n),path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  692         myGroup.defineHistogram(
'roi_innercoin,roi_eta_tgc;MuonRoI_Eff_Eta_wInnerCoin_Thr%02d' % n,title=
'MuonRoI Eff Eta wInnerCoin Thr%02d;MuonRoI Eta;Efficiency' % n,
 
  693                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  694         myGroup.defineHistogram(
'roi_innercoin,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wInnerCoin_Thr%02d' % n,title=
'MuonRoI Eff Phi TGC wInnerCoin Thr%02d;MuonRoI Phi;Efficiency' % n,
 
  695                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  696         myGroup.defineHistogram(
'roi_innercoin,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wInnerCoin_Thr%02d' % n,title=
'MuonRoI Eff Eta vs Phi wInnerCoin Thr%02d;MuonRoI Eta;MuonRoI Phi' % n,
 
  697                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  699         myGroup.defineHistogram(
'roi_innveto,roi_eta_tgc;MuonRoI_Eff_Eta_wInnerCoinVeto_Thr%02d' % n,title=
'MuonRoI Eff Eta wInnerCoinVeto Thr%02d;MuonRoI Eta;Efficiency' % n,
 
  700                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  701         myGroup.defineHistogram(
'roi_innveto,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wInnerCoinVeto_Thr%02d' % n,title=
'MuonRoI Eff Phi TGC wInnerCoinVeto Thr%02d;MuonRoI Phi;Efficiency' % n,
 
  702                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  703         myGroup.defineHistogram(
'roi_innveto,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wInnerCoinVeto_Thr%02d' % n,title=
'MuonRoI Eff Eta vs Phi wInnerCoinVeto Thr%02d;MuonRoI Eta;MuonRoI Phi' % n,
 
  704                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  706         myGroup.defineHistogram(
'roi_bw3coin,roi_eta_tgc;MuonRoI_Eff_Eta_wBW3Coin_Thr%02d' % n,title=
'MuonRoI Eff Eta wBW3Coin Thr%02d;MuonRoI Eta;Efficiency' % n,
 
  707                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  708         myGroup.defineHistogram(
'roi_bw3coin,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wBW3Coin_Thr%02d' % n,title=
'MuonRoI Eff Phi TGC wBW3Coin Thr%02d;MuonRoI Phi;Efficiency' % n,
 
  709                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  710         myGroup.defineHistogram(
'roi_bw3coin,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wBW3Coin_Thr%02d' % n,title=
'MuonRoI Eff Eta vs Phi wBW3Coin Thr%02d;MuonRoI Eta;MuonRoI Phi' % n,
 
  711                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  713         myGroup.defineHistogram(
'roi_bw3coinveto,roi_eta_tgc;MuonRoI_Eff_Eta_wBW3CoinVeto_Thr%02d' % n,title=
'MuonRoI Eff Eta wBW3CoinVeto Thr%02d;MuonRoI Eta;Efficiency' % n,
 
  714                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  715         myGroup.defineHistogram(
'roi_bw3coinveto,roi_phi_tgc;MuonRoI_Eff_Phi_TGC_wBW3CoinVeto_Thr%02d' % n,title=
'MuonRoI Eff Phi TGC wBW3CoinVeto Thr%02d;MuonRoI Phi;Efficiency' % n,
 
  716                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  717         myGroup.defineHistogram(
'roi_bw3coinveto,roi_eta_tgc,roi_phi_tgc;MuonRoI_Eff_EtaVsPhi_wBW3CoinVeto_Thr%02d' % n,title=
'MuonRoI Eff Eta vs Phi wBW3CoinVeto Thr%02d;MuonRoI Eta;MuonRoI Phi' % n,
 
  718                                 cutmask=
'thrmask'+
str(n),type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  721         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_rpc;MuonRoI_Eff_Pt_RPC_Thr%02d' % (n,n),title=
'MuonRoI_Eff_Pt_RPC_Thr%02d;Offline muon pT [GeV];Efficiency' % n,
 
  722                                 type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  723         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_Thr%02d' % (n,n),title=
'MuonRoI_Eff_Pt_TGC_Thr%02d;Offline muon pT [GeV];Efficiency' % n,
 
  724                                 type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  725         myGroup.defineHistogram(
'muon_l1passThr%d,muon_phi_rpc;MuonRoI_Eff_Phi_RPC_Thr%02d' % (n,n),title=
'MuonRoI_Eff_Phi_RPC_Thr%02d;Offline muon phi [rad.];Efficiency' % n,
 
  726                                 type=
'TEfficiency',path=trigPath,xbins=32,xmin=-math.pi,xmax=math.pi)
 
  727         myGroup.defineHistogram(
'muon_l1passThr%d,muon_phi_tgc;MuonRoI_Eff_Phi_TGC_Thr%02d' % (n,n),title=
'MuonRoI_Eff_Phi_TGC_Thr%02d;Offline muon phi [rad.];Efficiency' % n,
 
  728                                 type=
'TEfficiency',path=trigPath,xbins=48,xmin=-math.pi,xmax=math.pi)
 
  729         myGroup.defineHistogram(
'muon_l1passThr%d,muon_eta;MuonRoI_Eff_Eta_Thr%02d' % (n,n),title=
'MuonRoI_Eff_Eta_Thr%02d;Offline muon eta;Efficiency' % n,
 
  730                                 type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5)
 
  731         myGroup.defineHistogram(
'muon_l1passThr%d,muon_eta,muon_phi;MuonRoI_Eff_EtaVsPhi_Thr%02d' % (n,n),title=
'MuonRoI_Eff_EtaVsPhi_Thr%02d;Offline muon eta; Offline muon phi' % n,
 
  732                                 type=
'TEfficiency',path=trigPath,xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  734         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc,muon_phi0gev_tgcA;MuonRoI_Eff_PtVsPhi_TGC_Endcap_sideA_Thr%02d' % (n,n),title=
'MuonRoI_Eff_PtVsPhi_TGC_Endcap_sideA_Thr%02d;Offline muon pT [GeV];Offline muon phi;Efficiency' % n,
 
  735                                 cutmask=
'muon_endcap',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  736         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc,muon_phi0gev_tgcA;MuonRoI_Eff_PtVsPhi_TGC_Forward_sideA_Thr%02d' % (n,n),title=
'MuonRoI_Eff_PtVsPhi_TGC_Forward_sideA_Thr%02d;Offline muon pT [GeV];Offline muon phi;Efficiency' % n,
 
  737                                 cutmask=
'muon_forward',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50,ybins=24,ymin=-math.pi,ymax=math.pi)
 
  738         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc,muon_phi0gev_tgcC;MuonRoI_Eff_PtVsPhi_TGC_Endcap_sideC_Thr%02d' % (n,n),title=
'MuonRoI_Eff_PtVsPhi_TGC_Endcap_sideC_Thr%02d;Offline muon pT [GeV];Offline muon phi;Efficiency' % n,
 
  739                                 cutmask=
'muon_endcap',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  740         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc,muon_phi0gev_tgcC;MuonRoI_Eff_PtVsPhi_TGC_Forward_sideC_Thr%02d' % (n,n),title=
'MuonRoI_Eff_PtVsPhi_TGC_Forward_sideC_Thr%02d;Offline muon pT [GeV];Offline muon phi;Efficiency' % n,
 
  741                                 cutmask=
'muon_forward',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50,ybins=24,ymin=-math.pi,ymax=math.pi)
 
  743         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_ChargePos_Thr%02d' % (n,n),title=
'MuonRoI_Eff_Pt_TGC_ChargePos_Thr%02d;Offline muon pT [GeV];Efficiency' % n,
 
  744                                 cutmask=
'muon_chargePos',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  745         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc;MuonRoI_Eff_Pt_TGC_ChargeNeg_Thr%02d' % (n,n),title=
'MuonRoI_Eff_Pt_TGC_ChargeNeg_Thr%02d;Offline muon pT [GeV];Efficiency' % n,
 
  746                                 cutmask=
'muon_chargeNeg',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50)
 
  748         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc,muon_phi0gev_tgcA;MuonRoI_Eff_PtVsPhi_TGC_ChargePos_sideA_Thr%02d' % (n,n),title=
'MuonRoI_Eff_PtVsPhi_TGC_ChargePos_sideA_Thr%02d;Offline muon pT [GeV];Offline muon phi;Efficiency' % n,
 
  749                                 cutmask=
'muon_chargePos',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  750         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc,muon_phi0gev_tgcA;MuonRoI_Eff_PtVsPhi_TGC_ChargeNeg_sideA_Thr%02d' % (n,n),title=
'MuonRoI_Eff_PtVsPhi_TGC_ChargeNeg_sideA_Thr%02d;Offline muon pT [GeV];Offline muon phi;Efficiency' % n,
 
  751                                 cutmask=
'muon_chargeNeg',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  753         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc,muon_phi0gev_tgcC;MuonRoI_Eff_PtVsPhi_TGC_ChargePos_sideC_Thr%02d' % (n,n),title=
'MuonRoI_Eff_PtVsPhi_TGC_ChargePos_sideC_Thr%02d;Offline muon pT [GeV];Offline muon phi;Efficiency' % n,
 
  754                                 cutmask=
'muon_chargePos',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  755         myGroup.defineHistogram(
'muon_l1passThr%d,muon_pt_tgc,muon_phi0gev_tgcC;MuonRoI_Eff_PtVsPhi_TGC_ChargeNeg_sideC_Thr%02d' % (n,n),title=
'MuonRoI_Eff_PtVsPhi_TGC_ChargeNeg_sideC_Thr%02d;Offline muon pT [GeV];Offline muon phi;Efficiency' % n,
 
  756                                 cutmask=
'muon_chargeNeg',type=
'TEfficiency',path=trigPath,xbins=50,xmin=0,xmax=50,ybins=48,ymin=-math.pi,ymax=math.pi)
 
  764     label_glbl_index_sw = []
 
  765     for i 
in range(4) : label_ieta_sw.append(
'')
 
  766     for i 
in range(24) : label_iphi_sw.append(
'')
 
  767     for i 
in range(96) : label_glbl_index_sw.append(
'')
 
  769         for sector 
in range(0,16):
 
  770             for phi 
in range(0,25):
 
  771                 for lay 
in range(1,3):
 
  772                     if eta==0 
and sector!=0:
continue 
  773                     if eta==1 
and phi>2:
continue 
  774                     if eta==1 
and sector==7 
and phi==0:
continue 
  775                     if eta==1 
and sector==11 
and phi==0:
continue 
  776                     if eta==1 
and sector==15 
and phi==0:
continue 
  777                     if eta==1 
and sector%2!=1:
continue 
  778                     eta_index = eta * 2 + lay
 
  782                         phi_index = phi + 
int(sector / 2) + sector
 
  783                     glbl_index = eta * 24*2 + (phi_index - 1) * 2 + lay
 
  785                         label_ieta_sw[eta_index-1] = 
'%s%dL%d' % (
'F' if eta==0 
else 'E',eta,lay)
 
  786                         label_iphi_sw[phi_index-1] = 
'F%df%d' % (sector,phi)
 
  787                         label_glbl_index_sw[glbl_index-1] = 
'F%df%d%s%dL%d' % (sector,phi,
'F' if eta==0 
else 'E',eta,lay)
 
  789                         label_ieta_sw[eta_index-1] = 
'%s%dL%d' % (
'F' if eta==0 
else 'E',eta,lay)
 
  791                             label_iphi_sw[phi_index-1] = 
'E%df%d(%s)' % (sector,phi,label_iphi_sw[phi_index-1])
 
  792                         label_glbl_index_sw[glbl_index-1] = 
'E%df%d%s%dL%d' % (sector,phi,
'F' if eta==0 
else 'E',eta,lay)
 
  795     label_glbl_index_bw1 = []
 
  798     label_glbl_index_bw23 = []
 
  799     label_ieta_online_wire = []
 
  800     label_ieta_online_strip = []
 
  801     label_iphi_online = []
 
  802     label_glbl_index_online = []
 
  804     for sec 
in range(1,13):
 
  807             label_iphi_online.append(
'%02df%d(%d)' % (sec,phi,i))
 
  808     for iM 
in range(1,5):
 
  809         for iEta 
in range(1,7):
 
  810             if iEta>1 
and iM == 4: 
continue 
  811             if iEta>5 
and iM == 1: 
continue 
  812             e_or_f = (
"E%d" % (iEta)) 
if (iEta<=4 
and iM==1) 
or (iEta<=5 
and (iM==2 
or iM==3)) 
or (iM==4) 
else "F" 
  813             for igap 
in range(1,4):
 
  814                 if iM>=2 
and igap>2: 
continue 
  815                 label_ieta_online_wire.append(
'M%d%sL%d' % (iM,e_or_f,igap))
 
  816                 if iM==1 
and igap==2: 
continue 
  817                 label_ieta_online_strip.append(
'M%d%sL%d' % (iM,e_or_f,igap))
 
  818     for isec 
in range(1,13):
 
  819         for ista 
in range(1,4):
 
  820             for iphi 
in range(4):
 
  821                 for ieta 
in range(1,7):
 
  823                         if ieta<=4: Eta=
'E%d' % (ieta)
 
  826                         if ieta<=5: Eta=
'E%d' % (ieta)
 
  828                     for igap 
in range(1,4):
 
  829                         if iphi==0 
and igap==1 
and ieta==1:
 
  830                             label =  
'%02dM%df%d%sL%d' % (isec,ista,iphi,Eta,igap)
 
  833                         label_glbl_index_online.append( label )
 
  834     for iphi 
in range(24):
 
  835         for igap 
in range(1,3):
 
  836             if iphi==0 
and igap==1: label =  
'M4f%dE1L%d' % (iphi+1,igap)
 
  838             label_glbl_index_online.append( label )
 
  840     for i 
in range(15) : label_ieta_bw1.append(
'')
 
  841     for i 
in range(48) : label_iphi_bw1.append(
'')
 
  842     for i 
in range(720) : label_glbl_index_bw1.append(
'')
 
  843     for i 
in range(12) : label_ieta_bw23.append(
'')
 
  844     for i 
in range(48) : label_iphi_bw23.append(
'')
 
  845     for i 
in range(576) : label_glbl_index_bw23.append(
'')
 
  847         for sector 
in range(1,13):
 
  849                 for lay 
in range(1,4):
 
  850                     for station 
in range(1,3):
 
  851                         if station==1 
and eta==5: 
continue 
  852                         if station!=1 
and lay==3: 
continue 
  853                         nlay = 3 
if station==1 
else 2
 
  854                         eta_index = eta * nlay + lay
 
  855                         phi_index = (sector - 1) * 4 + phi + 1
 
  856                         glbl_index = eta * 48*nlay + (phi_index - 1) * nlay + lay
 
  858                             label_ieta_bw1[eta_index-1] = 
'%s%dL%d' % (
'F' if eta==0 
else 'E',eta,lay)
 
  859                             label_iphi_bw1[phi_index-1] = 
'%df%d' % (sector,phi)
 
  860                             label_glbl_index_bw1[glbl_index-1] = 
'%df%d%s%dL%d' % (sector,phi,
'F' if eta==0 
else 'E',eta,lay)
 
  862                             label_ieta_bw23[eta_index-1] = 
'%s%dL%d' % (
'F' if eta==0 
else 'E',eta,lay)
 
  863                             label_iphi_bw23[phi_index-1] = 
'%df%d' % (sector,phi)
 
  864                             label_glbl_index_bw23[glbl_index-1] = 
'%df%d%s%dL%d' % (sector,phi,
'F' if eta==0 
else 'E',eta,lay)
 
  866     label_bw24sectors = []
 
  867     for i 
in range(25) : label_bw24sectors.append(
'')
 
  868     for side 
in [
'A',
'C']:
 
  869         for sector 
in range(1,13):
 
  870             index = 13 + sector 
if side==
'A' else 13 - sector
 
  871             label_bw24sectors[index-1] = 
'%s%02d' % (side,sector)
 
  874     myGroupHit = helper.addGroup(tgcRawDataMonAlg, 
'TgcRawDataMonitor_TgcHit', mainDir)
 
  876     hitEffPath = 
'HitEff/' 
  877     myGroupHit.defineHistogram(
'hit_n;TgcPrd_nHits',title=
'TgcPrd_nHits;Number of hits;Number of events',
 
  878                                path=hitPath,xbins=100,xmin=0,xmax=1000,opt=
'kAddBinsDynamically', merge=
'merge')
 
  879     myGroupHit.defineHistogram(
'hit_bcmask;TgcPrd_Timing',title=
'TgcPrd_Timing;Timing (BC bit mask);Number of events',
 
  880                                path=hitPath,xbins=8,xmin=-0.5,xmax=7.5,xlabels=[
'Undef',
'Next-only',
'Curr-only',
'Curr&Next',
'Prev-only',
'Prev&Next',
'Prev&Curr',
'Prev&Curr&Next'])
 
  882     for opt 
in [
'', 
'_wTrack']:
 
  884         if opt==
'':titlesuffix=
'_All' 
  885         myGroupHit.defineHistogram(
'mon_lb,hit_bw24sectors'+opt+
';TgcPrd_BWSectorsVsLB'+titlesuffix,
 
  886                                    title=
'BWSectorsVsLB'+titlesuffix+
';Luminosity block;',type=
'TH2F',
 
  887                                    path=hitPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=25,ymin=-12.5,ymax=12.5,ylabels=label_bw24sectors,opt=
'kAddBinsDynamically', merge=
'merge')
 
  888         myGroupHit.defineHistogram(
'mon_lb,hit_bw24sectors_strip'+opt+
';TgcPrd_BWSectorsVsLB_Strip'+titlesuffix,
 
  889                                    title=
'BWSectorsVsLB_Strip'+titlesuffix+
';Luminosity block;',type=
'TH2F',
 
  890                                    path=hitPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=25,ymin=-12.5,ymax=12.5,ylabels=label_bw24sectors,opt=
'kAddBinsDynamically', merge=
'merge')
 
  891         myGroupHit.defineHistogram(
'mon_lb,hit_bw24sectors_wire'+opt+
';TgcPrd_BWSectorsVsLB_Wire'+titlesuffix,
 
  892                                    title=
'BWSectorsVsLB_Wire'+titlesuffix+
';Luminosity block;',type=
'TH2F',
 
  893                                    path=hitPath,xbins=100,xmin=-0.5,xmax=99.5,ybins=25,ymin=-12.5,ymax=12.5,ylabels=label_bw24sectors,opt=
'kAddBinsDynamically', merge=
'merge')
 
  894         myGroupHit.defineHistogram(
'hit_bw24sectors'+opt+
',hit_bwtiming'+opt+
';TgcPrd_BWSectorsVsTiming'+titlesuffix,
 
  895                                    title=
'BWSectorsVsTiming'+titlesuffix+
';;Timing',type=
'TH2F',
 
  896                                    path=hitPath,xbins=25,xmin=-12.5,xmax=12.5,xlabels=label_bw24sectors,ybins=3,ymin=-1.5,ymax=1.5,ylabels=[
'Previous',
'Current',
'Next'])
 
  897         myGroupHit.defineHistogram(
'hit_bw24sectors_strip'+opt+
',hit_bwtiming_strip'+opt+
';TgcPrd_BWSectorsVsTiming_Strip'+titlesuffix,
 
  898                                    title=
'BWSectorsVsTiming_Strip'+titlesuffix+
';;Timing',type=
'TH2F',
 
  899                                    path=hitPath,xbins=25,xmin=-12.5,xmax=12.5,xlabels=label_bw24sectors,ybins=3,ymin=-1.5,ymax=1.5,ylabels=[
'Previous',
'Current',
'Next'])
 
  900         myGroupHit.defineHistogram(
'hit_bw24sectors_wire'+opt+
',hit_bwtiming_wire'+opt+
';TgcPrd_BWSectorsVsTiming_Wire'+titlesuffix,
 
  901                                    title=
'BWSectorsVsTiming_Wire'+titlesuffix+
';;Timing',type=
'TH2F',
 
  902                                    path=hitPath,xbins=25,xmin=-12.5,xmax=12.5,xlabels=label_bw24sectors,ybins=3,ymin=-1.5,ymax=1.5,ylabels=[
'Previous',
'Current',
'Next'])
 
  903         myGroupHit.defineHistogram(
'hit_bwfulleta'+opt+
',hit_bw24sectors'+opt+
';TgcPrd_BWSectorsVsEta'+titlesuffix,
 
  904                                    title=
'BWSectorsVsEta'+titlesuffix+
';;',type=
'TH2F',
 
  905                                    path=hitPath,xbins=6,xmin=-0.5,xmax=5.5,xlabels=[
'F',
'E1',
'E2',
'E3',
'E4',
'E5'],ybins=25,ymin=-12.5,ymax=12.5,ylabels=label_bw24sectors)
 
  906         myGroupHit.defineHistogram(
'hit_bwfulleta_strip'+opt+
',hit_bw24sectors_strip'+opt+
';TgcPrd_BWSectorsVsEta_Strip'+titlesuffix,
 
  907                                    title=
'BWSectorsVsEta_Strip'+titlesuffix+
';;',type=
'TH2F',
 
  908                                    path=hitPath,xbins=6,xmin=-0.5,xmax=5.5,xlabels=[
'F',
'E1',
'E2',
'E3',
'E4',
'E5'],ybins=25,ymin=-12.5,ymax=12.5,ylabels=label_bw24sectors)
 
  909         myGroupHit.defineHistogram(
'hit_bwfulleta_wire'+opt+
',hit_bw24sectors_wire'+opt+
';TgcPrd_BWSectorsVsEta_Wire'+titlesuffix,
 
  910                                    title=
'BWSectorsVsEta_Wire'+titlesuffix+
';;',type=
'TH2F',
 
  911                                    path=hitPath,xbins=6,xmin=-0.5,xmax=5.5,xlabels=[
'F',
'E1',
'E2',
'E3',
'E4',
'E5'],ybins=25,ymin=-12.5,ymax=12.5,ylabels=label_bw24sectors)
 
  915     myGroupHit.defineHistogram(
'hit_bcmask_bw24sectors_All,hit_bcmask_for_bw24sectors_All;TgcPrd_BWSectorsVsBCMask_All',
 
  916                                title=
'BWSectorsVsBCMask_All;;',type=
'TH2F',
 
  917                                path=hitPath,xbins=25,xmin=-12.5,xmax=12.5,xlabels=label_bw24sectors,ybins=8,ymin=-0.5,ymax=7.5,ylabels=[
'Undef',
'Next-only',
'Curr-only',
'Curr&Next',
'Prev-only',
'Prev&Next',
'Prev&Curr',
'Prev&Curr&Next'])
 
  918     myGroupHit.defineHistogram(
'hit_bcmask_bw24sectors_Wire,hit_bcmask_for_bw24sectors_Wire;TgcPrd_BWSectorsVsBCMask_Wire',
 
  919                                title=
'BWSectorsVsBCMask_Wire;;',type=
'TH2F',
 
  920                                path=hitPath,xbins=25,xmin=-12.5,xmax=12.5,xlabels=label_bw24sectors,ybins=8,ymin=-0.5,ymax=7.5,ylabels=[
'Undef',
'Next-only',
'Curr-only',
'Curr&Next',
'Prev-only',
'Prev&Next',
'Prev&Curr',
'Prev&Curr&Next'])
 
  921     myGroupHit.defineHistogram(
'hit_bcmask_bw24sectors_Strip,hit_bcmask_for_bw24sectors_Strip;TgcPrd_BWSectorsVsBCMask_Strip',
 
  922                                title=
'BWSectorsVsBCMask_Strip;;',type=
'TH2F',
 
  923                                path=hitPath,xbins=25,xmin=-12.5,xmax=12.5,xlabels=label_bw24sectors,ybins=8,ymin=-0.5,ymax=7.5,ylabels=[
'Undef',
'Next-only',
'Curr-only',
'Curr&Next',
'Prev-only',
'Prev&Next',
'Prev&Curr',
'Prev&Curr&Next'])
 
  925     for side 
in [
'A', 
'C']:
 
  926         for s_or_w 
in [
'S',
'W']:
 
  928             s_or_w_long = 
"wire" if s_or_w == 
"W" else "strip" 
  929             x_name = 
"hit_online_x_%s_%s" % (side,s_or_w_long)
 
  930             y_name = 
"hit_online_y_%s_%s" % (side,s_or_w_long)
 
  931             objname = 
"HitMap_EtaVsPhi_%s_%s" % (side,s_or_w_long)
 
  932             title = 
"HitMap_EtaVsPhi_%s_%s" % (side,s_or_w_long)
 
  933             nbinsx = 36 
if s_or_w == 
"S" else 41
 
  935             label_ieta = label_ieta_online_wire 
if s_or_w == 
"W" else label_ieta_online_strip
 
  936             label_iphi = label_iphi_online
 
  937             myGroupHit.defineHistogram(x_name+
','+y_name+
';'+objname,title=title+
';;',type=
'TH2F',path=hitPath,
 
  938                                        xbins=nbinsx,xmin=0.5,xmax=nbinsx+0.5,ybins=nbinsy,ymin=0.5,ymax=nbinsy+0.5,
 
  939                                        xlabels=label_ieta,ylabels=label_iphi)
 
  940             eff_name = 
"hit_online_effnum_x_%s_%s" % (side,s_or_w_long)
 
  941             x_name = 
"hit_online_effden_x_%s_%s" % (side,s_or_w_long)
 
  942             y_name = 
"hit_online_effden_y_%s_%s" % (side,s_or_w_long)
 
  943             objname = 
"EffMap_EtaVsPhi_%s_%s" % (side,s_or_w_long)
 
  944             title = 
"EffMap_EtaVsPhi_%s_%s" % (side,s_or_w_long)
 
  945             myGroupHit.defineHistogram(eff_name+
','+x_name+
','+y_name+
';'+objname,
 
  946                                        title=title+
';;',type=
'TEfficiency',path=hitEffPath,
 
  947                                        xbins=nbinsx,xmin=0.5,xmax=nbinsx+0.5,xlabels=label_ieta,
 
  948                                        ybins=nbinsy,ymin=0.5,ymax=nbinsy+0.5,ylabels=label_iphi)
 
  949             x_name = 
"hit_online_glblphi_effnum_%s_%s" % (side,s_or_w_long)
 
  950             y_name = 
"hit_online_glblphi_effden_%s_%s" % (side,s_or_w_long)
 
  951             objname = 
"EffMap_GlobalChamberIndex_%s_%s" % (side,s_or_w_long)
 
  952             title = 
"EffMap_GlobalChamberIndex_%s_%s" % (side,s_or_w_long)
 
  954             myGroupHit.defineHistogram(x_name+
','+y_name+
';'+objname,
 
  955                                        title=title+
';;Efficiency',type=
'TEfficiency',path=hitEffPath,
 
  956                                        xbins=nbins,xmin=0.5,xmax=nbins+0.5,xlabels=label_glbl_index_online)
 
  958             y_name = 
"hit_online_glblphi_%s_%s" % (side,s_or_w_long)
 
  959             objname = 
"HitMap_LumiblockVsGlobalChamberIndex_%s_%s" % (side,s_or_w_long)
 
  960             title = 
"HitMap_LumiblockVsGlobalChamberIndex_%s_%s" % (side,s_or_w_long)
 
  961             myGroupHit.defineHistogram(x_name+
','+y_name+
';'+objname,
 
  962                                        title=title+
';LumiBlock;',type=
'TH2F',path=hitPath,xbins=100,xmin=-0.5,xmax=99.5,
 
  963                                        ybins=nbins,ymin=0.5,ymax=nbins+0.5,ylabels=label_glbl_index_online,opt=
'kAddBinsDynamically', merge=
'merge')
 
  964             for station 
in range(1,5):
 
  965                 name = 
"%sM%02i%s" % (side,station,s_or_w) 
 
  967                 label_glbl_index = []
 
  970                     label_glbl_index = label_glbl_index_bw1
 
  971                 elif station==2 
or station==3:
 
  973                     label_glbl_index = label_glbl_index_bw23
 
  976                     label_glbl_index = label_glbl_index_sw
 
  979                 y_name = 
"hit_glblphi_%s" % (name)
 
  980                 objname = 
"TgcPrd_GlobalChamberIndexVsLB_%s" % (name)
 
  981                 title = 
"GlobalChamberIndexVsLB_%s" % (name)
 
  982                 myGroupHit.defineHistogram(x_name+
','+y_name+
';'+objname,
 
  983                                         title=title+
';Luminosity block;',type=
'TH2F',
 
  984                                         path=hitPath,xbins=100,xmin=-0.5,xmax=99.5,
 
  985                                         ybins=nbins,ymin=0.5,ymax=nbins+0.5,ylabels=label_glbl_index,opt=
'kAddBinsDynamically', merge=
'merge')
 
  986                 x_name = 
"hit_glblphi_%s" % (name)
 
  987                 y_name = 
"hit_bunch_%s" % (name)
 
  988                 objname = 
"TgcPrd_GlobalChamberIndexVsTiming_All_%s" % (name)
 
  989                 title = 
"GlobalChamberIndexVsTiming_All_%s" % (name)
 
  990                 myGroupHit.defineHistogram(x_name+
','+y_name+
';'+objname,
 
  991                                            title=title+
';;Timing',type=
'TH2F',
 
  992                                            path=hitPath,xbins=nbins,xmin=0.5,xmax=nbins+0.5,xlabels=label_glbl_index,
 
  993                                            ybins=3,ymin=-1.5,ymax=1.5,ylabels=[
'Previous',
'Current',
'Next'])
 
  994                 x_name = 
"hit_glblphi_wTrack_%s" % (name)
 
  995                 y_name = 
"hit_bunch_wTrack_%s" % (name)
 
  996                 objname = 
"TgcPrd_GlobalChamberIndexVsTiming_wTrack_%s" % (name)
 
  997                 title = 
"GlobalChamberIndexVsTiming_wTrack_%s" % (name)
 
  998                 myGroupHit.defineHistogram(x_name+
','+y_name+
';'+objname,
 
  999                                            title=title+
';;Timing',type=
'TH2F',
 
 1000                                            path=hitPath,xbins=nbins,xmin=0.5,xmax=nbins+0.5,xlabels=label_glbl_index,
 
 1001                                            ybins=3,ymin=-1.5,ymax=1.5,ylabels=[
'Previous',
'Current',
'Next'])
 
 1003                 x_name = 
"hit_glblphi_effnum_%s" % (name)
 
 1004                 y_name = 
"hit_glblphi_effden_%s" % (name)
 
 1005                 objname = 
"TgcPrd_GlobalChamberIndex_Efficiency_%s" % (name)
 
 1006                 title = 
"GlobalChamberIndex_Efficiency_%s" % (name)
 
 1007                 myGroupHit.defineHistogram(x_name+
','+y_name+
';'+objname,
 
 1008                                            title=title+
';;Efficiency',type=
'TEfficiency',
 
 1009                                            path=hitEffPath,xbins=nbins,xmin=0.5,xmax=nbins+0.5,xlabels=label_glbl_index)
 
 1011                 x_name = 
"hit_bcmask_glblphi_%s" % (name)
 
 1012                 y_name = 
"hit_bcmask_%s" % (name)
 
 1013                 objname = 
"TgcPrd_GlobalChamberIndexVsBCMask_%s" % (name)
 
 1014                 title = 
"GlobalChamberIndexVsBCMask_%s" % (name)
 
 1015                 myGroupHit.defineHistogram(x_name+
','+y_name+
';'+objname,
 
 1016                                            title=title+
';;',type=
'TH2F',
 
 1017                                            path=hitPath,xbins=nbins,xmin=0.5,xmax=nbins+0.5,xlabels=label_glbl_index,
 
 1018                                            ybins=8,ymin=-0.5,ymax=7.5,ylabels=[
'Undef',
 
 1035                     label_ieta = label_ieta_bw1
 
 1036                     label_iphi = label_iphi_bw1
 
 1037                 elif station==2 
or station==3:
 
 1040                     label_ieta = label_ieta_bw23
 
 1041                     label_iphi = label_iphi_bw23
 
 1045                     label_ieta = label_ieta_sw
 
 1046                     label_iphi = label_iphi_sw
 
 1048                 x_name = 
"hit_x_%s" % (name)
 
 1049                 y_name = 
"hit_y_%s" % (name)
 
 1050                 objname = 
"TgcPrd_iPhiVsiEta_%s" % (name)
 
 1051                 title = 
"iPhiVsiEta_%s" % (name)
 
 1052                 myGroupHit.defineHistogram(x_name+
','+y_name+
';'+objname,
 
 1053                                            title=title+
';;',type=
'TH2F',path=hitPath,
 
 1054                                            xbins=nbinsx,xmin=0.5,xmax=nbinsx+0.5,xlabels=label_ieta,
 
 1055                                            ybins=nbinsy,ymin=0.5,ymax=nbinsy+0.5,ylabels=label_iphi)
 
 1057                 eff_name = 
"hit_effnum_x_%s" % (name)
 
 1058                 x_name = 
"hit_effden_x_%s" % (name)
 
 1059                 y_name = 
"hit_effden_y_%s" % (name)
 
 1060                 objname = 
"TgcPrd_iPhiVsiEta_Efficiency_%s" % (name)
 
 1061                 title = 
"iPhiVsiEta_Efficiency_%s" % (name)
 
 1062                 myGroupHit.defineHistogram(eff_name+
','+x_name+
','+y_name+
';'+objname,
 
 1063                                            title=title+
';;',type=
'TEfficiency',
 
 1065                                            xbins=nbinsx,xmin=0.5,xmax=nbinsx+0.5,xlabels=label_ieta,
 
 1066                                            ybins=nbinsy,ymin=0.5,ymax=nbinsy+0.5,ylabels=label_iphi)
 
 1070     for side 
in [
'A', 
'C']:
 
 1071         for sector 
in range(0,16):
 
 1072             for station 
in range(1,5):
 
 1073                 for phi 
in range(25):
 
 1074                     for eta 
in range(6):
 
 1075                         for lay 
in range(1,4):
 
 1076                             if station<4 
and (sector>12 
or sector==0):
continue  
 1077                             if station==4 
and eta==0 
and sector!=0:
continue  
 1078                             if station==4 
and eta==1 
and sector%2==0:
continue  
 1079                             if station==4 
and eta==0 
and phi==0:
continue  
 1080                             if (station<4 
or (station==4 
and eta==1)) 
and phi>3: 
continue  
 1081                             if station==1 
and eta==5:
continue  
 1082                             if station==4 
and eta>1:
continue  
 1083                             if station>1 
and lay>2:
continue  
 1084                             for s_or_w 
in [
'S',
'W']:
 
 1085                                 if station==1 
and lay==2 
and s_or_w==
"S":
continue  
 1091                                         if eta==1:     nbins = 24
 
 1092                                         elif eta==2:   nbins = 23
 
 1094                                             if lay==1: nbins = 61
 
 1097                                             if lay==1: nbins = 92
 
 1100                                             if lay==2: nbins = 104
 
 1103                                         if eta==1 
or eta==2 
or eta==3: nbins = 32
 
 1104                                         elif eta==4:                   nbins = 103
 
 1105                                         elif eta==5:                   nbins = 110
 
 1108                                         if eta==1:   nbins = 31
 
 1109                                         elif eta==2: nbins = 30
 
 1110                                         elif eta==3: nbins = 32
 
 1111                                         elif eta==4: nbins = 106
 
 1112                                         elif eta==5: nbins = 96
 
 1116                                             if (sector==1 
and phi==0) 
or (sector==1 
and phi==2) 
or (sector==9 
and phi==0) 
or (sector==9 
and phi==2) 
or sector==11 
or sector==15:
 
 1122                                 if doGapByGapHitOcc:
 
 1123                                     chamber_name = 
"%s%02dM%02df%02d%s%02dL%02d%s" % (side,sector,station,phi,
'F' if eta==0 
else 'E',eta,lay,s_or_w)
 
 1124                                     objname = 
'TgcPrd_ChannelOccupancy_'+ chamber_name
 
 1125                                     title = 
'Occ_'+chamber_name
 
 1126                                     myGroupHit.defineHistogram(
'hit_on_'+chamber_name+
';'+objname,
 
 1127                                                                title=title+
';Channel ID;Number of events',
 
 1128                                                                path=
"GapByGapHits/",xbins=nbins,xmin=0.5,xmax=nbins+0.5)
 
 1130                                 if doGapByGapEffMap:
 
 1131                                     objname = 
'TgcPrd_GapByGapEffMap_' + chamber_name
 
 1132                                     title = 
'Eff_' + chamber_name
 
 1133                                     objectx = 
'hit_localX_effden_' + chamber_name
 
 1134                                     objecty = 
'hit_localY_effden_' + chamber_name
 
 1135                                     objectz = 
'hit_effnum_' + chamber_name
 
 1136                                     myGroupHit.defineHistogram(objectz+
','+objectx+
','+objecty+
';'+objname,
 
 1137                                                                title=title+
';X [mm];Y [mm]',type=
'TEfficiency',
 
 1138                                                                path=
"GapByGapEffMap/",xbins=100,xmin=-1000,xmax=1000,ybins=100,ymin=-1500,ymax=1500)
 
 1140                                 if lay == 1 
and doHitResiduals:
 
 1141                                     chamber_name = 
"%s%02dM%02df%02d%s%02d%s" % (side,sector,station,phi,
'F' if eta==0 
else 'E',eta,s_or_w)
 
 1142                                     objname = 
'TgcPrd_Residual_' + chamber_name
 
 1143                                     title = 
'Res_'+chamber_name
 
 1144                                     myGroupHit.defineHistogram(
'hit_residual_on_'+chamber_name+
';'+objname,
 
 1145                                                                title=title+
';Residual [mm];Number of events',
 
 1146                                                                path=
"Residuals/",xbins=400,xmin=-1000,xmax=1000)
 
 1154     myGroupCoin = helper.addGroup(tgcRawDataMonAlg, 
'TgcRawDataMonitor_TgcCoin', mainDir)
 
 1156     myGroupCoin.defineHistogram(
'nTgcCoinDetElementIsNull;h_nTgcCoinDetElementIsNull',title=
'nTgcCoinDetElementIsNull',
 
 1157                             path=coinPath,xbins=101,xmin=-0.5,xmax=100.5)
 
 1158     myGroupCoin.defineHistogram(
'nTgcCoinPostOutPtrIsNull;h_nTgcCoinPostOutPtrIsNull',title=
'nTgcCoinPostOutPtrIsNull',
 
 1159                             path=coinPath,xbins=101,xmin=-0.5,xmax=100.5)
 
 1160     myGroupCoin.defineHistogram(
'trigger_sectors_endcap,trigger_multiplicity_endcap;SL_Endcap_TgcCoin_Evt_SectorVsMultiplicity',
 
 1161                                 title=
'SL_Endcap_TgcCoin_Evt_SectorVsMultiplicity;SL Trigger Sector +1  (>0 for A, <0 for C);Multiplicity',
 
 1162                                 path=coinPath,type=
'TH2F',ybins=10,ymin=-0.5,ymax=9.5,xbins=97,xmin=-48.5,xmax=48.5)
 
 1163     myGroupCoin.defineHistogram(
'trigger_sectors_forward,trigger_multiplicity_forward;SL_Forward_TgcCoin_Evt_SectorVsMultiplicity',
 
 1164                                 title=
'SL_Forward_TgcCoin_Evt_SectorVsMultiplicity;SL Trigger Sector +1  (>0 for A, <0 for C);Multiplicity',
 
 1165                                 path=coinPath,type=
'TH2F',ybins=10,ymin=-0.5,ymax=9.5,xbins=49,xmin=-24.5,xmax=24.5)
 
 1167     for Det 
in [
'Eifi',
'Tile',
'Rpc',
'Nsw']:
 
 1169         for Region 
in [
'',
'_Endcap',
'_Forward']:
 
 1170             region = Region.lower()
 
 1171             nrois = 64 
if Region == 
'_Forward' else 148
 
 1172             nsectors = 24 
if Region == 
'_Forward' else 48
 
 1173             rmask_endfwd = 
'coin_inner_tgc_forward' if Region == 
'_Forward' else 'coin_inner_tgc_endcap' 
 1174             rmask_coverage = 
'coin_inner_tgc_etaupto1p3' 
 1176                 if Region == 
'_Endcap':
 
 1177                     rmask_coverage = 
'coin_inner_tgc_etafrom1p3_endcap' 
 1179                     rmask_coverage = 
'coin_inner_tgc_forward' 
 1183                 myGroupCoin.defineHistogram(
'coin_inner_'+det+
'_roiEta,coin_inner_'+det+
'_roiPhi;InnerCoin_Evt2D_'+Det+
'_EtaVsPhi',
 
 1184                                             title=
'InnerCoin_Evt2D_'+Det+
'_EtaVsPhi;RoI Eta;RoI Phi',
 
 1185                                             path=coinPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1186             if (Det != 
'Nsw' and Region == 
'') 
or (Det == 
'Nsw' and Region != 
''):
 
 1187                 myGroupCoin.defineHistogram(
'coin_inner_'+det+
'_roiNum,coin_inner_'+det+
'_slSector'+region+
';InnerCoin_Evt2D_'+Det+Region+
'_SectorVsRoI',
 
 1188                                             title=
'InnerCoin_Evt2D_'+Det+Region+
'_SectorVsRoI;RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1189                                             path=coinPath,type=
'TH2F',ybins=nsectors*2+1,ymin=-1*nsectors-0.5,ymax=nsectors+0.5,xbins=nrois,xmin=-0.5,xmax=nrois-0.5)
 
 1190                 myGroupCoin.defineHistogram(
'coin_inner_'+det+
'_slSector'+region+
',coin_inner_'+det+
'_deltaBcid;InnerCoin_Evt2D_'+Det+Region+
'_SectorVsDeltaBcid',
 
 1191                                             title=
'InnerCoin_Evt2D_'+Det+Region+
'_SectorVsDeltaBcid;SL Trigger Sector +1  (>0 for A, <0 for C);Delta Bcid ('+Det+
' - ATLAS)',
 
 1192                                             path=coinPath,type=
'TH2F',xbins=nsectors*2+1,xmin=-1*nsectors-0.5,xmax=nsectors+0.5,ybins=31,ymin=-15.5,ymax=15.5)
 
 1193                 myGroupCoin.defineHistogram(
'coin_inner_'+det+
'_slSector'+region+
',coin_inner_'+det+
'_deltaTiming;InnerCoin_Evt2D_'+Det+Region+
'_SectorVsDeltaTiming',
 
 1194                                             title=
'InnerCoin_Evt2D_'+Det+Region+
'_SectorVsDeltaTiming;SL Trigger Sector +1  (>0 for A, <0 for C);Delta Signal Timing',
 
 1195                                             path=coinPath,type=
'TH2F',xbins=nsectors*2+1,xmin=-1*nsectors-0.5,xmax=nsectors+0.5,ybins=11,ymin=-5.5,ymax=5.5)
 
 1196                 myGroupCoin.defineHistogram(
'coin_inner_'+det+
'_slSector'+region+
',coin_inner_'+det+
'_deltaBcid;InnerCoin_Evt2D_'+Det+Region+
'_SectorVsDeltaBcid_BcCurr',
 
 1197                                             title=
'InnerCoin_Evt2D_'+Det+Region+
'_SectorVsDeltaBcid_BcCurr;SL Trigger Sector +1  (>0 for A, <0 for C);Delta Bcid ('+Det+
' - ATLAS)',
 
 1198                                             path=coinPath,type=
'TH2F',cutmask=
'coin_inner_'+det+
'_currBc',xbins=nsectors*2+1,xmin=-1*nsectors-0.5,xmax=nsectors+0.5,ybins=31,ymin=-15.5,ymax=15.5)
 
 1199                 myGroupCoin.defineHistogram(
'mon_bcid,coin_inner_'+det+
'_deltaBcid;InnerCoin_Evt2D_'+Det+Region+
'_BcidVsDeltaBcid_BcCurr',
 
 1200                                             title=
'InnerCoin_Evt2D_'+Det+Region+
'_BcidVsDeltaBcid_BcCurr;Bcid;Delta Bcid ('+Det+
' - ATLAS)',
 
 1201                                             path=coinPath,type=
'TH2F',cutmask=
'coin_inner_'+det+region+
'_currBc',xbins=4096,xmin=-0.5,xmax=4095.5,ybins=31,ymin=-15.5,ymax=15.5)
 
 1202                 myGroupCoin.defineHistogram(
'coin_inner_'+det+
'_slSector'+region+
',coin_inner_'+det+
'_deltaTiming;InnerCoin_Evt2D_'+Det+Region+
'_SectorVsDeltaTiming_goodBcid0',
 
 1203                                             title=
'InnerCoin_Evt2D_'+Det+Region+
'_SectorVsDeltaTiming_goodBcid0;SL Trigger Sector +1  (>0 for A, <0 for C);Delta Signal Timing',
 
 1204                                             path=coinPath,type=
'TH2F',cutmask=
'coin_inner_'+det+
'_goodBcid0',xbins=nsectors*2+1,xmin=-1*nsectors-0.5,xmax=nsectors+0.5,ybins=11,ymin=-5.5,ymax=5.5)
 
 1207                 for bcid 
in [
'',
'0',
'1',
'2']:
 
 1208                     goodBcid = 
'_goodBcid'+bcid 
if bcid != 
'' else '' 
 1209                     cmask = 
'coin_inner_'+det+goodBcid 
if bcid != 
'' else '' 
 1210                     myGroupCoin.defineHistogram(
'mon_lb,coin_inner_'+det+
'_slSector_goodTiming'+region+
';InnerCoin_Evt2D_'+Det+Region+
'_SectorVsLB_BcCurr'+goodBcid,
 
 1211                                                 title=
'InnerCoin_Evt2D_'+Det+Region+
'_SectorVsLB_BcCurr'+goodBcid+
';Lumi Block;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1212                                                 path=coinPath,type=
'TH2F',cutmask=cmask,ybins=nsectors*2+1,ymin=-1*nsectors-0.5,ymax=nsectors+0.5,xbins=100,xmin=0.5,xmax=100.5,
 
 1213                                                 opt=
'kAddBinsDynamically', merge=
'merge')
 
 1216             for htype 
in [
'Eff',
'Reduction']:
 
 1217                 fake = 
'_fake' if htype == 
'Reduction' else '' 
 1219                 if (Det != 
'Nsw' and Region == 
'') 
or (Det == 
'Nsw' and Region != 
''):
 
 1220                     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflag'+Det+
',coin_inner_tgc'+fake+
'_sector;InnerCoin_'+htype+
'1D_'+Det+Region+
'_Sector_CoinFlag',
 
 1221                                                 title=
'InnerCoin_'+htype+
'1D_'+Det+Region+
'_Sector_CoinFlag;SL Trigger Sector +1 (>0 for A, <0 for C);Efficiency',
 
 1222                                                 path=coinPath,type=
'TEfficiency',xbins=nsectors*2+1,xmin=-1*nsectors-0.5,xmax=nsectors+0.5,cutmask=rmask_coverage)
 
 1223                     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflag'+Det+
',coin_inner_tgc_roi,coin_inner_tgc'+fake+
'_sector;InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI_CoinFlag',
 
 1224                                                 title=
'InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI_CoinFlag;RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1225                                                 path=coinPath,type=
'TEfficiency',cutmask=rmask_endfwd,ybins=nsectors*2+1,ymin=-1*nsectors-0.5,ymax=nsectors+0.5,xbins=nrois,xmin=-0.5,xmax=nrois-0.5)
 
 1226                     myGroupCoin.defineHistogram(
'coin_inner_tgc_currBc'+Det+
'_goodBcid0,coin_inner_tgc_roi,coin_inner_tgc'+fake+
'_sector;InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI_goodBcid0',
 
 1227                                                 title=
'InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI_goodBcid0;RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1228                                                 path=coinPath,type=
'TEfficiency',cutmask=rmask_endfwd,ybins=nsectors*2+1,ymin=-1*nsectors-0.5,ymax=nsectors+0.5,xbins=nrois,xmin=-0.5,xmax=nrois-0.5)
 
 1229                     myGroupCoin.defineHistogram(
'coin_inner_tgc_currBc'+Det+
',coin_inner_tgc'+fake+
'_sector;InnerCoin_'+htype+
'1D_'+Det+Region+
'_Sector_goodTiming',
 
 1230                                                 title=
'InnerCoin_'+htype+
'1D_'+Det+Region+
'_Sector_goodTiming;SL Trigger Sector +1 (>0 for A, <0 for C);Efficiency',
 
 1231                                                 path=coinPath,type=
'TEfficiency',xbins=nsectors*2+1,xmin=-1*nsectors-0.5,xmax=nsectors+0.5,cutmask=rmask_coverage)
 
 1232                     myGroupCoin.defineHistogram(
'coin_inner_tgc_anyBc'+Det+
',coin_inner_tgc_roi,coin_inner_tgc'+fake+
'_sector;InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI',
 
 1233                                                 title=
'InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI;RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1234                                                 path=coinPath,type=
'TEfficiency',cutmask=rmask_endfwd,ybins=nsectors*2+1,ymin=-1*nsectors-0.5,ymax=nsectors+0.5,xbins=nrois,xmin=-0.5,xmax=nrois-0.5)
 
 1235                     myGroupCoin.defineHistogram(
'coin_inner_tgc_currBc'+Det+
',coin_inner_tgc_roi,coin_inner_tgc'+fake+
'_sector;InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI_goodTiming',
 
 1236                                                 title=
'InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI_goodTiming;RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1237                                                 path=coinPath,type=
'TEfficiency',cutmask=rmask_endfwd,ybins=nsectors*2+1,ymin=-1*nsectors-0.5,ymax=nsectors+0.5,xbins=nrois,xmin=-0.5,xmax=nrois-0.5)
 
 1240                     myGroupCoin.defineHistogram(
'coin_inner_tgc_currBc'+Det+
',coin_inner_tgc'+fake+
'_eta;InnerCoin_'+htype+
'1D_'+Det+
'_Eta_goodTiming',
 
 1241                                                 title=
'InnerCoin_'+htype+
'1D_'+Det+
'_Eta_goodTiming;RoI Eta;Efficiency',
 
 1242                                                 path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5)
 
 1243                     myGroupCoin.defineHistogram(
'coin_inner_tgc_currBc'+Det+
',coin_inner_tgc'+fake+
'_eta,coin_inner_tgc'+fake+
'_phi;InnerCoin_'+htype+
'2D_'+Det+
'_EtaVsPhi_goodTiming',
 
 1244                                                 title=
'InnerCoin_'+htype+
'2D_'+Det+
'_EtaVsPhi_goodTiming;RoI Eta;RoI Phi',
 
 1245                                                 path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1246                     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflag'+Det+
',coin_inner_tgc'+fake+
'_eta,coin_inner_tgc'+fake+
'_phi;InnerCoin_'+htype+
'2D_'+Det+
'_EtaVsPhi_CoinFlag',
 
 1247                                                 title=
'InnerCoin_'+htype+
'2D_'+Det+
'_EtaVsPhi_CoinFlag;RoI Eta;RoI Phi',
 
 1248                                                 path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1249                     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflag'+Det+
',coin_inner_tgc'+fake+
'_eta;InnerCoin_'+htype+
'1D_'+Det+
'_Eta_CoinFlag',
 
 1250                                                 title=
'InnerCoin_'+htype+
'1D_'+Det+
'_Eta_CoinFlag;RoI Eta;Efficiency',
 
 1251                                                 path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5)
 
 1254                 for Bunch 
in [
'Any',
'Prev',
'Curr',
'Next',
'NextNext']:
 
 1255                     bunch = Bunch.lower()
 
 1257                     for bcid 
in [
'',
'0',
'1',
'2']:
 
 1258                         goodBcid = 
'_goodBcid'+bcid 
if bcid != 
'' else '' 
 1259                         if (Det != 
'Nsw' and Region == 
'') 
or (Det == 
'Nsw' and Region != 
''):
 
 1260                             myGroupCoin.defineHistogram(
'coin_inner_tgc_'+bunch+
'Bc'+Det+goodBcid+
',coin_inner_tgc'+fake+
'_sector;InnerCoin_'+htype+
'1D_'+Det+Region+
'_Sector_Bc'+Bunch+goodBcid,
 
 1261                                                         title=
'InnerCoin_'+htype+
'1D_'+Det+Region+
'_Sector_Bc'+Bunch+goodBcid+
';SL Trigger Sector +1  (>0 for A, <0 for C);Efficiency',
 
 1262                                                         path=coinPath,type=
'TEfficiency',cutmask=rmask_coverage,xbins=nsectors*2+1,xmin=-1*nsectors-0.5,xmax=nsectors+0.5)
 
 1263                             myGroupCoin.defineHistogram(
'coin_inner_tgc_'+bunch+
'Bc'+Det+goodBcid+
',coin_inner_tgc_roi,coin_inner_tgc'+fake+
'_sector;InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI_Bc'+Bunch+goodBcid,
 
 1264                                                         title=
'InnerCoin_'+htype+
'2D_'+Det+Region+
'_SectorVsRoI_Bc'+Bunch+goodBcid+
';RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1265                                                         path=coinPath,type=
'TEfficiency',cutmask=rmask_endfwd,ybins=nsectors*2+1,ymin=-1*nsectors-0.5,ymax=nsectors+0.5,xbins=nrois,xmin=-0.5,xmax=nrois-0.5)
 
 1267                             myGroupCoin.defineHistogram(
'coin_inner_tgc_'+bunch+
'Bc'+Det+goodBcid+
',coin_inner_tgc'+fake+
'_eta,coin_inner_tgc'+fake+
'_phi;InnerCoin_'+htype+
'2D_'+Det+
'_EtaVsPhi_Bc'+Bunch+goodBcid,
 
 1268                                                         title=
'InnerCoin_'+htype+
'2D_'+Det+
'_EtaVsPhi_Bc'+Bunch+goodBcid+
';RoI Eta;RoI Phi',
 
 1269                                                         path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1270                             myGroupCoin.defineHistogram(
'coin_inner_tgc_currBc'+Det+goodBcid+
',coin_inner_tgc'+fake+
'_eta;InnerCoin_'+htype+
'1D_'+Det+
'_Eta_Bc'+Bunch+goodBcid,
 
 1271                                                         title=
'InnerCoin_'+htype+
'1D_'+Det+
'_Eta_Bc'+Bunch+goodBcid+
';RoI Eta;Efficiency',
 
 1272                                                         path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5)
 
 1275     for bcmask 
in [
'1',
'2',
'3',
'4',
'5',
'6',
'7']:
 
 1277         if bcmask == 
'1': bcmaskmean = 
'NextOnly' 
 1278         elif bcmask == 
'2': bcmaskmean = 
'CurrOnly' 
 1279         elif bcmask == 
'3': bcmaskmean = 
'CurrAndNextOnly' 
 1280         elif bcmask == 
'4': bcmaskmean = 
'PrevOnly' 
 1281         elif bcmask == 
'5': bcmaskmean = 
'PrevAndNextOnly' 
 1282         elif bcmask == 
'6': bcmaskmean = 
'PrevAndCurrOnly' 
 1283         elif bcmask == 
'7': bcmaskmean = 
'PrevAndCurrAndNext' 
 1284         myGroupCoin.defineHistogram(
'coin_inner_tgc_Nsw_bcmask'+bcmask+
',coin_inner_tgc_eta,coin_inner_tgc_phi;InnerCoin_Eff2D_Nsw_EtaVsPhi_'+bcmaskmean,
 
 1285                                     title=
'InnerCoin_Eff2D_Nsw_EtaVsPhi_'+bcmaskmean+
';RoI Eta;RoI Phi',
 
 1286                                     path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1287         myGroupCoin.defineHistogram(
'coin_inner_tgc_Nsw_bcmask'+bcmask+
',coin_inner_tgc_eta;InnerCoin_Eff1D_Nsw_Eta_'+bcmaskmean,
 
 1288                                     title=
'InnerCoin_Eff1D_Nsw_Eta_'+bcmaskmean+
';RoI Eta;Efficiency',
 
 1289                                     path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5)
 
 1290         for Region 
in [
'Endcap',
'Forward']:
 
 1291             nrois = 64 
if Region == 
'Forward' else 148
 
 1292             nsectors = 24 
if Region == 
'Forward' else 48
 
 1293             rmask_endfwd = 
'coin_inner_tgc_forward' if Region == 
'Forward' else 'coin_inner_tgc_endcap' 
 1294             rmask_coverage = 
'coin_inner_tgc_forward' if Region == 
'Forward' else 'coin_inner_tgc_etafrom1p3_endcap' 
 1295             myGroupCoin.defineHistogram(
'coin_inner_tgc_Nsw_bcmask'+bcmask+
',coin_inner_tgc_sector;InnerCoin_Eff1D_Nsw_'+Region+
'_Sector_'+bcmaskmean,
 
 1296                                         title=
'InnerCoin_Eff1D_Nsw_'+Region+
'_Sector_'+bcmaskmean+
';SL Trigger Sector +1  (>0 for A, <0 for C);Efficiency',
 
 1297                                         path=coinPath,type=
'TEfficiency',cutmask=rmask_coverage,xbins=nsectors*2+1,xmin=-1*nsectors-0.5,xmax=nsectors+0.5)
 
 1298             myGroupCoin.defineHistogram(
'coin_inner_tgc_Nsw_bcmask'+bcmask+
',coin_inner_tgc_roi,coin_inner_tgc_sector;InnerCoin_Eff2D_Nsw_'+Region+
'_SectorVsRoI_'+bcmaskmean,
 
 1299                                         title=
'InnerCoin_Eff2D_Nsw_'+Region+
'_SectorVsRoI_'+bcmaskmean+
';RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1300                                         path=coinPath,type=
'TEfficiency',cutmask=rmask_endfwd,ybins=nsectors*2+1,ymin=-1*nsectors-0.5,ymax=nsectors+0.5,xbins=nrois,xmin=-0.5,xmax=nrois-0.5)
 
 1303     myGroupCoin.defineHistogram(
'coin_inner_tile2_slSector,coin_inner_tile2_tmdbDecisions;InnerCoin_Evt2D_Tile_SectorVsTmdbDecisions',
 
 1304                                 title=
'InnerCoin_Evt2D_Tile_SectorVsTmdbDecisions;SL Trigger Sector +1  (>0 for A, <0 for C);TMDB Module Decisions',
 
 1305                                 path=coinPath,type=
'TH2F',xbins=97,xmin=-48.5,xmax=48.5,ybins=3,ymin=0.5,ymax=3.5,ylabels=[
'D5 only',
'D6 only',
'D5+D6'])
 
 1306     myGroupCoin.defineHistogram(
'coin_inner_tile2_slSector,coin_inner_tile2_tmdbDecisions;InnerCoin_Evt2D_Tile_SectorVsTmdbDecisions_BcCurr',
 
 1307                                 title=
'InnerCoin_Evt2D_Tile_SectorVsTmdbDecisions_BcCurr;SL Trigger Sector +1  (>0 for A, <0 for C);TMDB Module Decisions',
 
 1308                                 path=coinPath,type=
'TH2F',cutmask=
'coin_inner_tile2_currBc',xbins=97,xmin=-48.5,xmax=48.5,ybins=3,ymin=0.5,ymax=3.5,ylabels=[
'D5 only',
'D6 only',
'D5+D6'])
 
 1311     myGroupCoin.defineHistogram(
'coin_inner_nsw_roiEta,coin_inner_nsw_R;InnerCoin_Evt2D_Nsw_RoiEtaVsR',
 
 1312                                 title=
'InnerCoin_Evt2D_Nsw_RoiEtaVsR;SL RoI Eta;NSW R',
 
 1313                                 path=coinPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=251,ymin=-0.5,ymax=250.5)
 
 1314     myGroupCoin.defineHistogram(
'coin_inner_nsw_roiPhi,coin_inner_nsw_Phi;InnerCoin_Evt2D_Nsw_RoiPhiVsPhi',
 
 1315                                 title=
'InnerCoin_Evt2D_Nsw_RoiPhiVsPhi;SL RoI Phi;NSW Phi',
 
 1316                                 path=coinPath,type=
'TH2F',xbins=48*10,xmin=-math.pi,xmax=math.pi,ybins=61,ymin=-0.5,ymax=60.5)
 
 1317     myGroupCoin.defineHistogram(
'coin_inner_nsw_roiEta,coin_inner_nsw_deltaR;InnerCoin_Evt2D_Nsw_RoiEtaVsDeltaR',
 
 1318                                 title=
'InnerCoin_Evt2D_Nsw_RoiEtaVsDeltaR;SL RoI Eta;DeltaR(Nsw - SL)',
 
 1319                                 path=coinPath,type=
'TH2F',xbins=100,xmin=-2.5,xmax=2.5,ybins=1000,ymin=-500,ymax=500)
 
 1324     for side 
in [
'A',
'C']:
 
 1325         label_slnswinput_index = []
 
 1327         for sec 
in range(1,13):
 
 1328             for dup 
in range(2):
 
 1330                 for inp 
in range(6):
 
 1331                     label = 
'%s%02dE%02d-%d' % (side,sec,slid,inp) 
 
 1332                     label_slnswinput_index.append(label)
 
 1333         myGroupCoin.defineHistogram(
'coin_inner_nsw_slInputIndex_'+side+
'Endcap,coin_inner_nsw_deltaBcid;InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsDeltaBcid',
 
 1334                                     title=
'InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsDeltaBcid;;Delta Bcid (Nsw - ATLAS)',
 
 1335                                     path=coinPath,type=
'TH2F',xbins=144,xmin=-0.5,xmax=143.5,xlabels=label_slnswinput_index,ybins=31,ymin=-15.5,ymax=15.5)
 
 1336         myGroupCoin.defineHistogram(
'coin_inner_nsw_slInputIndex_'+side+
'Endcap,coin_inner_nsw_deltaTiming;InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsDeltaTiming',
 
 1337                                     title=
'InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsDeltaTiming;;Delta Signal Timing (Nsw - ATLAS)',
 
 1338                                     path=coinPath,type=
'TH2F',xbins=144,xmin=-0.5,xmax=143.5,xlabels=label_slnswinput_index,ybins=11,ymin=-5.5,ymax=5.5)
 
 1340         myGroupCoin.defineHistogram(
'coin_inner_nsw_slInputIndex_'+side+
'Endcap,coin_inner_nsw_deltaBcid;InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsDeltaBcid_goodTiming',
 
 1341                                     title=
'InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsDeltaBcid_goodTiming;;Delta Bcid (Nsw - ATLAS)',
 
 1342                                     path=coinPath,type=
'TH2F',xbins=144,xmin=-0.5,xmax=143.5,xlabels=label_slnswinput_index,ybins=31,ymin=-15.5,ymax=15.5,cutmask=
'coin_inner_nsw_goodTiming')
 
 1343         myGroupCoin.defineHistogram(
'coin_inner_nsw_slInputIndex_'+side+
'Endcap,coin_inner_nsw_deltaTiming;InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsDeltaTiming_goodBcid0',
 
 1344                                     title=
'InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsDeltaTiming_goodBcid0;;Delta Signal Timing (Nsw - ATLAS)',
 
 1345                                     path=coinPath,type=
'TH2F',xbins=144,xmin=-0.5,xmax=143.5,xlabels=label_slnswinput_index,ybins=11,ymin=-5.5,ymax=5.5,cutmask=
'coin_inner_nsw_goodBcid0')
 
 1347         for bcid 
in [
'0',
'1',
'2']:
 
 1348             myGroupCoin.defineHistogram(
'mon_lb,coin_inner_nsw_slInputIndex_'+side+
'Endcap;InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsLB_NswGoodTimingBcid'+bcid,
 
 1349                                         title=
'InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsLB_NswGoodTimingBcid'+bcid+
';Lumi Block;',cutmask=
'coin_inner_nsw_goodTimingBcid'+bcid,
 
 1350                                         opt=
'kAddBinsDynamically', merge=
'merge',path=coinPath,type=
'TH2F',
 
 1351                                         ybins=144,ymin=-0.5,ymax=143.5,ylabels=label_slnswinput_index,xbins=100,xmin=0.5,xmax=100.5)
 
 1352         for bunch 
in [
'Prev',
'Curr',
'Next',
'NextNext']:
 
 1353             myGroupCoin.defineHistogram(
'mon_lb,coin_inner_nsw_slInputIndex_'+side+
'Endcap;InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsLB_Bc'+bunch,
 
 1354                                         title=
'InnerCoin_Evt2D_Nsw_'+side+
'Endcap_SLInputVsLB_Bc'+bunch+
';Lumi Block;',cutmask=
'coin_inner_nsw_Bc'+bunch,
 
 1355                                         opt=
'kAddBinsDynamically', merge=
'merge',path=coinPath,type=
'TH2F',
 
 1356                                         ybins=144,ymin=-0.5,ymax=143.5,ylabels=label_slnswinput_index,xbins=100,xmin=0.5,xmax=100.5)
 
 1360     for side 
in [
'A',
'C']:
 
 1361         label_slnswinput_index = []
 
 1362         for sec 
in range(1,13):
 
 1363             for inp 
in range(6):
 
 1364                 label = 
'%s%02dF%02d-%d' % (side,sec,sec,inp) 
 
 1365                 label_slnswinput_index.append(label)
 
 1366         myGroupCoin.defineHistogram(
'coin_inner_nsw_slInputIndex_'+side+
'Forward,coin_inner_nsw_deltaBcid;InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsDeltaBcid',
 
 1367                                     title=
'InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsDeltaBcid;;Delta Bcid (Nsw - ATLAS)',
 
 1368                                     path=coinPath,type=
'TH2F',xbins=72,xmin=-0.5,xmax=71.5,xlabels=label_slnswinput_index,ybins=31,ymin=-15.5,ymax=15.5)
 
 1369         myGroupCoin.defineHistogram(
'coin_inner_nsw_slInputIndex_'+side+
'Forward,coin_inner_nsw_deltaTiming;InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsDeltaTiming',
 
 1370                                     title=
'InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsDeltaTiming;;Delta Signal Timing (Nsw - ATLAS)',
 
 1371                                     path=coinPath,type=
'TH2F',xbins=72,xmin=-0.5,xmax=71.5,xlabels=label_slnswinput_index,ybins=11,ymin=-5.5,ymax=5.5)
 
 1373         myGroupCoin.defineHistogram(
'coin_inner_nsw_slInputIndex_'+side+
'Forward,coin_inner_nsw_deltaBcid;InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsDeltaBcid_goodTiming',
 
 1374                                     title=
'InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsDeltaBcid_goodTiming;;Delta Bcid (Nsw - ATLAS)',
 
 1375                                     path=coinPath,type=
'TH2F',xbins=72,xmin=-0.5,xmax=71.5,xlabels=label_slnswinput_index,ybins=31,ymin=-15.5,ymax=15.5,cutmask=
'coin_inner_nsw_goodTiming')
 
 1376         myGroupCoin.defineHistogram(
'coin_inner_nsw_slInputIndex_'+side+
'Forward,coin_inner_nsw_deltaTiming;InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsDeltaTiming_goodBcid0',
 
 1377                                     title=
'InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsDeltaTiming_goodBcid0;;Delta Signal Timing (Nsw - ATLAS)',
 
 1378                                     path=coinPath,type=
'TH2F',xbins=72,xmin=-0.5,xmax=71.5,xlabels=label_slnswinput_index,ybins=11,ymin=-5.5,ymax=5.5,cutmask=
'coin_inner_nsw_goodBcid0')
 
 1380         for bcid 
in [
'0',
'1',
'2']:
 
 1381             myGroupCoin.defineHistogram(
'mon_lb,coin_inner_nsw_slInputIndex_'+side+
'Forward;InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsLB_NswGoodTimingBcid'+bcid,
 
 1382                                         title=
'InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsLB_NswGoodTimingBcid'+bcid+
';Lumi Block;',cutmask=
'coin_inner_nsw_goodTimingBcid'+bcid,
 
 1383                                         opt=
'kAddBinsDynamically', merge=
'merge',path=coinPath,type=
'TH2F',
 
 1384                                         ybins=72,ymin=-0.5,ymax=71.5,ylabels=label_slnswinput_index,xbins=100,xmin=0.5,xmax=100.5)
 
 1385         for bunch 
in [
'Prev',
'Curr',
'Next',
'NextNext']:
 
 1386             myGroupCoin.defineHistogram(
'mon_lb,coin_inner_nsw_slInputIndex_'+side+
'Forward;InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsLB_Bc'+bunch,
 
 1387                                         title=
'InnerCoin_Evt2D_Nsw_'+side+
'Forward_SLInputVsLB_Bc'+bunch+
';Lumi Block;',cutmask=
'coin_inner_nsw_Bc'+bunch,
 
 1388                                         opt=
'kAddBinsDynamically', merge=
'merge',path=coinPath,type=
'TH2F',
 
 1389                                         ybins=72,ymin=-0.5,ymax=71.5,ylabels=label_slnswinput_index,xbins=100,xmin=0.5,xmax=100.5)
 
 1392     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflagC,coin_inner_tgc_roi,coin_inner_tgc_sector;InnerCoin_Eff2D_CoinFlagC_Endcap_SectorVsRoI',
 
 1393                                 title=
'InnerCoin_Eff2D_CoinFlagC_Endcap_SectorVsRoI;RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1394                                 path=coinPath,type=
'TEfficiency',cutmask=
'coin_inner_tgc_endcap',ybins=97,ymin=-48.5,ymax=48.5,xbins=149,xmin=-0.5,xmax=148.5)
 
 1395     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflagC,coin_inner_tgc_roi,coin_inner_tgc_fake_sector;InnerCoin_Reduction2D_CoinFlagC_Endcap_SectorVsRoI',
 
 1396                                 title=
'InnerCoin_Reduction2D_CoinFlagC_Endcap_SectorVsRoI;RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1397                                 path=coinPath,type=
'TEfficiency',cutmask=
'coin_inner_tgc_endcap',ybins=97,ymin=-48.5,ymax=48.5,xbins=149,xmin=-0.5,xmax=148.5)
 
 1399     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflagC,coin_inner_tgc_roi,coin_inner_tgc_sector;InnerCoin_Eff2D_CoinFlagC_Forward_SectorVsRoI',
 
 1400                                 title=
'InnerCoin_Eff2D_CoinFlagC_Forward_SectorVsRoI;RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1401                                 path=coinPath,type=
'TEfficiency',cutmask=
'coin_inner_tgc_forward',ybins=49,ymin=-24.5,ymax=24.5,xbins=65,xmin=-0.5,xmax=64.5)
 
 1402     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflagC,coin_inner_tgc_roi,coin_inner_tgc_fake_sector;InnerCoin_Reduction2D_CoinFlagC_Forward_SectorVsRoI',
 
 1403                                 title=
'InnerCoin_Reduction2D_CoinFlagC_Forward_SectorVsRoI;RoI;SL Trigger Sector +1  (>0 for A, <0 for C)',
 
 1404                                 path=coinPath,type=
'TEfficiency',cutmask=
'coin_inner_tgc_forward',ybins=49,ymin=-24.5,ymax=24.5,xbins=65,xmin=-0.5,xmax=64.5)
 
 1406     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflagC,coin_inner_tgc_eta,coin_inner_tgc_phi;InnerCoin_Eff2D_CoinFlagC_EtaVsPhi',
 
 1407                                 title=
'InnerCoin_Eff2D_CoinFlagC_EtaVsPhi;RoI Eta;RoI Phi',
 
 1408                                 path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1409     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflagC,coin_inner_tgc_fake_eta,coin_inner_tgc_fake_phi;InnerCoin_Reduction2D_CoinFlagC_EtaVsPhi',
 
 1410                                 title=
'InnerCoin_Reduction2D_CoinFlagC_EtaVsPhi;RoI Eta;RoI Phi',
 
 1411                                 path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1413     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflagC,coin_inner_tgc_eta;InnerCoin_Eff1D_CoinFlagC_Eta',
 
 1414                                 title=
'InnerCoin_Eff1D_CoinFlagC_Eta;RoI Eta;Efficiency',
 
 1415                                 path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5)
 
 1416     myGroupCoin.defineHistogram(
'coin_inner_tgc_coinflagC,coin_inner_tgc_fake_eta;InnerCoin_Reduction1D_CoinFlagC_Eta',
 
 1417                                 title=
'InnerCoin_Reduction1D_CoinFlagC_Eta;RoI Eta;Efficiency',
 
 1418                                 path=coinPath,type=
'TEfficiency',xbins=100,xmin=-2.5,xmax=2.5)
 
 1420     for coinType 
in [
'SL',
'HPT',
'LPT',
'EIFI']:
 
 1421         for region 
in [
'',
'Endcap',
'Forward']:
 
 1422             suffix0 = coinType 
if region == 
'' else coinType+
'_'+region
 
 1423             nrois = 148 
if region == 
'Endcap' else 64
 
 1424             nsectors = 48 
if region == 
'Endcap' else 24
 
 1425             for chanType 
in [
'',
'Wire',
'Strip']:
 
 1426                 if coinType == 
'SL' and chanType != 
'': 
continue  
 1427                 if coinType == 
'HPT' and chanType == 
'': 
continue  
 1428                 if coinType == 
'LPT' and chanType == 
'': 
continue  
 1429                 if coinType == 
'EIFI' and chanType == 
'': 
continue  
 1430                 suffix = suffix0+
'_' if chanType == 
'' else suffix0+
'_'+chanType+
'_' 
 1432                 if coinType == 
'SL':
 
 1433                     for thr 
in range(1,16): 
 
 1434                         cut = suffix+
"coin_cutmask_pt"+
str(thr)
 
 1435                         PT = 
"_Thr%02d" % thr
 
 1437                             myGroupCoin.defineHistogram(suffix+
'coin_eta,'+suffix+
'coin_phi;'+suffix+
'TgcCoin_Evt_EtaVsPhi'+PT,
 
 1438                                                     title=suffix+
'TgcCoin_Evt_EtaVsPhi'+PT+
';Eta;Phi',
 
 1439                                                     type=
'TH2F',path=coinPath,cutmask=cut,
 
 1440                                                     xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1442                             myGroupCoin.defineHistogram(suffix+
'coin_roi,'+suffix+
'coin_sector;'+suffix+
'TgcCoin_Evt_SectorVsRoI'+PT,
 
 1443                                                     title=suffix+
'TgcCoin_Evt_SectorVsRoI'+PT+
';RoI;Trigger Sector +1  (>0 for A, <0 for C)',
 
 1444                                                     type=
'TH2F',path=coinPath,cutmask=cut,
 
 1445                                                     xbins=nrois+1,xmin=-0.5,xmax=nrois+0.5,
 
 1446                                                     ybins=nsectors*2+1,ymin=-nsectors-0.5,ymax=nsectors+0.5)
 
 1449                     myGroupCoin.defineHistogram(suffix+
'coin_eta,'+suffix+
'coin_phi;'+suffix+
'TgcCoin_Evt_EtaVsPhi',
 
 1450                                             title=suffix+
'TgcCoin_Evt_EtaVsPhi;Eta;Phi',
 
 1451                                             type=
'TH2F',path=coinPath,
 
 1452                                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1453                     myGroupCoin.defineHistogram(suffix+
'coin_ext_matched,'+suffix+
'coin_ext_eta,'+suffix+
'coin_ext_phi;'+suffix+
'TgcCoin_Eff_EtaVsPhi',
 
 1454                                             title=suffix+
'TgcCoin_Eff_EtaVsPhi;Eta;Phi',
 
 1455                                             type=
'TEfficiency',path=coinPath,
 
 1456                                             xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1457                     if coinType == 
'SL':
 
 1458                         for coinflag 
in [
'Qpos',
'Qneg',
'F',
'C',
'H',
'EI',
'Tile',
'RPC',
'NSW']:
 
 1459                             myGroupCoin.defineHistogram(suffix+
'coin_eta,'+suffix+
'coin_phi;'+suffix+
'TgcCoin_Evt_EtaVsPhi_CoinFlag'+coinflag,
 
 1460                                                         title=suffix+
'TgcCoin_Evt_EtaVsPhi_CoinFlag'+coinflag+
';Eta;Phi',cutmask=suffix+
'coin_CoinFlag'+coinflag,
 
 1461                                                         type=
'TH2F',path=coinPath,
 
 1462                                                         xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1463                         for coinflag 
in [
'Q',
'F',
'C',
'H',
'EI',
'Tile',
'RPC',
'NSW']:
 
 1464                             myGroupCoin.defineHistogram(suffix+
'coin_ext_matched_CoinFlag'+coinflag+
','+suffix+
'coin_ext_matched_eta,'+suffix+
'coin_ext_matched_phi;'+suffix+
'TgcCoin_Eff_EtaVsPhi_CoinFlag'+coinflag,
 
 1465                                                         title=suffix+
'TgcCoin_Eff_EtaVsPhi_CoinFlag'+coinflag+
';Eta;Phi',
 
 1466                                                         type=
'TEfficiency',path=coinPath,
 
 1467                                                         xbins=100,xmin=-2.5,xmax=2.5,ybins=48,ymin=-math.pi,ymax=math.pi)
 
 1470                     myGroupCoin.defineHistogram(suffix+
'coin_sector,'+suffix+
'coin_bunch;'+suffix+
'TgcCoin_Evt_SectorVsTiming',
 
 1471                                             title=suffix+
'TgcCoin_Evt_SectorVsTiming;Trigger Sector +1  (>0 for A, <0 for C);Timing',
 
 1472                                             type=
'TH2F',path=coinPath,
 
 1473                                             xbins=nsectors*2+1,xmin=-nsectors-0.5,xmax=nsectors+0.5,
 
 1474                                             ybins=3,ymin=-1.5,ymax=1.5,ylabels=[
'Previous',
'Current',
'Next'])
 
 1475                     myGroupCoin.defineHistogram(suffix+
'coin_lb,'+suffix+
'coin_sector;'+suffix+
'TgcCoin_Evt_SectorVsLB',
 
 1476                                             title=suffix+
'TgcCoin_Evt_SectorVsLB;LumiBlock;Trigger Sector +1  (>0 for A, <0 for C)',
 
 1477                                             type=
'TH2F',path=coinPath,
 
 1478                                             xbins=100,xmin=0.5,xmax=100.5,opt=
'kAddBinsDynamically', merge=
'merge',
 
 1479                                             ybins=nsectors*2+1,ymin=-nsectors-0.5,ymax=nsectors+0.5)
 
 1481                     if coinType == 
'SL':
 
 1482                         for coinflag 
in [
'EI',
'Tile',
'RPC',
'NSW',
'F',
'C',
'H']:
 
 1483                             if region == 
'Forward' :
 
 1484                                 if coinflag == 
'EI' :
continue 
 1485                                 if coinflag == 
'Tile' :
continue 
 1486                                 if coinflag == 
'RPC' :
continue 
 1487                             myGroupCoin.defineHistogram(suffix+
'coin_roi,'+suffix+
'coin_sector;'+suffix+
'TgcCoin_Evt_SectorVsRoI_CoinFlag'+coinflag,
 
 1488                                                         title=suffix+
'TgcCoin_Evt_SectorVsRoI_CoinFlag'+coinflag+
';RoI;Trigger Sector +1  (>0 for A, <0 for C)',
 
 1489                                                         type=
'TH2F',path=coinPath,cutmask=suffix+
'coin_CoinFlag'+coinflag,
 
 1490                                                         xbins=nrois+1,xmin=-0.5,xmax=nrois+0.5,
 
 1491                                                         ybins=nsectors*2+1,ymin=-nsectors-0.5,ymax=nsectors+0.5)
 
 1492                             if coinflag != 
'H' :
 
 1493                                 myGroupCoin.defineHistogram(suffix+
'coin_lb,'+suffix+
'coin_sector;'+suffix+
'TgcCoin_Evt_SectorVsLB_CoinFlag'+coinflag,
 
 1494                                                             title=suffix+
'TgcCoin_Evt_SectorVsLB_CoinFlag'+coinflag+
';LumiBlock;Trigger Sector +1  (>0 for A, <0 for C)',
 
 1495                                                             type=
'TH2F',path=coinPath,cutmask=suffix+
'coin_CoinFlag'+coinflag,
 
 1496                                                             xbins=100,xmin=0.5,xmax=100.5,opt=
'kAddBinsDynamically', merge=
'merge',
 
 1497                                                             ybins=nsectors*2+1,ymin=-nsectors-0.5,ymax=nsectors+0.5)
 
 1499                         myGroupCoin.defineHistogram(suffix+
'coin_roi,'+suffix+
'coin_sector;'+suffix+
'TgcCoin_Evt_SectorVsRoI',
 
 1500                                                 title=suffix+
'TgcCoin_Evt_SectorVsRoI;RoI;Trigger Sector +1  (>0 for A, <0 for C)',
 
 1501                                                 type=
'TH2F',path=coinPath,
 
 1502                                                 xbins=nrois+1,xmin=-0.5,xmax=nrois+0.5,
 
 1503                                                 ybins=nsectors*2+1,ymin=-nsectors-0.5,ymax=nsectors+0.5)
 
 1504                         myGroupCoin.defineHistogram(suffix+
'coin_veto_roi,'+suffix+
'coin_veto_sector;'+suffix+
'TgcCoin_Evt_SectorVsRoI_wVeto',
 
 1505                                                 title=suffix+
'TgcCoin_Evt_SectorVsRoI_wVeto;RoI;Trigger Sector +1  (>0 for A, <0 for C)',
 
 1506                                                 type=
'TH2F',path=coinPath,
 
 1507                                                 xbins=nrois+1,xmin=-0.5,xmax=nrois+0.5,
 
 1508                                                 ybins=nsectors*2+1,ymin=-nsectors-0.5,ymax=nsectors+0.5)
 
 1509                         myGroupCoin.defineHistogram(suffix+
'coin_sector,'+suffix+
'coin_pt;'+suffix+
'TgcCoin_Evt_SectorVsThr',
 
 1510                                                 title=suffix+
'TgcCoin_Evt_SectorVsThr;Trigger Sector +1  (>0 for A, <0 for C);Threshold',
 
 1511                                                 type=
'TH2F',path=coinPath,
 
 1512                                                 xbins=nsectors*2+1,xmin=-nsectors-0.5,xmax=nsectors+0.5,
 
 1513                                                 ybins=15,ymin=0.5,ymax=15.5)
 
 1514                         myGroupCoin.defineHistogram(suffix+
'coin_sector,'+suffix+
'coin_isPositiveDeltaR;'+suffix+
'TgcCoin_Evt_SectorVsisPositiveDeltaR',
 
 1515                                                 title=suffix+
'TgcCoin_Evt_SectorVsisPositiveDeltaR;Trigger Sector +1  (>0 for A, <0 for C);isPositiveDeltaR',
 
 1516                                                 type=
'TH2F',path=coinPath,
 
 1517                                                 xbins=nsectors*2+1,xmin=-nsectors-0.5,xmax=nsectors+0.5,
 
 1518                                                 ybins=2,ymin=-0.5,ymax=1.5)
 
 1523     acc = helper.result()