def __init__(self, name="InDetTrigTrackParticleTruthMaker_Electron_EF", type="electron"): super( InDet__TrigTrackParticleTruthMaker, self ).__init__( name ) from AthenaCommon.AppMgr import ToolSvc from InDetTrigRecExample.InDetTrigFlags import InDetTrigFlags self.doTruthAss = InDetTrigFlags.doTruth()
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="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 __init__(self, seqName="Tau", type="tau", seqType="InsideOut"): """ @param[in] seqName which enters into the sequence name inbetween algorithmName_seqName_EFID can be freely modified @param[in] type which is a slice name and is used to set up slice specific variables @param[in] seqType the type of sequence - it can be one of InsideOut, OutsideIn, TRTOnly, Combined,.... """ #print "TrigEFIDSequence seqName=%s type=%s seqType=%s" % (seqName,type,seqType) algos = [] from TrigInDetConf.TrigInDetSequence import vertexXAODCnvNeeded runvtxxaodcnv = vertexXAODCnvNeeded() if seqType == "InsideOut": algos = [ ("PixelClustering", ""), ("SCTClustering", ""), ("TRTDriftCircleMaker", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("SiTrigTrackFinder", ""), ("TrigAmbiguitySolver", ""), ("TRTTrackExtAlg", ""), ("TrigExtProcessor", ""), ("InDetTrigTrackSlimmer", ""), ("InDetTrigTrackingxAODCnv", ""), # ("InDetTrigDetailedTrackTruthMaker",""), ("TrigVxPrimary", ""), # ("InDetTrigParticleCreation",""), # ("InDetTrigTrackParticleTruthMaker",""), ] if runvtxxaodcnv: algos += [("InDetTrigVertexxAODCnv", "")] if type == "minBias" or type == "minBias400": algos = [ ("PixelClustering", ""), ("SCTClustering", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("SiTrigTrackFinder", ""), ("TrigAmbiguitySolver", ""), ("InDetTrigTrackSlimmer", ""), ("InDetTrigTrackingxAODCnv", ""), ("TrigVxPrimary", ""), # ("InDetTrigParticleCreation",""), ] if runvtxxaodcnv: algos += [("InDetTrigVertexxAODCnv", "")] elif type == "bjet": #from InDetTrigVxSecondary.InDetTrigVxSecondary_LoadTools import TrigVxSecondary_EF #algos += [("TrigVxSecondary","")] algos = [ ("PixelClustering", ""), ("SCTClustering", ""), ("TRTDriftCircleMaker", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("SiTrigTrackFinder", ""), ("TrigAmbiguitySolver", ""), ("TRTTrackExtAlg", ""), ("TrigExtProcessor", ""), ("InDetTrigTrackSlimmer", ""), ("InDetTrigTrackingxAODCnv", ""), ("InDetTrigDetailedTrackTruthMaker", ""), ("TrigVxPrimary", ""), # ("InDetTrigParticleCreation",""), ("InDetTrigTrackParticleTruthMaker", "") ] if runvtxxaodcnv: algos += [("InDetTrigVertexxAODCnv", "")] elif seqType == "InsideOutTrk": algos = [("PixelClustering", ""), ("SCTClustering", ""), ("TRTDriftCircleMaker", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("SiTrigTrackFinder", ""), ("TrigAmbiguitySolver", ""), ("TRTTrackExtAlg", ""), ("TrigExtProcessor", ""), ("InDetTrigTrackSlimmer", ""), ("InDetTrigTrackingxAODCnv", ""), ("InDetTrigDetailedTrackTruthMaker", "")] elif seqType == "Vtx": algos = [("TrigVxPrimary", "")] if type == "bjet": algos = [("TrigVxPrimaryAllTE", "")] if runvtxxaodcnv: algos += [("InDetTrigVertexxAODCnv", "")] elif seqType == "InsideOutPost": algos = [ #("InDetTrigParticleCreation",""), ("InDetTrigTrackingxAODCnv", ""), ("InDetTrigTrackParticleTruthMaker", "") ] elif seqType == "InsideOutNoTRT": a1 = [ ("PixelClustering", ""), ("SCTClustering", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("SiTrigTrackFinder", ""), ("TrigAmbiguitySolver", ""), ("InDetTrigTrackSlimmer", ""), ("InDetTrigTrackingxAODCnv", ""), ("InDetTrigDetailedTrackTruthMaker", ""), ] av = [("TrigVxPrimary", "")] if runvtxxaodcnv: av += [("InDetTrigVertexxAODCnv", "")] a2 = [ #("InDetTrigParticleCreation",""), ("InDetTrigTrackParticleTruthMaker", "") ] if type == "heavyIon" or type == "heavyIonFS": algos = a1 + a2 else: algos = a1 + av + a2 elif seqType == "InsideOutLowPt": algos = [ ("PixelClustering", ""), ("SCTClustering", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("SiTrigTrackFinder", ""), ("TrigAmbiguitySolver", ""), ("InDetTrigTrackPRD_Association", ""), ("SiTrigSpacePointFinderLowPt", ""), ("SiTrigTrackFinderLowPt", ""), ("TrigAmbiguitySolverLowPt", ""), ("SimpleTrigTrackCollMerger", ""), ("InDetTrigTrackSlimmer", ""), ("InDetTrigTrackingxAODCnv", ""), ("TrigVxPrimary", ""), #("InDetTrigParticleCreation",""), ] if runvtxxaodcnv: algos += [("InDetTrigVertexxAODCnv", "")] elif seqType == "OutsideIn": algos = [ ("PixelClustering", ""), ("SCTClustering", ""), ("TRTDriftCircleMaker", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("TRT_TrigTrackSegmentsFinder", "InDetTrigTRT_TrackSegmentsFinder_%s_EFID"), ("TRT_TrigSeededTrackFinder", "InDetTrigTRT_SeededTrackFinder_%s_EFID"), ("TRTSeededTrigAmbiguitySolver", ""), ("InDetTrigTrackSlimmer", ""), ("InDetTrigTrackingxAODCnv", ""), ("InDetTrigDetailedTrackTruthMaker", ""), #("InDetTrigParticleCreation",""), ("InDetTrigTrackParticleTruthMaker", "") ] elif seqType == "TRTOnly": algos = [ ("TRTDriftCircleMaker", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("TRT_TrigTrackSegmentsFinder", "InDetTrigTRT_TrackSegmentsFinder_%s_EFID"), ("InDetTrigTrackPRD_Association", "InDetTrigTRTStandalonePRD_Association_%s_EFID"), ("TRT_TrigStandaloneTrackFinder", "InDetTrigTRT_StandaloneTrackFinder_%s_EFID"), ("InDetTrigTrackSlimmer", "InDetTrigTrackSlimmerTRTOnly_%s_EFID"), ("InDetTrigTrackingxAODCnv", "InDetTrigTrackingxAODCnvTRTOnly_%s_EFID"), ("InDetTrigDetailedTrackTruthMaker", "InDetTrigDetailedTrackTruthMakerTRTOnly_%s_EFID"), ("TrigVxPrimary", "TrigVxPrimaryTRTOnly_%s_EFID"), #("InDetTrigParticleCreation", "InDetTrigParticleCreationTRTOnly_%s_EFID"), ("InDetTrigTrackParticleTruthMaker", "InDetTrigTrackParticleTruthMakerTRTOnly_%s_EFID") ] if runvtxxaodcnv: algos += [("InDetTrigVertexxAODCnv", "InDetTrigVertexxAODCnvTRTOnly_%s_EFID")] elif seqType == "Combined": algos = [ ("PixelClustering", ""), ("SCTClustering", ""), ("TRTDriftCircleMaker", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("SiTrigTrackFinder", ""), ("TrigAmbiguitySolver", ""), ("TRTTrackExtAlg", ""), ("TrigExtProcessor", ""), ("InDetTrigTrackPRD_Association", "InDetTrigSegmentPRD_Association_%s_EFID"), ("TRT_TrigTrackSegmentsFinder", "InDetTrigTRT_TrackSegmentsFinderCombined_%s_EFID"), ("TRT_TrigSeededTrackFinder", "InDetTrigTRT_SeededTrackFinder_%s_EFID"), ("TRTSeededTrigAmbiguitySolver", "TRTSeededTrigAmbiguitySolver_%s_EFID"), ("InDetTrigTrackPRD_Association", "InDetTrigTRTOnlyPRD_Association_%s_EFID"), ("TRT_TrigStandaloneTrackFinder", "InDetTrigTRT_StandaloneTrackFinderCombined_%s_EFID"), ("TrkTrigTrackCollectionMerger", "TrigTrackCollectionMerger_%s_EFID"), ("InDetTrigTrackSlimmer", "InDetTrigTrackSlimmerCombined_%s_EFID"), ("InDetTrigTrackingxAODCnv", "InDetTrigTrackingxAODCnvCombined_%s_EFID"), ("InDetTrigDetailedTrackTruthMaker", "InDetTrigDetailedTrackTruthMakerCombined_%s_EFID"), #("InDetTrigParticleCreation", "InDetTrigParticleCreationCombined_%s_EFID"), ("InDetTrigTrackParticleTruthMaker", "InDetTrigTrackParticleTruthMakerCombined_%s_EFID") ] elif seqType == "CombinedWithConversions": algos = [ ("PixelClustering", ""), ("SCTClustering", ""), ("TRTDriftCircleMaker", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("SiTrigTrackFinder", ""), ("TrigAmbiguitySolver", ""), ("TRTTrackExtAlg", ""), ("TrigExtProcessor", ""), ("InDetTrigTrackPRD_Association", "InDetTrigSegmentPRD_Association_%s_EFID"), ("TRT_TrigTrackSegmentsFinder", "InDetTrigTRT_TrackSegmentsFinderCombined_%s_EFID"), ("TRT_TrigSeededTrackFinder", "InDetTrigTRT_SeededTrackFinder_%s_EFID"), ("TRTSeededTrigAmbiguitySolver", "TRTSeededTrigAmbiguitySolver_%s_EFID"), ("InDetTrigTrackPRD_Association", "InDetTrigTRTOnlyPRD_Association_%s_EFID"), ("TRT_TrigStandaloneTrackFinder", "InDetTrigTRT_StandaloneTrackFinderCombined_%s_EFID"), ("TrkTrigTrackCollectionMerger", "TrigTrackCollectionMerger_%s_EFID"), ("InDetTrigTrackSlimmer", "InDetTrigTrackSlimmerCombined_%s_EFID"), ("InDetTrigTrackingxAODCnv", "InDetTrigTrackingxAODCnvCombined_%s_EFID"), ("InDetTrigDetailedTrackTruthMaker", "InDetTrigDetailedTrackTruthMakerCombined_%s_EFID"), #("InDetTrigParticleCreation", "InDetTrigParticleCreationCombined_%s_EFID"), ("InDetTrigTrackParticleTruthMaker", "InDetTrigTrackParticleTruthMakerCombined_%s_EFID"), ("InDetTrigConversionFinder", "InDetTrigConversionFinderCombined_%s_EFID") ] elif seqType == "InsideOutAndTRTOnly": algos = [ ("PixelClustering", ""), ("SCTClustering", ""), ("TRTDriftCircleMaker", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("SiTrigSpacePointFinder", ""), ("SiTrigTrackFinder", ""), ("TrigAmbiguitySolver", ""), ("TRTTrackExtAlg", ""), ("TrigExtProcessor", ""), ("InDetTrigTrackParticleTruthMaker", ""), ("TRT_TrigTrackSegmentsFinder", "InDetTrigTRT_TrackSegmentsFinder_%s_EFID"), ("TRT_TrigStandaloneTrackFinder", "InDetTrigTRT_StandaloneTrackFinder_%s_EFID"), ("TrkTrigTrackCollectionMerger", "TrigTrackCollectionMergerIOTRT_%s_EFID"), ("InDetTrigTrackSlimmer", "InDetTrigTrackSlimmerIOTRT_%s_EFID"), ("InDetTrigTrackingxAODCnv", "InDetTrigTrackingxAODCnvIOTRT_%s_EFID"), ("InDetTrigDetailedTrackTruthMaker", "InDetTrigDetailedTrackTruthMakerIOTRT_%s_EFID"), #("InDetTrigParticleCreation", "InDetTrigParticleCreationIOTRT_%s_EFID"), ("InDetTrigTrackParticleTruthMaker", "InDetTrigTrackParticleTruthMakerIOTRT_%s_EFID"), ("TrigVxPrimary", ""), ] if runvtxxaodcnv: algos += [("InDetTrigVertexxAODCnv", "InDetTrigVertexxAODCnvIOTRT_%s_EFID")] elif seqType == "DataPrep": algos = [ ("PixelClustering", "PixelClustering_%s_IDTrig"), ("SCTClustering", "SCTClustering_%s_IDTrig"), #("TRTDriftCircleMaker",""), ("SiTrigSpacePointFinder", "SiTrigSpacePointFinder_%s_IDTrig"), ] elif seqType == "SimpleTrackFinder": algos = [ #("SiTrigTrackFinder",""), ("SiTrigSimpleTrackFinder", ""), ] elif seqType == "InsideOutMerged": algos = [ #("SiTrigTrackSeededFinder",""), ("TrigAmbiguitySolver", ""), ("TRTDriftCircleMaker", ""), ("InDetTrigPRD_MultiTruthMaker", ""), ("TRTTrackExtAlg", ""), ("TrigExtProcessor", ""), ("InDetTrigTrackSlimmer", ""), ("InDetTrigTrackingxAODCnv", ""), ("InDetTrigDetailedTrackTruthMaker", ""), ("TrigVxPrimary", ""), #("InDetTrigParticleCreation",""), ("InDetTrigTrackParticleTruthMaker", ""), ] if runvtxxaodcnv: algos += [("InDetTrigVertexxAODCnv", "")] elif seqType == "StandAloneVtxAllTE": algos = [ ("TrigVxPrimaryAllTESG", ""), ] if runvtxxaodcnv: algos += [("InDetTrigVertexxAODCnv", "")] #remove truth algorithms if not InDetTrigFlags.doTruth(): import re for i in algos: if re.search('Truth', i[0]): algos.remove((i[0], i[1])) #create python code to be executed alglist = "algseq = [" for i in algos: #self.__algos__.append(i) algline = self._item_line(i[0], i[1], seqName, type, seqType) alglist += algline + ',' alglist += "]" #this should be avoided by a higher level steering # modify the sequence acoording to triggerflags from TriggerJobOpts.TriggerFlags import TriggerFlags if not (TriggerFlags.doEF() or TriggerFlags.doHLT()) or not TriggerFlags.doFEX(): from TrigSteeringTest.TrigSteeringTestConf import PESA__dummyAlgo as dummyAlgo_disabledByTriggerFlags_EFID dummyAlgEFID = dummyAlgo_disabledByTriggerFlags_EFID( "doEF_or_doFEX_False_no_EFID") alglist = 'algseq = [dummyAlgEFID]' algseq = [] try: exec alglist except: from sys import exc_info (a, reason, c) = exc_info() print reason log.error("Cannot create EFID sequence %s, leaving empty" % alglist) import traceback print traceback.format_exc() #raise Exception self.__sequence__ = algseq
if 'doReadBS' in dir() and doReadBS: include("InDetTrigRecExample/InDetTrigReadBS_jobOptions.py") else: import AthenaPoolCnvSvc.ReadAthenaPool # --- GeoModel include("AtlasGeoModel/SetGeometryVersion.py") include("AtlasGeoModel/GeoModelInit.py") # ---- Beam Spot service if InDetTrigFlags.useBeamConstraint(): include("InDetBeamSpotService/BeamCondSvc.py") # particle property service include("PartPropSvc/PartPropSvc.py") if InDetTrigFlags.doTruth(): include( "GeneratorObjectsAthenaPool/GeneratorObjectsAthenaPool_joboptions.py") #------------------------------------------------------------ # Event Data Model Monitor works only in dbg build #------------------------------------------------------------ if doEdmMonitor: from TrkValAlgs.TrkValAlgsConf import Trk__EventDataModelMonitor InDetTrigEdmMonitor = Trk__EventDataModelMonitor( name='InDetTrigEdmMonitor') topSequence += InDetTrigEdmMonitor print InDetTrigEdmMonitor