From 103288f6ea9bcd81d8644308472182f8a29cefe8 Mon Sep 17 00:00:00 2001 From: Pavol Strizenec <pavol.strizenec@cern.ch> Date: Thu, 23 Sep 2021 20:52:03 +0200 Subject: [PATCH 1/8] first trial --- .../LArCafJobs/python/LArNoiseConfig.py | 66 +++++++++++++++++++ .../LArCafJobs/python/LArNoiseFlags.py | 16 +++++ .../LArCafJobs/python/LArNoiseSkeleton.py | 59 +++++++++++++++++ .../python/LArShapeDumperSkeleton.py | 4 ++ .../share/LArNoiseBursts_fromraw_tf.py | 13 +--- .../LArCafJobs/share/LArNoiseBursts_tf.py | 19 +----- 6 files changed, 151 insertions(+), 26 deletions(-) create mode 100644 LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py create mode 100644 LArCalorimeter/LArCafJobs/python/LArNoiseFlags.py create mode 100644 LArCalorimeter/LArCafJobs/python/LArNoiseSkeleton.py diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py new file mode 100644 index 000000000000..57ac3df1ea4c --- /dev/null +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py @@ -0,0 +1,66 @@ +# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration + +from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator +from AthenaConfiguration.ComponentFactory import CompFactory + +def LArNoiseCfg(flags): + + result=ComponentAccumulator() + + + from LArGeoAlgsNV.LArGMConfig import LArGMCfg + result.merge(LArGMCfg(flags)) + from TileGeoModel.TileGMConfig import TileGMCfg + result.merge(TileGMCfg(flags)) + + #Setup cabling + from LArCabling.LArCablingConfig import LArOnOffIdMappingCfg + result.merge(LArOnOffIdMappingCfg(flags)) + # setup bad chan and missing febs + from LArBadChannelTool.LArBadChannelConfig import LArBadChannelCfg,LArBadFebCfg + LArBadChannelCfg(flags) + LArBadFebCfg(flags) + + from LumiBlockComps.BunchCrossingCondAlgConfig import BunchCrossingCondAlgCfg + result.merge(BunchCrossingCondAlgCfg(flags)) + + from CaloTools.CaloNoiseCondAlgConfig import CaloNoiseCondAlgCfg + result.merge(CaloNoiseCondAlgCfg(flags,"totalNoise")) + + from AthenaMonitoring.TriggerInterface import getTrigDecisionTool + result.merge(getTrigDecisionTool(flags)) + result.getPublicTool("TrigDecisionTool").TrigConfigSvc="TrigConf::TrigConfigSvc/TrigConfigSvc" + + + noiseAlg=CompFactory.LArNoiseBursts("LArNoiseBursts") + noiseAlg.SigmaCut = flags.LArNoise.SigmaCut + noiseAlg.NumberOfBunchesInFront = flags.LArNoise.NumberOfBunchesInFront + noiseAlg.KeepOnlyCellID = flags.LArNoise.KeepOnlyCellID + result.addEventAlgo(noiseAlg) + + if (flags.LArNoise.outNtupLAr!=""): + result.addService(CompFactory.THistSvc(Output=["TTREE DATAFILE='"+flags.LArNoise.outNtupLAr+"' OPT='RECREATE'",])) + + if (flags.LArNoise.HECNoiseNtup!=""): + result.addEventAlgo(CompFactory.LArHECNoise()) + if result.getService("THistSvc") != None: + result.getService("THistSvc").Output += ["HEC DATAFILE='"+flags.LArNoise.HECNoiseNtup+"' OPT='RECREATE'",] + else: + result.addService(CompFactory.THistSvc(Output=["HEC DATAFILE='"+flags.LArNoise.HECNoiseNtup+"' OPT='RECREATE'",])) + + return result + + +if __name__=="__main__": + + from AthenaConfiguration.AllConfigFlags import ConfigFlags + from LArNoiseFlags import addNoiseFlags + addNoiseFlags(ConfigFlags) + ConfigFlags.Input.Files=['/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/MetadataTests/data18/data18_13TeV.00363979.physics_Main.daq.ESD.0750._0001.pool.root'] + + from AthenaConfiguration.MainServicesConfig import MainServicesCfg + + cfg=MainServicesCfg(ConfigFlags) + cfg.merge(LArNoiseCfg(ConfigFlags)) + + cfg.run(10) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseFlags.py b/LArCalorimeter/LArCafJobs/python/LArNoiseFlags.py new file mode 100644 index 000000000000..06367b4b6edd --- /dev/null +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseFlags.py @@ -0,0 +1,16 @@ +# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration + +def addNoiseFlags(flags): + + flags.Input.isMC=False + + flags.addFlag("LArNoise.outNtupLAr","") + flags.addFlag("LArNoise.outHistLAr","") + flags.addFlag("LArNoise.HECNoiseNtup","") + flags.addFlag("LArNoise.SigmaCut",3.0) + flags.addFlag("LArNoise.NumberOfBunchesInFront",30) + flags.addFlag("LArNoise.KeepOnlyCellID",False) + + + + diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseSkeleton.py b/LArCalorimeter/LArCafJobs/python/LArNoiseSkeleton.py new file mode 100644 index 000000000000..ea359742d82a --- /dev/null +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseSkeleton.py @@ -0,0 +1,59 @@ +# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration + +import sys + +from PyJobTransforms.CommonRunArgsToFlags import commonRunArgsToFlags +from PyJobTransforms.TransformUtils import processPreExec, processPreInclude, processPostExec, processPostInclude +from LArCafJobs.LArNoiseConfig import LArNoiseCfg +from AthenaConfiguration.MainServicesConfig import MainServicesCfg + + +def fromRunArgs(runArgs): + from AthenaConfiguration.AllConfigFlags import ConfigFlags + + from LArCafJobs.LArNoiseFlags import addNoiseFlags + addNoiseFlags(ConfigFlags) + + commonRunArgsToFlags(runArgs, ConfigFlags) + + processPreInclude(runArgs, ConfigFlags) + processPreExec(runArgs, ConfigFlags) + + ConfigFlags.Input.Files=runArgs.inputESDFile + if hasattr(runArgs,"outputNTUP_LARNOISEFile"): + ConfigFlags.LArNoise.outNtupLAr=runArgs.outputNTUP_LARNOISEFile + + if hasattr(runArgs,"outputNTUP_HECNOISEFile"): + ConfigFlags.LArNoise.HECNoiseNtup=runArgs.outputNTUP_HECNOISEFile + + if not hasattr(runArgs,"conditionsTag") or runArgs.conditionsTag=="CURRENT": + print("Resolving 'CURRENT' express conditions tag ...") + #sys.path.append('/afs/cern.ch/user/a/atlcond/utils/python/') + #from AtlCoolBKLib import resolveAlias + #resolver=resolveAlias() + #currentGlobalES=resolver.getCurrentES().replace("*","ST") + #printfunc ("Found ",currentGlobalES) + #ConfigFlags.IOVDbSvc.GlobalTag=currentGlobalES + #ConfigFlags.IOVDb.GlobalTag="CURRENT" + else: + ConfigFlags.IOVDb.GlobalTag=runArgs.conditionsTag + + if hasattr(runArgs,"skipEvents"): + ConfigFlags.Exec.SkipEvents=runArgs.skipEvents + + if hasattr(runArgs,"maxEvents"): + ConfigFlags.Exec.MaxEvents=runArgs.maxEvents + + ConfigFlags.Trigger.doID=False + + ConfigFlags.lock() + + cfg=MainServicesCfg(ConfigFlags) + cfg.merge(LArNoiseCfg(ConfigFlags)) + + processPostInclude(runArgs, ConfigFlags, cfg) + processPostExec(runArgs, ConfigFlags, cfg) + + # Run the final accumulator + sc = cfg.run() + sys.exit(not sc.isSuccess()) diff --git a/LArCalorimeter/LArCafJobs/python/LArShapeDumperSkeleton.py b/LArCalorimeter/LArCafJobs/python/LArShapeDumperSkeleton.py index 499a270059ef..0e48760082dd 100644 --- a/LArCalorimeter/LArCafJobs/python/LArShapeDumperSkeleton.py +++ b/LArCalorimeter/LArCafJobs/python/LArShapeDumperSkeleton.py @@ -26,6 +26,10 @@ def fromRunArgs(runArgs): if hasattr(runArgs,"outputNTUP_HECNOISEFile"): ConfigFlags.LArShapeDump.HECNoiseNtup=runArgs.outputNTUP_HECNOISEFile + #protection for LArPEB event: + ConfigFlags.Trigger.L1.doMuon=False + ConfigFlags.Trigger.L1.doCalo=False + ConfigFlags.Trigger.L1.doTopo=False ConfigFlags.lock() diff --git a/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py b/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py index 62d987e98c6d..b49e7d30fcab 100755 --- a/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py +++ b/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py @@ -1,8 +1,6 @@ #!/usr/bin/env python -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration - -from __future__ import print_function +# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration __doc__ = """JobTransform to run LAr Noise Burst jobs""" @@ -16,7 +14,8 @@ import PyJobTransforms.trfArgClasses as trfArgClasses if __name__ == '__main__': executorSet = set() - executorSet.add(athenaExecutor(name = 'LArNoiseBursts_from_raw', skeletonFile = 'LArCafJobs/skeleton.LArNoise_fromraw.py', + executorSet.add(athenaExecutor(name = 'LArNoiseBursts_from_raw', skeletonFile = None, + skeletonCA='LArCafJobs.LArNoiseFromRawSkeleton.py', substep = 'r2e', inData = ['BS',], outData = ['NTUP_LARNOISE','NTUP_HECNOISE','HIST_LARNOISE'])) trf = transform(executor = executorSet) @@ -40,11 +39,5 @@ if __name__ == '__main__': help='Output Noise hist file', group='Hist Files') trf.parseCmdLineArgs(sys.argv[1:]) - - trf.execute() - print ("DataDict:") - print (trf.dataDictionary) - - trf.generateReport() diff --git a/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_tf.py b/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_tf.py index 872b2369c792..636b97395248 100755 --- a/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_tf.py +++ b/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_tf.py @@ -1,8 +1,6 @@ #!/usr/bin/env python -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration - -from __future__ import print_function +# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration __doc__ = """JobTransform to run LAr Noise Burst jobs""" @@ -16,9 +14,8 @@ import PyJobTransforms.trfArgClasses as trfArgClasses if __name__ == '__main__': executorSet = set() - executorSet.add(athenaExecutor(name = 'LArNoiseBursts_from_raw', skeletonFile = 'LArCafJobs/skeleton.LArNoise.py', - substep = 'r2e', inData = ['BS',], outData = ['NTUP_LARNOISE','NTUP_HECNOISE'])) - executorSet.add(athenaExecutor(name = 'LArNoiseBursts', skeletonFile = 'LArCafJobs/skeleton.LArNoise.py', + executorSet.add(athenaExecutor(name = 'LArNoiseBursts', skeletonFile = None, + skeletonCA='LArCafJobs.LArNoiseSkeleton', substep = 'e2a', inData = ['ESD',], outData = ['NTUP_LARNOISE','NTUP_HECNOISE'])) trf = transform(executor = executorSet) @@ -28,10 +25,6 @@ if __name__ == '__main__': type=trfArgClasses.argFactory(trfArgClasses.argPOOLFile, io='input'), help='Input pool file', group='Reco Files') - trf.parser.add_argument('--inputBSFile', nargs='+', - type=trfArgClasses.argFactory(trfArgClasses.argPOOLFile, io='input'), - help='Input BS file', group='Reco Files') - trf.parser.add_argument('--outputNTUP_LARNOISEFile', nargs='+', type=trfArgClasses.argFactory(trfArgClasses.argNTUPFile, io='output'), help='Output LAr Noise Burst file', group='Ntuple Files') @@ -41,11 +34,5 @@ if __name__ == '__main__': help='Output HECNoise file', group='Ntuple Files') trf.parseCmdLineArgs(sys.argv[1:]) - - trf.execute() - print ("DataDict:") - print (trf.dataDictionary) - - trf.generateReport() -- GitLab From 2252b2c5fd89ccaf25c641c8f0101c8a2ba9b0f0 Mon Sep 17 00:00:00 2001 From: Pavol Strizenec <pavol.strizenec@cern.ch> Date: Fri, 24 Sep 2021 17:18:45 +0200 Subject: [PATCH 2/8] LArNoise from ESD running --- .../LArCafJobs/python/LArNoiseConfig.py | 12 +++- .../LArCafJobs/python/LArNoiseFlags.py | 3 + .../python/LArNoiseFromRawSkeleton.py | 58 +++++++++++++++++++ .../LArCafJobs/python/LArNoiseSkeleton.py | 13 ++--- .../LArCafJobs/src/LArNoiseBursts.cxx | 1 + 5 files changed, 79 insertions(+), 8 deletions(-) create mode 100644 LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py index 57ac3df1ea4c..b9717bcd24b7 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py @@ -7,6 +7,8 @@ def LArNoiseCfg(flags): result=ComponentAccumulator() + from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg + result.merge(PoolReadCfg(flags)) from LArGeoAlgsNV.LArGMConfig import LArGMCfg result.merge(LArGMCfg(flags)) @@ -42,7 +44,15 @@ def LArNoiseCfg(flags): result.addService(CompFactory.THistSvc(Output=["TTREE DATAFILE='"+flags.LArNoise.outNtupLAr+"' OPT='RECREATE'",])) if (flags.LArNoise.HECNoiseNtup!=""): - result.addEventAlgo(CompFactory.LArHECNoise()) + hecAlg=CompFactory.LArHECNoise("LArHECNoise") + hecAlg.MinDigitADC = flags.LArNoise.MinDigitADC + hecAlg.MaxDeltaT = flags.LArNoise.MaxDeltaT + from IOVDbSvc.IOVDbSvcConfig import addFolders + result.merge(addFolders(flags, "/LAR/ElecCalibFlat/Pedestal", "LAR_ONL", className="CondAttrListCollection", db="CONDBR2")) + LArPedestalCondAlg = CompFactory.getComp("LArFlatConditionsAlg<LArPedestalFlat>") + result.addCondAlgo(LArPedestalCondAlg(ReadKey="/LAR/ElecCalibFlat/Pedestal", WriteKey="LArPedestal")) + + result.addEventAlgo(hecAlg) if result.getService("THistSvc") != None: result.getService("THistSvc").Output += ["HEC DATAFILE='"+flags.LArNoise.HECNoiseNtup+"' OPT='RECREATE'",] else: diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseFlags.py b/LArCalorimeter/LArCafJobs/python/LArNoiseFlags.py index 06367b4b6edd..90649ff51efe 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseFlags.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseFlags.py @@ -10,6 +10,9 @@ def addNoiseFlags(flags): flags.addFlag("LArNoise.SigmaCut",3.0) flags.addFlag("LArNoise.NumberOfBunchesInFront",30) flags.addFlag("LArNoise.KeepOnlyCellID",False) + #these are for LArHECNoise alg: + flags.addFlag("LArNoise.MinDigitADC",20) + flags.addFlag("LArNoise.MaxDeltaT",5) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py b/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py new file mode 100644 index 000000000000..55139c6d1a11 --- /dev/null +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py @@ -0,0 +1,58 @@ +# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration + +import sys + +from PyJobTransforms.CommonRunArgsToFlags import commonRunArgsToFlags +from PyJobTransforms.TransformUtils import processPreExec, processPreInclude, processPostExec, processPostInclude +from LArCafJobs.LArNoiseConfig import LArNoiseFromRawCfg +from AthenaConfiguration.MainServicesConfig import MainServicesCfg + + +def fromRunArgs(runArgs): + from AthenaConfiguration.AllConfigFlags import ConfigFlags + + from LArCafJobs.LArNoiseFlags import addNoiseFlags + addNoiseFlags(ConfigFlags) + + commonRunArgsToFlags(runArgs, ConfigFlags) + + processPreInclude(runArgs, ConfigFlags) + processPreExec(runArgs, ConfigFlags) + + ConfigFlags.Input.Files=runArgs.inputESDFile + if hasattr(runArgs,"outputNTUP_LARNOISEFile"): + ConfigFlags.LArNoise.outNtupLAr=runArgs.outputNTUP_LARNOISEFile + + if hasattr(runArgs,"outputNTUP_HECNOISEFile"): + ConfigFlags.LArNoise.HECNoiseNtup=runArgs.outputNTUP_HECNOISEFile + + if not hasattr(runArgs,"conditionsTag") or runArgs.conditionsTag=="CURRENT": + print("Resolving 'CURRENT' express conditions tag ...") + sys.path.append('/afs/cern.ch/user/a/atlcond/utils22/CondUtilsLib/') + from AtlCoolBKLib import resolveAlias + resolver=resolveAlias() + currentGlobalES=resolver.getCurrentES().replace("*","ST") + print("Found ",currentGlobalES) + ConfigFlags.IOVDb.GlobalTag=currentGlobalES + else: + ConfigFlags.IOVDb.GlobalTag=runArgs.conditionsTag + + if hasattr(runArgs,"skipEvents"): + ConfigFlags.Exec.SkipEvents=runArgs.skipEvents + + if hasattr(runArgs,"maxEvents"): + ConfigFlags.Exec.MaxEvents=runArgs.maxEvents + + ConfigFlags.Trigger.doID=False + + ConfigFlags.lock() + + cfg=MainServicesCfg(ConfigFlags) + cfg.merge(LArNoiseFromRawCfg(ConfigFlags)) + + processPostInclude(runArgs, ConfigFlags, cfg) + processPostExec(runArgs, ConfigFlags, cfg) + + # Run the final accumulator + sc = cfg.run() + sys.exit(not sc.isSuccess()) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseSkeleton.py b/LArCalorimeter/LArCafJobs/python/LArNoiseSkeleton.py index ea359742d82a..2098132c8a10 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseSkeleton.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseSkeleton.py @@ -28,13 +28,12 @@ def fromRunArgs(runArgs): if not hasattr(runArgs,"conditionsTag") or runArgs.conditionsTag=="CURRENT": print("Resolving 'CURRENT' express conditions tag ...") - #sys.path.append('/afs/cern.ch/user/a/atlcond/utils/python/') - #from AtlCoolBKLib import resolveAlias - #resolver=resolveAlias() - #currentGlobalES=resolver.getCurrentES().replace("*","ST") - #printfunc ("Found ",currentGlobalES) - #ConfigFlags.IOVDbSvc.GlobalTag=currentGlobalES - #ConfigFlags.IOVDb.GlobalTag="CURRENT" + sys.path.append('/afs/cern.ch/user/a/atlcond/utils22/') + from CondUtilsLib.AtlCoolBKLib import resolveAlias + resolver=resolveAlias() + currentGlobalES=resolver.getCurrentES().replace("*","ST") + print("Found ",currentGlobalES) + ConfigFlags.IOVDb.GlobalTag=currentGlobalES else: ConfigFlags.IOVDb.GlobalTag=runArgs.conditionsTag diff --git a/LArCalorimeter/LArCafJobs/src/LArNoiseBursts.cxx b/LArCalorimeter/LArCafJobs/src/LArNoiseBursts.cxx index fd09a31192c9..f2b6bec21ff6 100644 --- a/LArCalorimeter/LArCafJobs/src/LArNoiseBursts.cxx +++ b/LArCalorimeter/LArCafJobs/src/LArNoiseBursts.cxx @@ -265,6 +265,7 @@ StatusCode LArNoiseBursts::initialize() { ATH_CHECK( m_cablingKey.initialize() ); ATH_CHECK( m_BCKey.initialize() ); ATH_CHECK( m_totalNoiseKey.initialize() ); + ATH_CHECK( m_bcDataKey.initialize() ); // Retrieve online ID helper const LArOnlineID* LArOnlineIDHelper = nullptr; -- GitLab From ff98509f6e068adeae4f6fc8a86a8a70eb7b6c40 Mon Sep 17 00:00:00 2001 From: Pavol Strizenec <pavol.strizenec@cern.ch> Date: Sun, 26 Sep 2021 12:48:20 +0200 Subject: [PATCH 3/8] noise from raw --- .../LArCafJobs/python/LArNoiseConfig.py | 83 ++++++++++++++++++- .../python/LArNoiseFromRawSkeleton.py | 12 ++- 2 files changed, 90 insertions(+), 5 deletions(-) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py index b9717bcd24b7..ba3eb8a7dd9c 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py @@ -26,8 +26,8 @@ def LArNoiseCfg(flags): from LumiBlockComps.BunchCrossingCondAlgConfig import BunchCrossingCondAlgCfg result.merge(BunchCrossingCondAlgCfg(flags)) - from CaloTools.CaloNoiseCondAlgConfig import CaloNoiseCondAlgCfg - result.merge(CaloNoiseCondAlgCfg(flags,"totalNoise")) + from LArCellRec.LArCollisionTimeConfig import LArCollisionTimeCfg + result.merge(LArCollisionTimeCfg(flags)) from AthenaMonitoring.TriggerInterface import getTrigDecisionTool result.merge(getTrigDecisionTool(flags)) @@ -60,17 +60,92 @@ def LArNoiseCfg(flags): return result +def LArNoiseFromRawCfg(flags): + + result=ComponentAccumulator() + + from LArByteStream.LArRawDataReadingConfig import LArRawDataReadingCfg + result.merge(LArRawDataReadingCfg(flags)) + + #Setup cabling + from LArCabling.LArCablingConfig import LArOnOffIdMappingCfg + result.merge(LArOnOffIdMappingCfg(flags)) + # setup bad chan and missing febs + from LArBadChannelTool.LArBadChannelConfig import LArBadChannelCfg,LArBadFebCfg + LArBadChannelCfg(flags) + LArBadFebCfg(flags) + + from CaloRec.CaloRecoConfig import CaloRecoCfg + result.merge(CaloRecoCfg(ConfigFlags)) + + from LArCellRec.LArNoisyROSummaryConfig import LArNoisyROSummaryCfg + result.merge(LArNoisyROSummaryCfg(ConfigFlags)) + + from LumiBlockComps.BunchCrossingCondAlgConfig import BunchCrossingCondAlgCfg + result.merge(BunchCrossingCondAlgCfg(flags)) + + from CaloTools.CaloNoiseCondAlgConfig import CaloNoiseCondAlgCfg + result.merge(CaloNoiseCondAlgCfg(flags,"totalNoise")) + + from LArROD.LArFebErrorSummaryMakerConfig import LArFebErrorSummaryMakerCfg + result.merge(LArFebErrorSummaryMakerCfg(flags)) + result.getEventAlgo("LArFebErrorSummaryMaker").CheckAllFEB=False + + if (flags.LArNoise.outNtupLAr != "" or flags.LArNoise.HECNoiseNtup!=""): + from LArCellRec.LArTimeVetoAlgConfig import LArTimeVetoAlgCfg + result.merge(LArTimeVetoAlgCfg(flags)) + + from AthenaMonitoring.TriggerInterface import getTrigDecisionTool + result.merge(getTrigDecisionTool(flags)) + result.getPublicTool("TrigDecisionTool").TrigConfigSvc="TrigConf::TrigConfigSvc/TrigConfigSvc" + + + if (flags.LArNoise.outNtupLAr != ""): + noiseAlg=CompFactory.LArNoiseBursts("LArNoiseBursts") + noiseAlg.SigmaCut = flags.LArNoise.SigmaCut + noiseAlg.NumberOfBunchesInFront = flags.LArNoise.NumberOfBunchesInFront + noiseAlg.KeepOnlyCellID = flags.LArNoise.KeepOnlyCellID + result.addEventAlgo(noiseAlg) + + result.addService(CompFactory.THistSvc(Output=["TTREE DATAFILE='"+flags.LArNoise.outNtupLAr+"' OPT='RECREATE'",])) + + if (flags.LArNoise.HECNoiseNtup!=""): + hecAlg=CompFactory.LArHECNoise("LArHECNoise") + hecAlg.MinDigitADC = flags.LArNoise.MinDigitADC + hecAlg.MaxDeltaT = flags.LArNoise.MaxDeltaT + from IOVDbSvc.IOVDbSvcConfig import addFolders + result.merge(addFolders(flags, "/LAR/ElecCalibFlat/Pedestal", "LAR_ONL", className="CondAttrListCollection", db="CONDBR2")) + LArPedestalCondAlg = CompFactory.getComp("LArFlatConditionsAlg<LArPedestalFlat>") + result.addCondAlgo(LArPedestalCondAlg(ReadKey="/LAR/ElecCalibFlat/Pedestal", WriteKey="LArPedestal")) + + result.addEventAlgo(hecAlg) + if result.getService("THistSvc") != None: + result.getService("THistSvc").Output += ["HEC DATAFILE='"+flags.LArNoise.HECNoiseNtup+"' OPT='RECREATE'",] + else: + result.addService(CompFactory.THistSvc(Output=["HEC DATAFILE='"+flags.LArNoise.HECNoiseNtup+"' OPT='RECREATE'",])) + + if (flags.LArNoise.outHistLAr != ""): + from LArCellRec.LArNoisyROSummaryConfig import LArNoisyROSummaryCfg + result.merge(LArNoisyROSummaryCfg(flags,OutputKey="LArNoisyROSummary")) + from LArMonitoring.LArNoisyROMonAlg import LArNoisyROMonConfig + result.merge(LArNoisyROMonConfig(flags, inKey="LArNoisyROSummary")) + + return result + + if __name__=="__main__": from AthenaConfiguration.AllConfigFlags import ConfigFlags from LArNoiseFlags import addNoiseFlags addNoiseFlags(ConfigFlags) - ConfigFlags.Input.Files=['/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/MetadataTests/data18/data18_13TeV.00363979.physics_Main.daq.ESD.0750._0001.pool.root'] + #ConfigFlags.Input.Files=['/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/MetadataTests/data18/data18_13TeV.00363979.physics_Main.daq.ESD.0750._0001.pool.root'] + ConfigFlags.Input.Files=['/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/RecExOnline/data16_13TeV.00302347.express_express.merge.RAW._lb0432._SFO-ALL._0001.1'] from AthenaConfiguration.MainServicesConfig import MainServicesCfg cfg=MainServicesCfg(ConfigFlags) - cfg.merge(LArNoiseCfg(ConfigFlags)) + #cfg.merge(LArNoiseCfg(ConfigFlags)) + cfg.merge(LArNoiseFromRawCfg(ConfigFlags)) cfg.run(10) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py b/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py index 55139c6d1a11..c127b4e37708 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py @@ -19,7 +19,11 @@ def fromRunArgs(runArgs): processPreInclude(runArgs, ConfigFlags) processPreExec(runArgs, ConfigFlags) - ConfigFlags.Input.Files=runArgs.inputESDFile + ConfigFlags.Input.Files=runArgs.inputBSFile + + if hasattr(runArgs,"outputHIST_LARNOISEFile"): + ConfigFlags.LArNoise.outHistLAr=runArgs.outputHIST_LARNOISEFile + if hasattr(runArgs,"outputNTUP_LARNOISEFile"): ConfigFlags.LArNoise.outNtupLAr=runArgs.outputNTUP_LARNOISEFile @@ -44,6 +48,12 @@ def fromRunArgs(runArgs): ConfigFlags.Exec.MaxEvents=runArgs.maxEvents ConfigFlags.Trigger.doID=False + ConfigFlags.Trigger.doMuon=False + ConfigFlags.Trigger.doLVL1=False + ConfigFlags.Trigger.doL1Topo=False + ConfigFlags.Trigger.doHLT=False + + ConfigFlags.Calo.Cell.doDeadCellCorr=True ConfigFlags.lock() -- GitLab From 9f5dd70cc0a22f273cc837d4828260ca12ccd6c9 Mon Sep 17 00:00:00 2001 From: Pavol Strizenec <pavol.strizenec@cern.ch> Date: Sun, 26 Sep 2021 14:36:54 +0200 Subject: [PATCH 4/8] fixes --- .../LArCafJobs/python/LArNoiseConfig.py | 22 ++++++++++++------- .../python/LArNoiseFromRawSkeleton.py | 6 +++-- .../share/LArNoiseBursts_fromraw_tf.py | 2 +- 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py index ba3eb8a7dd9c..445d647b109e 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py @@ -63,6 +63,7 @@ def LArNoiseCfg(flags): def LArNoiseFromRawCfg(flags): result=ComponentAccumulator() + result.debugMode = "trackCA trackEventAlgo" from LArByteStream.LArRawDataReadingConfig import LArRawDataReadingCfg result.merge(LArRawDataReadingCfg(flags)) @@ -76,11 +77,8 @@ def LArNoiseFromRawCfg(flags): LArBadFebCfg(flags) from CaloRec.CaloRecoConfig import CaloRecoCfg - result.merge(CaloRecoCfg(ConfigFlags)) + result.merge(CaloRecoCfg(flags)) - from LArCellRec.LArNoisyROSummaryConfig import LArNoisyROSummaryCfg - result.merge(LArNoisyROSummaryCfg(ConfigFlags)) - from LumiBlockComps.BunchCrossingCondAlgConfig import BunchCrossingCondAlgCfg result.merge(BunchCrossingCondAlgCfg(flags)) @@ -95,9 +93,10 @@ def LArNoiseFromRawCfg(flags): from LArCellRec.LArTimeVetoAlgConfig import LArTimeVetoAlgCfg result.merge(LArTimeVetoAlgCfg(flags)) - from AthenaMonitoring.TriggerInterface import getTrigDecisionTool - result.merge(getTrigDecisionTool(flags)) - result.getPublicTool("TrigDecisionTool").TrigConfigSvc="TrigConf::TrigConfigSvc/TrigConfigSvc" + if (flags.LArNoise.outHistLAr == ""): + from AthenaMonitoring.TriggerInterface import getTrigDecisionTool + result.merge(getTrigDecisionTool(flags)) + result.getPublicTool("TrigDecisionTool").TrigConfigSvc="TrigConf::TrigConfigSvc/TrigConfigSvc" if (flags.LArNoise.outNtupLAr != ""): @@ -126,9 +125,16 @@ def LArNoiseFromRawCfg(flags): if (flags.LArNoise.outHistLAr != ""): from LArCellRec.LArNoisyROSummaryConfig import LArNoisyROSummaryCfg - result.merge(LArNoisyROSummaryCfg(flags,OutputKey="LArNoisyROSummary")) + result.merge(LArNoisyROSummaryCfg(flags)) from LArMonitoring.LArNoisyROMonAlg import LArNoisyROMonConfig + from AthenaCommon.Constants import DEBUG result.merge(LArNoisyROMonConfig(flags, inKey="LArNoisyROSummary")) + result.getEventAlgo("larNoisyROMonAlg").OutputLevel=DEBUG + + if result.getService("THistSvc") != None: + result.getService("THistSvc").Output += [" DATAFILE='"+flags.LArNoise.outHistLAr+"' OPT='RECREATE'",] + else: + result.addService(CompFactory.THistSvc(Output=[flags.DQ.FileKey+" DATAFILE='"+flags.LArNoise.outHistLAr+"' OPT='RECREATE'",])) return result diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py b/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py index c127b4e37708..551cdaa18d39 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py @@ -32,8 +32,8 @@ def fromRunArgs(runArgs): if not hasattr(runArgs,"conditionsTag") or runArgs.conditionsTag=="CURRENT": print("Resolving 'CURRENT' express conditions tag ...") - sys.path.append('/afs/cern.ch/user/a/atlcond/utils22/CondUtilsLib/') - from AtlCoolBKLib import resolveAlias + sys.path.append('/afs/cern.ch/user/a/atlcond/utils22/') + from CondUtilsLib.AtlCoolBKLib import resolveAlias resolver=resolveAlias() currentGlobalES=resolver.getCurrentES().replace("*","ST") print("Found ",currentGlobalES) @@ -60,6 +60,8 @@ def fromRunArgs(runArgs): cfg=MainServicesCfg(ConfigFlags) cfg.merge(LArNoiseFromRawCfg(ConfigFlags)) + #OFL LUMI tag not connected to ES tak, doing it here: + cfg.getService("IOVDbSvc").overrideTags+=['<prefix>/TRIGGER/OFLLUMI/OflPrefLumi</prefix><tag>OflPrefLumi-RUN2-UPD4-12</tag>'] processPostInclude(runArgs, ConfigFlags, cfg) processPostExec(runArgs, ConfigFlags, cfg) diff --git a/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py b/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py index b49e7d30fcab..de03fc7adef2 100755 --- a/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py +++ b/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py @@ -15,7 +15,7 @@ if __name__ == '__main__': executorSet = set() executorSet.add(athenaExecutor(name = 'LArNoiseBursts_from_raw', skeletonFile = None, - skeletonCA='LArCafJobs.LArNoiseFromRawSkeleton.py', + skeletonCA='LArCafJobs.LArNoiseFromRawSkeleton', substep = 'r2e', inData = ['BS',], outData = ['NTUP_LARNOISE','NTUP_HECNOISE','HIST_LARNOISE'])) trf = transform(executor = executorSet) -- GitLab From ee4d4991c59d2006be5b0f1c52e247f581cbeff5 Mon Sep 17 00:00:00 2001 From: Pavol Strizenec <pavol.strizenec@cern.ch> Date: Sun, 26 Sep 2021 21:46:55 +0200 Subject: [PATCH 5/8] fixing output hist file --- LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py | 5 ----- LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py | 1 + 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py index 445d647b109e..7b35dbaa1f71 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py @@ -131,11 +131,6 @@ def LArNoiseFromRawCfg(flags): result.merge(LArNoisyROMonConfig(flags, inKey="LArNoisyROSummary")) result.getEventAlgo("larNoisyROMonAlg").OutputLevel=DEBUG - if result.getService("THistSvc") != None: - result.getService("THistSvc").Output += [" DATAFILE='"+flags.LArNoise.outHistLAr+"' OPT='RECREATE'",] - else: - result.addService(CompFactory.THistSvc(Output=[flags.DQ.FileKey+" DATAFILE='"+flags.LArNoise.outHistLAr+"' OPT='RECREATE'",])) - return result diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py b/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py index 551cdaa18d39..5eb8d9526ba2 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseFromRawSkeleton.py @@ -23,6 +23,7 @@ def fromRunArgs(runArgs): if hasattr(runArgs,"outputHIST_LARNOISEFile"): ConfigFlags.LArNoise.outHistLAr=runArgs.outputHIST_LARNOISEFile + ConfigFlags.Output.HISTFileName =runArgs.outputHIST_LARNOISEFile if hasattr(runArgs,"outputNTUP_LARNOISEFile"): ConfigFlags.LArNoise.outNtupLAr=runArgs.outputNTUP_LARNOISEFile -- GitLab From 01e5e3c1d583e25d505dc077775dfc85715ca126 Mon Sep 17 00:00:00 2001 From: Pavol Strizenec <pavol.strizenec@cern.ch> Date: Sun, 26 Sep 2021 21:49:27 +0200 Subject: [PATCH 6/8] removing debug --- LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py index 7b35dbaa1f71..7781ddd16fb7 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py @@ -127,9 +127,9 @@ def LArNoiseFromRawCfg(flags): from LArCellRec.LArNoisyROSummaryConfig import LArNoisyROSummaryCfg result.merge(LArNoisyROSummaryCfg(flags)) from LArMonitoring.LArNoisyROMonAlg import LArNoisyROMonConfig - from AthenaCommon.Constants import DEBUG + #from AthenaCommon.Constants import DEBUG result.merge(LArNoisyROMonConfig(flags, inKey="LArNoisyROSummary")) - result.getEventAlgo("larNoisyROMonAlg").OutputLevel=DEBUG + #result.getEventAlgo("larNoisyROMonAlg").OutputLevel=DEBUG return result -- GitLab From b4a6dd22558d2601beee19208b8e2760ec89208c Mon Sep 17 00:00:00 2001 From: Pavol Strizenec <pavol.strizenec@cern.ch> Date: Tue, 28 Sep 2021 08:15:46 +0200 Subject: [PATCH 7/8] fixing output --- LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py | 2 -- LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py index 7781ddd16fb7..3173302eb4a0 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py @@ -127,9 +127,7 @@ def LArNoiseFromRawCfg(flags): from LArCellRec.LArNoisyROSummaryConfig import LArNoisyROSummaryCfg result.merge(LArNoisyROSummaryCfg(flags)) from LArMonitoring.LArNoisyROMonAlg import LArNoisyROMonConfig - #from AthenaCommon.Constants import DEBUG result.merge(LArNoisyROMonConfig(flags, inKey="LArNoisyROSummary")) - #result.getEventAlgo("larNoisyROMonAlg").OutputLevel=DEBUG return result diff --git a/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py b/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py index de03fc7adef2..b7887da5c155 100755 --- a/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py +++ b/LArCalorimeter/LArCafJobs/share/LArNoiseBursts_fromraw_tf.py @@ -35,7 +35,7 @@ if __name__ == '__main__': help='Output HECNoise file', group='Ntuple Files') trf.parser.add_argument('--outputHIST_LARNOISEFile', nargs='+', - type=trfArgClasses.argFactory(trfArgClasses.argHISTFile, io='output'), + type=trfArgClasses.argFactory(trfArgClasses.argHISTFile, io='output',countable=False), help='Output Noise hist file', group='Hist Files') trf.parseCmdLineArgs(sys.argv[1:]) -- GitLab From 07557c9380b31517cc92ae39ed2c0872ca785590 Mon Sep 17 00:00:00 2001 From: Pavol Strizenec <pavol.strizenec@cern.ch> Date: Sat, 2 Oct 2021 17:14:23 +0200 Subject: [PATCH 8/8] warning fix --- LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py index 3173302eb4a0..8da1782b7c32 100644 --- a/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py +++ b/LArCalorimeter/LArCafJobs/python/LArNoiseConfig.py @@ -53,7 +53,7 @@ def LArNoiseCfg(flags): result.addCondAlgo(LArPedestalCondAlg(ReadKey="/LAR/ElecCalibFlat/Pedestal", WriteKey="LArPedestal")) result.addEventAlgo(hecAlg) - if result.getService("THistSvc") != None: + if result.getService("THistSvc") is not None: result.getService("THistSvc").Output += ["HEC DATAFILE='"+flags.LArNoise.HECNoiseNtup+"' OPT='RECREATE'",] else: result.addService(CompFactory.THistSvc(Output=["HEC DATAFILE='"+flags.LArNoise.HECNoiseNtup+"' OPT='RECREATE'",])) @@ -118,7 +118,7 @@ def LArNoiseFromRawCfg(flags): result.addCondAlgo(LArPedestalCondAlg(ReadKey="/LAR/ElecCalibFlat/Pedestal", WriteKey="LArPedestal")) result.addEventAlgo(hecAlg) - if result.getService("THistSvc") != None: + if result.getService("THistSvc") is not None: result.getService("THistSvc").Output += ["HEC DATAFILE='"+flags.LArNoise.HECNoiseNtup+"' OPT='RECREATE'",] else: result.addService(CompFactory.THistSvc(Output=["HEC DATAFILE='"+flags.LArNoise.HECNoiseNtup+"' OPT='RECREATE'",])) -- GitLab