def __init__(self, name="TrigVxPrimaryAllTE_Electron_EF", type="electron"): super(InDet__TrigVxPrimaryAllTE, self).__init__(name) from AthenaCommon.AppMgr import ToolSvc from AthenaCommon.GlobalFlags import GlobalFlags from InDetTrigRecExample.InDetTrigFlags import InDetTrigFlags from InDetTrigRecExample.InDetTrigConfigRecLoadToolsPost import InDetTrigPriVxFinderTool self.VertexFinderTool = InDetTrigPriVxFinderTool self.RunWithoutField = False #monitoring from InDetTrigPriVxFinder.InDetTrigPriVxFinderMonitoring import InDetTrigPriVxFinderValidationMonitor from InDetTrigPriVxFinder.InDetTrigPriVxFinderMonitoring import InDetTrigPriVxFinderOnlineMonitor from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig vxtime = TrigTimeHistToolConfig("VxTime") vxtime.TimerHistLimits = [0, 100] from InDetTrigRecExample.InDetTrigSliceSettings import InDetTrigSliceSettings if InDetTrigSliceSettings[('doFullScan', type)]: vxtime.TimerHistLimits = [0, 400] self.AthenaMonTools = [ InDetTrigPriVxFinderValidationMonitor( name="InDetTrigPriVxFinderAllTEOnlineMonitor"), InDetTrigPriVxFinderOnlineMonitor( name="InDetTrigPriVxFinderAllTEValidationMonitor"), vxtime ]
def __init__(self, name="TRTDriftCircleMaker_Electron_EF", type="electron"): super(InDet__TRT_TrgRIO_Maker, self).__init__(name) from AthenaCommon.AppMgr import ToolSvc from InDetTrigRecExample.InDetTrigCommonTools import InDetTrigTRTRodDecoder from TRT_RawDataByteStreamCnv.TRT_RawDataByteStreamCnvConf import TRTRawDataProviderTool InDetTrigTRTRawDataProviderTool = TRTRawDataProviderTool( name="InDetTrigTRTRawDataProviderTool", Decoder=InDetTrigTRTRodDecoder, StoreInDetTimeCollections=False) ToolSvc += InDetTrigTRTRawDataProviderTool from InDetTrigRawDataProvider.InDetTrigRawDataProviderConf import InDet__TrigTRTRawDataProvider InDetTrigTRTRawDataProvider = \ InDet__TrigTRTRawDataProvider(name="TrigTRTRawDataProvider_EF", RDOKey = EF_TRTRDOKey, RawDataTool="TRTRawDataProviderTool/InDetTrigTRTRawDataProviderTool") ToolSvc += InDetTrigTRTRawDataProvider from InDetTrigRecExample.InDetTrigCommonTools import InDetTrigTRT_DriftFunctionTool, \ InDetTrigTRT_DriftCircleTool self.RawDataProvider = InDetTrigTRTRawDataProvider self.TRT_DriftCircleTool = InDetTrigTRT_DriftCircleTool #TRTStrawStatusTool = from InDetTrigRecExample.InDetTrigSliceSettings import InDetTrigSliceSettings self.EtaHalfWidth = InDetTrigSliceSettings[('etaHalfWidth', type)] self.PhiHalfWidth = InDetTrigSliceSettings[('phiHalfWidth', type)] self.doFullScan = InDetTrigSliceSettings[('doFullScan', type)] self.TRT_RDOContainerName = EF_TRTRDOKey #monitoring from InDetTrigPrepRawDataFormat.InDetTrigPrepRawDataFormatMonitoring import TrtTrigPrepRawDataFormatValidationMonitor from InDetTrigPrepRawDataFormat.InDetTrigPrepRawDataFormatMonitoring import TrtTrigPrepRawDataFormatOnlineMonitor from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig trttime = TrigTimeHistToolConfig("TRTTime") trttime.TimerHistLimits = [0, 80] if self.doFullScan: trttime.TimerHistLimits = [0, 200] self.AthenaMonTools = [ TrtTrigPrepRawDataFormatValidationMonitor(type=type), TrtTrigPrepRawDataFormatOnlineMonitor(type=type), trttime ]
def __init__(self, name="InDetTrigParticleCreation_Electron_EF", type="electron"): super( InDet__TrigParticleCreator, self ).__init__( name ) from AthenaCommon.AppMgr import ToolSvc from InDetTrigRecExample.InDetTrigFlags import InDetTrigFlags from InDetTrigRecExample.InDetTrigConfigRecLoadTools import \ InDetTrigTrackSummaryHelperTool, InDetTrigTrackSummaryTool, InDetTrigTrackSummaryToolSharedHits, \ InDetTrigExtrapolator, InDetTrigPrdAssociationTool, InDetTrigHoleSearchTool InDetTrigPartCreaPrdAssociationTool = None InDetTrigPartCreaTrackSummaryHelperTool = InDetTrigTrackSummaryHelperTool from TrigInDetConf.TrigInDetPostTools import InDetTrigParticleCreatorTool,InDetTrigParticleCreatorToolParams creatorTool = InDetTrigParticleCreatorTool if type=="photon": creatorTool = InDetTrigParticleCreatorToolParams self.ParticleCreatorTool = creatorTool self.PRDAssociationTool = InDetTrigPrdAssociationTool #for b-tagging #monitoring self.MonSliceSpecific = True from InDetTrigRecExample.InDetTrigSliceSettings import InDetTrigSliceSettings self.MonPrescale = InDetTrigSliceSettings[('monPS',type)] self.MonPtmin = InDetTrigSliceSettings[('monPtMin',type)] from InDetTrigParticleCreation.InDetTrigParticleCreationMonitoring import \ InDetTrigParticleCreationOnlineMonitor, InDetTrigParticleCreationValidationMonitor from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig pctime = TrigTimeHistToolConfig("PcTime") pctime.TimerHistLimits = [0,40] self.AthenaMonTools = [InDetTrigParticleCreationValidationMonitor(type=type), InDetTrigParticleCreationOnlineMonitor(type=type), pctime]
def __init__(self, instance, name): super(GSCFex, self).__init__(name) mlog = logging.getLogger('BtagHypoConfig.py') AllowedInstances = ["EF"] if instance not in AllowedInstances: mlog.error("Instance " + instance + " is not supported!") return None self.JetKey = "" self.PriVtxKey = "EFHistoPrmVtx" self.TrackKey = "" # IMPORT OFFLINE TOOLS self.setupOfflineTools = True if self.setupOfflineTools: if JetConfigSetupStatus == None: self.setupOfflineTools = False else: self.GSCCalibrationTool = jrcf.find("AntiKt", 0.4, "EMTopo", "ajg", "reco", "Kt4") print self.GSCCalibrationTool # MONITORING from TrigBjetHypo.TrigGSCFexMonitoring import TrigEFGSCFexValidationMonitoring, TrigEFGSCFexOnlineMonitoring #commented here validation = TrigEFGSCFexValidationMonitoring() #commented here online = TrigEFGSCFexOnlineMonitoring() #commented here from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigBjetHypo") time.TimerHistLimits = [0, 2] self.AthenaMonTools = [time, validation, online] #commented here
def __init__(self, name="TrigT2HistoPrmVtxAllTE_L2"): super(TrigT2HistoPrmVtxAllTE_L2, self).__init__(name) from TrigT2HistoPrmVtx.TrigT2HistoPrmVtxAllTEMonitoring import TrigT2HistoPrmVtxAllTEValidationMonitoring_L2, TrigT2HistoPrmVtxAllTEOnlineMonitoring_L2 validation = TrigT2HistoPrmVtxAllTEValidationMonitoring_L2() online = TrigT2HistoPrmVtxAllTEOnlineMonitoring_L2() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigT2HistoPrmVtxAllTE") time.TimerHistLimits = [0, 2] self.AthenaMonTools = [time, validation, online] self.Instance = "_L2" self.NumBins = 20 self.UseBeamSpot = True self.UseEtaPhiTrackSel = False self.L2TrkSel_Chi2 = 0.001 self.L2TrkSel_BLayer = 1 self.L2TrkSel_SiHits = 4 self.L2TrkSel_D0 = 1 * mm self.L2TrkSel_Pt = 1 * GeV
def __init__(self, name="TrigT2HistoPrmVtx_EF"): super(TrigT2HistoPrmVtx_EF, self).__init__(name) from TrigT2HistoPrmVtx.TrigT2HistoPrmVtxMonitoring import TrigT2HistoPrmVtxValidationMonitoring_EF, TrigT2HistoPrmVtxOnlineMonitoring_EF validation = TrigT2HistoPrmVtxValidationMonitoring_EF() online = TrigT2HistoPrmVtxOnlineMonitoring_EF() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigT2HistoPrmVtx") time.TimerHistLimits = [0, 2] self.AthenaMonTools = [time, validation, online] self.Instance = "_EF" self.NumBins = 20 self.UseBeamSpot = True self.UseEtaPhiTrackSel = False self.EFTrkSel_Chi2 = 0.0 self.EFTrkSel_BLayer = 1 self.EFTrkSel_PixHits = 2 self.EFTrkSel_SiHits = 7 self.EFTrkSel_D0 = 1 * mm self.EFTrkSel_Pt = 1 * GeV
def __init__(self, instance, name): super( DvHypoSplit, self ).__init__( name ) mlog = logging.getLogger('DvHypoConfig.py') AllowedInstances = ["EF"] if instance not in AllowedInstances : mlog.error("Instance "+instance+" is not supported!") return None if instance=="EF" : self.AcceptAll = False self.Instance = "EF" self.UseBeamSpotFlag = False self.JetKey = "SplitJet" from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigDvHypo") time.TimerHistLimits = [0,0.4] self.AthenaMonTools = [ time ] if instance=="EF" : from TrigBjetHypo.TrigDvHypoMonitoring import TrigEFDvHypoValidationMonitoring, TrigEFDvHypoOnlineMonitoring validation = TrigEFDvHypoValidationMonitoring() online = TrigEFDvHypoOnlineMonitoring() self.AthenaMonTools += [ validation, online ]
def __init__(self, instance, name): super(DvHypoNoCut, self).__init__(name) mlog = logging.getLogger('DvHypoConfig.py') AllowedInstances = ["EF"] self.JetKey = "SplitJet" # FIXME EVERY THING SPLIT!! if instance in AllowedInstances: from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigDvHypo") time.TimerHistLimits = [0, 0.4] self.AthenaMonTools = [time] if instance == "EF": self.AcceptAll = True self.Instance = "EF" self.UseBeamSpotFlag = False from TrigBjetHypo.TrigDvHypoMonitoring import TrigEFDvHypoValidationMonitoring, TrigEFDvHypoOnlineMonitoring validation = TrigEFDvHypoValidationMonitoring() online = TrigEFDvHypoOnlineMonitoring() self.AthenaMonTools += [validation, online] else: mlog.error("Instance " + instance + " is not supported!") return None
def __init__(self, name="L2SecVtxFinder"): super(L2SecVtxFinder, self).__init__(name) from AthenaCommon.AppMgr import ToolSvc from TrigInDetVxInJetTool.TrigInDetVxInJetToolConf import TrigInDetVxInJetTool TrigInDetVxInJetTool = TrigInDetVxInJetTool( name="TrigInDetVxInJetTool", getNegativeTail=False, # True for SV0 ; False for SV1 ) #TrigInDetVxInJetTool.OutputLevel=2 ToolSvc += TrigInDetVxInJetTool self.UseBeamSpotFlag = False self.TrackJetTrkSelExt = False self.UseJetDirection = 1 from TrigSecVtxFinder.TrigSecVtxFinderMonitoring import TrigSecVtxFinderValidationMonitoring, TrigSecVtxFinderOnlineMonitoring validation = TrigSecVtxFinderValidationMonitoring() online = TrigSecVtxFinderOnlineMonitoring() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigSecVtxFinder") time.TimerHistLimits = [0, 10] self.AthenaMonTools = [time, validation, online]
def __init__(self, instance, name): super(BjetHypoSplitNoCut, self).__init__(name) mlog = logging.getLogger('BjetHypoConfig.py') AllowedInstances = ["EF", "MuJetChain"] self.JetKey = "SplitJet" if instance in AllowedInstances: if instance == "MuJetChain": self.JetKey = "FarawayJet" instance = "EF" if instance == "EF": self.AcceptAll = True self.Instance = "EF" self.UseBeamSpotFlag = False self.OverrideBeamSpotValid = True from TrigBjetHypo.TrigBjetHypoMonitoring import TrigEFBjetHypoValidationMonitoring, TrigEFBjetHypoOnlineMonitoring validation = TrigEFBjetHypoValidationMonitoring() online = TrigEFBjetHypoOnlineMonitoring() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigBjetHypo") time.TimerHistLimits = [0, 0.4] self.AthenaMonTools = [time, validation, online] else: mlog.error("Instance " + instance + " is not supported!") return None
def __init__(self, instance, version, name, PriVtxKey="xPrimVx", TrackKey="InDetTrigTrackingxAODCnv_Bjet_IDTrig"): super(BtagFexSplit, self).__init__(name) mlog = logging.getLogger('BtagHypoConfig.py') AllowedInstances = ["EF", "MuJetChain", "GSC"] AllowedVersions = ["2012"] if instance not in AllowedInstances: mlog.error("Instance " + instance + " is not supported!") return None if version not in AllowedVersions: mlog.error("Version " + version + " is not supported!") return None self.JetKey = "SplitJet" if instance == "GSC": self.JetKey = "GSCJet" elif instance == "MuJetChain": self.JetKey = "FarawayJet" self.PriVtxKey = PriVtxKey self.UsePriVtxKeyBackup = True self.PriVtxKeyBackup = "EFHistoPrmVtx" self.TrackKey = TrackKey self.JetCalibrationName = "AntiKt4EMTopo" # IMPORT OFFLINE TOOLS self.setupOfflineTools = True if self.setupOfflineTools: if BTagConfigSetupStatus is None: self.setupOfflineTools = False else: self.BTagTrackAssocTool = BTagConfig.getJetCollectionMainAssociatorTool( "AntiKt4EMTopo") self.BTagTool = BTagConfig.getJetCollectionTool( "AntiKt4EMTopo") self.BTagSecVertexing = BTagConfig.getJetCollectionSecVertexingTool( "AntiKt4EMTopo") self.TaggerBaseNames = BTagConfig.getJetCollectionSecVertexingToolAttribute( "SecVtxFinderxAODBaseNameList", "AntiKt4EMTopo") # MONITORING from TrigBjetHypo.TrigBtagFexMonitoring import TrigEFBtagFexValidationMonitoring, TrigEFBtagFexOnlineMonitoring validation = TrigEFBtagFexValidationMonitoring() online = TrigEFBtagFexOnlineMonitoring() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigBjetHypo") time.TimerHistLimits = [0, 2] self.AthenaMonTools = [time, validation, online]
def __init__(self, name = "EFLeptonJetFexAllTE"): super( EFLeptonJetFexAllTE, self ).__init__( name ) from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigEFLeptonJetFexAllTE") time.TimerHistLimits = [0,0.2] self.AthenaMonTools = [ time ]
def __init__(self, name="T2VertexBeamSpot_Fex", detail=1): super(T2VertexBeamSpot_Fex, self).__init__(name) # monitoring part. To switch off do in topOption TriggerFlags.enableMonitoring = [] from TrigT2BeamSpot.T2VertexBeamSpotMonitoring import T2VertexBeamSpotOnlineMonitoring, T2VertexBeamSpotCosmicMonitoring, T2VertexBeamSpotValidationMonitoring validation = T2VertexBeamSpotValidationMonitoring() online = T2VertexBeamSpotOnlineMonitoring(detail=detail) cosmic = T2VertexBeamSpotCosmicMonitoring() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("Time") time.TimerHistLimits = [ 0, 12 ] # see T2VertexBeamSpotImpl.h: Timers::numTimers self.AthenaMonTools = [time, validation, online, cosmic] # Beam Conditions Service self.BeamCondSvcName = "BeamCondSvc" # Name of the service for the BeamCondSvc # Setup the self algorithm parameters # Algorithm IDs: SiTrack = 1, IDScan = 2, TrtXK = 4 # (from /offline/Trigger/TrigEvent/TrigInDetEvent/TrigInDetEvent/TrigInDetTrack.h) self.SaveAllVertices = False # Save histograms for all vertices self.WeightClusterZ = True # Use the track Z0 weighted cluster Z position as seed self.ReclusterSplit = False # Recluster split track collections before vertex fitting self.attachVertices = True # Write the good vertices to StoreGate self.attachSplitVertices = False # Write split vertices to StoreGate self.nSplitVertices = 2 # Turn on (>1) or off vertex splitting self.vertexCollName = "TrigBeamSpotVertex" # Output vertex collection Name self.TotalNTrackMin = 4 # Minimum number of tracks required in an event self.TrackMinPt = 0.5 # Minimum track pT to be considered for vertexing self.TrackSeedPt = 0.7 # Minimum track pT to be considered for seeding a vertex fit self.TrackClusterDZ = 0.35 # Maximum distance between tracks considered as a cluster self.TrackMaxZ0 = 200.0 # Maximum track Z0 to be considered for vertexing self.TrackMaxD0 = 10.0 # Maximum track d0 to be considered for vertexing self.TrackMaxZ0err = 5.0 # Maximum track Z0 error to be considered for vertexing self.TrackMaxD0err = 5.0 # Maximum track d0 error to be considered for vertexing self.TrackMinNDF = 2.0 # Minimum track NDF to be considered for vertexing self.TrackMinQual = 0.0 # Minimum track chi^2/NDF to be considered for vertexing self.TrackMaxQual = 10.0 # Maximum track chi^2/NDF to be considered for vertexing self.TrackMinChi2Prob = -10.0 # Minimum track cumulative chi2 probability, from CLHEP/GenericFunctions/CumulativeChiSquare.hh self.TrackMinSiHits = 7 # Minimum # track silicon (PIX + SCT) hits to be considered for vertexing self.TrackMinPIXHits = 0 # Minimum # track silicon (PIX + SCT) hits to be considered for vertexing self.TrackMinSCTHits = 0 # Minimum # track silicon (PIX + SCT) hits to be considered for vertexing self.TrackMinTRTHits = -10 # Minimum # track TRT hits to be considered for vertexing self.VertexMinNTrk = 2 # Minimum # tracks in a cluster to be considered for vertexing self.VertexMaxNTrk = 100 # Maximum # tracks in a cluster to be considered for vertexing (saves on time!) self.VertexMaxXerr = 1. # Maximum resulting X error on vertex fit for "good" vertices self.VertexMaxYerr = 1. # Maximum resulting Y error on vertex fit for "good" vertices self.VertexMaxZerr = 10. # Maximum resulting Z error on vertex fit for "good" vertices self.VertexMinQual = 0.0 # Minimum resulting chi^2/NDF on vertex fit for "good" vertices self.VertexMaxQual = 100.0 # Maximum resulting chi^2/NDF on vertex fit for "good" vertices self.VertexMinChi2Prob = -10.0 # Minimum cumulative chi2 probability, from CLHEP/GenericFunctions/CumulativeChiSquare.hh self.VertexBCIDMinNTrk = 10 # Minimum # tracks in a vertex to be used for per-BCID monitoring
def __init__ (self, name="EFTrigMissingETMuon_Fex_topoclPUC"): super(EFTrigMissingETMuon_Fex_topoclPUC, self).__init__(name) self.METLabel = "TrigEFMissingET_topocl_PUC" #self.MuonPtCut = 5.0 from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("Time") time.TimerHistLimits = [0, 50]
def __init__ (self, name="L2TrigMissingETMuon_Fex"): super(L2TrigMissingETMuon_Fex, self).__init__(name) self.METLabel = "T2MissingET" #self.MuonPtCut = 5.0 from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("Time") time.TimerHistLimits = [0, 50]
def setHLTTrackPreselMonTools(algoObject): algoName = algoObject.getName() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig(algoName + "Time") time.TimerHistLimits = [0, 3] nameVal = algoName + "_Val" valTool = HLTTrackPreselHypoValidationMonitoring(nameVal) algoObject.AthenaMonTools = [time, valTool]
def __init__(self, name): super( EFMissingETHypoBase, self ).__init__( name ) from TrigMissingETHypo.TrigMissingETHypoMonitoring import TrigEFMissingETHypoValidationMonitoring, TrigEFMissingETHypoCosmicMonitoring validation = TrigEFMissingETHypoValidationMonitoring() cosmic = TrigEFMissingETHypoCosmicMonitoring() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("METHypo_Time") time.TimerHistLimits = [0, 5] self.AthenaMonTools = [ time, validation, cosmic ]
def __init__(self, name="SiTrigSpacePointFinder_Electron_EF", type="electron", lowPt=False): super(InDet__SiTrigSpacePointFinder, self).__init__(name) from AthenaCommon.AppMgr import ToolSvc from InDetTrigRecExample.InDetTrigConfigRecLoadTools import \ InDetTrigSiSpacePointMakerTool,SCT_TrigSpacePointTool from InDetTrigRecExample.InDetTrigFlags import InDetTrigFlags if (InDetTrigFlags.doPrintConfigurables()): print(SCT_TrigSpacePointTool) ToolSvc += SCT_TrigSpacePointTool # Condition algorithm for SiTrigSpacePointFinder from AthenaCommon.AlgSequence import AthSequencer condSeq = AthSequencer("AthCondSeq") if not hasattr(condSeq, "InDetSiElementPropertiesTableCondAlg"): from SiSpacePointFormation.SiSpacePointFormationConf import InDet__SiElementPropertiesTableCondAlg condSeq += InDet__SiElementPropertiesTableCondAlg( name="InDetSiElementPropertiesTableCondAlg") self.SiSpacePointMakerTool = InDetTrigSiSpacePointMakerTool self.SCTSpacePointTrigHelperTool = SCT_TrigSpacePointTool self.ProcessPixels = True self.ProcessSCTs = True self.ProcessOverlaps = InDetTrigFlags.doOverlapSP() if type == 'cosmicsN': from InDetTrigRecExample.InDetTrigConfigRecLoadToolsCosmics import \ InDetTrigSiSpacePointMakerToolCosmics, SCT_TrigSpacePointToolCosmics self.SiSpacePointMakerTool = InDetTrigSiSpacePointMakerToolCosmics self.SCTSpacePointTrigHelperTool = SCT_TrigSpacePointToolCosmics self.SpacePointsSCTName = "SCT_CosmicsTrigSpacePoints" self.SpacePointsPixelName = "PixelCosmicsTrigSpacePoints" from InDetTrigRecExample.InDetTrigSliceSettings import InDetTrigSliceSettings self.EtaHalfWidth = InDetTrigSliceSettings[('etaHalfWidth', type)] self.PhiHalfWidth = InDetTrigSliceSettings[('phiHalfWidth', type)] self.doFullScan = InDetTrigSliceSettings[('doFullScan', type)] #monitoring from SiTrigSpacePointFormation.SiTrigSpacePointFormatMonitoring import SiTrigSpacePointFormatValidationMonitor from SiTrigSpacePointFormation.SiTrigSpacePointFormatMonitoring import SiTrigSpacePointFormatOnlineMonitor from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig sitime = TrigTimeHistToolConfig("SiTime") sitime.TimerHistLimits = [0, 50] self.AthenaMonTools = [ SiTrigSpacePointFormatValidationMonitor(type=type), SiTrigSpacePointFormatOnlineMonitor(type=type), sitime ]
def __init__(self, name, type): TrigFTK_VxPrimary.__init__(self, name) from TrigFTK_RecExample.TrigFTKLoadTools import theFTK_DataProviderSvc self.FTK_DataProvider = theFTK_DataProviderSvc #monitoring from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig vxtime = TrigTimeHistToolConfig("VxTime") vxtime.TimerHistLimits = [0, 100] self.AthenaMonTools = [ TrigFTK_PriVxFinderOnlineMonitor(), TrigFTK_PriVxFinderValidationMonitor(), vxtime ]
def __init__(self, instName, strName, phiHalfWidth = 0.1, etaHalfWidth = 0.1, doTRT = True, doRes = False, doTrackFit = True, doBrem = False ): name = "TrigL2SiTrackFinder_"+instName+strName if doBrem : name += "_Brem" TrigL2SiTrackFinder.__init__(self,name) self.SpacePointProviderTool=ospTool if instName=="FullScan" or instName=="BeamSpot" or instName=="FullScan_ZF_Only" : self.FullScanMode = True else : self.FullScanMode = False self.phiHalfWidth = phiHalfWidth self.etaHalfWidth = etaHalfWidth self.MinHits = 5 self.PrintDiagnosticMessages = False self.doTrackFit = doTrackFit self.doTRTpropagation = doTRT self.useRoiDescriptorWidths = True if instName=="Bphysics" : self.useRoiDescriptorWidths = False self.OutputCollectionSuffix=instName self.attachVertices=False if instName=="FullScan_ZF_Only" and strName=='A' : self.attachVertices = True from TrigInDetConf.TrigInDetRecCommonTools import InDetTrigFastTrackSummaryTool self.TrackSummaryTool = InDetTrigFastTrackSummaryTool from AthenaCommon.AppMgr import ToolSvc strategy = strFactory.createStrategy(instName, strName, phiHalfWidth, etaHalfWidth) ToolSvc += strategy self.RecoStrategy = strategy if doBrem : trtBrTool = TrigTRT_TrackExtensionTool_eGamma() ToolSvc += trtBrTool self.TrigTRT_TrackExtensionTool=trtBrTool else : self.TrigTRT_TrackExtensionTool=trtTool self.TrigInDetTrackFitter = trackFitter self.TrigL2ResidualCalculator = resCalc self.doResMonitoring = doRes timeHist = TrigTimeHistToolConfig("Time") timeHist.TimerHistLimits = [0,2000] self.AthenaMonTools = [ TrigL2SiTrackFinder_ValidationMonitoring("TrigL2SiTrackFinder_ValidationMonitoring",self.doResMonitoring), TrigL2SiTrackFinder_OnlineMonitoring("TrigL2SiTrackFinder_OnlineMonitoring",self.doResMonitoring), timeHist ]
def __init__(self, name="TrigmuRoI"): super(TrigmuRoIConfig, self).__init__(name) validation = TrigmuRoIValidationMonitoring() online = TrigmuRoIOnlineMonitoring() cosmic = TrigmuRoICosmicMonitoring() time = TrigTimeHistToolConfig("Time") time.TimerHistLimits = [0, 5] #time.NumberOfHistBins = 50 self.AthenaMonTools = [validation, online, cosmic, time]
def setTauEFDiKaonMonTools(algoObject): algoName = algoObject.getName() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig(algoName + "Time") time.TimerHistLimits = [0, 3] nameVal = algoName + "_Val" nameOnl = algoName + "_Onl" valTool = EFTauDiKaonHypoValidationMonitoring(nameVal) onlTool = EFTauDiKaonHypoOnlineMonitoring(nameOnl) algoObject.AthenaMonTools = [time, onlTool, valTool]
def __init__(self, name="TrigMuonEFTrackIsolationVarConfig"): super(TrigMuonEFTrackIsolationVarConfig, self).__init__(name) # configure the isolation tool trkseltoolname = 'TMEF_VarIsolationTool' if 'LooseTSel' in name: trkseltoolname = trkseltoolname + 'LooseTSel' elif 'TightTSel' in name: trkseltoolname = trkseltoolname + 'TightTSel' TMEF_VarIsolationTool = TMEF_TrackIsolationTool(trkseltoolname, useVarIso=True) # Isolation tool self.IsolationTool = TMEF_VarIsolationTool # Which isolation to run? if "FTK" in name: self.IsoType = 2 self.IsolationTool.removeSelfType = 1 # use LeadTrk by default else: self.IsoType = 1 # Options: 1=ID+EF, 2=FTK+L2 # ID tracks #self.IdTrackParticles = "InDetTrigParticleCreation_FullScan_EFID" #self.IdTrackParticles = "InDetTrigParticleCreation_MuonIso_EFID" self.IdTrackParticles = "InDetTrigTrackingxAODCnv_Muon_IDTrig" # FTK tracks self.FTKTrackParticles = "InDetTrigTrackingxAODCnv_Muon_FTK_IDTrig" # Only run algo on combined muons self.requireCombinedMuon = True # Use offline isolation variables self.useVarIso = True # histograms self.histoPathBase = "" validation_trkiso = TrigMuonEFTrackIsolationValidationMonitoring() online_trkiso = TrigMuonEFTrackIsolationOnlineMonitoring() # timing self.doMyTiming = True timetool = TrigTimeHistToolConfig("Time") timetool.NumberOfHistBins = 100 timetool.TimerHistLimits = [0, 1000] self.AthenaMonTools = [validation_trkiso, online_trkiso, timetool]
def __init__(self, name="EFTrigMissingETMuon_Fex_topocl"): super(EFTrigMissingETMuon_Fex_topocl, self).__init__(name) self.METLabel = "TrigEFMissingET_topocl" #self.MuonPtCut = 5.0 # monitoring part. To switch off do in topOption TriggerFlags.enableMonitoring = [] from TrigMissingETMuon.TrigMissingETMuonMonitoring import TrigMissingETMuonOnlineMonitoring, TrigMissingETMuonCosmicMonitoring, TrigMissingETMuonValidationMonitoring validation = TrigMissingETMuonValidationMonitoring() online = TrigMissingETMuonOnlineMonitoring() cosmic = TrigMissingETMuonCosmicMonitoring() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("Time") time.TimerHistLimits = [0, 50]
def __init__(self, name="InDetTrigTrackingxAODCnv_Electron_EF", type="electron"): super(InDet__TrigTrackingxAODCnv, self).__init__(name) from AthenaCommon.AppMgr import ToolSvc from InDetTrigRecExample.InDetTrigFlags import InDetTrigFlags from InDetTrigRecExample.InDetTrigConfigRecLoadTools import \ InDetTrigTrackSummaryHelperTool, InDetTrigTrackSummaryTool, InDetTrigTrackSummaryToolSharedHits, \ InDetTrigHoleSearchTool,InDetTrigExtrapolator from TrigInDetConf.TrigInDetRecCommonTools import InDetTrigFastTrackSummaryTool # load patricle creator tool # from TrigInDetConf.TrigInDetPostTools import InDetTrigParticleCreatorToolWithSummary, \ InDetTrigParticleCreatorToolFTF,InDetTrigParticleCreatorToolWithSummaryTRTPid creatorTool = InDetTrigParticleCreatorToolWithSummary if "_FTF" in name or "_FTK" in name: creatorTool = InDetTrigParticleCreatorToolFTF elif "_IDTrig" in name and type == "electron": creatorTool = InDetTrigParticleCreatorToolWithSummaryTRTPid self.ParticleCreatorTool = creatorTool if "_IDTrig" in name and (type == "muon" or type == "electron"): self.doIBLresidual = True #for FTK commissioning if "_FTK" in name: self.doIBLresidual = True #monitoring self.MonSliceSpecific = True from InDetTrigRecExample.InDetTrigSliceSettings import InDetTrigSliceSettings self.MonPrescale = InDetTrigSliceSettings[('monPS', type)] self.MonPtmin = InDetTrigSliceSettings[('monPtMin', type)] from InDetTrigParticleCreation.InDetTrigTrackingxAODCnvMonitoring import \ InDetTrigTrackingxAODCnvOnlineMonitor, InDetTrigTrackingxAODCnvValidationMonitor from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig pctime = TrigTimeHistToolConfig("PcTime") pctime.TimerHistLimits = [0, 40] self.AthenaMonTools = [ InDetTrigTrackingxAODCnvValidationMonitor(type=type), InDetTrigTrackingxAODCnvOnlineMonitor(type=type), pctime ]
def __init__(self, name="L2MissingET_Fex"): super(L2MissingET_Fex, self).__init__(name) # monitoring part. To switch off do in topOption TriggerFlags.enableMonitoring = [] from TrigL2MissingET.TrigL2MissingETMonitoring import T2MissingETOnlineMonitoring, T2MissingETCosmicMonitoring, T2MissingETValidationMonitoring validation = T2MissingETValidationMonitoring() online = T2MissingETOnlineMonitoring() cosmic = T2MissingETCosmicMonitoring() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("Time") time.TimerHistLimits = [0, 50] self.METLabel = "T2MissingET" self.AthenaMonTools = [time, validation, online, cosmic] self.DecodeDetMask = True
def __init__(self, name="InDetTrigPRD_MultiTruthMaker_Electron_EF", type="electron"): super(InDet__PRD_TrigMultiTruthMaker, self).__init__(name) from InDetTrigRecExample.InDetTrigFlags import InDetTrigFlags self.doTruthAss = InDetTrigFlags.doTruth() #monitoring from InDetTrigTruthAlgs.PRD_TrigMultiTruthMonitoring import PRD_TrigMultiTruthValidationMonitor from InDetTrigTruthAlgs.PRD_TrigMultiTruthMonitoring import PRD_TrigMultiTruthOnlineMonitor from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig prdtime = TrigTimeHistToolConfig("PRDTime") prdtime.TimerHistLimits = [0, 200] self.AthenaMonTools = [PRD_TrigMultiTruthValidationMonitor(), prdtime]
def __init__ (self, name="FtkHltEfficiencyFex"): super(FtkHltEfficiencyFex, self).__init__(name) # monitoring part. To switch off do in topOption TriggerFlags.enableMonitoring = [] from TrigFTK_Monitoring.FtkHltEfficiencyMonitoring import FtkHltEfficiencyMonitoring online = FtkHltEfficiencyMonitoring() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("Time") time.TimerHistLimits = [0, 100] self.AthenaMonTools = [ time, online ] # Setup the self algorithm parameters # Track matching self.DeltaRMax = 0.05 # float # Track Filtering self.MinPt = 2.0 # float self.MaxEta = 10.0 # float self.MaxZ0 = 100.0 # float self.MaxD0 = 1.0 # float self.MaxHLTZ0Err = 100.0 # float self.MaxHLTD0Err = 100.0 # float self.MinHLTSiHits = 9 # int self.MinHLTPixHits = 0 # int self.MinHLTSctHits = 0 # int self.MaxHLTPixHoles = 100 # int self.MaxHLTSctHoles = 100 # int self.MaxHLTReducedChi2 = 100.0 # float self.MaxFTKZ0Err = 100.0 # float self.MaxFTKD0Err = 100.0 # float self.MinFTKSiHits = 9 # int self.MinFTKPixHits = 0 # int self.MinFTKSctHits = 0 # int self.MaxFTKPixHoles = 100 # int self.MaxFTKSctHoles = 100 # int self.MaxFTKReducedChi2 = 100.0 # float # 2D Eta Phi parameters # if adapted, corresponding histograms need be adapted self.Numb2DEtaBins = 4 # int self.Min2DEta = -3 # float self.Max2DEta = 3 # float self.Min2DZ0 = -100 # float self.Max2DZ0 = 100 # float
def __init__(self, instance, algo, name): super(DvFex, self).__init__(name) mlog = logging.getLogger('BjetHypoConfig.py') ## SURE?? AllowedInstances = ["EF"] AllowedAlgos = ["EFID"] # Pre-configuring if instance not in AllowedInstances: mlog.error("Instance " + instance + " is not supported!") return None self.JetKey = "SplitJet" self.AlgoId = -1 if instance == "EF" and algo == "EFID": self.AlgoId = 1 if self.AlgoId == -1: mlog.error("AlgoId is wrongly set!") return None self.UseEtaPhiTrackSel = False if algo == "EFID": self.TrkSel_Chi2 = 0.0 self.TrkSel_BLayer = 0 #1 self.TrkSel_PixHits = 0 self.TrkSel_SiHits = 0 #7 self.TrkSel_D0 = 1.0 * mm #300.0*mm self.TrkSel_Z0 = 1500.0 * mm self.TrkSel_Pt = 1000.0 * MeV #500.0*MeV from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigBjetHypo") time.TimerHistLimits = [0, 2] self.AthenaMonTools = [time] #self.validation = False #self.onlinemon = False if instance == "EF": from TrigBjetHypo.TrigDvFexMonitoring import TrigEFDvFexValidationMonitoring, TrigEFDvFexOnlineMonitoring validation = TrigEFDvFexValidationMonitoring() online = TrigEFDvFexOnlineMonitoring() self.AthenaMonTools += [validation, online]
def __init__(self, instance, algo, name): super( DvFex, self ).__init__( name ) mlog = logging.getLogger('BjetHypoConfig.py') ## SURE?? AllowedInstances = ["EF"] AllowedAlgos = ["EFID"] # Pre-configuring if instance not in AllowedInstances : mlog.error("Instance "+instance+" is not supported!") return None self.JetKey = "SplitJet" self.AlgoId = -1 if instance == "EF" and algo == "EFID" : self.AlgoId = 1 if self.AlgoId == -1: mlog.error("AlgoId is wrongly set!") return None self.UseEtaPhiTrackSel = False if algo=="EFID" : self.TrkSel_Chi2 = 0.0 self.TrkSel_BLayer = 0 #1 self.TrkSel_PixHits = 0 self.TrkSel_SiHits = 0 #7 self.TrkSel_D0 = 1.0*mm #300.0*mm self.TrkSel_Z0 = 1500.0*mm self.TrkSel_Pt = 1000.0*MeV #500.0*MeV from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig("TimeHistogramForTrigBjetHypo") time.TimerHistLimits = [0,2] self.AthenaMonTools = [ time ] #self.validation = False #self.onlinemon = False if instance=="EF" : from TrigBjetHypo.TrigDvFexMonitoring import TrigEFDvFexValidationMonitoring, TrigEFDvFexOnlineMonitoring validation = TrigEFDvFexValidationMonitoring() online = TrigEFDvFexOnlineMonitoring() self.AthenaMonTools+=[validation,online]
def __init__(self, name="InDetTrigDetailedTrackTruthMaker_Electron_EF", type="electron"): super(InDet__InDetTrigDetailedTrackTruthMaker, self).__init__(name) from InDetTrigRecExample.InDetTrigFlags import InDetTrigFlags self.doTruthAss = InDetTrigFlags.doTruth() #monitoring from InDetTrigTruthAlgs.InDetTrigDetailedTruthMonitoring import InDetTrigDetailedTruthValidationMonitor from InDetTrigTruthAlgs.InDetTrigDetailedTruthMonitoring import InDetTrigDetailedTruthOnlineMonitor from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig truthtime = TrigTimeHistToolConfig("TruthTime") truthtime.TimerHistLimits = [0, 200] self.AthenaMonTools = [ InDetTrigDetailedTruthValidationMonitor(), truthtime ]
def setTauMonTools(algoObject): algoName = algoObject.getName() from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig time = TrigTimeHistToolConfig(algoName + "Time") time.TimerHistLimits = [0, 3] nameOnl = algoName + "_Onl" onlTool = TrigTauHypoOnlineMonitoring(nameOnl) nameVal = algoName + "_Val" valTool = TrigTauHypoValidationMonitoring(nameVal) nameCos = algoName + "_Cos" cosTool = TrigTauHypoCosmicMonitoring(nameCos) algoObject.AthenaMonTools = [time, onlTool, valTool, cosTool]