def getTTL1Overlay(name="OverlayTTL1", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isOverlayMT(): kwargs.setdefault("BkgEmTTL1Key", overlayFlags.bkgPrefix() + "LArTTL1EM") kwargs.setdefault("SignalEmTTL1Key", overlayFlags.sigPrefix() + "LArTTL1EM") kwargs.setdefault("OutputEmTTL1Key", "LArTTL1EM") kwargs.setdefault("BkgHadTTL1Key", overlayFlags.bkgPrefix() + "LArTTL1HAD") kwargs.setdefault("SignalHadTTL1Key", overlayFlags.sigPrefix() + "LArTTL1HAD") kwargs.setdefault("OutputHadTTL1Key", "LArTTL1HAD") kwargs.setdefault("BkgTileTTL1Key", overlayFlags.bkgPrefix() + "TileTTL1Cnt") kwargs.setdefault("SignalTileTTL1Key", overlayFlags.sigPrefix() + "TileTTL1Cnt") kwargs.setdefault("OutputTileTTL1Key", "TileTTL1Cnt") kwargs.setdefault("BkgTileMBTSTTL1Key", overlayFlags.bkgPrefix() + "TileTTL1MBTS") kwargs.setdefault("SignalTileMBTSTTL1Key", overlayFlags.sigPrefix() + "TileTTL1MBTS") kwargs.setdefault("OutputTileMBTSTTL1Key", "TileTTL1MBTS") else: kwargs.setdefault("BkgEmTTL1Key", overlayFlags.dataStore() + "+LArTTL1EM") kwargs.setdefault("SignalEmTTL1Key", overlayFlags.evtStore() + "+LArTTL1EM") kwargs.setdefault("OutputEmTTL1Key", overlayFlags.outputStore() + "+LArTTL1EM") kwargs.setdefault("BkgHadTTL1Key", overlayFlags.dataStore() + "+LArTTL1HAD") kwargs.setdefault("SignalHadTTL1Key", overlayFlags.evtStore() + "+LArTTL1HAD") kwargs.setdefault("OutputHadTTL1Key", overlayFlags.outputStore() + "+LArTTL1HAD") kwargs.setdefault("BkgTileTTL1Key", overlayFlags.dataStore() + "+TileTTL1Cnt") kwargs.setdefault("SignalTileTTL1Key", overlayFlags.evtStore() + "+TileTTL1Cnt") kwargs.setdefault("OutputTileTTL1Key", overlayFlags.outputStore() + "+TileTTL1Cnt") kwargs.setdefault("BkgTileMBTSTTL1Key", overlayFlags.dataStore() + "+TileTTL1MBTS") kwargs.setdefault("SignalTileMBTSTTL1Key", overlayFlags.evtStore() + "+TileTTL1MBTS") kwargs.setdefault("OutputTileMBTSTTL1Key", overlayFlags.outputStore() + "+TileTTL1MBTS") return CfgMgr.LVL1__OverlayTTL1(name, **kwargs)
def getTTL1Overlay(name="OverlayTTL1", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags kwargs.setdefault("EmTTL1MainKey", overlayFlags.dataStore() + "/LArTTL1EM") kwargs.setdefault("EmTTL1OverlayKey", overlayFlags.evtStore() + "/LArTTL1EM") kwargs.setdefault("EmTTL1OutputKey", overlayFlags.outputStore() + "/LArTTL1EM") kwargs.setdefault("HadTTL1MainKey", overlayFlags.dataStore() + "/LArTTL1HAD") kwargs.setdefault("HadTTL1OverlayKey", overlayFlags.evtStore() + "/LArTTL1HAD") kwargs.setdefault("HadTTL1OutputKey", overlayFlags.outputStore() + "/LArTTL1HAD") kwargs.setdefault("TileTTL1MainKey", overlayFlags.dataStore() + "/TileTTL1Cnt") kwargs.setdefault("TileTTL1OverlayKey", overlayFlags.evtStore() + "/TileTTL1Cnt") kwargs.setdefault("TileTTL1OutputKey", overlayFlags.outputStore() + "/TileTTL1Cnt") return CfgMgr.LVL1__OverlayTTL1(name, **kwargs)
def getMM_RdoToDigitAlg(name="MM_RdoToDigitAlg", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isOverlayMT(): kwargs.setdefault("MmRdoContainer", overlayFlags.bkgPrefix() + "MMRDO") kwargs.setdefault("MmDigitContainer", overlayFlags.bkgPrefix() + "MM_DIGITS") else: kwargs.setdefault("EvtStore", overlayFlags.dataStore()) kwargs.setdefault("MmRdoContainer", overlayFlags.dataStore() + "+MMRDO") kwargs.setdefault("MmDigitContainer", overlayFlags.dataStore() + "+MM_DIGITS") return CfgMgr.MM_RdoToDigit(name, **kwargs)
def getRpcRdoToRpcDigitAlg(name="RpcRdoToRpcDigitAlg", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isOverlayMT(): kwargs.setdefault("RpcRdoContainer", overlayFlags.bkgPrefix() + "RPCPAD") kwargs.setdefault("RpcDigitContainer", overlayFlags.bkgPrefix() + "RPC_DIGITS") else: kwargs.setdefault("EvtStore", overlayFlags.dataStore()) kwargs.setdefault("RpcRdoContainer", overlayFlags.dataStore() + "+RPCPAD") kwargs.setdefault("RpcDigitContainer", overlayFlags.dataStore() + "+RPC_DIGITS") return CfgMgr.RpcRdoToRpcDigit(name, **kwargs)
def getTgcRdoToTgcDigitAlg(name="TgcRdoToTgcDigitAlg", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isOverlayMT(): kwargs.setdefault("TgcRdoContainer", overlayFlags.bkgPrefix() + "TGCRDO") kwargs.setdefault("TgcDigitContainer", overlayFlags.bkgPrefix() + "TGC_DIGITS") else: kwargs.setdefault("EvtStore", overlayFlags.dataStore()) kwargs.setdefault("TgcRdoContainer", overlayFlags.dataStore() + "+TGCRDO") kwargs.setdefault("TgcDigitContainer", overlayFlags.dataStore() + "+TGC_DIGITS") return CfgMgr.TgcRdoToTgcDigit(name, **kwargs)
def getTRTOverlay(name="TRTOverlay", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags from Digitization.DigitizationFlags import digitizationFlags if overlayFlags.isOverlayMT(): kwargs.setdefault("BkgInputKey", overlayFlags.bkgPrefix() + "TRT_RDOs") kwargs.setdefault("SignalInputKey", overlayFlags.sigPrefix() + "TRT_RDOs") kwargs.setdefault("OutputKey", "TRT_RDOs") kwargs.setdefault("SignalInputSDOKey", overlayFlags.sigPrefix() + "TRT_SDO_Map") else: kwargs.setdefault("BkgInputKey", overlayFlags.dataStore() + "+TRT_RDOs") kwargs.setdefault("SignalInputKey", overlayFlags.evtStore() + "+TRT_RDOs") kwargs.setdefault("OutputKey", overlayFlags.outputStore() + "+TRT_RDOs") kwargs.setdefault("SignalInputSDOKey", overlayFlags.evtStore() + "+TRT_SDO_Map") kwargs.setdefault("TRT_LocalOccupancyTool", "TRT_LocalOccupancy") # HT hit correction fraction kwargs.setdefault("TRT_HT_OccupancyCorrectionBarrel", 0.110) kwargs.setdefault("TRT_HT_OccupancyCorrectionEndcap", 0.090) kwargs.setdefault("TRT_HT_OccupancyCorrectionBarrelNoE", 0.060) kwargs.setdefault("TRT_HT_OccupancyCorrectionEndcapNoE", 0.050) return CfgMgr.TRTOverlay(name, **kwargs)
def getMdtRdoToMdtDigit(name="MdtRdoToMdtDigitOverlay", **kwargs): kwargs.setdefault("DecodeMdtRDO", True) kwargs.setdefault("DecodeRpcRDO", False) kwargs.setdefault("DecodeTgcRDO", False) kwargs.setdefault("DecodeCscRDO", False) kwargs.setdefault("RetrievePrivateCopy", True) from OverlayCommonAlgs.OverlayFlags import overlayFlags kwargs.setdefault("EvtStore", overlayFlags.dataStore()) return CfgMgr.MuonRdoToMuonDigitTool(name, **kwargs)
def CscRawDataProviderTool(name="CscRawDataProviderTool", **kwargs): kwargs.setdefault("Decoder", "CscROD_Decoder") if DetFlags.overlay.CSC_on() and overlayFlags.isDataOverlay(): if overlayFlags.isOverlayMT(): kwargs.setdefault("RdoLocation", overlayFlags.bkgPrefix() + "CSCRDO") else: kwargs.setdefault("RdoLocation", overlayFlags.dataStore() + "+CSCRDO") return CfgMgr.Muon__CSC_RawDataProviderToolMT(name, **kwargs)
def MdtRawDataProviderTool(name="MdtRawDataProviderTool", **kwargs): kwargs.setdefault("Decoder", "MdtROD_Decoder") if DetFlags.overlay.MDT_on() and overlayFlags.isDataOverlay(): if overlayFlags.isOverlayMT(): kwargs.setdefault("RdoLocation", overlayFlags.bkgPrefix() + "MDTCSM") else: kwargs.setdefault("RdoLocation", overlayFlags.dataStore() + "+MDTCSM") return CfgMgr.Muon__MDT_RawDataProviderToolMT(name, **kwargs)
def getTgcOverlay(name="TgcOverlay", **kwargs): kwargs.setdefault("mainInputTGC_Name", "TGC_DIGITS") kwargs.setdefault("overlayInputTGC_Name", "TGC_DIGITS") kwargs.setdefault("DigitizationTool", "Tgc_OverlayDigitizationTool") kwargs.setdefault("ConvertRDOToDigitTool", "TgcRdoToTgcDigitOverlay") from OverlayCommonAlgs.OverlayFlags import overlayFlags kwargs.setdefault("MCStore", overlayFlags.evtStore()) kwargs.setdefault("DataStore", overlayFlags.dataStore()) if overlayFlags.doSignal(): kwargs.setdefault("CopyObject", True) return CfgMgr.TgcOverlay(name, **kwargs)
def getMdtOverlay(name="MdtOverlay", **kwargs): kwargs.setdefault("mainInputMDT_Name", "MDT_DIGITS") kwargs.setdefault("overlayInputMDT_Name", "MDT_DIGITS") kwargs.setdefault("IntegrationWindow", 20) kwargs.setdefault("DigitizationTool", "Mdt_OverlayDigitizationTool") kwargs.setdefault("ConvertRDOToDigitTool", "MdtRdoToMdtDigitOverlay") from OverlayCommonAlgs.OverlayFlags import overlayFlags kwargs.setdefault("MCStore", overlayFlags.evtStore()) kwargs.setdefault("DataStore", overlayFlags.dataStore()) if overlayFlags.doSignal(): kwargs.setdefault("CopyObject", True) return CfgMgr.MdtOverlay(name, **kwargs)
def getCscOverlay(name="CscOverlay", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isOverlayMT(): kwargs.setdefault("BkgInputKey", overlayFlags.bkgPrefix() + "CSCRDO") kwargs.setdefault("SignalInputKey", overlayFlags.sigPrefix() + "CSCRDO") kwargs.setdefault("OutputKey", "CSCRDO") else: kwargs.setdefault("BkgInputKey", overlayFlags.dataStore() + "+CSCRDO") kwargs.setdefault("SignalInputKey", overlayFlags.evtStore() + "+CSCRDO") kwargs.setdefault("OutputKey", "StoreGateSvc+CSCRDO") kwargs.setdefault("isDataOverlay", overlayFlags.isDataOverlay()) from AthenaCommon import CfgMgr return CfgMgr.CscOverlay(name, **kwargs)
def getTgcOverlay(name="TgcOverlay", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isOverlayMT(): kwargs.setdefault("BkgInputKey", overlayFlags.bkgPrefix() + "TGC_DIGITS") kwargs.setdefault("SignalInputKey", overlayFlags.sigPrefix() + "TGC_DIGITS") kwargs.setdefault("OutputKey", "TGC_DIGITS") else: kwargs.setdefault("BkgInputKey", overlayFlags.dataStore() + "+TGC_DIGITS") kwargs.setdefault("SignalInputKey", overlayFlags.evtStore() + "+TGC_DIGITS") kwargs.setdefault("OutputKey", overlayFlags.outputStore() + "+TGC_DIGITS") return CfgMgr.TgcOverlay(name, **kwargs)
def getPixelOverlay(name="PixelOverlay", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isOverlayMT(): kwargs.setdefault("BkgInputKey", overlayFlags.bkgPrefix() + "PixelRDOs") kwargs.setdefault("SignalInputKey", overlayFlags.sigPrefix() + "PixelRDOs") kwargs.setdefault("OutputKey", "PixelRDOs") else: kwargs.setdefault("BkgInputKey", overlayFlags.dataStore() + "+PixelRDOs") kwargs.setdefault("SignalInputKey", overlayFlags.evtStore() + "+PixelRDOs") kwargs.setdefault("OutputKey", overlayFlags.outputStore() + "+PixelRDOs") return CfgMgr.PixelOverlay(name, **kwargs)
def getMM_Overlay(name="MM_Overlay", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isOverlayMT(): kwargs.setdefault("BkgInputKey", overlayFlags.bkgPrefix() + "MM_DIGITS") kwargs.setdefault("SignalInputKey", overlayFlags.sigPrefix() + "MM_DIGITS") kwargs.setdefault("OutputKey", "MM_DIGITS") else: kwargs.setdefault("BkgInputKey", overlayFlags.dataStore() + "+MM_DIGITS") kwargs.setdefault("SignalInputKey", overlayFlags.evtStore() + "+MM_DIGITS") kwargs.setdefault("OutputKey", overlayFlags.outputStore() + "+MM_DIGITS") kwargs.setdefault("IntegrationWindow", 30) # in ns return CfgMgr.MM_Overlay(name, **kwargs)
def getBCMOverlay(name="BCMOverlay", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags kwargs.setdefault("isDataOverlay", overlayFlags.isDataOverlay()) if overlayFlags.isOverlayMT(): kwargs.setdefault("BkgInputKey", overlayFlags.bkgPrefix() + "BCM_RDOs") kwargs.setdefault("SignalInputKey", overlayFlags.sigPrefix() + "BCM_RDOs") kwargs.setdefault("OutputKey", "BCM_RDOs") else: kwargs.setdefault("BkgInputKey", overlayFlags.dataStore() + "+BCM_RDOs") kwargs.setdefault("SignalInputKey", overlayFlags.evtStore() + "+BCM_RDOs") kwargs.setdefault("OutputKey", overlayFlags.outputStore() + "+BCM_RDOs") return CfgMgr.BCMOverlay(name, **kwargs)
def getRpcTruthOverlay(name="RpcTruthOverlay", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isDataOverlay(): kwargs.setdefault("BkgInputKey", "") else: if overlayFlags.isOverlayMT(): kwargs.setdefault("BkgInputKey", overlayFlags.bkgPrefix() + "RPC_SDO") else: kwargs.setdefault("BkgInputKey", overlayFlags.dataStore() + "+RPC_SDO") if overlayFlags.isOverlayMT(): kwargs.setdefault("SignalInputKey", overlayFlags.sigPrefix() + "RPC_SDO") kwargs.setdefault("OutputKey", "RPC_SDO") else: kwargs.setdefault("SignalInputKey", overlayFlags.evtStore() + "+RPC_SDO") kwargs.setdefault("OutputKey", overlayFlags.outputStore() + "+RPC_SDO") return CfgMgr.MuonSimDataOverlay(name, **kwargs)
def getTRTSDOOverlay(name="TRTSDOOverlay", **kwargs): from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isOverlayMT(): if overlayFlags.isDataOverlay(): kwargs.setdefault("BkgInputKey", "") else: kwargs.setdefault("BkgInputKey", overlayFlags.bkgPrefix() + "TRT_SDO_Map") kwargs.setdefault("SignalInputKey", overlayFlags.sigPrefix() + "TRT_SDO_Map") kwargs.setdefault("OutputKey", "TRT_SDO_Map") else: if overlayFlags.isDataOverlay(): kwargs.setdefault("BkgInputKey", "") else: kwargs.setdefault("BkgInputKey", overlayFlags.dataStore() + "+TRT_SDO_Map") kwargs.setdefault("SignalInputKey", overlayFlags.evtStore() + "+TRT_SDO_Map") kwargs.setdefault("OutputKey", overlayFlags.outputStore() + "+TRT_SDO_Map") return CfgMgr.InDetSDOOverlay(name, **kwargs)
digitizationFlags.doInDetNoise=False # FIXME THIS SHOULD BE SET EARLIER IN THE CONFIGURATION #if overlayFlags.isDataOverlay(): # include( "InDetCosmicRecExample/InDetCosmicFlags_jobOptions.py" ) if DetFlags.overlay.pixel_on(): job += CfgGetter.getAlgorithm("PixelOverlayDigitization") job += CfgGetter.getAlgorithm("PixelOverlay") if DetFlags.overlay.Truth_on(): job += CfgGetter.getAlgorithm("PixelSDOOverlay") if overlayFlags.isDataOverlay(): if overlayFlags.isOverlayMT(): job.InDetPixelRawDataProvider.RDOKey = overlayFlags.bkgPrefix()+"PixelRDOs" else: job.InDetPixelRawDataProvider.RDOKey = overlayFlags.dataStore()+"+PixelRDOs" #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "PixelRDO_Container/PixelRDOs" ] #ServiceMgr.ByteStreamAddressProviderSvc.TypeNames += [ "Trk::PixelClusterContainer/PixelOnlineClusters" ] else: if not conddb.folderRequested('PIXEL/PixReco'): conddb.addFolder('PIXEL_OFL','/PIXEL/PixReco') if DetFlags.overlay.SCT_on(): # Setup the ReadCalibChip folders and Svc if overlayFlags.isDataOverlay(): #conddb.blockFolder("/SCT/DAQ/Calibration/ChipGain") #conddb.blockFolder("/SCT/DAQ/Calibration/ChipNoise") #conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipGain",forceMC=True) #conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipNoise",forceMC=True) conddb.addFolder("SCT_OFL","/SCT/DAQ/Calibration/ChipGain<tag>SctDaqCalibrationChipGain-Apr10-01</tag>",forceMC=True, className="CondAttrListCollection")
def TMEF_CscRawDataProviderTool(name="TMEF_CscRawDataProviderTool", **kwargs): kwargs.setdefault("Decoder", "CscROD_Decoder") from OverlayCommonAlgs.OverlayFlags import overlayFlags if DetFlags.overlay.CSC_on() and overlayFlags.isDataOverlay(): kwargs.setdefault("RdoLocation", overlayFlags.dataStore() + "+CSCRDO") return CfgMgr.Muon__CSC_RawDataProviderTool(name, **kwargs)
# real data RDO will require some changes in the setup for proper db acces #include( "LArDetDescr/LArDetDescr_joboptions.py" ) #include( "LArAthenaPool/LArAthenaPool_joboptions.py" ) # We also need the conditions svc for MC constants: if overlayFlags.isDataOverlay(): from LArROD.LArRODFlags import larRODFlags larRODFlags.keepDSPRaw = False from LArByteStream.LArByteStreamConf import LArRawDataReadingAlg try: #inhibit the reading of LArawChanels, they are created offline from the overlaid LArDigits: job.LArRawDataReadingAlg.LArRawChannelKey = "" #Configure the reading of the background digits from ByteStream if overlayFlags.isOverlayMT(): job.LArRawDataReadingAlg.LArDigitKey = "FREE" else: job.LArRawDataReadingAlg.LArDigitKey = overlayFlags.dataStore( ) + "+FREE" except AttributeError: #in case the LArRawDataReadingAlg was not set up by someone: if overlayFlags.isOverlayMT(): job += LArRawDataReadingAlg(LArRawChannelKey="", LArDigitKey="FREE") else: job += LArRawDataReadingAlg( LArRawChannelKey="", LArDigitKey=overlayFlags.dataStore() + "+FREE") pass from LArDigitization.LArDigitGetter import LArDigitGetter theLArDigitGetter = LArDigitGetter() if overlayFlags.isDataOverlay():
from AthenaCommon.GlobalFlags import globalflags if globalflags.isOverlay(): from TileRecUtils.TileDQstatusAlgDefault import TileDQstatusAlgDefault dqstatus = TileDQstatusAlgDefault() dqstatus.TileBeamElemContainer = "" # disable reading of trigger type from BeamElem container from OverlayCommonAlgs.OverlayFlags import overlayFlags if overlayFlags.isDataOverlay(): if overlayFlags.isOverlayMT(): dqstatus.TileDigitsContainer = overlayFlags.bkgPrefix( ) + "TileDigitsCnt" dqstatus.TileRawChannelContainer = overlayFlags.bkgPrefix( ) + "TileRawChannelCnt" else: dqstatus.TileDigitsContainer = overlayFlags.dataStore( ) + "+TileDigitsCnt" dqstatus.TileRawChannelContainer = overlayFlags.dataStore( ) + "+TileRawChannelCnt" else: dqstatus.TileDigitsContainer = "" # disable checking of Digits container size for bi-gain mode dqstatus.TileRawChannelContainer = "" # disable checking of DQstatus for simulated data from TileSimAlgs.TileDigitsGetter import * theTileDigitsGetter = TileDigitsGetter() from TileSimAlgs.TileSimAlgsConf import * theTileDigitsMaker = TileDigitsMaker() theTileDigitsMaker.UseCoolPulseShapes = True theTileDigitsMaker.MaskBadChannels = False
from StoreGate.StoreGateConf import StoreGateSvc from Digitization.DigitizationFlags import digitizationFlags from OverlayCommonAlgs.OverlayFlags import overlayFlags pileUpEventLoopMgr = PileUpEventLoopMgr(EventInfoName="Input_EventInfo") pileUpEventLoopMgr.OutStreamType = "AthenaOutputStream" printfunc("================ DetFlags ================ ") DetFlags.Print() if overlayFlags.isDataOverlay(): from InDetRecExample.InDetJobProperties import InDetFlags from ByteStreamCnvSvc import ReadByteStream include("RecExCommon/BSRead_config.py") ServiceMgr.EventSelector.Input = DataInputCollections ServiceMgr.ByteStreamInputSvc.EventStore = "StoreGateSvc/" + overlayFlags.dataStore( ) from AthenaKernel import StoreID ServiceMgr.ByteStreamAddressProviderSvc.StoreID = StoreID.UNKNOWN from EventSelectorAthenaPool.EventSelectorAthenaPoolConf import AthenaPoolAddressProviderSvc ServiceMgr += AthenaPoolAddressProviderSvc("AthenaPoolAddressProviderSvc") ServiceMgr.ProxyProviderSvc.ProviderNames += [ "AthenaPoolAddressProviderSvc" ] else: import AthenaPoolCnvSvc.ReadAthenaPool ServiceMgr.EventSelector.InputCollections = DataInputCollections # Set up data input pileUpEventLoopMgr.OrigSelector = "EventSelector" pileUpEventLoopMgr.firstXing = 0 pileUpEventLoopMgr.lastXing = 0