diff --git a/Control/AthToolSupport/AsgTesting/utils/compareFlatTrees.cxx b/Control/AthToolSupport/AsgTesting/utils/compareFlatTrees.cxx index 3d19304d31348398a8399f9eb48190a45ff800e3..c30b5bbe08b8d66d887c3ca3d0da54613996fecd 100644 --- a/Control/AthToolSupport/AsgTesting/utils/compareFlatTrees.cxx +++ b/Control/AthToolSupport/AsgTesting/utils/compareFlatTrees.cxx @@ -389,8 +389,10 @@ int main ATLAS_NOT_THREAD_SAFE(int argc, char *argv[]) rp->GetLowerRefGraph()->SetMaximum(1.5); rp->GetLowYaxis()->SetNdivisions(505); - c1->SetTicks(0, 1); - c1->Update(); + if (valid) { + c1->SetTicks(0, 1); + c1->Update(); + } if (!fileOpen) { diff --git a/Control/AthenaCommon/python/CFElements.py b/Control/AthenaCommon/python/CFElements.py index e6176761b0b53bfd430aaaa71ef5bc7faefcd77e..ade652dab2b4d89b19b9b90cf42042c624b18168 100755 --- a/Control/AthenaCommon/python/CFElements.py +++ b/Control/AthenaCommon/python/CFElements.py @@ -223,26 +223,19 @@ def flatAlgorithmSequences( start ): __inner(start, c) return OrderedDict(c) -def flatSequencers( start, algsCollection=None ): - """ Returns dict of sequences keyed by name and containing list of it's members """ - def __inner( seq, collector ): - if compName(seq) not in collector: - collector[compName(seq)] = [] +def iterSequences( start ): + """Iterator of sequences and their algorithms from (and including) the `start` + sequence object. Do start from a sequence name use findSubSequence.""" + def __inner( seq ): for c in getSequenceChildren(seq): - isSeq = isSequence(c) - if not isSeq and algsCollection is not None and compName(c) in algsCollection: - collector[compName(seq)].append( algsCollection[compName(c)] ) - continue - collector[compName(seq)].append( c ) - if isSeq and compName(c) not in collector: - __inner( c, collector ) + yield c + if isSequence(c): + yield from __inner(c) + yield start + yield from __inner(start) - from collections import defaultdict - c = defaultdict(list) - __inner(start, c) - return c # self test import unittest @@ -288,15 +281,27 @@ class TestCF(object): owner = findOwningSequence( self.top, "SomeAlg0") self.assertEqual( compName(owner) , "top", "Wrong owner %s" % compName(owner) ) - def test_flatCollectors( self ): - flat = flatAlgorithmSequences( self.top ) - #print "here", flat.keys() - expected = [ "top", "nest2" ] - self.assertEqual( set( flat.keys() ), set( expected ), "To many or to few sequences in flat structure, present: %s expected: %s "% ( " ".join( flat.keys() ), " ".join( expected ) ) ) + def test_iterSequences( self ): + # Traverse from top + result = [seq.getName() for seq in iterSequences( self.top )] + self.assertEqual( result, ['top', 'nest1', 'nest2', 'deep_nest1', 'deep_nest2', + 'SomeAlg1', 'SomeAlg2', 'SomeAlg3', 'SomeAlg0'] ) - expected = [ "top", "nest1", "nest2", "deep_nest1", "deep_nest2" ] - flat = flatSequencers( self.top ) - self.assertEqual( set( flat.keys() ), set( expected ), "To many or to few sequences in flat structure, present: %s expected: %s "% ( " ".join( flat.keys() ), " ".join( expected ) ) ) + # Traverse from nested sequence + nest2 = findSubSequence( self.top, "nest2" ) + result = [seq.getName() for seq in iterSequences( nest2 )] + self.assertEqual( result, ['nest2', 'deep_nest1', 'deep_nest2', + 'SomeAlg1', 'SomeAlg2', 'SomeAlg3'] ) + + # Traverse empty sequence + deep_nest2 = findSubSequence( self.top, "deep_nest2" ) + result = [seq.getName() for seq in iterSequences( deep_nest2 )] + self.assertEqual( result, ['deep_nest2'] ) + + # Traverse from algorithm + alg1 = findAlgorithm( self.top, "SomeAlg1" ) + result = [seq.getName() for seq in iterSequences( alg1 )] + self.assertEqual( result, ['SomeAlg1'] ) def test_findAlgorithms( self ): a1 = findAlgorithm( self.top, "SomeAlg0" ) diff --git a/Control/AthenaConfiguration/python/AllConfigFlags.py b/Control/AthenaConfiguration/python/AllConfigFlags.py index 9660e40316e94193dd554868bf6aceedccbb0a44..93c3e48b6c763ead59e9880ea446253a4b97486e 100644 --- a/Control/AthenaConfiguration/python/AllConfigFlags.py +++ b/Control/AthenaConfiguration/python/AllConfigFlags.py @@ -282,9 +282,9 @@ def initConfigFlags(): #Digitization Flags: def __digitization(): - from Digitization.DigitizationConfigFlags import createDigitizationCfgFlags + from DigitizationConfig.DigitizationConfigFlags import createDigitizationCfgFlags return createDigitizationCfgFlags() - _addFlagsCategory(acf, "Digitization", __digitization, 'Digitization' ) + _addFlagsCategory(acf, "Digitization", __digitization, 'DigitizationConfig' ) #Overlay Flags: def __overlay(): diff --git a/Control/AthenaConfiguration/python/ComponentAccumulator.py b/Control/AthenaConfiguration/python/ComponentAccumulator.py index bdd33be7bdf4d8d179ea8e9e467ab17fa052341b..62f4683022ede6b9bbcdbd54ab744b4e19f1e3ea 100644 --- a/Control/AthenaConfiguration/python/ComponentAccumulator.py +++ b/Control/AthenaConfiguration/python/ComponentAccumulator.py @@ -2,11 +2,12 @@ # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration import GaudiConfig2 +from GaudiKernel.DataHandle import DataHandle import GaudiKernel.GaudiHandles as GaudiHandles from AthenaCommon.Logging import logging from AthenaCommon.Debugging import DbgStage -from AthenaCommon.CFElements import (isSequence, findSubSequence, findAlgorithm, flatSequencers, +from AthenaCommon.CFElements import (isSequence, findSubSequence, findAlgorithm, iterSequences, checkSequenceConsistency, findAllAlgorithmsByName, compName) from AthenaConfiguration.AccumulatorCache import AccumulatorCachable @@ -16,7 +17,6 @@ from AthenaConfiguration.DebuggingContext import (Context, raiseWithCurrentConte createContextForDeduplication) import atexit -from collections import OrderedDict from collections.abc import Sequence import sys @@ -117,7 +117,7 @@ class ComponentAccumulator(AccumulatorCachable): self._sequence = sequence self._allSequences = [self._sequence] - self._algorithms = {} #Flat algorithms list, useful for merging + self._algorithms = {} #Dictionary of algorithm instances keyed by name self._conditionsAlgs = [] #Unordered list of conditions algorithms + their private tools self._services = [] #List of service, not yet sure if the order matters here in the MT age self._servicesToCreate = [] @@ -305,7 +305,7 @@ class ComponentAccumulator(AccumulatorCachable): "comp": comp.getFullJobOptName(), "mode": "W", "prop": "ExtraOutputs"}) - from GaudiKernel.DataHandle import DataHandle + for prop, descr in comp._descriptors.items(): if isinstance(descr.default, DataHandle): io.append( {"type": descr.default.type(), @@ -528,11 +528,8 @@ class ComponentAccumulator(AccumulatorCachable): def getEventAlgos(self, seqName=None): """Get all algorithms within sequence""" - if seqName is None: - seq=self._sequence - else: - seq = findSubSequence(self._sequence, seqName ) - return list( OrderedDict.fromkeys( sum( flatSequencers( seq, algsCollection=self._algorithms ).values(), []) ).keys() ) + seq = self._sequence if seqName is None else findSubSequence(self._sequence, seqName ) + return [s for s in iterSequences(seq) if not isSequence(s)] def addCondAlgo(self,algo,primary=False,domain=None): """Add Conditions algorithm""" @@ -1050,18 +1047,17 @@ class ComponentAccumulator(AccumulatorCachable): # Recursively add properties of tools to JobOptionsSvc for v1 in v: getCompsToBeAdded(v1, namePrefix=name + ".") - elif ( - not isSequence(comp) and k != "Members" - ): # This property is handled separately + else: # For a list of DataHandle, we need to stringify # each element individually. Otherwise, we get the repr # version of the elements, which Gaudi JO will choke on. - from GaudiKernel.DataHandle import DataHandle if isinstance(v, list) and v and isinstance(v[0], DataHandle): v = [str(x) for x in v] + # For sequences, need to convert the list of algs to names + elif isSequence(comp) and k == "Members": + v = [alg.getFullJobOptName() for alg in comp.Members] vstr = "" if v is None else str(v) bshPropsToSet.append((name, k, vstr)) - try: from AthenaPython import PyAthenaComps @@ -1071,7 +1067,7 @@ class ComponentAccumulator(AccumulatorCachable): PyAlg = type(None) PySvc = type(None) - # Services: + # Services for svc in self._services: if svc.getName() != "MessageSvc": # MessageSvc will exist already! Needs special treatment getCompsToBeAdded(svc) @@ -1080,22 +1076,13 @@ class ComponentAccumulator(AccumulatorCachable): else: mspPropsToSet.update((k,str(v)) for k,v in svc._properties.items()) - #Algorithms - for seqName, algoList in flatSequencers(self._sequence, algsCollection=self._algorithms).items(): - seq = self.getSequence(seqName) - for k, v in seq._properties.items(): - if k != "Members": # This property is handled separately - vstr = "" if v is None else str(v) - bshPropsToSet.append((seqName, k, vstr)) - bshPropsToSet.append( - (seqName, "Members", str([alg.getFullJobOptName() for alg in algoList]),) - ) - for alg in algoList: - getCompsToBeAdded(alg) - if isinstance(alg, PyAlg): - alg.setup() + # Algorithms and Sequences + for alg in iterSequences(self._sequence): + getCompsToBeAdded(alg) + if isinstance(alg, PyAlg): + alg.setup() - #Cond-Algs + # Cond Algs condalgseq = [] for alg in self._conditionsAlgs: getCompsToBeAdded(alg) @@ -1104,11 +1091,11 @@ class ComponentAccumulator(AccumulatorCachable): alg.setup() bshPropsToSet.append(("AthCondSeq", "Members", str(condalgseq))) - #Public Tools: + # Public Tools for pt in self._publicTools: getCompsToBeAdded(pt, namePrefix="ToolSvc.") - #Auditors: + # Auditors for aud in self._auditors: getCompsToBeAdded(aud) diff --git a/Control/AthenaConfiguration/python/iconfTool/models/loaders.py b/Control/AthenaConfiguration/python/iconfTool/models/loaders.py index ddaaf6182e0b165e09af1bf574f58eaf1caca6f4..7cef798d5fb67796cf37bbfc290e6f9660762aa1 100755 --- a/Control/AthenaConfiguration/python/iconfTool/models/loaders.py +++ b/Control/AthenaConfiguration/python/iconfTool/models/loaders.py @@ -139,7 +139,8 @@ def types_in_properties(comp_name, value, dict_to_update): else: logger.debug("What is typeless comp? %s", value) if isinstance(value, dict): - [ types_in_properties(comp_name, v, dict_to_update) for v in value.values() ] + for v in value.values(): + types_in_properties(comp_name, v, dict_to_update) def collect_types(conf): @@ -464,8 +465,6 @@ def loadConfigFile(fname, args) -> Dict: if conf is None: sys.exit("Unable to load %s file" % fname) - known_types = collect_types(conf) - if args.includeComps or args.excludeComps or args.includeClasses or args.excludeClasses: logger.info(f"include/exclude comps like {args.includeComps}/{args.excludeComps}") conf = excludeIncludeComps(conf, args, args.follow) @@ -477,6 +476,7 @@ def loadConfigFile(fname, args) -> Dict: conf = renameComps(conf, args) if args.ignoreDefaults: + known_types = collect_types(conf) conf = ignoreDefaults(conf, args, known_types) if args.shortenDefaultComponents: @@ -531,7 +531,7 @@ class ComponentsDiffFileLoader: return ( first.get_name() == second.get_name() and first.x_pos == second.x_pos - and type(first) == type(second) + and type(first) is type(second) ) def mark_differences( diff --git a/Control/AthenaConfiguration/share/confTool.py b/Control/AthenaConfiguration/share/confTool.py index b53b4c728bde8364c6b285061790fc33e7540b0d..bae7451cc5d8c7cfd7ff6efffa141dfd8ad98342 100755 --- a/Control/AthenaConfiguration/share/confTool.py +++ b/Control/AthenaConfiguration/share/confTool.py @@ -55,6 +55,13 @@ def parse_args(): help="Don't report components existing in only one of the two configurations", action="store_true", ) + parser.add_argument( + "--ignoreOrder", + metavar="PROP", + action="append", + default=[], + help="Ignore order for sequence properties matching regex", + ) parser.add_argument( "--allComponentPrint", help="Print all component if there are differences in any of its properties", @@ -127,11 +134,12 @@ def parse_args(): print("Run with arguments:") print( "confTool.py", " ".join(sys.argv[1:])) - main(args) + return main(args) knownDifferences={} def main(args): + exit_code = 0 if not args.quiet and args.ignoreIrrelevant: print(f"Properties to ignore: {args.ignore}") color = fullColor() @@ -191,10 +199,9 @@ def main(args): global knownDifferences if args.knownDifferencesFile: knownDifferences = loadDifferencesFile(args.knownDifferencesFile) - _compareConfig(configRef, configChk, args, color) - - + exit_code = _compareConfig(configRef, configChk, args, color) != 0 + return exit_code def _print(conf, color): @@ -340,6 +347,7 @@ def _compareConfig(configRef, configChk, args, color): def _componentDescription(comp_name): return (comp_name+ " renamed from " + componentReverseRenamig[comp_name]) if comp_name in componentReverseRenamig else comp_name + countDifferent = 0 for component in allComps: if component not in configRef: if not args.ignoreMissing: @@ -368,7 +376,7 @@ def _compareConfig(configRef, configChk, args, color): else: print(f"{color.difference}Component", _componentDescription(component), f"may differ{color.reset}") if not args.allComponentPrint: - countDifferent = _compareComponent(refValue, chkValue, "\t", args, component, color) + countDifferent = _compareComponent(refValue, chkValue, "\t", args, component, "", color) if countDifferent == 0: print(" but all are suppressed by renaming/known differences/...") else: @@ -382,6 +390,7 @@ def _compareConfig(configRef, configChk, args, color): f"\t{color.second}Chk{color.reset}\t", sorted(configChk[component].items(), key=lambda kv: kv[0]), ) + return countDifferent def _parseNumericalValues(values): @@ -425,7 +434,7 @@ def _handleComponentsReanaming( refVal ): updatedRef.append(v) return updatedRef if isinstance(refVal, list) else updatedRef[0] -def _compareComponent(compRef, compChk, prefix, args, component, color): +def _compareComponent(compRef, compChk, prefix, args, component, propname, color): countDifferent=0 if isinstance(compRef, dict): allProps = list(set(compRef.keys()) | set(compChk.keys())) @@ -481,7 +490,7 @@ def _compareComponent(compRef, compChk, prefix, args, component, color): countDifferent += _compareIOVDbFolders(refVal, chkVal, "\t", args, color) else: countDifferent += _compareComponent( - refVal, chkVal, "\t" + prefix + ">> ", args, component, color + refVal, chkVal, "\t" + prefix + ">> ", args, component, prop, color ) elif isinstance(compRef, (list, tuple, set)) and len(compRef) > 1: @@ -508,16 +517,17 @@ def _compareComponent(compRef, compChk, prefix, args, component, color): if len(compRef) == len(compChk): if sorted(compRef) == sorted(compChk): - print( - f"{prefix} : {color.difference} ^^ Different order ^^ {color.reset}" - ) - countDifferent += 1 + if any(re.match(f"^{regex}$",f"{component}.{propname}") for regex in args.ignoreOrder): + print(f"{prefix} : {color.knowndifference} ^^ Different order ignored ^^ {color.reset}") + else: + print(f"{prefix} : {color.difference} ^^ Different order ^^ {color.reset}") + countDifferent += 1 else: for i, (refVal, chkVal) in enumerate(zip(compRef, compChk)): if refVal != chkVal: print(f"{prefix} : {color.first} {refVal} {color.reset} vs {color.second} {chkVal} {color.reset} {color.difference}<< at index {i} {color.reset}") countDifferent += _compareComponent( - refVal, chkVal, "\t" + prefix + ">> ", args, "", color + refVal, chkVal, "\t" + prefix + ">> ", args, "", "", color ) return countDifferent @@ -560,8 +570,8 @@ def _compareIOVDbFolders(compRef, compChk, prefix, args, color): refParsed.append(_parseIOVDbFolder(item)) for item in compChk: chkParsed.append(_parseIOVDbFolder(item)) - return _compareComponent(refParsed, chkParsed, prefix, args, "", color) + return _compareComponent(refParsed, chkParsed, prefix, args, "", "", color) if __name__ == "__main__": - parse_args() + sys.exit(parse_args()) diff --git a/Database/EventIndex/EventIndexProducer/python/POOL2EI_Lib.py b/Database/EventIndex/EventIndexProducer/python/POOL2EI_Lib.py index 8f03b1ce4883b1d96e48dac4ed2d19d59c91d5ea..8904f7328ed26b770156109eb4bbd60c21c255cc 100755 --- a/Database/EventIndex/EventIndexProducer/python/POOL2EI_Lib.py +++ b/Database/EventIndex/EventIndexProducer/python/POOL2EI_Lib.py @@ -822,14 +822,14 @@ class POOL2EI(PyAthena.Alg): del eInfoTrigger # ====================================================== - # Sel reference and Provenance + # Self reference and Provenance # ====================================================== Pstream_refs = {} # provenance references procTag = None # -- Stream references - dh = store.retrieve('DataHeader') + dh = store.retrieve('DataHeader', 'EventSelector') procTag = dh.getProcessTag() if procTag == "": diff --git a/ForwardDetectors/AFP/AFP_Digitization/python/AFP_DigitizationConfig.py b/ForwardDetectors/AFP/AFP_Digitization/python/AFP_DigitizationConfig.py index 3cf476f73e06b7704d96fbd298274ceec818128c..15fd3a87a4910e0006281b93fef63476a7d88903 100644 --- a/ForwardDetectors/AFP/AFP_Digitization/python/AFP_DigitizationConfig.py +++ b/ForwardDetectors/AFP/AFP_Digitization/python/AFP_DigitizationConfig.py @@ -7,7 +7,7 @@ from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest bunch crossing time for which interactions will be sent to the AFP Digitization code. @@ -92,7 +92,7 @@ def AFP_DigitizationBasicCfg(flags, **kwargs): if "PileUpTools" not in kwargs: PileUpTools = acc.popToolsAndMerge(AFP_DigitizationToolCfg(flags)) kwargs["PileUpTools"] = PileUpTools - from Digitization.PileUpToolsConfig import PileUpToolsCfg + from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg acc.merge(PileUpToolsCfg(flags, **kwargs)) return acc diff --git a/ForwardDetectors/ALFA/ALFA_Digitization/python/ALFA_DigitizationConfig.py b/ForwardDetectors/ALFA/ALFA_Digitization/python/ALFA_DigitizationConfig.py index 48cb19c763008815050fae078d117e8f42e575f3..987d38638bd4cb44a1c60a14d45e88e19c2c03ac 100644 --- a/ForwardDetectors/ALFA/ALFA_Digitization/python/ALFA_DigitizationConfig.py +++ b/ForwardDetectors/ALFA/ALFA_Digitization/python/ALFA_DigitizationConfig.py @@ -3,7 +3,7 @@ from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest bunch crossing time for which interactions will be sent # to the ALFA Digitization code. @@ -82,7 +82,7 @@ def ALFA_DigitizationBasicCfg(flags, **kwargs): if "PileUpTools" not in kwargs: PileUpTools = acc.popToolsAndMerge(ALFA_PileUpToolCfg(flags)) kwargs["PileUpTools"] = PileUpTools - from Digitization.PileUpToolsConfig import PileUpToolsCfg + from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg acc.merge(PileUpToolsCfg(flags, **kwargs)) return acc diff --git a/ForwardDetectors/LUCID/LUCID_Digitization/python/LUCID_DigitizationConfig.py b/ForwardDetectors/LUCID/LUCID_Digitization/python/LUCID_DigitizationConfig.py index bc049f6e612b4812aed17a1d071da8bb4b97b4fa..1af4d12cfadf42ee4d364a6813934e46c1db335c 100644 --- a/ForwardDetectors/LUCID/LUCID_Digitization/python/LUCID_DigitizationConfig.py +++ b/ForwardDetectors/LUCID/LUCID_Digitization/python/LUCID_DigitizationConfig.py @@ -3,7 +3,7 @@ from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest bunch crossing time for which interactions will be sent # to the LUCID Digitization code. @@ -86,7 +86,7 @@ def LUCID_DigitizationBasicCfg(flags, **kwargs): if "PileUpTools" not in kwargs: PileUpTools = acc.popToolsAndMerge(LUCID_PileUpToolCfg(flags)) kwargs["PileUpTools"] = PileUpTools - from Digitization.PileUpToolsConfig import PileUpToolsCfg + from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg acc.merge(PileUpToolsCfg(flags, **kwargs)) return acc diff --git a/ForwardDetectors/ZDC/ZDC_SimuDigitization/python/ZDC_SimuDigitizationConfig.py b/ForwardDetectors/ZDC/ZDC_SimuDigitization/python/ZDC_SimuDigitizationConfig.py index f6b6f2ed13ea2eb7f934f6013f5b8121e558edff..b0cf6596bc6b646fd754a055668e1e28dd874818 100644 --- a/ForwardDetectors/ZDC/ZDC_SimuDigitization/python/ZDC_SimuDigitizationConfig.py +++ b/ForwardDetectors/ZDC/ZDC_SimuDigitization/python/ZDC_SimuDigitizationConfig.py @@ -3,7 +3,7 @@ from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest bunch crossing time for which interactions will be sent # to the ZDC Digitization code. @@ -85,7 +85,7 @@ def ZDC_DigitizationBasicCfg(flags, **kwargs): if "PileUpTools" not in kwargs: PileUpTools = acc.popToolsAndMerge(ZDC_PileUpToolCfg(flags)) kwargs["PileUpTools"] = PileUpTools - from Digitization.PileUpToolsConfig import PileUpToolsCfg + from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg acc.merge(PileUpToolsCfg(flags, **kwargs)) from DetDescrCnvSvc.DetDescrCnvSvcConfig import DetDescrCnvSvcCfg acc.merge(DetDescrCnvSvcCfg(flags)) diff --git a/HLT/Trigger/TrigTransforms/TrigTransform/README.md b/HLT/Trigger/TrigTransforms/TrigTransform/README.md index e713bc73af17dab8c1d53c8cd2615e51d9bf8b0b..afdeae1c70e1d0a5f4f733746ed1b3cb646b9802 100644 --- a/HLT/Trigger/TrigTransforms/TrigTransform/README.md +++ b/HLT/Trigger/TrigTransforms/TrigTransform/README.md @@ -27,6 +27,9 @@ included in the setup. The transform is tested in the nightly tests and these give examples of which options are to be used: - [test_trigP1_v1PhysP1_T0MonTrf_build.py](https://gitlab.cern.ch/atlas/athena/-/blob/main/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_T0MonTrf_build.py) Running steps from BS as in Trigger Reprocessings - [test_trigP1_v1PhysP1_trfDbgStream_build.py](https://gitlab.cern.ch/atlas/athena/-/blob/main/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_trfDbgStream_build.py) Running the transform in the debug recovery mode +- [test_trigP1_v1PhysP1_noL1Sim_DB_UpDownRun_build.py](https://gitlab.cern.ch/atlas/athena/-/blob/main/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_noL1Sim_DB_UpDownRun_build.py) The last part of the test runs the transform from keys that have been entered into the ART TriggerDB. + - The command is hard to read from the test, so for example it is parsed into `Trig_reco_tf.py --useDB=True --DBserver=TRIGGERDBART --DBsmkey=3058 --DBl1pskey=20 --DBhltpskey=28 --prodSysBSRDO True --outputHIST_HLTMONFile=hltmon.root --athenaopts=--imf --maxEvents=50 --inputBS_RDOFile=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/TrigP1Test/data22_13p6TeV.00440499.physics_EnhancedBias.merge.RAW._lb0470._SFO-11._0001.1` + diff --git a/HLT/Trigger/TrigTransforms/TrigTransform/python/trigRecoExe.py b/HLT/Trigger/TrigTransforms/TrigTransform/python/trigRecoExe.py index 7b3843ce8b072c77faad5ac98996fbc6515c5667..79db48d6862719eaf01d42f6e62612b77dbda219 100644 --- a/HLT/Trigger/TrigTransforms/TrigTransform/python/trigRecoExe.py +++ b/HLT/Trigger/TrigTransforms/TrigTransform/python/trigRecoExe.py @@ -84,6 +84,20 @@ class trigRecoExecutor(athenaExecutor): else: msg.info('Asetup report: {0}'.format(asetupReport())) + # If legacy release, bring up centos7 container + OSSetupString = None + if asetupString is not None: + legacyOSRelease = asetupReleaseIsOlderThan(asetupString, 24) + currentOS = os.environ['ALRB_USER_PLATFORM'] + if legacyOSRelease and "centos7" not in currentOS: + OSSetupString = "centos7" + msg.info('Legacy release required for the substep {}, will setup a container running {}'.format(self._substep, OSSetupString)) + + # allow overriding the container OS using a flag + if 'runInContainer' in self.conf.argdict: + OSSetupString = self.conf.argdict['runInContainer'].returnMyValue(name=self._name, substep=self._substep, first=self.conf.firstExecutor) + msg.info('The step {} will be performed in a container running {}, as explicitly requested'.format(self._substep, OSSetupString)) + ## DBRelease configuration dbrelease = dbsetup = None if 'DBRelease' in self.conf.argdict: @@ -141,23 +155,16 @@ class trigRecoExecutor(athenaExecutor): if asetupString is None and dbgAsetupString is not None: asetupString = dbgAsetupString msg.info('Will use asetup string for debug stream analysis %s', dbgAsetupString) - - # If legacy release, bring up centos7 container - OSSetupString = None - legacyOSRelease = asetupReleaseIsOlderThan(asetupString, 24) - if asetupString is not None: + # If legacy release, bring up centos7 container + legacyOSRelease = asetupReleaseIsOlderThan(asetupString, 24) currentOS = os.environ['ALRB_USER_PLATFORM'] - if legacyOSRelease and "centos7" not in currentOS: - OSSetupString = "centos7" - msg.info('Legacy release required for the substep {}, will setup a container running {}'.format(self._substep, OSSetupString)) - - # allow overriding the container OS using a flag - if 'runInContainer' in self.conf.argdict: - OSSetupString = self.conf.argdict['runInContainer'].returnMyValue(name=self._name, substep=self._substep, first=self.conf.firstExecutor) - msg.info('The step {} will be performed in a container running {}, as explicitly requested'.format(self._substep, OSSetupString)) - if OSSetupString is not None and asetupString is None: - raise trfExceptions.TransformExecutionException(trfExit.nameToCode('TRF_EXEC_SETUP_FAIL'), - '--asetup must be used for the substep which requires --runInContainer') + if legacyOSRelease and "centos7" not in currentOS: + OSSetupString = "centos7" + msg.info('Legacy release required for the substep {}, will setup a container running {}'.format(self._substep, OSSetupString)) + # allow overriding the container OS using a flag + if 'runInContainer' in self.conf.argdict: + OSSetupString = self.conf.argdict['runInContainer'].returnMyValue(name=self._name, substep=self._substep, first=self.conf.firstExecutor) + msg.info('The step {} will be performed in a container running {}, as explicitly requested'.format(self._substep, OSSetupString)) # Set database in command line if it was missing if 'useDB' in self.conf.argdict and 'DBserver' not in self.conf.argdict and dbAlias: @@ -179,6 +186,11 @@ class trigRecoExecutor(athenaExecutor): raise trfExceptions.TransformExecutionException(trfExit.nameToCode('TRF_OUTPUT_FILE_ERROR'), f'Directory already contains files with expected output name format {expectedOutputFileName}, please remove/rename these first: {matchedOutputFileNames}') + # Sanity check: + if OSSetupString is not None and asetupString is None: + raise trfExceptions.TransformExecutionException(trfExit.nameToCode('TRF_EXEC_SETUP_FAIL'), + 'Athena version must be specified for the substep which requires running inside a container (either via --asetup or from DB)') + # Call athenaExecutor parent as the above overrides what athenaExecutor would have done super(athenaExecutor, self).preExecute(input, output) diff --git a/HighGranularityTimingDetector/HGTD_Digitization/HGTD_Digitization/python/HGTD_DigitizationConfig.py b/HighGranularityTimingDetector/HGTD_Digitization/HGTD_Digitization/python/HGTD_DigitizationConfig.py index 2a315f559fe0011378a3a91c4cf9ad2474757024..3f107ddcd656d4e33dc8c45a21bed692e86f487e 100644 --- a/HighGranularityTimingDetector/HGTD_Digitization/HGTD_Digitization/python/HGTD_DigitizationConfig.py +++ b/HighGranularityTimingDetector/HGTD_Digitization/HGTD_Digitization/python/HGTD_DigitizationConfig.py @@ -5,9 +5,9 @@ Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg # The earliest bunch crossing time for which interactions will be sent diff --git a/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/TRT_CalibAlgs/TRT_StrawStatus.h b/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/TRT_CalibAlgs/TRT_StrawStatus.h index 11fcf481e0cd9b6e29d7f6f9b70992e3c62e156d..1eeceba6b6c121b420f33730963608b111dec698 100644 --- a/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/TRT_CalibAlgs/TRT_StrawStatus.h +++ b/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/TRT_CalibAlgs/TRT_StrawStatus.h @@ -23,6 +23,11 @@ #include "StoreGate/ReadHandleKey.h" #include "TrkToolInterfaces/ITrackHoleSearchTool.h" #include "CxxUtils/checker_macros.h" +#include "TRT_ConditionsServices/ITRT_StrawStatusSummaryTool.h" + +#include "TRT_ConditionsServices/ITRT_StrawNeighbourSvc.h" +#include "TRT_ConditionsServices/ITRT_HWMappingSvc.h" +#include "TRT_ConditionsServices/ITRT_DCS_ConditionsSvc.h" #include <cstdlib> #include <string> @@ -34,10 +39,6 @@ class AtlasDetectorID; class Identifier; class TRT_ID; -class ITRT_StrawNeighbourSvc; -class ITRT_StrawStatusSummaryTool ; -class ITRT_HWMappingSvc; -class ITRT_DCS_ConditionsSvc; namespace InDet @@ -70,6 +71,25 @@ namespace InDet private: + // Decleare properties, servicies and tools + ServiceHandle<ITRT_HWMappingSvc> m_mapSvc {this,"HWMapSvc","TRT_HWMappingSvc","" }; + ServiceHandle<ITRT_DCS_ConditionsSvc> m_DCSSvc {this,"InDetTRT_DCS_ConditionsSvc","TRT_DCS_ConditionsSvc","" }; + ServiceHandle<ITRT_StrawNeighbourSvc> m_TRTStrawNeighbourSvc {this,"TRT_StrawNeighbourSvc","TRT_StrawNeighbourSvc","retrieve barrel and end-cap straw number later on, as well as DTMROC" }; + ToolHandle<ITRT_StrawStatusSummaryTool> m_TRTStrawStatusSummaryTool {this, "TRT_StrawStatusSummaryTool", "ITRT_StrawStatusSummaryTool", ""}; + ToolHandle<Trk::ITrackHoleSearchTool> m_trt_hole_finder {this, "trt_hole_finder", "Trk::ITrackHoleSearchTool", ""}; + PublicToolHandle<Trk::IUpdator> m_updator {this, "KalmanUpdator", "Trk::KalmanUpdator/TrkKalmanUpdator",""}; + + Gaudi::Property<double> m_locR_cut {this, "locR_cut", 1.4, ""}; + Gaudi::Property<int> m_skipBusyEvents {this, "skipBusyEvents", 0, ""}; + Gaudi::Property<int> m_printDetailedInformation {this, "printDetailedInformation", 0, ""}; + Gaudi::Property<std::string> m_fileName {this, "outputFileName", "TRT_StrawStatusOutput", ""}; + + // Declare Handles + SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey{this,"EventInfoKey","EventInfo","RHK to retrieve xAOD::EventInfo"}; + SG::ReadHandleKey<TRT_RDO_Container> m_rdoContainerKey{this,"RDO_ContainerKey","TRT_RDOs","RHK to retrieve TRT RDO's"}; + SG::ReadHandleKey<DataVector<Trk::Track>> m_tracksName{this,"tracksCollectionKey","CombinedInDetTracks","RHK to retrieve CombinedInDetTracks"}; + SG::ReadHandleKey<xAOD::VertexContainer> m_vxContainerKey{this,"VxContainerKey","PrimaryVertices","RHK to retrieve VX Primary candidates"}; + void clear(); void reportResults(); void printDetailedInformation(); @@ -94,27 +114,6 @@ namespace InDet ACCHITS_t *m_accumulateHits; const TRT_ID *m_TRTHelper; - - ServiceHandle<ITRT_HWMappingSvc> m_mapSvc; - ServiceHandle<ITRT_DCS_ConditionsSvc> m_DCSSvc; - ServiceHandle<ITRT_StrawNeighbourSvc> m_TRTStrawNeighbourSvc; - ToolHandle<ITRT_StrawStatusSummaryTool> m_TRTStrawStatusSummaryTool; - ToolHandle<Trk::ITrackHoleSearchTool> m_trt_hole_finder; - PublicToolHandle<Trk::IUpdator> m_updator - {this,"KalmanUpdator","Trk::KalmanUpdator/TrkKalmanUpdator",""}; - double m_locR_cut; - - SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey{this,"EventInfoKey","EventInfo","RHK to retrieve xAOD::EventInfo"}; - SG::ReadHandleKey<TRT_RDO_Container> m_rdoContainerKey{this,"RDO_ContainerKey","TRT_RDOs","RHK to retrieve TRT RDO's"}; - SG::ReadHandleKey<DataVector<Trk::Track>> m_tracksName{this,"tracksCollectionKey","CombinedInDetTracks","RHK to retrieve CombinedInDetTracks"}; - SG::ReadHandleKey<xAOD::VertexContainer> m_vxContainerKey{this,"VxContainerKey","PrimaryVertices","RHK to retrieve VX Primary candidates"}; - - std::string m_fileName; - int m_skipBusyEvents; - - /** member variables for algorithm properties: */ - int m_printDetailedInformation; - mutable std::atomic<int> m_printStatusCount{0}; }; } // end of namespace diff --git a/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/python/TRTCalibrationMgrConfig.py b/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/python/TRTCalibrationMgrConfig.py index 45af4ff370710f49d83d04cb395d5c98fa3332ff..03d1be97cf73a006d7e618160666669719a78aa3 100644 --- a/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/python/TRTCalibrationMgrConfig.py +++ b/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/python/TRTCalibrationMgrConfig.py @@ -39,6 +39,7 @@ def TRT_CalibrationMgrCfg(flags,name='TRT_CalibrationMgr',calibconstants='',**kw acc = ComponentAccumulator() kwargs.setdefault("DoCalibrate",False) + kwargs.setdefault("DoRefit",False) from TRT_CalibTools.TRTCalibToolsConfig import FillAlignTrkInfoCfg, FillAlignTRTHitsCfg, FitToolCfg kwargs.setdefault("AlignTrkTools", [acc.addPublicTool(acc.popToolsAndMerge(FillAlignTrkInfoCfg(flags))), @@ -59,22 +60,26 @@ def TRT_CalibrationMgrCfg(flags,name='TRT_CalibrationMgr',calibconstants='',**kw # acc.merge(addOverride('/TRT/Cond/Status','TRTCondStatus-empty-00-00')) # if a text file is in the arguments, use the constants in that instead of the DB - # if not calibconstants=="": + if not calibconstants=="": - # from TRT_ConditionsAlgs.TRT_ConditionsAlgsConfig import TRTCondWriteCfg - # acc.merge(TRTCondWriteCfg(flags,calibconstants)) + from TRT_ConditionsAlgs.TRT_ConditionsAlgsConfig import TRTCondWriteCfg + acc.merge(TRTCondWriteCfg(flags,calibconstants)) # add this algorithm to the configuration accumulator acc.addEventAlgo(CompFactory.TRTCalibrationMgr(name, **kwargs)) return acc -# FIXME - where is this tool used? Needs some feedback -def TRT_TrackHoleSearch(flags,name="TRT_TrackHoleSearch",**kwargs): - + +# FIXME - This needs to be moved to the InnerDetector/InDetRecTools/TRT_TrackHoleSearch/python/ +def TRTTrackHoleSearch(flags,name="TRT_TrackHoleSearch",**kwargs): + + acc = ComponentAccumulator() + from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg - acc = AtlasExtrapolatorCfg(flags) - kwargs.setdefault("extrapolator", acc.popToolsAndMerge(AtlasExtrapolatorCfg(flags))) + kwargs.setdefault("extrapolator", acc.addPublicTool(acc.popToolsAndMerge(AtlasExtrapolatorCfg(flags)))) + + kwargs.setdefault("use_conditions_svc",True) kwargs.setdefault("do_dump_bad_straw_log",False) kwargs.setdefault("begin_at_first_trt_hit",False) @@ -82,17 +87,23 @@ def TRT_TrackHoleSearch(flags,name="TRT_TrackHoleSearch",**kwargs): kwargs.setdefault("max_trailing_holes",1) kwargs.setdefault("locR_cut",-1) kwargs.setdefault("locR_sigma_cut",-1) - + + acc.setPrivateTools(CompFactory.TRTTrackHoleSearchTool(name, **kwargs)) return acc -# we need to recheck this, not fully sure - Sergi -def TRT_StrawStatusCfg(flags,name='InDet__TRT_StrawStatus',**kwargs) : - if "TRT_TrackHoleSearch" not in kwargs: - kwargs.setdefault("trt_hole_finder", acc.popToolsAndMerge(CompFactory.TRT_TrackHoleSearchCfg(flags, name = name))) - acc.addEventAlgo(CompFactory.TRT_CalibrationMgr("TRT_StrawStatus",**kwargs)) +def TRT_StrawStatusCfg(flags,name='InDet_TRT_StrawStatus',**kwargs) : + + acc = ComponentAccumulator() + + from TRT_ConditionsServices.TRT_ConditionsServicesConfig import TRT_StrawStatusSummaryToolCfg + kwargs.setdefault("TRT_StrawStatusSummaryTool", acc.popToolsAndMerge(TRT_StrawStatusSummaryToolCfg(flags))) + + kwargs.setdefault("trt_hole_finder", acc.popToolsAndMerge(TRTTrackHoleSearch(flags))) + + acc.addEventAlgo(CompFactory.InDet.TRT_StrawStatus(name,**kwargs)) return acc @@ -107,7 +118,7 @@ if __name__ == '__main__': flags.GeoModel.AtlasVersion = defaultGeometryTags.RUN3 flags.IOVDb.GlobalTag = "CONDBR2-BLKPA-2023-03" - flags.Exec.MaxEvents = 10 + flags.Exec.MaxEvents = 10 from AthenaConfiguration.DetectorConfigFlags import setupDetectorFlags setupDetectorFlags(flags, ['ID'], toggle_geometry=True) @@ -125,11 +136,12 @@ if __name__ == '__main__': from InDetConfig.TrackRecoConfig import InDetTrackRecoCfg acc.merge(InDetTrackRecoCfg(flags)) + # Algorithm to create the basic.root ntuple file acc.merge(TRT_CalibrationMgrCfg(flags)) + # Algorithm to generate the straw masking file + acc.merge(TRT_StrawStatusCfg(flags)) + import sys sys.exit(not acc.run().isSuccess()) - - - \ No newline at end of file diff --git a/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/src/TRT_StrawStatus.cxx b/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/src/TRT_StrawStatus.cxx index 2bead9b3049117ffad77aac042af88e51c72fb9e..b32ae3ee266dbed511ced0cdf127ca67bd2fbc10 100644 --- a/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/src/TRT_StrawStatus.cxx +++ b/InnerDetector/InDetCalibAlgs/TRT_CalibAlgs/src/TRT_StrawStatus.cxx @@ -19,13 +19,8 @@ #include "xAODEventInfo/EventInfo.h" -#include "TRT_ConditionsServices/ITRT_StrawNeighbourSvc.h" -#include "TRT_ConditionsServices/ITRT_StrawStatusSummaryTool.h" -#include "TRT_ConditionsServices/ITRT_HWMappingSvc.h" -#include "TRT_ConditionsServices/ITRT_DCS_ConditionsSvc.h" - #include "VxVertex/VxContainer.h" -#include "TRT_TrackHoleSearch/TRTTrackHoleSearchTool.h" + #include "TrkParameters/TrackParameters.h" #include "InDetRIO_OnTrack/PixelClusterOnTrack.h" @@ -46,26 +41,8 @@ InDet::TRT_StrawStatus::TRT_StrawStatus(const std::string& name, ISvcLocator* pS AthAlgorithm(name,pSvcLocator), m_nEvents(0), m_runNumber(0), m_accumulateHits(nullptr), -m_TRTHelper(nullptr), -m_mapSvc("TRT_HWMappingSvc",name), -m_DCSSvc("TRT_DCS_ConditionsSvc",name), -m_TRTStrawNeighbourSvc("TRT_StrawNeighbourSvc", name), // use this service to retrieve barrel and end-cap straw number later on, as well as DTMROC,.. -m_TRTStrawStatusSummaryTool("TRT_StrawStatusSummaryTool", this), -m_trt_hole_finder("TRTTrackHoleSearchTool"), -m_locR_cut(1.4), -m_fileName("TRT_StrawStatusOutput"), -m_skipBusyEvents(0), // for cosmics - reject events that are either showers or noise bursts -m_printDetailedInformation(0) // print the information on mapping as well as which straws are declared dead etc. -{ - declareProperty("outputFileName", m_fileName); - declareProperty("skipBusyEvents", m_skipBusyEvents); - declareProperty("trt_hole_finder", m_trt_hole_finder); - declareProperty("HWMapSvc", m_mapSvc); - declareProperty("InDetTRT_DCS_ConditionsSvc",m_DCSSvc); - declareProperty("locR_cut", m_locR_cut ); - declareProperty("printDetailedInformation", m_printDetailedInformation); - -} +m_TRTHelper(nullptr) +{} //================ Destructor ================================================= @@ -310,7 +287,7 @@ void InDet::TRT_StrawStatus::clear() { void InDet::TRT_StrawStatus::reportResults() { ATH_MSG_INFO( "InDet::TRT_StrawStatus::reportResults() for " << m_nEvents << " events." ); char fileName[300]; - snprintf(fileName, 299,"%s.%07d_newFormat.txt", m_fileName.c_str(), m_runNumber); + snprintf(fileName, 299,"%s.%07d_newFormat.txt", m_fileName.value().c_str(), m_runNumber); FILE *f = fopen(fileName, "w"); fprintf(f, "%d %d %d %d %d %d %d %d %d \n", 0, 0, 0, 0, 0, 0, 0, 0, m_nEvents); for (size_t i=0; i<2; i++) for (size_t j=0; j<32; j++) for (size_t k=0; k<nAllStraws; k++) { @@ -327,7 +304,7 @@ void InDet::TRT_StrawStatus::reportResults() { void InDet::TRT_StrawStatus::printDetailedInformation() { ATH_MSG_INFO( "InDet::TRT_StrawStatus::printDetailedInformation() " ); char fileName[300]; - snprintf(fileName, 299,"%s.%07d_printDetailedInformation.txt", m_fileName.c_str(), m_runNumber); + snprintf(fileName, 299,"%s.%07d_printDetailedInformation.txt", m_fileName.value().c_str(), m_runNumber); FILE *f = fopen(fileName, "w"); for (std::vector<Identifier>::const_iterator it = m_TRTHelper->straw_layer_begin(); it != m_TRTHelper->straw_layer_end(); ++it ) { for (int i=0; i<=m_TRTHelper->straw_max( *it); i++) { diff --git a/InnerDetector/InDetConfig/python/InDetTrackSelectorToolConfig.py b/InnerDetector/InDetConfig/python/InDetTrackSelectorToolConfig.py index 4fc65d6ae8f19d2500b2b051946a76882ca7a8b6..92fd345ad50f3bae6e8bc98a152510b60ae5861a 100644 --- a/InnerDetector/InDetConfig/python/InDetTrackSelectorToolConfig.py +++ b/InnerDetector/InDetConfig/python/InDetTrackSelectorToolConfig.py @@ -276,15 +276,16 @@ def InDetDetailedTrackSelectorToolCfg(flags,name="InDetDetailedTrackSelectorTool kwargs.setdefault("fitChi2OnNdfMax",50.0) kwargs.setdefault("z0Max",99999.0*mm) kwargs.setdefault("IPd0Max",10.0*mm) - kwargs.setdefault("IPd0Max",300.0*mm) + kwargs.setdefault("IPz0Max",300.0*mm) kwargs.setdefault("etaMax",2.1) kwargs.setdefault("nHitBLayer",0) kwargs.setdefault("nHitPix",2) kwargs.setdefault("nHitBLayerPlusPix",0) kwargs.setdefault("nHitSct",0) kwargs.setdefault("nHitSi",7) + kwargs.setdefault("nHitTrt",20) kwargs.setdefault("nHitTrtPlusOutliers",20) - kwargs.setdefault("nHitTrtPlusOutliersHighE",20) + kwargs.setdefault("nHitTrtPlusOutliersHighE",0) kwargs.setdefault("nHitTrtHighE",0) from TrkConfig.AtlasExtrapolatorConfig import InDetExtrapolatorCfg diff --git a/InnerDetector/InDetDigitization/BCM_Digitization/python/BCM_DigitizationConfig.py b/InnerDetector/InDetDigitization/BCM_Digitization/python/BCM_DigitizationConfig.py index 8aa4912d56771bef301c177a98310013a1240752..768c647f3c7086873230aeec68ddb226260ed137 100644 --- a/InnerDetector/InDetDigitization/BCM_Digitization/python/BCM_DigitizationConfig.py +++ b/InnerDetector/InDetDigitization/BCM_Digitization/python/BCM_DigitizationConfig.py @@ -8,9 +8,9 @@ from AthenaConfiguration.Enums import ProductionStep from RngComps.RandomServices import AthRNGSvcCfg from PixelGeoModel.PixelGeoModelConfig import PixelReadoutGeometryCfg from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest and last bunch crossing times for which interactions will be sent diff --git a/InnerDetector/InDetDigitization/FastSiDigitization/python/FastSiDigitizationConfig.py b/InnerDetector/InDetDigitization/FastSiDigitization/python/FastSiDigitizationConfig.py index ac995d55874a1c4a139bc348f688758723f7a15f..9a2dd34297d12448b1e0b255cdce1bf7c1455800 100644 --- a/InnerDetector/InDetDigitization/FastSiDigitization/python/FastSiDigitizationConfig.py +++ b/InnerDetector/InDetDigitization/FastSiDigitization/python/FastSiDigitizationConfig.py @@ -2,7 +2,7 @@ from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest bunch crossing time for which interactions will be sent diff --git a/InnerDetector/InDetDigitization/FastTRT_Digitization/python/FastTRT_DigitizationConfig.py b/InnerDetector/InDetDigitization/FastTRT_Digitization/python/FastTRT_DigitizationConfig.py index b9689895436494c77e7e97a52ee877c3ace97c5f..5a7ef4df527a139383140c93ae8a672047f293db 100644 --- a/InnerDetector/InDetDigitization/FastTRT_Digitization/python/FastTRT_DigitizationConfig.py +++ b/InnerDetector/InDetDigitization/FastTRT_Digitization/python/FastTRT_DigitizationConfig.py @@ -3,7 +3,7 @@ from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest bunch crossing time for which interactions will be sent # to the FastTRT Digitization code. diff --git a/InnerDetector/InDetDigitization/PixelDigitization/python/ITkPixelDigitizationConfig.py b/InnerDetector/InDetDigitization/PixelDigitization/python/ITkPixelDigitizationConfig.py index dad5f06fe04a85f17a8903a988399a53442c749c..18c06a72ebb2e9bc835273f8646a72a582a2b2d5 100644 --- a/InnerDetector/InDetDigitization/PixelDigitization/python/ITkPixelDigitizationConfig.py +++ b/InnerDetector/InDetDigitization/PixelDigitization/python/ITkPixelDigitizationConfig.py @@ -5,9 +5,9 @@ Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg from PixelConditionsAlgorithms.ITkPixelConditionsConfig import ( ITkPixelModuleConfigCondAlgCfg, ITkPixelChargeCalibCondAlgCfg, diff --git a/InnerDetector/InDetDigitization/PixelDigitization/python/PLR_DigitizationConfig.py b/InnerDetector/InDetDigitization/PixelDigitization/python/PLR_DigitizationConfig.py index 7e0893d4cf1dd4119ed1ef319a841f5b48ba65a9..53cedf67b1712def5c55a25e85893adc91509303 100644 --- a/InnerDetector/InDetDigitization/PixelDigitization/python/PLR_DigitizationConfig.py +++ b/InnerDetector/InDetDigitization/PixelDigitization/python/PLR_DigitizationConfig.py @@ -5,9 +5,9 @@ Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg from PixelConditionsAlgorithms.PLR_ConditionsConfig import ( diff --git a/InnerDetector/InDetDigitization/PixelDigitization/python/PixelDigitizationConfig.py b/InnerDetector/InDetDigitization/PixelDigitization/python/PixelDigitizationConfig.py index 1a681905fe274ef4735b449e969fb796591b18f2..a59e133a5bac937403e1d8e81f066174a3e5119c 100644 --- a/InnerDetector/InDetDigitization/PixelDigitization/python/PixelDigitizationConfig.py +++ b/InnerDetector/InDetDigitization/PixelDigitization/python/PixelDigitizationConfig.py @@ -5,9 +5,9 @@ Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import LHCPeriod, ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg from PixelConditionsAlgorithms.PixelConditionsConfig import ( PixelConfigCondAlgCfg, PixelChargeCalibCondCfg, diff --git a/InnerDetector/InDetDigitization/SCT_Digitization/python/SCT_DigitizationConfig.py b/InnerDetector/InDetDigitization/SCT_Digitization/python/SCT_DigitizationConfig.py index 843a9632d3d8d35e5f1168b53c2c718997962747..3eae5e2a0ceebe7018bb789fb636739668b8e037 100644 --- a/InnerDetector/InDetDigitization/SCT_Digitization/python/SCT_DigitizationConfig.py +++ b/InnerDetector/InDetDigitization/SCT_Digitization/python/SCT_DigitizationConfig.py @@ -6,9 +6,9 @@ from AthenaCommon.Logging import logging from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import BeamType, ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg from SCT_ConditionsTools.SCT_ConditionsToolsConfig import SCT_ReadCalibChipDataCfg, SCT_SiliconConditionsCfg from SCT_GeoModel.SCT_GeoModelConfig import SCT_ReadoutGeometryCfg diff --git a/InnerDetector/InDetDigitization/StripDigitization/python/StripDigitizationConfig.py b/InnerDetector/InDetDigitization/StripDigitization/python/StripDigitizationConfig.py index 93f755fcc8d7257c2ec5b85813c8995de168581c..fdb0d8fa1ccf0e11fbdc8859c4a895f32b954be4 100644 --- a/InnerDetector/InDetDigitization/StripDigitization/python/StripDigitizationConfig.py +++ b/InnerDetector/InDetDigitization/StripDigitization/python/StripDigitizationConfig.py @@ -6,9 +6,9 @@ from AthenaCommon.Logging import logging from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import BeamType, ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg from SCT_ConditionsTools.ITkStripConditionsToolsConfig import ITkStripSiliconConditionsCfg #from SCT_ConditionsTools.ITkStripConditionsToolsConfig import ItkStripReadCalibChipDataCfg diff --git a/InnerDetector/InDetDigitization/TRT_Digitization/python/TRT_DigitizationConfig.py b/InnerDetector/InDetDigitization/TRT_Digitization/python/TRT_DigitizationConfig.py index f4203098249d2f510ceedf651354e53b7a8d2f04..6e69fce28bb823634bac9fe8363b25802e5597e6 100644 --- a/InnerDetector/InDetDigitization/TRT_Digitization/python/TRT_DigitizationConfig.py +++ b/InnerDetector/InDetDigitization/TRT_Digitization/python/TRT_DigitizationConfig.py @@ -9,9 +9,9 @@ from TRT_GeoModel.TRT_GeoModelConfig import TRT_ReadoutGeometryCfg from MagFieldServices.MagFieldServicesConfig import AtlasFieldCacheCondAlgCfg from TRT_PAI_Process.TRT_PAI_ProcessConfig import TRT_PAI_Process_XeToolCfg, TRT_PAI_Process_ArToolCfg, TRT_PAI_Process_KrToolCfg from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg # The earliest and last bunch crossing times for which interactions will be sent diff --git a/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/src/PixelPrepDataToxAOD.cxx b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/src/PixelPrepDataToxAOD.cxx index 49c2dec19f59128847e0df7093f5c938e376b47e..58567f2165b6e90eb24910da7a740de9bc342ea8 100644 --- a/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/src/PixelPrepDataToxAOD.cxx +++ b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/src/PixelPrepDataToxAOD.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ /////////////////////////////////////////////////////////////////// @@ -301,7 +301,7 @@ StatusCode PixelPrepDataToxAOD::execute() AUXDATA(xprd,char,gangedPixel) = (char)prd->gangedPixel(); const Trk::ClusterSplitProbabilityContainer::ProbabilityInfo & splitProb = splitProbContainer.isValid() ? splitProbContainer->splitProbability(prd) : Trk::ClusterSplitProbabilityContainer::getNoSplitProbability(); - AUXDATA(xprd,int,isSplit) = static_cast<int>(splitProb.isSplit()); + AUXDATA(xprd,char,isSplit) = static_cast<char>(splitProb.isSplit()); AUXDATA(xprd,float,splitProbability1) = splitProb.splitProbability1(); AUXDATA(xprd,float,splitProbability2) = splitProb.splitProbability2(); diff --git a/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/python/PixelRawDataByteStreamCnvConfig.py b/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/python/PixelRawDataByteStreamCnvConfig.py index fa735e9e5517cbbe68492318498ca5800a3008c0..86ca7b11ed9e2c25109416e86b919495c864743f 100644 --- a/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/python/PixelRawDataByteStreamCnvConfig.py +++ b/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/python/PixelRawDataByteStreamCnvConfig.py @@ -2,8 +2,15 @@ # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration # +from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from PixelConditionsAlgorithms.PixelConditionsConfig import PixelCablingCondAlgCfg, PixelHitDiscCnfgAlgCfg + +def PixelRawDataProviderToolCfg(flags, prefix="", suffix="", storeInDetTimeCollections=True): + acc = ComponentAccumulator() + decoder = CompFactory.PixelRodDecoder(CheckDuplicatedPixel = False if "data15" in flags.Input.ProjectName else True) + acc.setPrivateTools(CompFactory.PixelRawDataProviderTool(Decoder = decoder, StoreInDetTimeCollections = storeInDetTimeCollections)) + return acc def PixelRawDataProviderAlgCfg(flags, RDOKey="PixelRDOs", **kwargs): """ Main function to configure Pixel raw data decoding """ @@ -15,29 +22,25 @@ def PixelRawDataProviderAlgCfg(flags, RDOKey="PixelRDOs", **kwargs): from RegionSelector.RegSelToolConfig import regSelTool_Pixel_Cfg regSelTool = acc.popToolsAndMerge(regSelTool_Pixel_Cfg(flags)) + storeInDetTimeCollections = kwargs.pop("StoreInDetTimeCollections",True) + prefix = kwargs.pop("prefix","") suffix = kwargs.pop("suffix","") - decoder = CompFactory.PixelRodDecoder(name="PixelRodDecoder"+suffix, - CheckDuplicatedPixel = False if "data15" in flags.Input.ProjectName else True - ) - - providerTool = CompFactory.PixelRawDataProviderTool(name="PixelRawDataProviderTool"+suffix, - Decoder = decoder) - + providerTool = acc.popToolsAndMerge(PixelRawDataProviderToolCfg(flags, prefix, suffix, storeInDetTimeCollections)) acc.addEventAlgo(CompFactory.PixelRawDataProvider(RDOKey = RDOKey, - RegSelTool = regSelTool, - ProviderTool = providerTool, + RegSelTool = regSelTool, + ProviderTool = providerTool, **kwargs)) return acc -def TrigPixelRawDataProviderAlgCfg(flags, suffix, RoIs): - trigargs = { - 'name' : 'TrigPixelRawDataProvider'+suffix, - 'suffix' : suffix, - 'RoIs' : RoIs, - 'isRoI_Seeded': True, - 'RDOCacheKey' : 'PixRDOCache', - 'BSErrorsCacheKey' : 'PixBSErrCache' - } - return PixelRawDataProviderAlgCfg(flags, **trigargs) +def TrigPixelRawDataProviderAlgCfg(flags, suffix, RoIs, **kwargs): + kwargs.setdefault('name', 'TrigPixelRawDataProvider'+suffix) + kwargs.setdefault('prefix', "Trig") + kwargs.setdefault('suffix', suffix) + kwargs.setdefault('RoIs', RoIs) + kwargs.setdefault('isRoI_Seeded', True) + kwargs.setdefault('RDOCacheKey', 'PixRDOCache') + kwargs.setdefault('BSErrorsCacheKey', 'PixBSErrCache') + kwargs.setdefault('StoreInDetTimeCollections', False) + return PixelRawDataProviderAlgCfg(flags, **kwargs) diff --git a/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProviderTool.cxx b/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProviderTool.cxx index cd3b8cc7d3646affe4c69f32e5fcea6a343a3245..708cef4c7cc89622c5a26b2c982be6439209c58a 100644 --- a/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProviderTool.cxx +++ b/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProviderTool.cxx @@ -21,25 +21,16 @@ PixelRawDataProviderTool::PixelRawDataProviderTool(const std::string& type, cons declareInterface<IPixelRawDataProviderTool>(this); } -PixelRawDataProviderTool::~PixelRawDataProviderTool() {} - StatusCode PixelRawDataProviderTool::initialize() { - CHECK(AthAlgTool::initialize()); - ATH_MSG_DEBUG("PixelRawDataProviderTool::initialize()"); + ATH_CHECK(AthAlgTool::initialize()); ATH_CHECK(m_decoder.retrieve()); - ATH_MSG_INFO("Retrieved tool " << m_decoder); - ATH_CHECK(m_LVL1CollectionKey.initialize()); - ATH_CHECK(m_BCIDCollectionKey.initialize()); + ATH_CHECK(m_LVL1CollectionKey.initialize(m_storeInDetTimeColls)); + ATH_CHECK(m_BCIDCollectionKey.initialize(m_storeInDetTimeColls)); return StatusCode::SUCCESS; } -StatusCode PixelRawDataProviderTool::finalize() { - ATH_MSG_DEBUG("PixelRawDataProviderTool::finalize()"); - return StatusCode::SUCCESS; -} - StatusCode PixelRawDataProviderTool::convert(std::vector<const ROBFragment*>& vecRobs, IPixelRDO_Container* rdoIdc, IDCInDetBSErrContainer& decodingErrors, const EventContext& ctx ) const { if (vecRobs.size()==0) { return StatusCode::SUCCESS; } @@ -56,16 +47,18 @@ StatusCode PixelRawDataProviderTool::convert(std::vector<const ROBFragment*>& ve SG::WriteHandle<InDetTimeCollection> LVL1Collection; SG::WriteHandle<InDetTimeCollection> BCIDCollection; - // are we working on a new event ? - LVL1Collection = SG::makeHandle(m_LVL1CollectionKey,ctx); - ATH_CHECK(LVL1Collection.record(std::make_unique<InDetTimeCollection>())); - ATH_MSG_DEBUG("InDetTimeCollection " << LVL1Collection.name() << " registered in StoreGate"); - LVL1Collection->reserve(vecRobs.size()); - - BCIDCollection = SG::makeHandle(m_BCIDCollectionKey,ctx); - ATH_CHECK(BCIDCollection.record(std::make_unique<InDetTimeCollection>())); - ATH_MSG_DEBUG("InDetTimeCollection " << BCIDCollection.name() << " registered in StoreGate"); - BCIDCollection->reserve(vecRobs.size()); + if ( m_storeInDetTimeColls ) { + // are we working on a new event ? + LVL1Collection = SG::makeHandle(m_LVL1CollectionKey,ctx); + ATH_CHECK(LVL1Collection.record(std::make_unique<InDetTimeCollection>())); + ATH_MSG_DEBUG("InDetTimeCollection " << LVL1Collection.name() << " registered in StoreGate"); + LVL1Collection->reserve(vecRobs.size()); + + BCIDCollection = SG::makeHandle(m_BCIDCollectionKey,ctx); + ATH_CHECK(BCIDCollection.record(std::make_unique<InDetTimeCollection>())); + ATH_MSG_DEBUG("InDetTimeCollection " << BCIDCollection.name() << " registered in StoreGate"); + BCIDCollection->reserve(vecRobs.size()); + } #ifdef PIXEL_DEBUG ATH_MSG_DEBUG(" New event, reset the collection set"); @@ -78,6 +71,7 @@ StatusCode PixelRawDataProviderTool::convert(std::vector<const ROBFragment*>& ve ATH_MSG_DEBUG("Found ROB " << std::hex << robid << std::dec); #endif + if ( m_storeInDetTimeColls ) { unsigned int lvl1id = (*rob_it)->rod_lvl1_id(); LVL1Collection->emplace_back(robid,lvl1id) ; @@ -88,6 +82,8 @@ StatusCode PixelRawDataProviderTool::convert(std::vector<const ROBFragment*>& ve ATH_MSG_DEBUG("Stored LVL1ID "<<lvl1id<<" and BCID "<<bcid<<" in InDetTimeCollections"); #endif + } + // here the code for the timing monitoring should be reinserted // using 1 container per event and subdetector StatusCode sc = m_decoder->fillCollection(&**rob_it, rdoIdc, decodingErrors,nullptr,ctx); diff --git a/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProviderTool.h b/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProviderTool.h index f04a7222b93c6de0059b3a2ee4fde94ea9e3d913..0b789a30ca21bb32862734d233c84f38dac04e38 100644 --- a/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProviderTool.h +++ b/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProviderTool.h @@ -27,15 +27,9 @@ class PixelRawDataProviderTool : virtual public IPixelRawDataProviderTool, publi PixelRawDataProviderTool( const std::string& type, const std::string& name, const IInterface* parent ) ; - //! destructor - ~PixelRawDataProviderTool() ; - //! initialize StatusCode initialize() override; - //! finalize - StatusCode finalize() override; - //! this is the main decoding method StatusCode convert( std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*>& vecRobs, IPixelRDO_Container* rdoIdc, @@ -52,6 +46,7 @@ private: SG::WriteHandleKey<InDetTimeCollection> m_LVL1CollectionKey{this, "LVL1CollectionName", "PixelLVL1ID"}; SG::WriteHandleKey<InDetTimeCollection> m_BCIDCollectionKey{this, "BCIDCollectionName", "PixelBCID"}; + Gaudi::Property<bool> m_storeInDetTimeColls{this, "StoreInDetTimeCollections", true, "Store LVL1ID and BCID"}; mutable std::atomic_int m_DecodeErrCount; }; diff --git a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/python/SCT_RawDataByteStreamCnvConfig.py b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/python/SCT_RawDataByteStreamCnvConfig.py index 7da731e8f2042f022845d42af44c7b1dc480b832..6d3b4d190f6846eafce4c554d1324e912520af99 100644 --- a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/python/SCT_RawDataByteStreamCnvConfig.py +++ b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/python/SCT_RawDataByteStreamCnvConfig.py @@ -52,7 +52,8 @@ def TrigSCTRawDataProviderCfg(flags, suffix, RoIs): 'RoIs' : RoIs, 'isRoI_Seeded': True, 'RDOCacheKey' : 'SctRDOCache', - 'BSErrCacheKey' : 'SctBSErrCache' + 'BSErrCacheKey' : 'SctBSErrCache', + 'StoreInDetTimeCollections' : False, } dataPrepAcc = SCTRawDataProviderCfg(flags, **trigargs) diff --git a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.cxx b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.cxx index b0ac604005b2c371f3fda455e2a6710086567bf1..c6c86262c6ecf09cffd9dee15fd0636c05ad155e 100644 --- a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.cxx +++ b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.cxx @@ -48,8 +48,8 @@ StatusCode SCTRawDataProvider::initialize() //Initialize ATH_CHECK(m_rdoContainerKey.initialize()); - ATH_CHECK(m_lvl1CollectionKey.initialize()); - ATH_CHECK(m_bcIDCollectionKey.initialize()); + ATH_CHECK(m_lvl1CollectionKey.initialize(m_storeInDetTimeColls)); + ATH_CHECK(m_bcIDCollectionKey.initialize(m_storeInDetTimeColls)); ATH_CHECK(m_bsIDCErrContainerKey.initialize()); ATH_CHECK(m_rdoContainerCacheKey.initialize(!m_rdoContainerCacheKey.key().empty())); ATH_CHECK(m_bsErrContainerCacheKey.initialize(!m_bsErrContainerCacheKey.key().empty())); @@ -115,29 +115,32 @@ StatusCode SCTRawDataProvider::execute(const EventContext& ctx) const ATH_MSG_DEBUG("Number of ROB fragments " << vecROBFrags.size()); - SG::WriteHandle<InDetTimeCollection> lvl1Collection{m_lvl1CollectionKey, ctx}; - lvl1Collection = std::make_unique<InDetTimeCollection>(); - ATH_CHECK(lvl1Collection.isValid()); + if (m_storeInDetTimeColls) { + SG::WriteHandle<InDetTimeCollection> lvl1Collection; + SG::WriteHandle<InDetTimeCollection> bcIDCollection; + lvl1Collection = SG::makeHandle(m_lvl1CollectionKey,ctx); + bcIDCollection = SG::makeHandle(m_bcIDCollectionKey,ctx); - SG::WriteHandle<InDetTimeCollection> bcIDCollection{m_bcIDCollectionKey, ctx}; - bcIDCollection = std::make_unique<InDetTimeCollection>(); - ATH_CHECK(bcIDCollection.isValid()); - lvl1Collection->reserve(vecROBFrags.size()); - bcIDCollection->reserve(vecROBFrags.size()); + ATH_CHECK(lvl1Collection.record(std::make_unique<InDetTimeCollection>())); + ATH_CHECK(bcIDCollection.record(std::make_unique<InDetTimeCollection>())); - for (const ROBFragment* robFrag : vecROBFrags) { - // Store LVL1ID and BCID information in InDetTimeCollection - // to be stored in StoreGate at the end of the loop. - // We want to store a pair<ROBID, LVL1ID> for each ROD, once per event. - uint32_t robID{(robFrag)->rod_source_id()}; + lvl1Collection->reserve(vecROBFrags.size()); + bcIDCollection->reserve(vecROBFrags.size()); - unsigned int lvl1ID{(robFrag)->rod_lvl1_id()}; - lvl1Collection->emplace_back(robID, lvl1ID); + for (const ROBFragment* robFrag : vecROBFrags) { + // Store LVL1ID and BCID information in InDetTimeCollection + // to be stored in StoreGate at the end of the loop. + // We want to store a pair<ROBID, LVL1ID> for each ROD, once per event. + uint32_t robID{(robFrag)->rod_source_id()}; - unsigned int bcID{(robFrag)->rod_bc_id()}; - bcIDCollection->emplace_back(robID, bcID); + unsigned int lvl1ID{(robFrag)->rod_lvl1_id()}; + lvl1Collection->emplace_back(robID, lvl1ID); - ATH_MSG_DEBUG("Stored LVL1ID " << lvl1ID << " and BCID " << bcID << " in InDetTimeCollections"); + unsigned int bcID{(robFrag)->rod_bc_id()}; + bcIDCollection->emplace_back(robID, bcID); + + ATH_MSG_DEBUG("Stored LVL1ID " << lvl1ID << " and BCID " << bcID << " in InDetTimeCollections"); + } } if ( not hashIDs.empty() ) { diff --git a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.h b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.h index ea0d93fb0604e299aa91a8c260837842e86f1ae9..6cd06dc76c1add67b8000d9b2dbf97f204e1d2cc 100644 --- a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.h +++ b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.h @@ -130,6 +130,8 @@ class SCTRawDataProvider : public AthReentrantAlgorithm SG::UpdateHandleKey<SCT_RDO_Cache> m_rdoContainerCacheKey; SG::UpdateHandleKey<IDCInDetBSErrContainer_Cache> m_bsErrContainerCacheKey; + Gaudi::Property<bool> m_storeInDetTimeColls{this, "StoreInDetTimeCollections", true, "Store LVL1ID and BCID"}; + }; #endif // SCT_RAWDATABYTESTREAMCNV_SCTRAWDATAPROVIDER_H diff --git a/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/python/TRT_RawDataByteStreamCnvConfig.py b/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/python/TRT_RawDataByteStreamCnvConfig.py index 97cc3d88251f53deee2339e0f0cc751ae5ebe763..4e24a6d6251a47afff23afd273976be0cc879a8b 100644 --- a/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/python/TRT_RawDataByteStreamCnvConfig.py +++ b/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/python/TRT_RawDataByteStreamCnvConfig.py @@ -41,8 +41,11 @@ def TrigTRTRawDataProviderCfg(flags : AthConfigFlags, RoIs : str, **kwargs): suffix = flags.Tracking.ActiveConfig.input_name providerToolName = f"TrigTRTRawDataProviderTool_{suffix}" providerName = f"TrigTRTRawDataProvider_{suffix}" + + providerTool = CompFactory.TRTRawDataProviderTool(name = providerToolName, + StoreInDetTimeCollections = False) - kwargs.setdefault("ProviderTool", CompFactory.TRTRawDataProviderTool(name = providerToolName)) + kwargs.setdefault("ProviderTool", providerTool) kwargs.setdefault('isRoI_Seeded', True) kwargs.setdefault('RoIs', RoIs) kwargs.setdefault('RDOKey', 'TRT_RDOs_TRIG') diff --git a/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/src/TRTRawDataProviderTool.cxx b/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/src/TRTRawDataProviderTool.cxx index 88110a9d38da2e30dc36f13334bd887ba2209976..b9abf5315d5e90761c0160c1fe1e9acd82854bc9 100644 --- a/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/src/TRTRawDataProviderTool.cxx +++ b/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/src/TRTRawDataProviderTool.cxx @@ -26,19 +26,11 @@ using OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment; TRTRawDataProviderTool::TRTRawDataProviderTool ( const std::string& type, const std::string& name,const IInterface* parent ) : base_class( type, name, parent ), - m_decoder ("TRT_RodDecoder",this), - m_storeInDetTimeColls(true) + m_decoder ("TRT_RodDecoder",this) { declareProperty ("Decoder", m_decoder); - declareProperty ("StoreInDetTimeCollections", m_storeInDetTimeColls); } -// ------------------------------------------------------- -// destructor - -TRTRawDataProviderTool::~TRTRawDataProviderTool() -= default; - // ------------------------------------------------------- // initialize @@ -51,21 +43,12 @@ StatusCode TRTRawDataProviderTool::initialize() ATH_MSG_INFO( "Retrieved tool " << m_decoder ); //initialize write handles - ATH_CHECK(m_lvl1idkey.initialize()); - ATH_CHECK(m_bcidkey.initialize()); + ATH_CHECK(m_lvl1idkey.initialize(m_storeInDetTimeColls)); + ATH_CHECK(m_bcidkey.initialize(m_storeInDetTimeColls)); return StatusCode::SUCCESS; } -// ------------------------------------------------------- -// finalize - -StatusCode TRTRawDataProviderTool::finalize() -{ - ATH_CHECK( AlgTool::finalize() ); - return StatusCode::SUCCESS; -} - // ------------------------------------------------------- // convert method @@ -87,8 +70,7 @@ StatusCode TRTRawDataProviderTool::convert(const std::vector<const ROBFragment*> std::vector<const ROBFragment*>::const_iterator rob_it = vecRobs.begin(); - if ( m_storeInDetTimeColls ) - { + if ( m_storeInDetTimeColls ) { // Create Collections for per ROD vectors on L1ID and BCID LVL1Collection = std::make_unique<InDetTimeCollection>(); LVL1Collection->reserve(vecRobs.size()); @@ -137,8 +119,7 @@ StatusCode TRTRawDataProviderTool::convert(const std::vector<const ROBFragment*> /* * record per ROD L1ID and BCID collections */ - if ( m_storeInDetTimeColls ) - { + if ( m_storeInDetTimeColls ) { SG::WriteHandle<InDetTimeCollection> lvl1id(m_lvl1idkey,ctx); ATH_CHECK(lvl1id.record(std::move(LVL1Collection))); diff --git a/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/src/TRTRawDataProviderTool.h b/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/src/TRTRawDataProviderTool.h index 298273c593a1e710285fddab49409786fcae4394..02f006329b1614e4a8da742513bcd04d3af46e33 100644 --- a/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/src/TRTRawDataProviderTool.h +++ b/InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv/src/TRTRawDataProviderTool.h @@ -32,15 +32,9 @@ class TRTRawDataProviderTool : public extends<AthAlgTool, ITRTRawDataProviderToo TRTRawDataProviderTool( const std::string& type, const std::string& name, const IInterface* parent ) ; - //! destructor - virtual ~TRTRawDataProviderTool() ; - //! initialize virtual StatusCode initialize() override; - //! finalize - virtual StatusCode finalize() override; - //! this is the main decoding method virtual StatusCode convert(const std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*>& vecRobs, TRT_RDO_Container* rdoIdc, @@ -54,7 +48,7 @@ private: SG::WriteHandleKey<InDetTimeCollection> m_lvl1idkey{this,"LVL1IDKey","TRT_LVL1ID","TRT_LVL1ID out-key"}; SG::WriteHandleKey<InDetTimeCollection> m_bcidkey{this,"BCIDKey","TRT_BCID","TRT_BCID out-key"}; - bool m_storeInDetTimeColls; + Gaudi::Property<bool> m_storeInDetTimeColls{this, "StoreInDetTimeCollections", true, "Store LVL1ID and BCID"}; }; #endif diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/src/InDetPhysValTruthDecoratorAlg.cxx b/InnerDetector/InDetValidation/InDetPhysValMonitoring/src/InDetPhysValTruthDecoratorAlg.cxx index e758ef7bd716d7c6f7cdb4759061904dca962a40..bdba57e5fa26e038b0d86e3a6e773bbbc45533a7 100644 --- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/src/InDetPhysValTruthDecoratorAlg.cxx +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/src/InDetPhysValTruthDecoratorAlg.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ /** @@ -100,7 +100,7 @@ InDetPhysValTruthDecoratorAlg::execute(const EventContext &ctx) const { std::map<int, float>::iterator it; for (auto barcode = truth_barcode.begin(); barcode != truth_barcode.end(); ++barcode) { auto result = barcodeSCTclustercount.emplace( std::pair<int, float>(*barcode, 0.0) ); - if (!result.second) ++(result.first->second); + ++(result.first->second); } } } // Loop over SCT clusters @@ -114,7 +114,7 @@ InDetPhysValTruthDecoratorAlg::execute(const EventContext &ctx) const { std::map<int, float>::iterator it; for (auto barcode = truth_barcode.begin(); barcode != truth_barcode.end(); ++barcode) { auto result = barcodePIXclustercount.emplace( std::pair<int, float>(*barcode, 0.0) ); - if (!result.second) ++(result.first->second); + ++(result.first->second); } } } // Loop over PIX clusters diff --git a/LArCalorimeter/LArCellRec/CMakeLists.txt b/LArCalorimeter/LArCellRec/CMakeLists.txt index 971a0d499bc4f154e372c1597804da2aba3ce29d..ebb6904f122ab99904dfbee990765f9c4e8fd133 100644 --- a/LArCalorimeter/LArCellRec/CMakeLists.txt +++ b/LArCalorimeter/LArCellRec/CMakeLists.txt @@ -1,30 +1,20 @@ -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration +# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration # Declare the package name: atlas_subdir( LArCellRec ) # External dependencies: find_package( CLHEP ) -find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread ) -find_package( TBB ) #Component(s) in the package: atlas_add_component( LArCellRec src/*.cxx src/components/*.cxx - INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${TBB_INCLUDE_DIRS} - LINK_LIBRARIES ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} ${TBB_LIBRARIES} CaloConditions CaloDetDescrLib CaloEvent CaloIdentifier CaloInterfaceLib + INCLUDE_DIRS ${CLHEP_INCLUDE_DIRS} + LINK_LIBRARIES ${CLHEP_LIBRARIES} CaloConditions CaloDetDescrLib CaloEvent CaloIdentifier CaloInterfaceLib CaloUtilsLib AthAllocators AthenaBaseComps AthenaKernel StoreGateLib CxxUtils Identifier GaudiKernel LArIdentifier - LArRawEvent LArRecConditions CaloTriggerToolLib AthenaPoolUtilities xAODEventInfo xAODTrigL1Calo - LArRecEvent LArCablingLib LArElecCalib TrigT1CaloCalibConditions TrigT1CaloCondSvcLib ) + LArRawEvent LArRecConditions AthenaPoolUtilities xAODEventInfo + LArRecEvent LArCablingLib LArElecCalib ) # Install files from the package: atlas_install_python_modules( python/*.py POST_BUILD_CMD ${ATLAS_FLAKE8} ) -atlas_install_joboptions( share/*.py ) - -#atlas_add_test( LArBadFebMaskingTool_test -# SCRIPT test/LArBadFebMaskingTool_test.sh -# PROPERTIES TIMEOUT 600 -# LOG_IGNORE_PATTERN "LArDetectorToolNV|is still valid|no data retrieved|Database being retired|Reading file|Unable to locate catalog|Resolved path|DigitizationFlags|^Domain|created CondCont|no dictionary for class|^ +[+]|Reading LArPedestalMC|IOV callback|^DetectorStore|Cache alignment" ) - - diff --git a/LArCalorimeter/LArCellRec/python/LArCollisionTimeGetter.py b/LArCalorimeter/LArCellRec/python/LArCollisionTimeGetter.py deleted file mode 100644 index a175b97da2a9bda81c92cd64fd3832fbdc683728..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/python/LArCollisionTimeGetter.py +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration - -# -# @file LArCellRec/python/LArCollisionTimeGetter.py -# @author scott snyder <snyder@bnl.gov> -# @date Mar, 2010 -# @brief Configure algorithm to calculate LAr collision time variables. -# - - -from RecExConfig.Configured import Configured -from AthenaCommon.AlgSequence import AlgSequence - -class LArCollisionTimeGetter ( Configured ) : - _outputType = "LArCollisionTime" - _output = { _outputType : "LArCollisionTime" } - - - def __init__ (self, - seq = AlgSequence(), - *args, **kw): - self.seq = seq - Configured.__init__ (self, *args, **kw) - return - - - def configure(self): - from AthenaCommon.Logging import logging - mlog = logging.getLogger( 'LArNoisyROSummaryGetter::configure:' ) - mlog.info ('entering') - - import traceback - try: - from CaloTools.CaloNoiseCondAlg import CaloNoiseCondAlg - CaloNoiseCondAlg() - - from LArCellRec.LArCellRecConf import LArCollisionTimeAlg - from AthenaCommon.GlobalFlags import globalflags - self._handle = \ - LArCollisionTimeAlg("LArCollisionTimeAlg", - isMC = globalflags.DataSource != 'data', - cutIteration=False) - - # register output in objKeyStore - from RecExConfig.ObjKeyStore import objKeyStore - objKeyStore.addTransient (self.outputType(),self.outputKey()) - - self.seq += self._handle - except Exception: - mlog.error ("Error configuring LArCollisionTimeAlg.") - traceback.print_exc() - - return True - - - def handle (self): - return self._handle - - # would work only if one output object type - def outputKey(self): - return self._output[self._outputType] - - def outputType(self): - return self._outputType diff --git a/LArCalorimeter/LArCellRec/python/LArNoisyROFlags.py b/LArCalorimeter/LArCellRec/python/LArNoisyROFlags.py deleted file mode 100644 index cbde33b9c7f5658fbf6c1541534931ed7681004e..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/python/LArNoisyROFlags.py +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration - -from AthenaCommon.JobProperties import JobProperty, JobPropertyContainer -from AthenaCommon.JobProperties import jobproperties - -class CellQualityCut(JobProperty): - #Cut on cell quality factor - statusOn=True - allowedTypes=['float'] - StoredValue=4000 - pass - - -class BadChanPerFEB(JobProperty): - #Number of bad channels per Feb - statusOn=True - allowedTypes=['int'] - StoredValue=30 - pass - -class BadFEBCut(JobProperty): - #Number of bad febs per partition - statusOn=True - allowedTypes=['int'] - StoredValue=5 - pass - -class MNBLooseCut(JobProperty): - #Number of channels to declare MNB-Loose - statusOn=True - allowedTypes=['int'] - StoredValue=5 - pass - -class MNBTightCut(JobProperty): - #Number of channels to declare MNB-Tight - statusOn=True - allowedTypes=['int'] - StoredValue=17 - pass - -class MNBTight_PsVetoCut(JobProperty): - #Number of channels to declare MNB-Tight - statusOn=True - allowedTypes=['list'] - StoredValue=[13,3] - pass - - -class LArNoisyROFlags(JobPropertyContainer): - pass - -jobproperties.add_Container(LArNoisyROFlags) - - -jobproperties.LArNoisyROFlags.add_JobProperty(CellQualityCut) -jobproperties.LArNoisyROFlags.add_JobProperty(BadChanPerFEB) -jobproperties.LArNoisyROFlags.add_JobProperty(BadFEBCut) -jobproperties.LArNoisyROFlags.add_JobProperty(MNBLooseCut) -jobproperties.LArNoisyROFlags.add_JobProperty(MNBTightCut) -jobproperties.LArNoisyROFlags.add_JobProperty(MNBTight_PsVetoCut) - -larNoisyROFlags = jobproperties.LArNoisyROFlags diff --git a/LArCalorimeter/LArCellRec/python/LArNoisyROSummaryGetter.py b/LArCalorimeter/LArCellRec/python/LArNoisyROSummaryGetter.py deleted file mode 100755 index c5c6bda0285affe21bfad4f4524b0a44ee384497..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/python/LArNoisyROSummaryGetter.py +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration - -from RecExConfig.Configured import Configured -from AthenaCommon.GlobalFlags import globalflags -from LArCellRec.LArNoisyROFlags import larNoisyROFlags - -from LArCabling.LArCablingAccess import LArOnOffIdMapping - -class LArNoisyROSummaryGetter ( Configured ) : - _outputType = "LArNoisyROSummary" - _output = { _outputType : "LArNoisyROSummary" } - - - def configure(self): - from AthenaCommon.Logging import logging - mlog = logging.getLogger( 'LArNoisyROSummaryGetter::configure:' ) - mlog.info ('entering') - - # get handle to upstream CaloCell object - import traceback - try: - from CaloRec.CaloCellGetter import CaloCellGetter - theCaloCellGetter = CaloCellGetter() - except Exception: - mlog.error("could not get handle to CaloCell Quit") - traceback.print_exc() - return False - if not theCaloCellGetter.usable(): - if not self.ignoreConfigError(): - mlog.error("CaloCellGetter unusable. Quit.") - return False - else: - mlog.error("CaloCellGetter unusable. Continue nevertheless") - - LArOnOffIdMapping() # Set up cabling cond algo - - # now configure the algorithm - # cannot have same name - try: - from LArCellRec.LArCellRecConf import LArNoisyROAlg,LArNoisyROTool - except Exception: - mlog.error("could not import LArNoisyROAlg or LArNoisyROTool") - traceback.print_exc() - return False - - theLArNoisyROTool=LArNoisyROTool(CellQualityCut=larNoisyROFlags.CellQualityCut(), - BadChanPerFEB=larNoisyROFlags.BadChanPerFEB(), - BadFEBCut=larNoisyROFlags.BadFEBCut(), - MNBLooseCut=larNoisyROFlags.MNBLooseCut(), - MNBTightCut=larNoisyROFlags.MNBTightCut(), - MNBTight_PsVetoCut=larNoisyROFlags.MNBTight_PsVetoCut() - ) - - - theLArNoisyROAlg=LArNoisyROAlg() - theLArNoisyROAlg.Tool=theLArNoisyROTool - - self._LArNoisyROMakerHandle = theLArNoisyROAlg - theLArNoisyROAlg.OutputKey=self.outputKey() - - if globalflags.DataSource()=='geant4': - theLArNoisyROAlg.isMC = True - - # register output in objKeyStore - from RecExConfig.ObjKeyStore import objKeyStore - objKeyStore.addStreamESD(self.outputType(),self.outputKey()) - objKeyStore.addTransient(self.outputType(),self.outputKey()) - - # now add algorithm to topSequence - # this should always come at the end - - from AthenaCommon.AlgSequence import AlgSequence - topSequence = AlgSequence() - - topSequence += theLArNoisyROAlg - - return True - - def LArNoisyROMakerHandle(self): - return self._LArNoisyROMakerHandle - - -# would work only if one output object type - def outputKey(self): - return self._output[self._outputType] - - def outputType(self): - return self._outputType diff --git a/LArCalorimeter/LArCellRec/share/LArBadFebMaskingTool_test.py b/LArCalorimeter/LArCellRec/share/LArBadFebMaskingTool_test.py deleted file mode 100644 index 16d179624ee1978e03a33c216c2646b6ea8fc9ec..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/share/LArBadFebMaskingTool_test.py +++ /dev/null @@ -1,249 +0,0 @@ -# -# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration. -# -# File: LArCellRec/share/LArBadFebMaskingTool_test.py -# Author: sss -# Date: Aug, 2018 -# Brief: Unit test for LArBadFebMaskingTool. -# - - -from AthenaCommon.DetFlags import DetFlags -DetFlags.detdescr.LAr_setOn() - -from AthenaCommon.AthenaCommonFlags import athenaCommonFlags -athenaCommonFlags.isOnline.set_Value(True) - - -import sys -import string -from AtlasGeoModel import SetGeometryVersion -from AtlasGeoModel import GeoModelInit -from AtlasGeoModel import SetupRecoGeometry -include( "CaloIdCnv/CaloIdCnv_joboptions.py" ) - -from GeoModelSvc.GeoModelSvcConf import GeoModelSvc -ServiceMgr += GeoModelSvc() -theApp.CreateSvc += [ "GeoModelSvc"] -from AtlasGeoModel import LArGM - -from IOVDbSvc.IOVDbSvcConf import IOVDbSvc -IOVDbSvc().GlobalTag = 'OFLCOND-RUN12-SDR-35' - -include('LArConditionsCommon/LArConditionsCommon_MC_jobOptions.py') - -from AthenaCommon.AlgSequence import AlgSequence -topSequence = AlgSequence() - - -theApp.EvtMax=6 -BADFEB1 = (0, 1, 5, 2) # barrel_ec, pos_neg, feedthrough, slot -#BADFEB2 = (1, 0, 2, 3) # barrel_ec, pos_neg, feedthrough, slot -BADFEB3 = (1, 0, 3, 2) # barrel_ec, pos_neg, feedthrough, slot - - -import ROOT -from LArCellRec.LArCellRecConf import LArBadFebMaskingTool - -from AthenaCommon.AlgSequence import AlgSequence -topSequence = AlgSequence() - -# feb file format: -# barrel_ec pos_neg feedthrough slot flags -# 0 1 12 4 deadAll -# 1 0 16 9 deadReadout deadAll -# badfebs is a list of (barrel_ec, pos_neg, feedthrough, slot) tuples -def make_bad_channel_tool (name, badfebs = []): - from LArBadChannelTool.LArBadChannelToolConf import LArBadChanTool - febfile = '' - if badfebs: - febfile = name + '.badfebs' - f = open (febfile, 'w') - for (feb, err) in badfebs: - print >> f, feb[0], feb[1], feb[2], feb[3], err - f.close() - return LArBadChanTool (name, - ReadFromASCII = True, - WriteEmptyFolders = True, - CoolFolder = '', - ComplementaryCoolFolder = '', - CoolMissingFEBsFolder = '', - FEBfile = febfile) - - - -########################################################################### - - -def make_calo_cells (detStore): - mgr = detStore['CaloMgr'] - ccc = ROOT.CaloCellContainer() - for i in range (mgr.element_size()): - elt = mgr.get_element (ROOT.IdentifierHash (i)) - if not elt: break - cc = ROOT.CaloCell (elt, i, i+0.5, 10, 11, 1) - ccc.push_back (cc) - ROOT.SetOwnership (cc, False) - ccc.order() - ccc.updateCaloIterators() - return ccc - - -########################################################################### - - -from AthenaPython.PyAthenaComps import Alg, StatusCode -class TestAlg (Alg): - def __init__ (self, name): - Alg.__init__ (self, name) - return - def initialize (self): - ROOT.ICaloCellMakerTool - self.tool1 = ROOT.ToolHandle(ROOT.ICaloCellMakerTool)('LArBadFebMaskingTool/tool1') - self.tool2 = ROOT.ToolHandle(ROOT.ICaloCellMakerTool)('LArBadFebMaskingTool/tool2') - self.tool3 = ROOT.ToolHandle(ROOT.ICaloCellMakerTool)('LArBadFebMaskingTool/tool3') - - self.ccc = make_calo_cells (self.detStore) - self.onlineID = self.detStore['LArOnlineID'] - self.offlineID = self.detStore['CaloCell_ID'] - self.cabling = ROOT.ToolHandle(ROOT.LArCablingService)('LArCablingService') - if not self.tool1.retrieve(): - return StatusCode.Failure - if not self.tool2.retrieve(): - return StatusCode.Failure - if not self.tool3.retrieve(): - return StatusCode.Failure - if not self.cabling.retrieve(): - return StatusCode.Failure - return StatusCode.Success - - def execute (self): - iev = self.getContext().evt() - tool = self.tool1 - ccc = self.ccc - - if iev == 0: - # Event 0: no errors. - sum_errs = [] - exp_ef = 0 - exp_err = 0 - exp_errs = [] - - elif iev == 1: - # Event 1: Bad FEB summary error. - sum_errs = [(BADFEB1, 1<<ROOT.LArFebErrorSummary.EVTID)] - exp_ef = 16 # DATACORRUPTED - exp_err = ROOT.xAOD.EventInfo.Error - exp_errs = sum_errs - - elif iev == 2: - # Event 2: Bad chan tool deadAll. - tool = self.tool2 - sum_errs = [] - exp_ef = 0 - exp_err = 0 - exp_errs = [] - - elif iev == 3: - # Event 3: Bad chan tool inError - tool = self.tool3 - sum_errs = [] - exp_ef = 0 - exp_err = 0 - exp_errs = [(BADFEB3, 1)] - - elif iev == 4: - # Event 4: Bad FEB summary error suppressed by deadAll. - sum_errs = [(BADFEB1, 1<<ROOT.LArFebErrorSummary.EVTID)] - tool = self.tool2 - exp_ef = 0 - exp_err = 0 - exp_errs = sum_errs - - else: - # Event 5: empty cell container. - ccc = ROOT.CaloCellContainer() - sum_errs = [] - exp_ef = 16 # DATACORRUPTED - exp_err = ROOT.xAOD.EventInfo.Error - exp_errs = [] - - if not self.rec_feb_error_summary (sum_errs): - return StatusCode.Failure - ei = self.evtStore['EventInfo'] - if not tool.process (ccc): - return StatusCode.Failure - - LAr = ROOT.xAOD.EventInfo.LAr - - assert ei.eventFlags (LAr) == exp_ef - assert ei.errorState (LAr) == exp_err - self.check_and_reset_cells (ccc, exp_errs) - return StatusCode.Success - - - def rec_feb_error_summary (self, errs): - summary = ROOT.LArFebErrorSummary() - for (idtup, err) in errs: - febid = self.onlineID.feb_Id (*idtup) - ifeb = febid.get_identifier32().get_compact() - summary.set_feb_error (ifeb, err) - if not self.evtStore.record (summary, 'LArFebErrorSummary'): - return False - ROOT.SetOwnership (summary, False) - return True - - - def check_and_reset_cells (self, ccc, errs): - badcells = self.expand_errors (errs) - for c in ccc: - i = c.caloDDE().calo_hash().value() - err = badcells.get(i) - if err == None: - assert c.energy() == i - assert c.time() == i+0.5 - assert c.quality() == 10 - assert c.provenance() == 11 - else: - assert c.energy() == 0 - assert c.time() == 0 - assert c.quality() == 0 - assert c.provenance() == 0x800 + 11 - - c.setEnergy (i) - c.setTime (i+0.5) - c.setQuality (10) - c.setProvenance (11) - return - - - def expand_errors (self, errs): - badcells = {} - for (feb, err) in errs: - for chan in range(128): - chanid = self.onlineID.channel_Id (feb[0], - feb[1], - feb[2], - feb[3], - chan) - cellid = self.cabling.cnvToIdentifier (chanid) - cellhash = self.offlineID.calo_cell_hash (cellid) - badcells[cellhash.value()] = err - return badcells - - - - -tool1 = LArBadFebMaskingTool ('tool1') -ToolSvc += tool1 - -tool2 = LArBadFebMaskingTool ('tool2') -ToolSvc += tool2 - -tool3 = LArBadFebMaskingTool ('tool3') -ToolSvc += tool3 - -from xAODEventInfoCnv.xAODEventInfoCnvConf import xAODMaker__EventInfoCnvAlg -topSequence += xAODMaker__EventInfoCnvAlg() -topSequence += TestAlg ('testalg1') - diff --git a/LArCalorimeter/LArCellRec/share/LArBadFebMaskingTool_test.ref b/LArCalorimeter/LArCellRec/share/LArBadFebMaskingTool_test.ref deleted file mode 100644 index 7f35fcb182259c7d340697a54202b9d1c4132391..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/share/LArBadFebMaskingTool_test.ref +++ /dev/null @@ -1,540 +0,0 @@ -Tue Oct 2 16:53:28 CEST 2018 -Preloading tcmalloc_minimal.so -Py:Athena INFO including file "AthenaCommon/Preparation.py" -Py:Athena INFO using release [WorkDir-22.0.1] [x86_64-slc6-gcc62-opt] [warn_lar/00cf2cec20] -- built on [2018-10-02T1452] -Py:Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" -Py:Athena INFO executing ROOT6Setup -Py:Athena INFO including file "AthenaCommon/Execution.py" -Py:Athena INFO including file "LArCellRec/LArBadFebMaskingTool_test.py" -SetGeometryVersion.py obtained major release version 22 -Py:Athena INFO including file "IdDictDetDescrCnv/IdDictDetDescrCnv_joboptions.py" -Py:ConfigurableDb INFO Read module info for 5500 configurables from 6 genConfDb files -Py:ConfigurableDb INFO No duplicates have been found: that's good ! -EventInfoMgtInit: Got release version Athena-22.0.1 -Py:IOVDbSvc.CondDB INFO Setting up conditions DB access to instance OFLP200 -Py:Athena INFO including file "CaloIdCnv/CaloIdCnv_joboptions.py" -Py:Athena INFO including file "CaloConditions/CaloConditions_jobOptions.py" -Py:Athena INFO including file "CaloConditions/LArTTCellMap_ATLAS_jobOptions.py" -Py:Athena INFO including file "CaloConditions/CaloTTIdMap_ATLAS_jobOptions.py" -Py:Athena INFO including file "LArConditionsCommon/LArConditionsCommon_MC_jobOptions.py" -ATLAS-R2-2016-01-00-01 -Py:JobPropertyContainer:: INFO use global tag for all LArElecCalibMC constants -Py:Athena INFO including file "LArConditionsCommon/LArIdMap_MC_jobOptions.py" -Py:JobPropertyContainer:: INFO setting folder /LAR/Identifier/OnOffIdMap with tag LARIdentifierOnOffIdMap-012 -Py:JobPropertyContainer:: INFO setting folder /LAR/Identifier/CalibIdMap with tag LARIdentifierCalibIdMap-012 -Py:JobPropertyContainer:: INFO setting folder /LAR/Identifier/FebRodMap with tag LARIdentifierFebRodMap-005 -[?1034hPy:Athena INFO including file "AthenaCommon/runbatch.py" -ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 -ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 -ApplicationMgr SUCCESS -==================================================================================================================================== - Welcome to ApplicationMgr (GaudiCoreSvc v30r3) - running on pc-tbed-pub-31.cern.ch on Tue Oct 2 16:53:39 2018 -==================================================================================================================================== -ApplicationMgr INFO Successfully loaded modules : AthenaServices -ApplicationMgr INFO Application Manager Configured successfully -ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 -StatusCodeSvc INFO initialize -AthDictLoaderSvc INFO in initialize... -AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 3219 CLIDRegistry entries for module ALL -CoreDumpSvc INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) -MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 -AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 -PoolSvc INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok] -PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled -PoolSvc INFO Frontier compression level set to 5 -DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-10-01T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host pc-tbed-pub-31.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] -PoolSvc INFO Successfully setup replica sorting algorithm -PoolSvc INFO Setting up APR FileCatalog and Streams -PoolSvc WARNING Unable to locate catalog for prfile:poolcond/PoolCat_oflcond.xml check your ATLAS_POOLCOND_PATH and DATAPATH variables -PoolSvc WARNING Unable to locate catalog for apcfile:poolcond/PoolCat_oflcond.xml check your ATLAS_POOLCOND_PATH and DATAPATH variables -PoolSvc INFO Resolved path (via ATLAS_POOLCOND_PATH) is /cvmfs/atlas-condb.cern.ch/repo/conditions/poolcond/PoolFileCatalog.xml -PoolSvc INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml -DbSession INFO Open DbSession -Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -IOVDbSvc INFO Opened read transaction for POOL PersistencySvc -IOVDbSvc INFO Only 5 POOL conditions files will be open at once -IOVDbSvc INFO Cache alignment will be done in 3 slices -IOVDbSvc INFO Global tag: OFLCOND-RUN12-SDR-35 set from joboptions -IOVDbSvc INFO Folder /LAR/Identifier/OnOffIdMap, adding new key tag with value LARIdentifierOnOffIdMap-012 -IOVDbSvc INFO Folder /LAR/Identifier/CalibIdMap, adding new key tag with value LARIdentifierCalibIdMap-012 -IOVDbSvc INFO Folder /LAR/Identifier/FebRodMap, adding new key tag with value LARIdentifierFebRodMap-005 -IOVDbSvc INFO Read from meta data only for folder /TagInfo -IOVDbSvc INFO Initialised with 3 connections and 24 folders -IOVDbSvc INFO Service IOVDbSvc initialised successfully -IOVDbSvc INFO preLoadAddresses: Removing folder /TagInfo. It should only be in the file meta data and was not found. -IOVDbSvc INFO Opening COOL connection for COOLOFL_LAR/OFLP200 -IOVSvc INFO No IOVSvcTool associated with store "StoreGateSvc" -IOVSvc.IOVSvcTool INFO IOVRanges will be checked at every Event -ClassIDSvc INFO getRegistryEntries: read 2071 CLIDRegistry entries for module ALL -IOVDbSvc INFO Opening COOL connection for COOLOFL_CALO/OFLP200 -IOVDbSvc INFO Disconnecting from COOLOFL_LAR/OFLP200 -IOVDbSvc INFO Disconnecting from COOLOFL_CALO/OFLP200 -IOVDbSvc INFO Added taginfo remove for /LAR/Align -IOVDbSvc INFO Added taginfo remove for /LAR/BadChannels/BadChannels -IOVDbSvc INFO Added taginfo remove for /LAR/BadChannels/MissingFEBs -IOVDbSvc INFO Added taginfo remove for /LAR/Identifier/CalibIdMap -IOVDbSvc INFO Added taginfo remove for /LAR/Identifier/FebRodMap -IOVDbSvc INFO Added taginfo remove for /LAR/Identifier/OnOffIdMap -IOVDbSvc INFO Added taginfo remove for /CALO/Ofl/Identifier/CaloTTOnAttrIdMapAtlas -IOVDbSvc INFO Added taginfo remove for /CALO/Ofl/Identifier/CaloTTOnOffIdMapAtlas -IOVDbSvc INFO Added taginfo remove for /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/AutoCorr -IOVDbSvc INFO Added taginfo remove for /LAR/LArCellPositionShift -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/DAC2uA -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/HVScaleCorr -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/MinBias -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/MinBiasAverage -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/MphysOverMcal -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/Noise -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/Pedestal -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/Ramp -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/Shape -IOVDbSvc INFO Added taginfo remove for /LAR/Identifier/LArTTCellMapAtlas -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/fSampl -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/uA2MeV -ClassIDSvc INFO getRegistryEntries: read 22 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 4897 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 18 CLIDRegistry entries for module ALL -DetDescrCnvSvc INFO initializing -DetDescrCnvSvc INFO Found DetectorStore service -DetDescrCnvSvc INFO filling proxies for detector managers -DetDescrCnvSvc INFO filling address for CaloTTMgr with CLID 117659265 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloMgr with CLID 4548337 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloSuperCellMgr with CLID 241807251 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloIdManager with CLID 125856940 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for IdDict with CLID 2411 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for AtlasID with CLID 164875623 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for PixelID with CLID 2516 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for SCT_ID with CLID 2517 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TRT_ID with CLID 2518 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for SiliconID with CLID 129452393 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArEM_ID with CLID 163583365 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArEM_SuperCell_ID with CLID 99488227 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArHEC_ID with CLID 3870484 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArHEC_SuperCell_ID with CLID 254277678 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArFCAL_ID with CLID 45738051 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArFCAL_SuperCell_ID with CLID 12829437 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArMiniFCAL_ID with CLID 79264204 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArOnlineID with CLID 158698068 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TTOnlineID with CLID 38321944 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArOnline_SuperCellID with CLID 115600394 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArHVLineID with CLID 27863673 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArElectrodeID with CLID 80757351 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TileID with CLID 2901 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for Tile_SuperCell_ID with CLID 49557789 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TileHWID with CLID 2902 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TileTBID with CLID 2903 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for MDTIDHELPER with CLID 4170 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CSCIDHELPER with CLID 4171 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for RPCIDHELPER with CLID 4172 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TGCIDHELPER with CLID 4173 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for STGCIDHELPER with CLID 4174 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for MMIDHELPER with CLID 4175 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloLVL1_ID with CLID 108133391 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloCell_ID with CLID 123500438 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloCell_SuperCell_ID with CLID 128365736 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloDM_ID with CLID 167756483 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for ZdcID with CLID 190591643 and storage type 68 to detector store -GeoModelSvc::RD...WARNING Getting PixTBMatComponents with default tag -GeoModelSvc::RD...WARNING Getting PixTBMaterials with default tag -GeoModelSvc::RD...WARNING Getting InDetMatComponents with default tag -GeoModelSvc::RD...WARNING Getting InDetMaterials with default tag -GeoModelSvc.LAr... INFO Keys for LAr are ATLAS-R2-2016-01-00-01 ATLAS -GeoModelSvc.LAr... INFO Building LAr version LAr-Revised-17-01 while ATLAS version is ATLAS-R2-2016-01-00-01 -GeoModelSvc.LAr... INFO LAr Geometry Options: -GeoModelSvc.LAr... INFO Sagging = false -GeoModelSvc.LAr... INFO Barrel = ON -GeoModelSvc.LAr... INFO Endcap = ON -BarrelConstruction INFO Getting primary numbers for ATLAS, ATLAS-R2-2016-01-00-01 -BarrelConstruction INFO Makes detailed absorber sandwich ? 1 1 -BarrelConstruction INFO Use sagging in geometry ? 0 -============== EMEC Construction =============== - multi-layered version of absorbers activated, mlabs == 1 -================================================ -EventPersistenc... INFO Added successfully Conversion service:DetDescrCnvSvc -ClassIDSvc INFO getRegistryEntries: read 3150 CLIDRegistry entries for module ALL -CaloIDHelper_ID... INFO in createObj: creating a TileTBID helper object in the detector store -IdDictDetDescrCnv INFO in initialize -IdDictDetDescrCnv INFO in createObj: creating a IdDictManager object in the detector store -IdDictDetDescrCnv INFO IdDictName: IdDictParser/ATLAS_IDS.xml -IdDictDetDescrCnv INFO Reading InnerDetector IdDict file InDetIdDictFiles/IdDictInnerDetector_IBL3D25-03.xml -IdDictDetDescrCnv INFO Reading LArCalorimeter IdDict file IdDictParser/IdDictLArCalorimeter_DC3-05-Comm-01.xml -IdDictDetDescrCnv INFO Reading TileCalorimeter IdDict file IdDictParser/IdDictTileCalorimeter.xml -IdDictDetDescrCnv INFO Reading Calorimeter IdDict file IdDictParser/IdDictCalorimeter_L1Onl.xml -IdDictDetDescrCnv INFO Reading MuonSpectrometer IdDict file IdDictParser/IdDictMuonSpectrometer_R.03.xml -IdDictDetDescrCnv INFO Reading ForwardDetectors IdDict file IdDictParser/IdDictForwardDetectors_2010.xml -IdDictDetDescrCnv INFO Found id dicts: -IdDictDetDescrCnv INFO Using dictionary tag: null -IdDictDetDescrCnv INFO Dictionary ATLAS version default DetDescr tag (using default) file -IdDictDetDescrCnv INFO Dictionary Calorimeter version default DetDescr tag CaloIdentifier-LVL1-02 file IdDictParser/IdDictCalorimeter_L1Onl.xml -IdDictDetDescrCnv INFO Dictionary ForwardDetectors version default DetDescr tag ForDetIdentifier-01 file IdDictParser/IdDictForwardDetectors_2010.xml -IdDictDetDescrCnv INFO Dictionary InnerDetector version IBL-DBM DetDescr tag InDetIdentifier-IBL3D25-02 file InDetIdDictFiles/IdDictInnerDetector_IBL3D25-03.xml -IdDictDetDescrCnv INFO Dictionary LArCalorimeter version fullAtlas DetDescr tag LArIdentifier-DC3-05-Comm file IdDictParser/IdDictLArCalorimeter_DC3-05-Comm-01.xml -IdDictDetDescrCnv INFO Dictionary LArElectrode version fullAtlas DetDescr tag (using default) file -IdDictDetDescrCnv INFO Dictionary LArHighVoltage version fullAtlas DetDescr tag (using default) file -IdDictDetDescrCnv INFO Dictionary MuonSpectrometer version R.03 DetDescr tag MuonIdentifier-08 file IdDictParser/IdDictMuonSpectrometer_R.03.xml -IdDictDetDescrCnv INFO Dictionary TileCalorimeter version fullAtlasAndTestBeam DetDescr tag TileIdentifier-00 file IdDictParser/IdDictTileCalorimeter.xml -TileTBID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -EndcapDMConstru... INFO Start building EC electronics geometry -============== EMEC Construction =============== - multi-layered version of absorbers activated, mlabs == 1 -================================================ -EndcapDMConstru... INFO Start building EC electronics geometry -GeoModelSvc INFO GeoModelSvc.LArDetectorToolNV SZ= 22964Kb Time = 0.58S -ClassIDSvc INFO getRegistryEntries: read 213 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 65 CLIDRegistry entries for module ALL -AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 -ClassIDSvc INFO getRegistryEntries: read 6725 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 670 CLIDRegistry entries for module ALL -CondInputLoader INFO Initializing CondInputLoader... -CondInputLoader INFO Adding base classes: - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/BadChannels/MissingFEBs' ) -> - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/CalibIdMap' ) -> - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/FebRodMap' ) -> - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/OnOffIdMap' ) -> - + ( 'CondAttrListCollection' , 'ConditionStore+/LAR/BadChannels/BadChannels' ) -> - + ( 'LArAutoCorrMC' , 'ConditionStore+LArAutoCorr' ) -> ILArAutoCorr (8124) - + ( 'LArDAC2uAMC' , 'ConditionStore+LArDAC2uA' ) -> ILArDAC2uA (579584) - + ( 'LArHVScaleCorrComplete' , 'ConditionStore+LArHVScaleCorr' ) -> ILArHVScaleCorr (93397263) - + ( 'LArMinBiasAverageMC' , 'ConditionStore+LArMinBiasAverage' ) -> ILArMinBiasAverage (112216056) - + ( 'LArMinBiasMC' , 'ConditionStore+LArMinBias' ) -> ILArMinBias (197482938) - + ( 'LArMphysOverMcalMC' , 'ConditionStore+LArMphysOverMcal' ) -> ILArMphysOverMcal (128308807) - + ( 'LArNoiseMC' , 'ConditionStore+LArNoise' ) -> ILArNoise (8125) - + ( 'LArPedestalMC' , 'ConditionStore+LArPedestal' ) -> ILArPedestal (8122) - + ( 'LArRampMC' , 'ConditionStore+LArRamp' ) -> ILArRamp (8123) - + ( 'LArShape32MC' , 'ConditionStore+LArShape' ) -> ILArShape (245731716) - + ( 'LArfSamplMC' , 'ConditionStore+LArfSampl' ) -> ILArfSampl (128126607) - + ( 'LAruA2MeVMC' , 'ConditionStore+LAruA2MeV' ) -> ILAruA2MeV (154639332) -CondInputLoader INFO Will create WriteCondHandle dependencies for the following DataObjects: - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/BadChannels/MissingFEBs' ) - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/CalibIdMap' ) - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/FebRodMap' ) - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/OnOffIdMap' ) - + ( 'CondAttrListCollection' , 'ConditionStore+/LAR/BadChannels/BadChannels' ) - + ( 'ILArAutoCorr' , 'ConditionStore+LArAutoCorr' ) - + ( 'ILArDAC2uA' , 'ConditionStore+LArDAC2uA' ) - + ( 'ILArHVScaleCorr' , 'ConditionStore+LArHVScaleCorr' ) - + ( 'ILArMinBias' , 'ConditionStore+LArMinBias' ) - + ( 'ILArMinBiasAverage' , 'ConditionStore+LArMinBiasAverage' ) - + ( 'ILArMphysOverMcal' , 'ConditionStore+LArMphysOverMcal' ) - + ( 'ILArNoise' , 'ConditionStore+LArNoise' ) - + ( 'ILArPedestal' , 'ConditionStore+LArPedestal' ) - + ( 'ILArRamp' , 'ConditionStore+LArRamp' ) - + ( 'ILArShape' , 'ConditionStore+LArShape' ) - + ( 'ILArfSampl' , 'ConditionStore+LArfSampl' ) - + ( 'ILAruA2MeV' , 'ConditionStore+LAruA2MeV' ) - + ( 'LArAutoCorrMC' , 'ConditionStore+LArAutoCorr' ) - + ( 'LArDAC2uAMC' , 'ConditionStore+LArDAC2uA' ) - + ( 'LArHVScaleCorrComplete' , 'ConditionStore+LArHVScaleCorr' ) - + ( 'LArMinBiasAverageMC' , 'ConditionStore+LArMinBiasAverage' ) - + ( 'LArMinBiasMC' , 'ConditionStore+LArMinBias' ) - + ( 'LArMphysOverMcalMC' , 'ConditionStore+LArMphysOverMcal' ) - + ( 'LArNoiseMC' , 'ConditionStore+LArNoise' ) - + ( 'LArPedestalMC' , 'ConditionStore+LArPedestal' ) - + ( 'LArRampMC' , 'ConditionStore+LArRamp' ) - + ( 'LArShape32MC' , 'ConditionStore+LArShape' ) - + ( 'LArfSamplMC' , 'ConditionStore+LArfSampl' ) - + ( 'LAruA2MeVMC' , 'ConditionStore+LAruA2MeV' ) -ClassIDSvc INFO getRegistryEntries: read 504 CLIDRegistry entries for module ALL -xAODMaker::Even... INFO Initializing - Package version: xAODEventInfoCnv-00-00-00 -xAODMaker::Even... INFO Initializing - Package version: xAODEventInfoCnv-00-00-00 -xAODMaker::Even...WARNING Beam conditions service not available -xAODMaker::Even...WARNING Will not fill beam spot information into xAOD::EventInfo -xAODMaker::Even... INFO Luminosity information not available -xAODMaker::Even... INFO Will take information from the EventInfo object -ClassIDSvc INFO getRegistryEntries: read 319 CLIDRegistry entries for module ALL -PyComponentMgr INFO Initializing PyComponentMgr... -testalg1 INFO Initializing testalg1... -ClassIDSvc INFO getRegistryEntries: read 323 CLIDRegistry entries for module ALL -CaloMgrDetDescrCnv INFO in createObj: creating a Calo Detector Manager object in the detector store -ClassIDSvc INFO getRegistryEntries: read 186 CLIDRegistry entries for module ALL -CaloIDHelper_ID... INFO in createObj: creating a CaloCell_ID helper object in the detector store -CaloIDHelper_ID... INFO in createObj: creating a LArEM_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a LArHEC_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a LArFCAL_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-10-01T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCal2DNeighbors-April2011.txt -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-10-01T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCal3DNeighborsNext-April2011.txt -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-10-01T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCal3DNeighborsPrev-April2011.txt -CaloIDHelper_ID... INFO in createObj: creating a LArMiniFCAL_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -LArMiniFCAL_ID INFO initialize_from_dict - LArCalorimeter dictionary does NOT contain miniFCAL description. Unable to initialize LArMiniFCAL_ID. -CaloIDHelper_ID... INFO in createObj: creating a TileID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -TileNeighbour INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-10-01T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/TileNeighbour_reduced.txt -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIdMgrDetDes... INFO in createObj: creating a CaloDescrManager object in the detector store -CaloIDHelper_ID... INFO in createObj: creating a CaloDM_ID helper object in the detector store -CaloDM_ID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a CaloLVL1_ID helper object in the detector store -CaloLVL1_ID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a TTOnlineID helper object in the detector store -TTOnlineID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a CaloCell_SuperCell_ID helper object in the detector store -CaloIDHelper_ID... INFO in createObj: creating a LArEM_SuperCell_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a LArHEC_SuperCell_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a LArFCAL_SuperCell_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-10-01T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCalSuperCells2DNeighborsNew-April2014.txt -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-10-01T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCalSuperCells3DNeighborsNextNew-April2014.txt -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-10-01T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/FCalSuperCells3DNeighborsPrevNew-April2014.txt -CaloIDHelper_ID... INFO in createObj: creating a Tile_SuperCell_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -TileNeighbour INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-10-01T2055/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-opt/share/TileSuperCellNeighbour.txt -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIdMgrDetDes... INFO Finished -CaloIdMgrDetDes... INFO Initializing CaloIdMgr from values in CaloIdMgrDetDescrCnv -DetectorStore WARNING retrieve(default): No valid proxy for default object - of type TileDetDescrManager(CLID 2941) -CaloMgrDetDescrCnvWARNING Could not get the TileDetectorManager. No Calo Elements will be built for Tile -ClassIDSvc INFO getRegistryEntries: read 165 CLIDRegistry entries for module ALL -LArOnlineIDDetD... INFO in createObj: creating a LArOnlineID helper object in the detector store -LArOnlineID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -ClassIDSvc INFO getRegistryEntries: read 283 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 65 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 4020 CLIDRegistry entries for module ALL -ToolSvc.tool1 INFO bit mask for errors to mask 16381 -ClassIDSvc INFO getRegistryEntries: read 64 CLIDRegistry entries for module ALL -IOVSvc.IOVSvcTool INFO Still in initialize phase, not tiggering callback for LArCablingService[0x9c1be00]+7f17d048f650 bound to AthenaAttributeList[/LAR/Identifier/OnOffIdMap] -ToolSvc.LArCabl... INFO Successfully installed callback on folder/LAR/Identifier/OnOffIdMap -ToolSvc.LArCabl... INFO Successfully installed callback on folder/LAR/Identifier/CalibIdMap -ToolSvc.LArCabl... INFO Successfully installed callback on folder/LAR/Identifier/FebRodMap -ToolSvc.LArCabl... INFO Sucessfully initialized LArCablingService with 3 callbacks. -ToolSvc.masking... INFO Read 0 lines in total (for all COOL channels and missing FEBs together) -ToolSvc.tool2 INFO bit mask for errors to mask 16381 -ToolSvc.masking... INFO Decoded 1 lines from FEB file masking_badchan2.badfebs -ToolSvc.masking... INFO Read 1 lines in total (for all COOL channels and missing FEBs together) -ToolSvc.tool3 INFO bit mask for errors to mask 16381 -ToolSvc.masking... INFO Decoded 1 lines from FEB file masking_badchan3.badfebs -ToolSvc.masking... INFO Read 1 lines in total (for all COOL channels and missing FEBs together) -HistogramPersis...WARNING Histograms saving not required. -ApplicationMgr INFO Application Manager Initialized successfully -CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/BadChannels/MissingFEBs' -CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/CalibIdMap' -CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/FebRodMap' -CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/OnOffIdMap' -CondInputLoader INFO created CondCont<CondAttrListCollection> with key 'ConditionStore+/LAR/BadChannels/BadChannels' -CondInputLoader INFO created CondCont<LArAutoCorrMC> with key 'ConditionStore+LArAutoCorr' -CondInputLoader INFO created CondCont<LArDAC2uAMC> with key 'ConditionStore+LArDAC2uA' -CondInputLoader INFO created CondCont<LArHVScaleCorrComplete> with key 'ConditionStore+LArHVScaleCorr' -CondInputLoader INFO created CondCont<LArMinBiasAverageMC> with key 'ConditionStore+LArMinBiasAverage' -CondInputLoader INFO created CondCont<LArMinBiasMC> with key 'ConditionStore+LArMinBias' -CondInputLoader INFO created CondCont<LArMphysOverMcalMC> with key 'ConditionStore+LArMphysOverMcal' -CondInputLoader INFO created CondCont<LArNoiseMC> with key 'ConditionStore+LArNoise' -CondInputLoader INFO created CondCont<LArPedestalMC> with key 'ConditionStore+LArPedestal' -CondInputLoader INFO created CondCont<LArRampMC> with key 'ConditionStore+LArRamp' -CondInputLoader INFO created CondCont<LArShape32MC> with key 'ConditionStore+LArShape' -CondInputLoader INFO created CondCont<LArfSamplMC> with key 'ConditionStore+LArfSampl' -CondInputLoader INFO created CondCont<LAruA2MeVMC> with key 'ConditionStore+LAruA2MeV' -ApplicationMgr INFO Application Manager Started successfully -AthenaEventLoopMgr INFO ===>>> start of run 1 <<<=== -EventPersistenc... INFO Added successfully Conversion service:AthenaPoolCnvSvc -EventPersistenc... INFO Added successfully Conversion service:TagInfoMgr -ClassIDSvc INFO getRegistryEntries: read 109 CLIDRegistry entries for module ALL -IOVDbSvc INFO Opening COOL connection for COOLOFL_LAR/OFLP200 -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARAlign-IOVDEP-00 for folder /LAR/Align -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LArBadChannelsBadChannels-IOVDEP-06 for folder /LAR/BadChannels/BadChannels -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LArBadChannelsMissingFEBs-IOVDEP-04 for folder /LAR/BadChannels/MissingFEBs -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCAutoCorr-Apr2010 for folder /LAR/ElecCalibMC/AutoCorr -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LArCellPositionShift-ideal for folder /LAR/LArCellPositionShift -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCDAC2uA-CSC02-J for folder /LAR/ElecCalibMC/DAC2uA -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCHVScaleCorr-IOVDEP-00 for folder /LAR/ElecCalibMC/HVScaleCorr -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCMinBias-IOVDEP-01 for folder /LAR/ElecCalibMC/MinBias -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCMinBiasAverage-IOVDEP-01 for folder /LAR/ElecCalibMC/MinBiasAverage -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCMphysOverMcal-CSC02-I for folder /LAR/ElecCalibMC/MphysOverMcal -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCNoise-Apr2010 for folder /LAR/ElecCalibMC/Noise -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCPedestal-DC3-B-IdFix7 for folder /LAR/ElecCalibMC/Pedestal -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCRamp-CSC02-K for folder /LAR/ElecCalibMC/Ramp -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCShape-Apr2010 for folder /LAR/ElecCalibMC/Shape -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARIdentifierLArTTCellMapAtlas-HadFcalFix2 for folder /LAR/Identifier/LArTTCellMapAtlas -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCfSampl-G496-19213-FTFP_BERT_BIRK for folder /LAR/ElecCalibMC/fSampl -IOVDbSvc INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARuA2MeV-Feb2011 for folder /LAR/ElecCalibMC/uA2MeV -IOVDbSvc INFO Disconnecting from COOLOFL_LAR/OFLP200 -DbSession INFO Open DbSession -Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] EACFEBD4-9BD2-E211-848A-02163E006B20 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000057.gen.COND/cond09_mc.000057.gen.COND._0001.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000057.gen.COND/cond09_mc.000057.gen.COND._0001.pool.root File version:52200 -ToolSvc.LArCabl... INFO ====> iovCallBack -ToolSvc.LArCabl... INFO Done reading online/offline identifier mapping -ToolSvc.LArCabl... INFO Found 195072 online identifier and 182468 offline identifier. 12604 disconnected channels. -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 8667C6F2-1559-DE11-A611-000423D9A21A -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0064.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0064.pool.root File version:52200 -xAODMaker::Even...WARNING Algorithm::BeginRun is deprecated. Use Start instead -AthenaEventLoopMgr INFO ===>>> start processing event #1, run #1 0 events processed so far <<<=== -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 9229AE70-AC4C-DF11-A934-003048D2BC4A -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root File version:52200 -ToolSvc.LArMCSy... INFO IOV callback -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 64ADE389-CABD-DD11-8D4C-000423D950B0 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0053.pool.root -Warning in <TClass::Init>: no dictionary for class DataHeader_p2 is available -Warning in <TClass::Init>: no dictionary for class DataHeaderElement_p2 is available -Warning in <TClass::Init>: no dictionary for class PoolToken_p1 is available -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0053.pool.root File version:51800 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 7C42BC12-BD96-E011-B8EC-003048F0E01C -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000032.gen.COND/cond09_mc.000032.gen.COND._0001.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000032.gen.COND/cond09_mc.000032.gen.COND._0001.pool.root File version:52600 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 687EA080-E4B6-DD11-A149-000423D9907C -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0067.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0067.pool.root File version:51800 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 9229AE70-AC4C-DF11-A934-003048D2BC4A -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] FE8535CE-AD50-DC11-952F-000423D67862 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0040.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0040.pool.root File version:51400 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 64ADE389-CABD-DD11-8D4C-000423D950B0 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 3CE29BA7-A6DC-DC11-BF61-000423D65662 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/comcond/comcond.000004.lar_conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0044.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/comcond/comcond.000004.lar_conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0044.pool.root File version:51400 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 7C42BC12-BD96-E011-B8EC-003048F0E01C -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root File version:52200 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 687EA080-E4B6-DD11-A149-000423D9907C -LArPedestalMCCnv INFO Reading LArPedestalMC (original) -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 180A4AF2-F47E-DB11-9E8F-000E0C4DEA2D -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/cmccond.000001.conditions.simul.pool.v0000/oflcond.000002.conditions.simul.pool.v0000._0053.pool.root__DQ2-1250193473 -Warning in <TClass::Init>: no dictionary for class DataHeader_p1 is available -Warning in <TClass::Init>: no dictionary for class DataHeaderElement_p1 is available -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/cmccond.000001.conditions.simul.pool.v0000/oflcond.000002.conditions.simul.pool.v0000._0053.pool.root__DQ2-1250193473 File version:51000 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 303FCBD8-653E-DD11-ABBD-000423D99862 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0061.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0061.pool.root File version:51800 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] FE8535CE-AD50-DC11-952F-000423D67862 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] F4885664-6C4D-DF11-A94A-00304867340C -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0013.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0013.pool.root File version:52200 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 3CE29BA7-A6DC-DC11-BF61-000423D65662 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 445FAD9A-5DB3-E14A-81DB-BA6244602734 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000084.gen.COND/cond09_mc.000084.gen.COND._0001.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000084.gen.COND/cond09_mc.000084.gen.COND._0001.pool.root File version:53413 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 9229AE70-AC4C-DF11-A934-003048D2BC4A -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] D27D07D4-C135-E011-84A9-003048F0E01E -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000027.gen.COND/cond09_mc.000027.gen.COND._0001.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000027.gen.COND/cond09_mc.000027.gen.COND._0001.pool.root File version:52600 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 303FCBD8-653E-DD11-ABBD-000423D99862 -LArOnOffMappingAlg INFO Done reading online/offline identifier mapping -LArOnOffMappingAlg INFO Found 195072 online identifier and 182468 offline identifier. 12604 disconnected channels. -LArOnOffMappingAlg INFO recorded new LArOnOffIdMap with range {[0,l:0] - [INVALID]} into Conditions Store -LArCalibLineMap... INFO Done reading readout/calibration line mapping. -LArCalibLineMap... INFO recorded new LArCalibLineMap with range {[0,l:0] - [INVALID]} into Conditions Store -LArFebRodMappin... INFO Done reading Feb/Rod mapping. Found 1524 Febs and 762 Rods -LArFebRodMappin... INFO recorded new LArFebRodMap with range {[0,l:0] - [INVALID]} into Conditions Store -LArBadChannelCo... INFO Read a total of 0 problematic channels from database -LArBadFebCondAlg INFO Read a total of 0 problematic febs from database -xAODMaker::Even...WARNING xAOD::EventInfo with key "EventInfo" is already in StoreGate; EventInfoCnvAlg should not be scheduled. -ClassIDSvc INFO getRegistryEntries: read 2269 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 37 CLIDRegistry entries for module ALL -AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 1 events processed so far <<<=== -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] EACFEBD4-9BD2-E211-848A-02163E006B20 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 8667C6F2-1559-DE11-A611-000423D9A21A -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 180A4AF2-F47E-DB11-9E8F-000E0C4DEA2D -Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] -AthenaEventLoopMgr INFO ===>>> start processing event #2, run #1 1 events processed so far <<<=== -ClassIDSvc INFO getRegistryEntries: read 13 CLIDRegistry entries for module ALL -AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 2 events processed so far <<<=== -AthenaEventLoopMgr INFO ===>>> start processing event #3, run #1 2 events processed so far <<<=== -AthenaEventLoopMgr INFO ===>>> done processing event #3, run #1 3 events processed so far <<<=== -AthenaEventLoopMgr INFO ===>>> start processing event #4, run #1 3 events processed so far <<<=== -AthenaEventLoopMgr INFO ===>>> done processing event #4, run #1 4 events processed so far <<<=== -AthenaEventLoopMgr INFO ===>>> start processing event #5, run #1 4 events processed so far <<<=== -AthenaEventLoopMgr INFO ===>>> done processing event #5, run #1 5 events processed so far <<<=== -AthenaEventLoopMgr INFO ===>>> start processing event #6, run #1 5 events processed so far <<<=== -AthenaEventLoopMgr INFO ===>>> done processing event #6, run #1 6 events processed so far <<<=== -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] F4885664-6C4D-DF11-A94A-00304867340C -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 445FAD9A-5DB3-E14A-81DB-BA6244602734 -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] D27D07D4-C135-E011-84A9-003048F0E01E -Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] -ApplicationMgr INFO Application Manager Stopped successfully -IncidentProcAlg1 INFO Finalize -CondInputLoader INFO Finalizing CondInputLoader... -testalg1 INFO Finalizing testalg1... -IncidentProcAlg2 INFO Finalize -PyComponentMgr INFO Finalizing PyComponentMgr... -IdDictDetDescrCnv INFO in finalize -IOVDbSvc INFO Folder /LAR/Align (PoolRef) db-read 1/1 objs/chan/bytes 1/1/170 (( 0.07 ))s -IOVDbSvc INFO Folder /LAR/BadChannels/BadChannels (AttrListColl) db-read 1/1 objs/chan/bytes 0/8/0 (( 0.03 ))s -IOVDbSvc INFO Folder /LAR/BadChannels/MissingFEBs (AttrList) db-read 1/1 objs/chan/bytes 1/1/16 (( 0.02 ))s -IOVDbSvc INFO Folder /LAR/Identifier/CalibIdMap (AttrList) db-read 1/2 objs/chan/bytes 1/1/1520148 (( 0.02 ))s -IOVDbSvc INFO Folder /LAR/Identifier/FebRodMap (AttrList) db-read 1/2 objs/chan/bytes 1/1/6100 (( 0.01 ))s -IOVDbSvc INFO Folder /LAR/Identifier/OnOffIdMap (AttrList) db-read 1/2 objs/chan/bytes 1/1/780292 (( 0.07 ))s -IOVDbSvc INFO Folder /CALO/Ofl/Identifier/CaloTTOnAttrIdMapAtlas (PoolRef) db-read 0/0 objs/chan/bytes 0/1/0 (( 0.00 ))s -IOVDbSvc INFO Folder /CALO/Ofl/Identifier/CaloTTOnOffIdMapAtlas (PoolRef) db-read 0/0 objs/chan/bytes 0/1/0 (( 0.00 ))s -IOVDbSvc INFO Folder /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas (PoolRef) db-read 0/0 objs/chan/bytes 0/1/0 (( 0.00 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/AutoCorr (PoolColl) db-read 1/1 objs/chan/bytes 3/3/486 (( 0.53 ))s -IOVDbSvc INFO Folder /LAR/LArCellPositionShift (PoolRef) db-read 1/1 objs/chan/bytes 1/1/195 (( 0.44 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/DAC2uA (PoolColl) db-read 1/1 objs/chan/bytes 1/1/170 (( 0.50 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/HVScaleCorr (PoolColl) db-read 1/1 objs/chan/bytes 12/12/1980 (( 0.43 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/MinBias (PoolColl) db-read 1/1 objs/chan/bytes 1/1/174 (( 0.49 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/MinBiasAverage (PoolColl) db-read 1/1 objs/chan/bytes 1/1/181 (( 0.37 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/MphysOverMcal (PoolColl) db-read 1/1 objs/chan/bytes 3/3/516 (( 0.39 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/Noise (PoolColl) db-read 1/1 objs/chan/bytes 3/3/516 (( 0.95 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/Pedestal (PoolRef) db-read 1/1 objs/chan/bytes 1/1/167 (( 0.49 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/Ramp (PoolColl) db-read 1/1 objs/chan/bytes 3/3/489 (( 0.53 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/Shape (PoolColl) db-read 1/1 objs/chan/bytes 3/3/477 (( 0.50 ))s -IOVDbSvc INFO Folder /LAR/Identifier/LArTTCellMapAtlas (PoolRef) db-read 1/0 objs/chan/bytes 1/1/173 (( 0.44 ))s -IOVDbSvc WARNING Folder /LAR/Identifier/LArTTCellMapAtlas is requested but no data retrieved -IOVDbSvc INFO Folder /LAR/ElecCalibMC/fSampl (PoolColl) db-read 1/1 objs/chan/bytes 1/1/194 (( 2.05 ))s -IOVDbSvc INFO Folder /LAR/ElecCalibMC/uA2MeV (PoolColl) db-read 1/1 objs/chan/bytes 1/1/165 (( 0.59 ))s -IOVDbSvc INFO Total payload read from COOL: 2312609 bytes in (( 8.95 ))s -IOVDbSvc INFO Connection sqlite://;schema=mycool.db;dbname=OFLP200 : nConnect: 0 nFolders: 0 ReadTime: (( 0.00 ))s -IOVDbSvc INFO Connection COOLOFL_LAR/OFLP200 : nConnect: 2 nFolders: 20 ReadTime: (( 8.95 ))s -IOVDbSvc INFO Connection COOLOFL_CALO/OFLP200 : nConnect: 1 nFolders: 3 ReadTime: (( 0.00 ))s -AthDictLoaderSvc INFO in finalize... -ToolSvc INFO Removing all tools created by ToolSvc -ToolSvc.tool3 INFO ---- Summary from LArBadFebMaskingTool -ToolSvc.tool3 INFO Number of events processed 1 -ToolSvc.tool3 INFO Number of masked Feb total 1 -ToolSvc.tool3 INFO Number of masked Feb per event 1 -ToolSvc.tool2 INFO ---- Summary from LArBadFebMaskingTool -ToolSvc.tool2 INFO Number of events processed 2 -ToolSvc.tool2 INFO Number of masked Feb total 1 -ToolSvc.tool2 INFO Number of masked Feb per event 0.5 -ToolSvc.tool1 INFO ---- Summary from LArBadFebMaskingTool -ToolSvc.tool1 INFO Number of events processed 3 -ToolSvc.tool1 INFO Number of masked Feb total 1 -ToolSvc.tool1 INFO Number of masked Feb per event 0.333333 -*****Chrono***** INFO **************************************************************************************************** -*****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) -*****Chrono***** INFO **************************************************************************************************** -cObjR_ALL INFO Time User : Tot= 430 [ms] Ave/Min/Max= 12.3(+- 52.1)/ 0/ 310 [ms] #= 35 -cObj_ALL INFO Time User : Tot= 0.63 [s] Ave/Min/Max=0.0315(+-0.0773)/ 0/ 0.33 [s] #= 20 -ChronoStatSvc INFO Time User : Tot= 47 [s] #= 1 -*****Chrono***** INFO **************************************************************************************************** -ChronoStatSvc.f... INFO Service finalized successfully -ApplicationMgr INFO Application Manager Finalized successfully -ApplicationMgr INFO Application Manager Terminated successfully -Py:Athena INFO leaving with code 0: "successful run" diff --git a/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.py b/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.py deleted file mode 100644 index 25f24847aff8e6b9a6e71fa98cfd68dd662ff239..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.py +++ /dev/null @@ -1,445 +0,0 @@ -# -# Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration. -# -# File: LArCellRec/share/LArCellDeadOTXCorr_test.py -# Author: sss -# Date: Aug, 2018 -# Brief: Unit test for LArCellDeadOTXCorr. -# - -from __future__ import print_function - -import ROOT -ROOT.TH1F - -from AthenaCommon.DetFlags import DetFlags -DetFlags.detdescr.LAr_setOn() - -from AthenaCommon.AthenaCommonFlags import athenaCommonFlags -athenaCommonFlags.isOnline.set_Value(True) - - -import sys -import string -import ROOT -import math -from AtlasGeoModel import SetGeometryVersion -from AtlasGeoModel import GeoModelInit -from AtlasGeoModel import SetupRecoGeometry -include( "CaloIdCnv/CaloIdCnv_joboptions.py" ) - -from GeoModelSvc.GeoModelSvcConf import GeoModelSvc -ServiceMgr += GeoModelSvc() -theApp.CreateSvc += [ "GeoModelSvc"] -from AtlasGeoModel import LArGM - -from IOVDbSvc.IOVDbSvcConf import IOVDbSvc -IOVDbSvc().GlobalTag = 'OFLCOND-RUN12-SDR-35' - -include('LArConditionsCommon/LArConditionsCommon_MC_jobOptions.py') -include('CaloConditions/CaloTTIdMap_ATLAS_jobOptions.py') - -from AthenaCommon.AlgSequence import AlgSequence -topSequence = AlgSequence() - -theApp.EvtMax=2 - - -import ROOT -from LArCellRec.LArCellDeadOTXCorrToolDefault import LArCellDeadOTXCorrToolDefault - -from AthenaCommon.AlgSequence import AlgSequence -topSequence = AlgSequence() - - -# barrel_ec, pos_neg, feedthrough, slot -BADFEBS2 = [[(0, 1, 12, 3), 'deadReadout'], # tt 0.2 2.5 (below noise) - [(1, 0, 3, 2), 'deadReadout'], # tt -2.8 2.8 - [(0, 0, 10, 1), 'deadReadout'], # tt -1.0 1.1 - ] - - -########################################################################### - - -# feb file format: -# barrel_ec pos_neg feedthrough slot flags -# 0 1 12 4 deadAll -# 1 0 16 9 deadReadout deadAll -# badfebs is a list of (barrel_ec, pos_neg, feedthrough, slot) tuples -def make_bad_channel_condalg (name, badfebs = []): - from LArBadChannelTool.LArBadChannelToolConf import LArBadFebCondAlg - febfile = '' - if badfebs: - febfile = name + '.badfebs' - f = open (febfile, 'w') - for (feb, err) in badfebs: - print (feb[0], feb[1], feb[2], feb[3], err, file=f) - f.close() - alg = LArBadFebCondAlg ('LArBadFebCondAlg' + name, - ReadKey = '', - WriteKey = name, - InputFileName = febfile) - - from AthenaCommon.AlgSequence import AthSequencer - condSeq = AthSequencer("AthCondSeq") - condSeq += alg - return - - -########################################################################### - - - - -def make_calo_cells (detStore): - mgr = detStore['CaloMgr'] - ccc = ROOT.CaloCellContainer() - for i in range (mgr.element_size()): - elt = mgr.get_element (ROOT.IdentifierHash (i)) - if not elt: break - cc = ROOT.CaloCell (elt, i%1000, i+0.5, 10, 11, 1) - ccc.push_back (cc) - ROOT.SetOwnership (cc, False) - ccc.order() - ccc.updateCaloIterators() - return ccc - - -# Data from xAODTriggerTowers dumped from an example MC event. -tt_table = [ - [ -0.1 , 1.4 , [32, 30, 35, 36, 33, 32, 32] ], - [ -0.2 , 3.9 , [35, 31, 34, 38, 38, 35, 36] ], - [ -0.2 , 5.0 , [31, 31, 32, 36, 38, 31, 33] ], - [ -0.2 , 5.3 , [32, 31, 31, 35, 33, 30, 30] ], - [ -0.2 , 6.2 , [35, 30, 33, 38, 30, 32, 32] ], - [ -0.2 , 2.9 , [29, 34, 46, 59, 44, 33, 29] ], - [ -0.2 , 4.8 , [31, 30, 34, 36, 31, 29, 29] ], - [ -0.2 , 6.1 , [36, 35, 42, 53, 43, 37, 29] ], - [ -0.3 , 3.3 , [32, 33, 35, 38, 37, 30, 30] ], - [ -0.3 , 5.9 , [31, 32, 35, 41, 37, 31, 30] ], - [ -0.3 , 6.0 , [32, 35, 44, 54, 44, 33, 27] ], - [ -0.3 , 6.1 , [39, 45, 82, 131, 91, 45, 22] ], - [ -0.3 , 6.2 , [33, 35, 43, 59, 47, 36, 27] ], - [ -0.6 , 0.9 , [31, 26, 32, 36, 32, 32, 33] ], - [ -0.6 , 2.9 , [32, 32, 32, 36, 32, 29, 33] ], - [ -0.9 , 1.2 , [34, 33, 35, 41, 32, 31, 31] ], - [ -0.9 , 1.0 , [34, 34, 37, 44, 40, 33, 32] ], - [ -0.9 , 1.1 , [32, 32, 33, 36, 36, 33, 31] ], - [ -0.9 , 1.6 , [35, 32, 34, 38, 36, 33, 33] ], - [ -0.9 , 4.4 , [29, 28, 31, 35, 32, 27, 28] ], - [ -1.0 , 0.6 , [31, 32, 34, 37, 36, 31, 28] ], - [ -1.0 , 0.8 , [31, 33, 35, 37, 35, 33, 28] ], - [ -1.0 , 0.9 , [34, 37, 38, 43, 37, 31, 29] ], - [ -1.0 , 1.0 , [39, 44, 76, 123, 88, 42, 22] ], - [ -1.0 , 1.1 , [44, 52, 129, 239, 157, 57, 7] ], # USED - [ -1.0 , 1.2 , [33, 30, 32, 38, 39, 33, 36] ], - [ -1.1 , 1.0 , [31, 33, 36, 44, 39, 35, 31] ], - [ -1.1 , 1.1 , [31, 28, 33, 41, 37, 34, 30] ], - [ -1.1 , 1.8 , [32, 33, 34, 37, 35, 32, 31] ], - [ -1.2 , 1.1 , [36, 33, 35, 37, 35, 33, 33] ], - [ -1.4 , 0.8 , [34, 31, 32, 35, 30, 30, 32] ], - [ -1.5 , 0.5 , [32, 29, 30, 36, 33, 30, 29] ], - [ -1.5 , 4.5 , [33, 34, 36, 44, 40, 34, 30] ], - [ -1.5 , 3.2 , [30, 33, 34, 36, 34, 31, 32] ], - [ -1.5 , 4.3 , [35, 35, 36, 41, 37, 33, 29] ], - [ -1.6 , 4.3 , [33, 33, 34, 36, 35, 31, 33] ], - [ -1.8 , 0.0 , [31, 34, 36, 39, 35, 32, 30] ], - [ -1.8 , 4.3 , [31, 31, 35, 37, 35, 31, 31] ], - [ -1.8 , 5.1 , [32, 33, 35, 40, 37, 33, 33] ], - [ -1.9 , 0.0 , [33, 33, 36, 37, 35, 32, 31] ], - [ -1.9 , 4.4 , [33, 34, 36, 37, 36, 32, 30] ], - [ -1.9 , 5.5 , [33, 35, 40, 51, 44, 34, 29] ], - [ -1.9 , 6.2 , [32, 34, 37, 41, 37, 31, 32] ], - [ -2.2 , 6.0 , [32, 31, 33, 37, 32, 30, 30] ], - [ -2.3 , 2.2 , [35, 37, 59, 88, 66, 38, 25] ], - [ -2.3 , 2.3 , [32, 36, 47, 62, 51, 34, 28] ], - [ -2.5 , 2.1 , [33, 33, 34, 36, 33, 33, 30] ], - [ -2.5 , 2.9 , [34, 35, 36, 41, 37, 35, 32] ], - [ -2.5 , 3.2 , [30, 34, 39, 50, 43, 35, 29] ], - [ -2.6 , 2.3 , [36, 37, 36, 37, 33, 31, 29] ], - [ -2.6 , 2.5 , [32, 35, 38, 40, 36, 31, 29] ], - [ -2.6 , 2.8 , [33, 37, 39, 49, 40, 33, 29] ], - [ -2.6 , 3.0 , [37, 37, 40, 47, 44, 36, 32] ], - [ -2.6 , 3.2 , [35, 34, 35, 37, 34, 32, 32] ], - [ -2.6 , 3.4 , [33, 36, 34, 37, 34, 32, 30] ], - [ -2.8 , 2.8 , [40, 44, 64, 95, 71, 39, 25] ], # USED - [ -2.8 , 3.0 , [35, 39, 52, 69, 53, 34, 27] ], - [ -3.8 , 0.2 , [33, 37, 32, 31, 31, 33, 35] ], - [ -3.8 , 1.8 , [33, 38, 35, 35, 29, 24, 30] ], - [ -3.8 , 3.3 , [30, 35, 33, 32, 31, 31, 33] ], - [ 0.1 , 0.9 , [33, 33, 33, 38, 39, 32, 32] ], - [ 0.1 , 4.9 , [32, 33, 34, 37, 34, 31, 27] ], - [ 0.1 , 5.6 , [31, 33, 35, 41, 37, 32, 33] ], - [ 0.2 , 0.9 , [30, 30, 31, 37, 32, 29, 29] ], - [ 0.2 , 2.5 , [35, 31, 31, 36, 31, 29, 30] ], # USED - [ 0.2 , 3.3 , [32, 28, 34, 36, 31, 30, 32] ], - [ 0.3 , 1.7 , [35, 32, 35, 37, 34, 32, 33] ], - [ 0.3 , 5.6 , [34, 29, 31, 35, 34, 30, 32] ], - [ 0.4 , 0.8 , [34, 32, 33, 37, 32, 29, 27] ], - [ 0.4 , 1.2 , [30, 29, 29, 35, 30, 28, 30] ], - [ 0.6 , 1.8 , [31, 33, 34, 38, 35, 33, 31] ], - [ 0.6 , 3.6 , [31, 30, 33, 35, 31, 30, 32] ], - [ 0.9 , 1.6 , [33, 33, 34, 37, 36, 31, 30] ], - [ 0.9 , 5.4 , [31, 31, 36, 36, 34, 31, 31] ], - [ 0.9 , 1.8 , [32, 34, 31, 35, 33, 29, 31] ], - [ 0.9 , 3.0 , [32, 35, 32, 38, 34, 31, 29] ], - [ 0.9 , 5.0 , [32, 33, 35, 37, 38, 33, 32] ], - [ 1.0 , 5.6 , [34, 33, 37, 38, 33, 32, 30] ], - [ 1.1 , 4.5 , [33, 31, 33, 37, 34, 31, 31] ], - [ 1.4 , 1.4 , [33, 33, 36, 39, 37, 34, 31] ], - [ 1.4 , 1.5 , [31, 32, 34, 38, 36, 33, 32] ], - [ 1.5 , 1.8 , [33, 36, 38, 39, 38, 32, 31] ], - [ 1.5 , 4.8 , [31, 30, 34, 37, 36, 33, 32] ], - [ 2.0 , 1.6 , [31, 33, 37, 40, 37, 32, 30] ], - [ 2.6 , 2.8 , [36, 35, 35, 38, 38, 33, 33] ], - [ 2.6 , 5.2 , [31, 34, 36, 36, 31, 29, 31] ], - [ 3.8 , 4.1 , [33, 36, 35, 34, 29, 25, 26] ], - [ 4.3 , 5.3 , [34, 44, 44, 51, 27, 5, 10] ], - [ -1.6 , 1.6 , [30, 30, 32, 33, 33, 30, 31] ], - [ -1.8 , 4.2 , [33, 31, 36, 41, 39, 36, 34] ], - [ -1.8 , 4.3 , [32, 33, 38, 40, 37, 35, 33] ], - [ -1.9 , 4.4 , [31, 33, 46, 53, 49, 42, 35] ], - [ -1.9 , 4.5 , [31, 32, 34, 36, 34, 33, 32] ], - [ -2.0 , 4.1 , [32, 32, 34, 35, 34, 33, 32] ], - [ -2.0 , 6.2 , [32, 31, 47, 56, 51, 42, 35] ], - [ -2.2 , 3.2 , [30, 30, 32, 33, 33, 31, 31] ], - [ -2.2 , 3.5 , [33, 31, 33, 35, 32, 32, 32] ], - [ -2.3 , 2.7 , [32, 31, 32, 34, 32, 32, 33] ], - [ -2.5 , 2.9 , [33, 31, 33, 34, 34, 33, 31] ], - [ -2.5 , 3.0 , [33, 33, 33, 36, 36, 33, 34] ], - [ -2.6 , 2.8 , [32, 31, 38, 45, 43, 39, 35] ], - [ -2.6 , 3.0 , [31, 34, 41, 45, 42, 38, 33] ], - [ -2.6 , 3.2 , [35, 35, 38, 41, 38, 37, 36] ], - [ -2.8 , 2.8 , [36, 35, 42, 48, 43, 38, 33] ], - [ -2.8 , 3.0 , [35, 35, 47, 55, 48, 41, 36] ], - [ -3.0 , 2.8 , [32, 35, 37, 40, 38, 37, 37] ], - [ -3.0 , 3.0 , [33, 34, 38, 40, 38, 37, 35] ], - [ -4.7 , 2.9 , [34, 38, 36, 37, 32, 32, 31] ], - [ 1.8 , 4.3 , [31, 30, 34, 34, 33, 31, 31] ], - [ 0.8 , 4.9 , [32, 31, 34, 37, 35, 34, 34] ], - [ -0.6 , 2.8 , [33, 31, 35, 38, 33, 34, 31] ], - [ -0.9 , 2.9 , [32, 31, 36, 40, 39, 34, 33] ], - [ -0.3 , 6.1 , [30, 29, 33, 36, 34, 34, 28] ], - [ -0.3 , 6.2 , [33, 31, 36, 37, 38, 32, 34] ], - [ -0.4 , 6.2 , [30, 33, 35, 38, 39, 34, 33] ], - [ 1.4 , 4.7 , [31, 33, 32, 37, 33, 32, 31] ], - [ -1.0 , 1.1 , [34, 34, 38, 39, 36, 34, 33] ], - [ -1.2 , 4.1 , [33, 32, 34, 35, 35, 34, 32] ], - [ -0.1 , 0.0 , [28, 31, 35, 38, 34, 32, 34] ], -] - -def make_TriggerTowerContainer(): - ttc = ROOT.xAOD.TriggerTowerContainer_v2() - aux = ROOT.xAOD.TriggerTowerAuxContainer_v2() - ttc.setNonConstStore (aux) - - veccls = getattr (ROOT, 'std::vector<unsigned short>') - for tt_data in tt_table: - tt = ROOT.xAOD.TriggerTower_v2() - ttc.push_back (tt) - ROOT.SetOwnership (tt, False) - tt.setEta (tt_data[0]) - tt.setPhi (tt_data[1]) - v = veccls() - v.reserve (len(tt_data[2])) - for adc in tt_data[2]: - v.push_back (adc) - tt.setAdc (v) - return (ttc, aux) - - -########################################################################### - -from AthenaPython.PyAthenaComps import Alg, StatusCode -class TestAlg (Alg): - def __init__ (self, name): - Alg.__init__ (self, name) - return - - def initialize (self): - # Work around issue with cling in root 6.20.06 getting confused - # by forward declarations. - ROOT.xAOD.TriggerTowerContainer_v2 - - ROOT.ICaloCellMakerTool - self.tool1 = ROOT.ToolHandle(ROOT.ICaloCellMakerTool)('LArCellDeadOTXCorr/tool1') - self.tool2 = ROOT.ToolHandle(ROOT.ICaloCellMakerTool)('LArCellDeadOTXCorr/tool2') - - self.idmgr = self.detStore['CaloIdManager'] - self.onlineID = self.detStore['LArOnlineID'] - self.offlineID = self.detStore['CaloCell_ID'] - self.ccc = None - if not self.tool1.retrieve(): - return StatusCode.Failure - if not self.tool2.retrieve(): - return StatusCode.Failure - - self.ttsvc = ROOT.ToolHandle(ROOT.CaloTriggerTowerService)('CaloTriggerTowerService') - if not self.ttsvc.retrieve(): - return StatusCode.Failure - - return StatusCode.Success - - def execute (self): - if not self.ccc: - self.ccc = make_calo_cells (self.detStore) - - ctx = self.getContext() - iev = ctx.evt() - - (t, a) = make_TriggerTowerContainer() - if not self.evtStore.record (t, 'xAODTriggerTowers', False): - return StatusCode.Failure - if not self.evtStore.record (a, 'xAODTriggerTowersAux.', False): - return StatusCode.Failure - - if iev == 0: - # Event 0: no errors - tool = self.tool1 - exp_diffs = [] - - else: - # Event 1: Some dead FEBs - tool = self.tool2 - exp_diffs = [ - # -2.8, 2.8 - ([604, 605, 668, 669], 31469.03125), - ([472, 473, 536, 537], 3315.987548828), - ([476, 477, 540, 541], 3068.000244141), - ([478, 479, 542, 543], 6195.380859375), - ([606, 607, 670, 671], 18405.75976562), - ([732, 733], 4353.3994140625), - ([734, 735, 798, 799], 4605.912109375), - ([796, 797], 4353.3994140625), - # -1.0, 1.1 - ([34443, 34507, 34571, 34635], 12576.45703125), - ([34442, 34506, 34570, 34634], 1314.39941406), - ] - - if not tool.process (self.ccc, ctx): - return StatusCode.Failure - - self.check_and_reset_cells (exp_diffs) - - #self.print_tt_febs() - - return StatusCode.Success - - - def check_and_reset_cells (self, exp_diffs): - cell_diffs = {} - for ids, e in exp_diffs: - for xid in ids: - cell_diffs[xid] = e - - for c in self.ccc: - i = c.caloDDE().calo_hash().value() - exp_e = cell_diffs.get (i) - if exp_e != None: - assert abs (c.energy() - exp_e) < 1e-6 - else: - assert c.energy() == i%1000 - - assert c.time() == i+0.5 - assert c.quality() == 10 - assert c.provenance() == 11 - return - - - ##### - - - # Print list of FEBS corresponding to each entry in tt_table. - def print_tt_febs (self): - cabling = self.condStore()['LArOnOffIdMap'].find (ctx.eventID()) - for tt in tt_table: - emid, hadid, febs = self.tt_to_febs (cabling, tt[0], tt[1]) - print ('tt ', tt[0], tt[1], hex(emid), hex(hadid), end='') - for feb, idv in febs.items(): - print (feb, hex(idv), end='') - print() - return - - def tt_to_febs (self, cabling, eta, phi): - lvl1Helper = self.idmgr.getLVL1_ID() - pos_neg_z = self.pos_neg_z (eta) - region = self.region_index (eta) - ieta = self.eta_index (eta) - iphi = self.phi_index (eta, phi) - emid = lvl1Helper.tower_id (pos_neg_z, 0, region, ieta, iphi) - hadid = lvl1Helper.tower_id (pos_neg_z, 1, region, ieta, iphi) - febs = {} - for ttid in (emid, hadid): - for cellid in self.ttsvc.createCellIDvecTT (ttid): - febid = cabling.createSignalChannelID (cellid) - barrel_ec = self.onlineID.barrel_ec (febid) - pos_neg = self.onlineID.pos_neg (febid) - feedthrough = self.onlineID.feedthrough (febid) - slot = self.onlineID.slot (febid) - febs[(barrel_ec, pos_neg, feedthrough, slot)] = febid.get_compact() - return (emid.get_compact(), hadid.get_compact(), febs) - - - def pos_neg_z (self, eta): - return 1 if eta >=0 else -1 - - - # min, max, etawidth, phiwidth - ETA_REGIONS = [[0.0, 2.5, 0.1, math.pi/32], - [2.5, 3.1, 0.2, math.pi/32*2], - [3.1, 3.2, 0.1, math.pi/32*2], - [3.2, 4.9, 0.425, math.pi/32*4], - ] - - def find_region (self, eta): - aeta = abs(eta) - for i, r in enumerate (TestAlg.ETA_REGIONS): - if aeta < r[1]: return (i, r) - return (-1, None) - - def region_index (self, eta): - return self.find_region (eta)[0] - - def eta_index (self, eta): - r = self.find_region (eta)[1] - if r: - return int((abs(eta) - r[0]) / r[2]) - return -1 - - def phi_index (self, eta, phi): - r = self.find_region (eta)[1] - if r: - return int (phi / r[3]) - return -1 - - -from LArCabling.LArCablingAccess import LArOnOffIdMapping -LArOnOffIdMapping() - -make_bad_channel_condalg ('GoodFebs') -make_bad_channel_condalg ('BadFebs', BADFEBS2) - -tool1 = LArCellDeadOTXCorrToolDefault ('tool1') -tool1.BadFebKey = 'GoodFebs' -ToolSvc += tool1 - -tool2 = LArCellDeadOTXCorrToolDefault ('tool2') -tool2.BadFebKey = 'BadFebs' -ToolSvc += tool2 -#tool2.useL1CaloDB = True - -############################# -# L1CaloDbTag = "<tag>HEAD</tag>" -# l1calofolder = "/TRIGGER/L1Calo/V1/Calibration/Physics/PprChanCalib" - -# from IOVDbSvc.CondDB import conddb -# conddb.dbname= 'CONDBR2' -# if not conddb.folderRequested(l1calofolder): -# conddb.addFolder('TRIGGER_ONL', l1calofolder + L1CaloDbTag) - -############################# - - -testalg1 = TestAlg ('testalg1') -topSequence += testalg1 diff --git a/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.ref b/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.ref deleted file mode 100644 index aabe0b6588e6778e2015bd40c9ee3757dce2b501..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/share/LArCellDeadOTXCorr_test.ref +++ /dev/null @@ -1,559 +0,0 @@ -Thu Oct 22 12:29:09 EDT 2020 -Preloading tcmalloc_minimal.so -Py:Athena INFO including file "AthenaCommon/Preparation.py" -Py:Athena INFO using release [WorkDir-22.0.19] [x86_64-centos7-gcc8-opt] [master-mt/9d6e7edd41b] -- built on [2020-10-22T1119] -Py:Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" -Py:Athena INFO executing ROOT6Setup -Py:Athena INFO including file "AthenaCommon/Execution.py" -Py:Athena INFO including file "LArCellRec/LArCellDeadOTXCorr_test.py" -Py:Athena INFO SetGeometryVersion.py obtained major release version 22 -Py:Athena INFO including file "IdDictDetDescrCnv/IdDictDetDescrCnv_joboptions.py" -Py:ConfigurableDb INFO Read module info for 5616 configurables from 48 genConfDb files -Py:ConfigurableDb INFO No duplicates have been found: that's good ! -EventInfoMgtInit: Got release version Athena-22.0.19 -Py:IOVDbSvc.CondDB INFO Setting up conditions DB access to instance OFLP200 -Py:Athena INFO including file "CaloIdCnv/CaloIdCnv_joboptions.py" -Py:Athena INFO including file "CaloConditions/CaloConditions_jobOptions.py" -Py:Athena INFO including file "CaloConditions/LArTTCellMap_ATLAS_jobOptions.py" -Py:Athena INFO including file "CaloConditions/CaloTTIdMap_ATLAS_jobOptions.py" -Py:Athena INFO including file "LArConditionsCommon/LArConditionsCommon_MC_jobOptions.py" -Py:JobPropertyContainer:: INFO ATLAS-R2-2016-01-00-01 -Py:JobPropertyContainer:: INFO use global tag for all LArElecCalibMC constants -Py:Athena INFO including file "LArConditionsCommon/LArIdMap_MC_jobOptions.py" -Py:JobPropertyContainer:: INFO setting folder /LAR/Identifier/OnOffIdMap with tag LARIdentifierOnOffIdMap-012 -Py:JobPropertyContainer:: INFO setting folder /LAR/Identifier/CalibIdMap with tag LARIdentifierCalibIdMap-012 -Py:JobPropertyContainer:: INFO setting folder /LAR/Identifier/FebRodMap with tag LARIdentifierFebRodMap-005 -Py:Athena INFO including file "AthenaCommon/runbatch.py" -ApplicationMgr SUCCESS -==================================================================================================================================== - Welcome to ApplicationMgr (GaudiCoreSvc v34r0) - running on spar0103.usatlas.bnl.gov on Thu Oct 22 12:29:29 2020 -==================================================================================================================================== -ApplicationMgr INFO Application Manager Configured successfully -AthDictLoaderSvc INFO in initialize... -AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 3535 CLIDRegistry entries for module ALL -CoreDumpSvc INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) -MetaDataSvc INFO Initializing MetaDataSvc -PoolSvc INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok] -PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled -PoolSvc INFO Frontier compression level set to 5 -DBReplicaSvc INFO Frontier server at (serverurl=http://frontier-atlas.lcg.triumf.ca:3128/ATLAS_frontier)(serverurl=http://frontier-atlas1.lcg.triumf.ca:3128/ATLAS_frontier)(serverurl=http://frontier-atlas2.lcg.triumf.ca:3128/ATLAS_frontier)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(serverurl=http://ccfrontier01.in2p3.fr:23128/ccin2p3-AtlasFrontier)(serverurl=http://ccfrontier02.in2p3.fr:23128/ccin2p3-AtlasFrontier)(serverurl=http://ccfrontier03.in2p3.fr:23128/ccin2p3-AtlasFrontier)(serverurl=http://ccfrontier05.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://frontier-cache.sdcc.bnl.gov:3128)(proxyurl=http://frontier-cache1.sdcc.bnl.gov:3128)(proxyurl=http://frontier-cache2.sdcc.bnl.gov:3128)(proxyurl=http://atlasbpfrontier.fnal.gov:3127)(proxyurl=http://atlasbpfrontier.cern.ch:3127) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-10-20T2101/Athena/22.0.19/InstallArea/x86_64-centos7-gcc8-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 1 servers found for host spar0103.usatlas.bnl.gov [ATLF ] -PoolSvc INFO Successfully setup replica sorting algorithm -PoolSvc INFO Setting up APR FileCatalog and Streams -PoolSvc WARNING Unable to locate catalog for prfile:poolcond/PoolCat_oflcond.xml check your ATLAS_POOLCOND_PATH and DATAPATH variables -PoolSvc WARNING Unable to locate catalog for apcfile:poolcond/PoolCat_oflcond.xml check your ATLAS_POOLCOND_PATH and DATAPATH variables -PoolSvc INFO Resolved path (via ATLAS_POOLCOND_PATH) is /cvmfs/atlas-condb.cern.ch/repo/conditions/poolcond/PoolFileCatalog.xml -PoolSvc INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml -DbSession INFO Open DbSession -Domain[ROOT_All] INFO > Access DbDomain READ [ROOT_All] -MetaDataSvc INFO Found MetaDataTools = PublicToolHandleArray([]) -IOVDbSvc INFO Only 5 POOL conditions files will be open at once -IOVDbSvc INFO Cache alignment will be done in 3 slices -IOVDbSvc INFO Global tag: OFLCOND-RUN12-SDR-35 set from joboptions -IOVDbSvc INFO Folder /LAR/Identifier/OnOffIdMap, adding new key tag with value LARIdentifierOnOffIdMap-012 -IOVDbSvc INFO Folder /LAR/Identifier/CalibIdMap, adding new key tag with value LARIdentifierCalibIdMap-012 -IOVDbSvc INFO Folder /LAR/Identifier/FebRodMap, adding new key tag with value LARIdentifierFebRodMap-005 -IOVDbFolder INFO Read from meta data only for folder /TagInfo -IOVDbSvc INFO Initialised with 3 connections and 25 folders -IOVDbSvc INFO Service IOVDbSvc initialised successfully -ClassIDSvc INFO getRegistryEntries: read 1629 CLIDRegistry entries for module ALL -IOVDbSvc INFO preLoadAddresses: Removing folder /TagInfo. It should only be in the file meta data and was not found. -IOVDbSvc INFO Opening COOL connection for COOLOFL_LAR/OFLP200 -IOVSvc INFO No IOVSvcTool associated with store "StoreGateSvc" -IOVSvc.IOVSvcTool INFO IOVRanges will be checked at every Event -ClassIDSvc INFO getRegistryEntries: read 273 CLIDRegistry entries for module ALL -IOVDbSvc INFO Opening COOL connection for COOLOFL_CALO/OFLP200 -IOVDbSvc INFO Disconnecting from COOLOFL_LAR/OFLP200 -IOVDbSvc INFO Disconnecting from COOLOFL_CALO/OFLP200 -IOVDbSvc INFO Added taginfo remove for /LAR/Align -IOVDbSvc INFO Added taginfo remove for /LAR/BadChannels/BadChannels -IOVDbSvc INFO Added taginfo remove for /LAR/BadChannels/MissingFEBs -IOVDbSvc INFO Added taginfo remove for /LAR/CellCorrOfl/deadOTX -IOVDbSvc INFO Added taginfo remove for /LAR/Identifier/CalibIdMap -IOVDbSvc INFO Added taginfo remove for /LAR/Identifier/FebRodMap -IOVDbSvc INFO Added taginfo remove for /LAR/Identifier/OnOffIdMap -IOVDbSvc INFO Added taginfo remove for /CALO/Ofl/Identifier/CaloTTOnAttrIdMapAtlas -IOVDbSvc INFO Added taginfo remove for /CALO/Ofl/Identifier/CaloTTOnOffIdMapAtlas -IOVDbSvc INFO Added taginfo remove for /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/AutoCorr -IOVDbSvc INFO Added taginfo remove for /LAR/LArCellPositionShift -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/DAC2uA -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/HVScaleCorr -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/MinBias -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/MinBiasAverage -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/MphysOverMcal -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/Noise -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/Pedestal -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/Ramp -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/Shape -IOVDbSvc INFO Added taginfo remove for /LAR/Identifier/LArTTCellMapAtlas -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/fSampl -IOVDbSvc INFO Added taginfo remove for /LAR/ElecCalibMC/uA2MeV -ClassIDSvc INFO getRegistryEntries: read 26 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 2268 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 39 CLIDRegistry entries for module ALL -DetDescrCnvSvc INFO initializing -DetDescrCnvSvc INFO Found DetectorStore service -DetDescrCnvSvc INFO filling proxies for detector managers -DetDescrCnvSvc INFO filling address for CaloTTMgr with CLID 117659265 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloMgr with CLID 4548337 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloSuperCellMgr with CLID 241807251 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloIdManager with CLID 125856940 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for IdDict with CLID 2411 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for AtlasID with CLID 164875623 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for PixelID with CLID 2516 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for SCT_ID with CLID 2517 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TRT_ID with CLID 2518 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for SiliconID with CLID 129452393 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArEM_ID with CLID 163583365 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArEM_SuperCell_ID with CLID 99488227 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArHEC_ID with CLID 3870484 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArHEC_SuperCell_ID with CLID 254277678 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArFCAL_ID with CLID 45738051 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArFCAL_SuperCell_ID with CLID 12829437 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArMiniFCAL_ID with CLID 79264204 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArOnlineID with CLID 158698068 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TTOnlineID with CLID 38321944 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArOnline_SuperCellID with CLID 115600394 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArHVLineID with CLID 27863673 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for LArElectrodeID with CLID 80757351 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TileID with CLID 2901 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for Tile_SuperCell_ID with CLID 49557789 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TileHWID with CLID 2902 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TileTBID with CLID 2903 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for MDTIDHELPER with CLID 4170 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CSCIDHELPER with CLID 4171 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for RPCIDHELPER with CLID 4172 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for TGCIDHELPER with CLID 4173 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloLVL1_ID with CLID 108133391 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloCell_ID with CLID 123500438 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloCell_SuperCell_ID with CLID 128365736 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for CaloDM_ID with CLID 167756483 and storage type 68 to detector store -DetDescrCnvSvc INFO filling address for ZdcID with CLID 190591643 and storage type 68 to detector store -GeoModelSvc::RD...WARNING Getting PixTBMatComponents with default tag -GeoModelSvc::RD...WARNING Getting PixTBMaterials with default tag -GeoModelSvc::RD...WARNING Getting InDetMatComponents with default tag -GeoModelSvc::RD...WARNING Getting InDetMaterials with default tag -EventPersistenc... INFO Added successfully Conversion service:DetDescrCnvSvc -LArElectrodeIDD... INFO in createObj: creating a LArElectrodeID helper object in the detector store -IdDictDetDescrCnv INFO in initialize -IdDictDetDescrCnv INFO in createObj: creating a IdDictManager object in the detector store -IdDictDetDescrCnv INFO IdDictName: IdDictParser/ATLAS_IDS.xml -IdDictDetDescrCnv INFO Reading InnerDetector IdDict file InDetIdDictFiles/IdDictInnerDetector_IBL3D25-03.xml -IdDictDetDescrCnv INFO Reading LArCalorimeter IdDict file IdDictParser/IdDictLArCalorimeter_DC3-05-Comm-01.xml -IdDictDetDescrCnv INFO Reading TileCalorimeter IdDict file IdDictParser/IdDictTileCalorimeter.xml -IdDictDetDescrCnv INFO Reading Calorimeter IdDict file IdDictParser/IdDictCalorimeter_L1Onl.xml -IdDictDetDescrCnv INFO Reading MuonSpectrometer IdDict file IdDictParser/IdDictMuonSpectrometer_R.03.xml -IdDictDetDescrCnv INFO Reading ForwardDetectors IdDict file IdDictParser/IdDictForwardDetectors_2010.xml -IdDictDetDescrCnv INFO Found id dicts: -IdDictDetDescrCnv INFO Using dictionary tag: null -IdDictDetDescrCnv INFO Dictionary ATLAS version default DetDescr tag (using default) file -IdDictDetDescrCnv INFO Dictionary Calorimeter version default DetDescr tag CaloIdentifier-LVL1-02 file IdDictParser/IdDictCalorimeter_L1Onl.xml -IdDictDetDescrCnv INFO Dictionary ForwardDetectors version default DetDescr tag ForDetIdentifier-01 file IdDictParser/IdDictForwardDetectors_2010.xml -IdDictDetDescrCnv INFO Dictionary InnerDetector version IBL-DBM DetDescr tag InDetIdentifier-IBL3D25-02 file InDetIdDictFiles/IdDictInnerDetector_IBL3D25-03.xml -IdDictDetDescrCnv INFO Dictionary LArCalorimeter version fullAtlas DetDescr tag LArIdentifier-DC3-05-Comm file IdDictParser/IdDictLArCalorimeter_DC3-05-Comm-01.xml -IdDictDetDescrCnv INFO Dictionary LArElectrode version fullAtlas DetDescr tag (using default) file -IdDictDetDescrCnv INFO Dictionary LArHighVoltage version fullAtlas DetDescr tag (using default) file -IdDictDetDescrCnv INFO Dictionary MuonSpectrometer version R.03 DetDescr tag MuonIdentifier-08 file IdDictParser/IdDictMuonSpectrometer_R.03.xml -IdDictDetDescrCnv INFO Dictionary TileCalorimeter version fullAtlasAndTestBeam DetDescr tag TileIdentifier-00 file IdDictParser/IdDictTileCalorimeter.xml -LArElectrodeID INFO => initialize_from_dictionary() -AtlasDetectorID INFO initialize_from_dictionary - OK -AtlasDetectorID INFO initialize_from_dictionary - OK -LArHVLineIDDetD... INFO in createObj: creating a LArHVLineID helper object in the detector store -LArHVLineID INFO => initialize_from_dictionary() -AtlasDetectorID INFO initialize_from_dictionary - OK -AtlasDetectorID INFO initialize_from_dictionary - OK -LArHVLineID INFO => initialize_from_dictionary(dict_mgr) =0 -LArHVLineID INFO Register_dict_tag of LArHighVoltage is OK -LArHVLineID INFO setDictVersion of LArHighVoltage is OK -LArHVLineID INFO [initLevelsFromDict] m_dict OK ... -LArHVLineID INFO [initialize_from_dictionary] > HV line range -> 11/1/48:79/0:15 | 11/1/148:179/0:15 | 11/1/80:93/0:7 | 11/1/180:193/0:7 | 11/1/200:231/0:15 | 11/1/232:263/0:15 | 11/1/296,297,306,307/0:15 | 11/1/299,304,305,308,309/0:15 | 11/1/264:279/0:15 | 11/1/280:295/0:15 | 11/1/0:47/0:15 | 11/1/320:322/0:15 | 11/1/100:147/0:15 | 11/1/324,325/0:15 | 11/1/312:315/0:15 | 11/1/316:319/0:15 | 11/1/300:303/0:15 | 11/1/310,311/0:15 | 11/1/323/0:15 | 11/1/326,327/0:15 | 11/1/94:99/0:15 | 11/1/194:199/0:15 -LArHVLineID INFO [init_hashes()] > Hvline_size= 5008 -GeoModelSvc.LAr... INFO Keys for LAr are ATLAS-R2-2016-01-00-01 ATLAS -GeoModelSvc.LAr... INFO Building LAr version LAr-Revised-17-01 while ATLAS version is ATLAS-R2-2016-01-00-01 -GeoModelSvc.LAr... INFO LAr Geometry Options: -GeoModelSvc.LAr... INFO Sagging = false -GeoModelSvc.LAr... INFO Barrel = ON -GeoModelSvc.LAr... INFO Endcap = ON -BarrelConstruction INFO Getting primary numbers for ATLAS, ATLAS-R2-2016-01-00-01 -BarrelConstruction INFO Makes detailed absorber sandwich ? 1 1 -BarrelConstruction INFO Use sagging in geometry ? 0 -EMECConstruction INFO multi-layered version of absorbers activated, parameter value is 1 -EMECConstruction INFO activating LAr::EMEC::Pos::InnerWheel -EMECConstruction INFO activating LAr::EMEC::Pos::OuterWheel -ClassIDSvc INFO getRegistryEntries: read 3578 CLIDRegistry entries for module ALL -CaloIDHelper_ID... INFO in createObj: creating a TileTBID helper object in the detector store -TileTBID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -EndcapDMConstru... INFO Start building EC electronics geometry -EMECConstruction INFO multi-layered version of absorbers activated, parameter value is 1 -EMECConstruction INFO activating LAr::EMEC::Neg::InnerWheel -EMECConstruction INFO activating LAr::EMEC::Neg::OuterWheel -EndcapDMConstru... INFO Start building EC electronics geometry -GeoModelSvc INFO GeoModelSvc.LArDetectorToolNV SZ= 24344Kb Time = 0.64S -ClassIDSvc INFO getRegistryEntries: read 67 CLIDRegistry entries for module ALL -AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr -ClassIDSvc INFO getRegistryEntries: read 5532 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 618 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 3459 CLIDRegistry entries for module ALL -CondInputLoader INFO Initializing CondInputLoader... -CondInputLoader INFO Adding base classes: - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/BadChannels/MissingFEBs' ) -> - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/CalibIdMap' ) -> - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/FebRodMap' ) -> - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/OnOffIdMap' ) -> - + ( 'CondAttrListCollection' , 'ConditionStore+/LAR/BadChannels/BadChannels' ) -> - + ( 'CondAttrListCollection' , 'ConditionStore+/LAR/CellCorrOfl/deadOTX' ) -> - + ( 'LArAutoCorrMC' , 'ConditionStore+LArAutoCorr' ) -> ILArAutoCorr (8124) - + ( 'LArDAC2uAMC' , 'ConditionStore+LArDAC2uA' ) -> ILArDAC2uA (579584) - + ( 'LArHVScaleCorrComplete' , 'ConditionStore+LArHVScaleCorr' ) -> ILArHVScaleCorr (93397263) - + ( 'LArMinBiasAverageMC' , 'ConditionStore+LArMinBiasAverage' ) -> ILArMinBiasAverage (112216056) - + ( 'LArMinBiasMC' , 'ConditionStore+LArMinBias' ) -> ILArMinBias (197482938) - + ( 'LArMphysOverMcalMC' , 'ConditionStore+LArMphysOverMcal' ) -> ILArMphysOverMcal (128308807) - + ( 'LArNoiseMC' , 'ConditionStore+LArNoise' ) -> ILArNoise (8125) - + ( 'LArPedestalMC' , 'ConditionStore+LArPedestal' ) -> ILArPedestal (8122) - + ( 'LArRampMC' , 'ConditionStore+LArRamp' ) -> ILArRamp (8123) - + ( 'LArShape32MC' , 'ConditionStore+LArShape' ) -> ILArShape (245731716) - + ( 'LArfSamplMC' , 'ConditionStore+LArfSampl' ) -> ILArfSampl (128126607) - + ( 'LAruA2MeVMC' , 'ConditionStore+LAruA2MeV' ) -> ILAruA2MeV (154639332) -CondInputLoader INFO Will create WriteCondHandle dependencies for the following DataObjects: - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/BadChannels/MissingFEBs' ) - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/CalibIdMap' ) - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/FebRodMap' ) - + ( 'AthenaAttributeList' , 'ConditionStore+/LAR/Identifier/OnOffIdMap' ) - + ( 'CondAttrListCollection' , 'ConditionStore+/LAR/BadChannels/BadChannels' ) - + ( 'CondAttrListCollection' , 'ConditionStore+/LAR/CellCorrOfl/deadOTX' ) - + ( 'ILArAutoCorr' , 'ConditionStore+LArAutoCorr' ) - + ( 'ILArDAC2uA' , 'ConditionStore+LArDAC2uA' ) - + ( 'ILArHVScaleCorr' , 'ConditionStore+LArHVScaleCorr' ) - + ( 'ILArMinBias' , 'ConditionStore+LArMinBias' ) - + ( 'ILArMinBiasAverage' , 'ConditionStore+LArMinBiasAverage' ) - + ( 'ILArMphysOverMcal' , 'ConditionStore+LArMphysOverMcal' ) - + ( 'ILArNoise' , 'ConditionStore+LArNoise' ) - + ( 'ILArPedestal' , 'ConditionStore+LArPedestal' ) - + ( 'ILArRamp' , 'ConditionStore+LArRamp' ) - + ( 'ILArShape' , 'ConditionStore+LArShape' ) - + ( 'ILArfSampl' , 'ConditionStore+LArfSampl' ) - + ( 'ILAruA2MeV' , 'ConditionStore+LAruA2MeV' ) - + ( 'LArAutoCorrMC' , 'ConditionStore+LArAutoCorr' ) - + ( 'LArDAC2uAMC' , 'ConditionStore+LArDAC2uA' ) - + ( 'LArHVScaleCorrComplete' , 'ConditionStore+LArHVScaleCorr' ) - + ( 'LArMinBiasAverageMC' , 'ConditionStore+LArMinBiasAverage' ) - + ( 'LArMinBiasMC' , 'ConditionStore+LArMinBias' ) - + ( 'LArMphysOverMcalMC' , 'ConditionStore+LArMphysOverMcal' ) - + ( 'LArNoiseMC' , 'ConditionStore+LArNoise' ) - + ( 'LArPedestalMC' , 'ConditionStore+LArPedestal' ) - + ( 'LArRampMC' , 'ConditionStore+LArRamp' ) - + ( 'LArShape32MC' , 'ConditionStore+LArShape' ) - + ( 'LArfSamplMC' , 'ConditionStore+LArfSampl' ) - + ( 'LAruA2MeVMC' , 'ConditionStore+LAruA2MeV' ) -PyComponentMgr INFO Initializing PyComponentMgr... -testalg1 INFO Initializing testalg1... -ClassIDSvc INFO getRegistryEntries: read 1105 CLIDRegistry entries for module ALL -CaloIdMgrDetDes... INFO in createObj: creating a CaloDescrManager object in the detector store -CaloIDHelper_ID... INFO in createObj: creating a CaloCell_ID helper object in the detector store -CaloIDHelper_ID... INFO in createObj: creating a LArEM_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a LArHEC_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a LArFCAL_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-10-20T2101/Athena/22.0.19/InstallArea/x86_64-centos7-gcc8-opt/share/FCal2DNeighbors-April2011.txt -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-10-20T2101/Athena/22.0.19/InstallArea/x86_64-centos7-gcc8-opt/share/FCal3DNeighborsNext-April2011.txt -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-10-20T2101/Athena/22.0.19/InstallArea/x86_64-centos7-gcc8-opt/share/FCal3DNeighborsPrev-April2011.txt -CaloIDHelper_ID... INFO in createObj: creating a LArMiniFCAL_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -LArMiniFCAL_ID INFO initialize_from_dict - LArCalorimeter dictionary does NOT contain miniFCAL description. Unable to initialize LArMiniFCAL_ID. -CaloIDHelper_ID... INFO in createObj: creating a TileID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -TileNeighbour INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-10-20T2101/Athena/22.0.19/InstallArea/x86_64-centos7-gcc8-opt/share/TileNeighbour_reduced.txt -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a CaloDM_ID helper object in the detector store -CaloDM_ID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a CaloLVL1_ID helper object in the detector store -CaloLVL1_ID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a TTOnlineID helper object in the detector store -TTOnlineID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a CaloCell_SuperCell_ID helper object in the detector store -CaloIDHelper_ID... INFO in createObj: creating a LArEM_SuperCell_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a LArHEC_SuperCell_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIDHelper_ID... INFO in createObj: creating a LArFCAL_SuperCell_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-10-20T2101/Athena/22.0.19/InstallArea/x86_64-centos7-gcc8-opt/share/FCalSuperCells2DNeighborsNew-April2014.txt -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-10-20T2101/Athena/22.0.19/InstallArea/x86_64-centos7-gcc8-opt/share/FCalSuperCells3DNeighborsNextNew-April2014.txt -LArFCAL_Base_ID INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-10-20T2101/Athena/22.0.19/InstallArea/x86_64-centos7-gcc8-opt/share/FCalSuperCells3DNeighborsPrevNew-April2014.txt -CaloIDHelper_ID... INFO in createObj: creating a Tile_SuperCell_ID helper object in the detector store -AtlasDetectorID INFO initialize_from_dictionary - OK -TileNeighbour INFO Reading file /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-10-20T2101/Athena/22.0.19/InstallArea/x86_64-centos7-gcc8-opt/share/TileSuperCellNeighbour.txt -AtlasDetectorID INFO initialize_from_dictionary - OK -CaloIdMgrDetDes... INFO Finished -CaloIdMgrDetDes... INFO Initializing CaloIdMgr from values in CaloIdMgrDetDescrCnv -ClassIDSvc INFO getRegistryEntries: read 36 CLIDRegistry entries for module ALL -LArOnlineIDDetD... INFO in createObj: creating a LArOnlineID helper object in the detector store -LArOnlineID INFO initialize_from_dictionary -AtlasDetectorID INFO initialize_from_dictionary - OK -ClassIDSvc INFO getRegistryEntries: read 66 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 1413 CLIDRegistry entries for module ALL -ToolSvc.tool1 INFO Initializing LArCellDeadOTXCorr -ToolSvc.tool1 INFO L1Calo database won't be used. Pedestal values will be constant and equal to 32. -ToolSvc.CaloTri... INFO => CaloTriggerTowerService::initialize() -ToolSvc.CaloTri... INFO ====> ...CaloTriggerTowerService::init() OK -ClassIDSvc INFO getRegistryEntries: read 60 CLIDRegistry entries for module ALL -ToolSvc.tool2 INFO Initializing LArCellDeadOTXCorr -ToolSvc.tool2 INFO L1Calo database won't be used. Pedestal values will be constant and equal to 32. -ApplicationMgr INFO Application Manager Initialized successfully -ClassIDSvc INFO getRegistryEntries: read 64 CLIDRegistry entries for module ALL -CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/BadChannels/MissingFEBs' -CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/CalibIdMap' -CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/FebRodMap' -CondInputLoader INFO created CondCont<AthenaAttributeList> with key 'ConditionStore+/LAR/Identifier/OnOffIdMap' -CondInputLoader INFO created CondCont<CondAttrListCollection> with key 'ConditionStore+/LAR/BadChannels/BadChannels' -CondInputLoader INFO created CondCont<CondAttrListCollection> with key 'ConditionStore+/LAR/CellCorrOfl/deadOTX' -CondInputLoader INFO created CondCont<LArAutoCorrMC> with key 'ConditionStore+LArAutoCorr' -CondInputLoader INFO created CondCont<LArDAC2uAMC> with key 'ConditionStore+LArDAC2uA' -CondInputLoader INFO created CondCont<LArHVScaleCorrComplete> with key 'ConditionStore+LArHVScaleCorr' -CondInputLoader INFO created CondCont<LArMinBiasAverageMC> with key 'ConditionStore+LArMinBiasAverage' -CondInputLoader INFO created CondCont<LArMinBiasMC> with key 'ConditionStore+LArMinBias' -CondInputLoader INFO created CondCont<LArMphysOverMcalMC> with key 'ConditionStore+LArMphysOverMcal' -CondInputLoader INFO created CondCont<LArNoiseMC> with key 'ConditionStore+LArNoise' -CondInputLoader INFO created CondCont<LArPedestalMC> with key 'ConditionStore+LArPedestal' -CondInputLoader INFO created CondCont<LArRampMC> with key 'ConditionStore+LArRamp' -CondInputLoader INFO created CondCont<LArShape32MC> with key 'ConditionStore+LArShape' -CondInputLoader INFO created CondCont<LArfSamplMC> with key 'ConditionStore+LArfSampl' -CondInputLoader INFO created CondCont<LAruA2MeVMC> with key 'ConditionStore+LAruA2MeV' -ApplicationMgr INFO Application Manager Started successfully -AthenaEventLoopMgr INFO ===>>> start of run 1 <<<=== -EventPersistenc... INFO Added successfully Conversion service:AthenaPoolCnvSvc -EventPersistenc... INFO Added successfully Conversion service:TagInfoMgr -IOVDbSvc INFO Opening COOL connection for COOLOFL_LAR/OFLP200 -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARAlign-IOVDEP-00 for folder /LAR/Align -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LArBadChannelsBadChannels-IOVDEP-06 for folder /LAR/BadChannels/BadChannels -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LArBadChannelsMissingFEBs-IOVDEP-04 for folder /LAR/BadChannels/MissingFEBs -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARCellCorrOflDeadOTX-000-00 for folder /LAR/CellCorrOfl/deadOTX -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCAutoCorr-Apr2010 for folder /LAR/ElecCalibMC/AutoCorr -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LArCellPositionShift-ideal for folder /LAR/LArCellPositionShift -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCDAC2uA-CSC02-J for folder /LAR/ElecCalibMC/DAC2uA -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCHVScaleCorr-IOVDEP-00 for folder /LAR/ElecCalibMC/HVScaleCorr -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCMinBias-IOVDEP-01 for folder /LAR/ElecCalibMC/MinBias -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCMinBiasAverage-IOVDEP-01 for folder /LAR/ElecCalibMC/MinBiasAverage -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCMphysOverMcal-CSC02-I for folder /LAR/ElecCalibMC/MphysOverMcal -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCNoise-Apr2010 for folder /LAR/ElecCalibMC/Noise -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCPedestal-DC3-B-IdFix7 for folder /LAR/ElecCalibMC/Pedestal -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCRamp-CSC02-K for folder /LAR/ElecCalibMC/Ramp -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCShape-Apr2010 for folder /LAR/ElecCalibMC/Shape -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARIdentifierLArTTCellMapAtlas-HadFcalFix2 for folder /LAR/Identifier/LArTTCellMapAtlas -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARElecCalibMCfSampl-G496-19213-FTFP_BERT_BIRK for folder /LAR/ElecCalibMC/fSampl -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to LARuA2MeV-Feb2011 for folder /LAR/ElecCalibMC/uA2MeV -IOVDbSvc INFO Disconnecting from COOLOFL_LAR/OFLP200 -IOVDbSvc INFO Opened read transaction for POOL PersistencySvc -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] EACFEBD4-9BD2-E211-848A-02163E006B20 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000057.gen.COND/cond09_mc.000057.gen.COND._0001.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000057.gen.COND/cond09_mc.000057.gen.COND._0001.pool.root File version:52200 -CaloMgrDetDescrCnv INFO in createObj: creating a Calo Detector Manager object in the detector store -DetectorStore WARNING retrieve(default): No valid proxy for default object - of type TileDetDescrManager(CLID 2941) -buildCaloDetDescr WARNING Could not get the TileDetectorManager. No Calo Elements will be built for Tile -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 8667C6F2-1559-DE11-A611-000423D9A21A -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0064.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0064.pool.root File version:52200 -AthenaEventLoopMgr INFO ===>>> start processing event #1, run #1 0 events processed so far <<<=== -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 9229AE70-AC4C-DF11-A934-003048D2BC4A -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root File version:52200 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 64ADE389-CABD-DD11-8D4C-000423D950B0 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0053.pool.root -Warning in <TClass::Init>: no dictionary for class DataHeader_p2 is available -Warning in <TClass::Init>: no dictionary for class DataHeaderElement_p2 is available -Warning in <TClass::Init>: no dictionary for class PoolToken_p1 is available -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0053.pool.root File version:51800 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] EACFEBD4-9BD2-E211-848A-02163E006B20 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 7C42BC12-BD96-E011-B8EC-003048F0E01C -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000032.gen.COND/cond09_mc.000032.gen.COND._0001.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000032.gen.COND/cond09_mc.000032.gen.COND._0001.pool.root File version:52600 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 8667C6F2-1559-DE11-A611-000423D9A21A -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 687EA080-E4B6-DD11-A149-000423D9907C -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0067.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000001.gen.COND/cond08_mc.000001.gen.COND._0067.pool.root File version:51800 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 9229AE70-AC4C-DF11-A934-003048D2BC4A -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] FE8535CE-AD50-DC11-952F-000423D67862 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0040.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0040.pool.root File version:51400 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 64ADE389-CABD-DD11-8D4C-000423D950B0 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 3CE29BA7-A6DC-DC11-BF61-000423D65662 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/comcond/comcond.000004.lar_conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0044.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/comcond/comcond.000004.lar_conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0044.pool.root File version:51400 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 7C42BC12-BD96-E011-B8EC-003048F0E01C -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0011.pool.root File version:52200 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 687EA080-E4B6-DD11-A149-000423D9907C -LArPedestalMCCnv INFO Reading LArPedestalMC (original) -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 180A4AF2-F47E-DB11-9E8F-000E0C4DEA2D -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/cmccond.000001.conditions.simul.pool.v0000/oflcond.000002.conditions.simul.pool.v0000._0053.pool.root__DQ2-1250193473 -Warning in <TClass::Init>: no dictionary for class DataHeader_p1 is available -Warning in <TClass::Init>: no dictionary for class DataHeaderElement_p1 is available -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/cmccond.000001.conditions.simul.pool.v0000/oflcond.000002.conditions.simul.pool.v0000._0053.pool.root__DQ2-1250193473 File version:51000 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] FE8535CE-AD50-DC11-952F-000423D67862 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 303FCBD8-653E-DD11-ABBD-000423D99862 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0061.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/oflcond/oflcond.000003.conditions.simul.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0061.pool.root File version:51800 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 3CE29BA7-A6DC-DC11-BF61-000423D65662 -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] F4885664-6C4D-DF11-A94A-00304867340C -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0013.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000009.gen.COND/cond09_mc.000009.gen.COND._0013.pool.root File version:52200 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 9229AE70-AC4C-DF11-A934-003048D2BC4A -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] 445FAD9A-5DB3-E14A-81DB-BA6244602734 -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000084.gen.COND/cond09_mc.000084.gen.COND._0001.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000084.gen.COND/cond09_mc.000084.gen.COND._0001.pool.root File version:53413 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 180A4AF2-F47E-DB11-9E8F-000E0C4DEA2D -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] D27D07D4-C135-E011-84A9-003048F0E01E -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000027.gen.COND/cond09_mc.000027.gen.COND._0001.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000027.gen.COND/cond09_mc.000027.gen.COND._0001.pool.root File version:52600 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 303FCBD8-653E-DD11-ABBD-000423D99862 - of type TileDetDescrManager(CLID 2941) -buildCaloDetDescr WARNING Could not get the TileDetectorManager. No Calo Elements will be built for Tile -LArOnOffMappingAlg INFO Done reading online/offline identifier mapping -LArOnOffMappingAlg INFO Found 195072 online identifier and 182468 offline identifier. 12604 disconnected channels. -LArOnOffMappingAlg INFO recorded new LArOnOffIdMap with range {[0,l:0] - [INVALID]} into Conditions Store -LArCalibLineMap... INFO Done reading readout/calibration line mapping. -LArCalibLineMap... INFO recorded new LArCalibLineMap with range {[0,l:0] - [INVALID]} into Conditions Store -LArFebRodMappin... INFO Done reading Feb/Rod mapping. Found 1524 Febs and 762 Rods -LArFebRodMappin... INFO recorded new LArFebRodMap with range {[0,l:0] - [INVALID]} into Conditions Store -LArBadChannelCo... INFO Read a total of 0 problematic channels from database -LArBadChannelCo... INFO Recorded LArRawChannelCont object with key LArBadChannel with EventRange {[0,t:0,l:0] - [1,l:4294967294]} into Conditions Store -LArBadFebCondAlg INFO Read a total of 0 problematic febs from database -LArBadFebCondAlg INFO Recorded LArBadFebCont object with LArBadFeb with EventRange {[0,l:0] - [115301,l:0]} into Conditions Store -LArKnownBadFebAlg INFO Read a total of 0 problematic febs from database -LArKnownBadFebAlg INFO Recorded LArBadFebCont object with LArKnownBadFEBs with EventRange {[0,l:0] - [4294967294,l:4294967294]} into Conditions Store -LArKnownMNBFebAlg INFO Read a total of 0 problematic febs from database -LArKnownMNBFebAlg INFO Recorded LArBadFebCont object with LArKnownMNBFEBs with EventRange {[0,l:0] - [4294967294,l:4294967294]} into Conditions Store -LArMCSymCondAlg INFO recorded new LArMCSym with range {[0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArRampSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArAutoCorrSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArDAC2uASym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArNoiseSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArfSamplSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LAruA2MeVSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArMinBiasSym with range {[0,t:0,l:0] - [222222,l:0]} into Conditions Store -LArSymCondition... INFO recorded new LArMinBiasAverageSym with range {[0,t:0,l:0] - [222222,l:0]} into Conditions Store -LArSymCondition... INFO recorded new LArShapeSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store -LArSymCondition... INFO recorded new LArMphysOverMcalSym with range {[0,t:0,l:0] - [INVALID]} into Conditions Store -LArBadFebCondAl... INFO Read a total of 0 problematic febs from database -LArBadFebCondAl... INFO Recorded LArBadFebCont object with GoodFebs with EventRange {[0,l:0] - [4294967294,l:4294967294]} into Conditions Store -LArBadFebCondAl... INFO Read a total of 3 problematic febs from database -LArBadFebCondAl... INFO Recorded LArBadFebCont object with BadFebs with EventRange {[0,l:0] - [4294967294,l:4294967294]} into Conditions Store -ClassIDSvc INFO getRegistryEntries: read 1157 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 138 CLIDRegistry entries for module ALL -AthenaEventLoopMgr INFO ===>>> done processing event #1, run #1 1 events processed so far <<<=== -AthenaEventLoopMgr INFO ===>>> start processing event #2, run #1 1 events processed so far <<<=== -LArTTCellMapCnv INFO initialize() -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] B2E3B2B6-B76C-DF11-A505-000423D5ADDA -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000013.gen.COND/cond09_mc.000013.gen.COND._0001.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond09/cond09_mc.000013.gen.COND/cond09_mc.000013.gen.COND._0001.pool.root File version:52200 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] F4885664-6C4D-DF11-A94A-00304867340C -IOVDbSvc INFO Opening COOL connection for COOLOFL_CALO/OFLP200 -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to CALOOflIdentifierCaloTTOnAttrIdMapAtlas-0001 for folder /CALO/Ofl/Identifier/CaloTTOnAttrIdMapAtlas -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to CALOOflIdentifierCaloTTOnOffIdMapAtlas-0002 for folder /CALO/Ofl/Identifier/CaloTTOnOffIdMapAtlas -IOVDbFolder INFO HVS tag OFLCOND-RUN12-SDR-35 resolved to CALOOflIdentifierCaloTTPpmRxIdMapAtlas-0000 for folder /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas -IOVDbSvc INFO Disconnecting from COOLOFL_CALO/OFLP200 -CaloTTOnOffIdMa... INFO initialize() -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] EC2448FE-EFE2-DD11-80D3-000423D98B8C -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0004.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cond08/cond08_mc.000003.gen.COND/cond08_mc.000003.gen.COND._0004.pool.root File version:51800 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] 445FAD9A-5DB3-E14A-81DB-BA6244602734 -CaloTTOnAttrIdM... INFO initialize() -Domain[ROOT_All] INFO -> Access DbDatabase READ [ROOT_All] CE5211E9-F51F-DC11-87A7-000423D6460E -Domain[ROOT_All] INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/comcond.000001.conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0026.pool.root -RootDatabase.open INFO /cvmfs/atlas-condb.cern.ch/repo/conditions/cmccond/comcond.000001.conditions.recon.pool.v0000/oflcond.000003.conditions.simul.pool.v0000._0026.pool.root File version:51400 -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] D27D07D4-C135-E011-84A9-003048F0E01E -AthenaEventLoopMgr INFO ===>>> done processing event #2, run #1 2 events processed so far <<<=== -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] CE5211E9-F51F-DC11-87A7-000423D6460E -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] B2E3B2B6-B76C-DF11-A505-000423D5ADDA -/cvmfs/atlas-co... INFO Database being retired... -Domain[ROOT_All] INFO -> Deaccess DbDatabase READ [ROOT_All] EC2448FE-EFE2-DD11-80D3-000423D98B8C -Domain[ROOT_All] INFO > Deaccess DbDomain READ [ROOT_All] -ApplicationMgr INFO Application Manager Stopped successfully -IncidentProcAlg1 INFO Finalize -CondInputLoader INFO Finalizing CondInputLoader... -testalg1 INFO Finalizing testalg1... -IncidentProcAlg2 INFO Finalize -PyComponentMgr INFO Finalizing PyComponentMgr... -IdDictDetDescrCnv INFO in finalize -IOVDbFolder INFO Folder /LAR/Align (PoolRef) db-read 1/1 objs/chan/bytes 1/1/170 (( 0.92 ))s -IOVDbFolder INFO Folder /LAR/BadChannels/BadChannels (AttrListColl) db-read 1/1 objs/chan/bytes 0/8/0 (( 0.45 ))s -IOVDbFolder INFO Folder /LAR/BadChannels/MissingFEBs (AttrList) db-read 1/1 objs/chan/bytes 1/1/16 (( 0.23 ))s -IOVDbFolder INFO Folder /LAR/CellCorrOfl/deadOTX (AttrListColl) db-read 1/1 objs/chan/bytes 1/1/705 (( 0.23 ))s -IOVDbFolder INFO Folder /LAR/Identifier/CalibIdMap (AttrList) db-read 1/1 objs/chan/bytes 1/1/1520148 (( 0.30 ))s -IOVDbFolder INFO Folder /LAR/Identifier/FebRodMap (AttrList) db-read 1/1 objs/chan/bytes 1/1/6100 (( 0.16 ))s -IOVDbFolder INFO Folder /LAR/Identifier/OnOffIdMap (AttrList) db-read 1/1 objs/chan/bytes 1/1/780292 (( 0.39 ))s -IOVDbFolder INFO Folder /CALO/Ofl/Identifier/CaloTTOnAttrIdMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/183 (( 0.81 ))s -IOVDbFolder INFO Folder /CALO/Ofl/Identifier/CaloTTOnOffIdMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/181 (( 0.09 ))s -IOVDbFolder INFO Folder /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas (PoolRef) db-read 1/0 objs/chan/bytes 1/1/181 (( 0.10 ))s -IOVDbFolder WARNING Folder /CALO/Ofl/Identifier/CaloTTPpmRxIdMapAtlas is requested but no data retrieved -IOVDbFolder INFO Folder /LAR/ElecCalibMC/AutoCorr (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/486 (( 0.09 ))s -IOVDbFolder INFO Folder /LAR/LArCellPositionShift (PoolRef) db-read 1/1 objs/chan/bytes 1/1/195 (( 0.08 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/DAC2uA (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/170 (( 0.09 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/HVScaleCorr (PoolRefColl) db-read 1/1 objs/chan/bytes 12/12/1980 (( 0.09 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/MinBias (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/174 (( 0.09 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/MinBiasAverage (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/181 (( 0.08 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/MphysOverMcal (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/516 (( 0.08 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/Noise (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/516 (( 0.09 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/Pedestal (PoolRef) db-read 1/1 objs/chan/bytes 1/1/167 (( 0.09 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/Ramp (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/489 (( 0.09 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/Shape (PoolRefColl) db-read 1/1 objs/chan/bytes 3/3/477 (( 0.08 ))s -IOVDbFolder INFO Folder /LAR/Identifier/LArTTCellMapAtlas (PoolRef) db-read 1/1 objs/chan/bytes 1/1/173 (( 0.09 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/fSampl (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/194 (( 0.09 ))s -IOVDbFolder INFO Folder /LAR/ElecCalibMC/uA2MeV (PoolRefColl) db-read 1/1 objs/chan/bytes 1/1/165 (( 0.09 ))s -IOVDbSvc INFO bytes in (( 4.89 ))s -IOVDbSvc INFO Connection sqlite://;schema=mycool.db;dbname=OFLP200 : nConnect: 0 nFolders: 0 ReadTime: (( 0.00 ))s -IOVDbSvc INFO Connection COOLOFL_LAR/OFLP200 : nConnect: 2 nFolders: 21 ReadTime: (( 3.88 ))s -IOVDbSvc INFO Connection COOLOFL_CALO/OFLP200 : nConnect: 2 nFolders: 3 ReadTime: (( 1.01 ))s -AthDictLoaderSvc INFO in finalize... -ToolSvc INFO Removing all tools created by ToolSvc -ToolSvc.CaloTri... INFO => CaloTriggerTowerService::finalize() -*****Chrono***** INFO **************************************************************************************************** -*****Chrono***** INFO The Final CPU consumption ( Chrono ) Table (ordered) -*****Chrono***** INFO **************************************************************************************************** -cObjR_ALL INFO Time User : Tot= 0.89 [s] Ave/Min/Max= 0.0234(+- 0.104)/ 0/ 0.65 [s] #= 38 -cObj_ALL INFO Time User : Tot= 1.17 [s] Ave/Min/Max= 0.0509(+- 0.137)/ 0/ 0.67 [s] #= 23 -ChronoStatSvc INFO Time User : Tot= 50.5 [s] #= 1 -*****Chrono***** INFO **************************************************************************************************** -ChronoStatSvc.f... INFO Service finalized successfully -ApplicationMgr INFO Application Manager Finalized successfully -ApplicationMgr INFO Application Manager Terminated successfully -Py:Athena INFO leaving with code 0: "successful run" diff --git a/LArCalorimeter/LArCellRec/share/LArCellFromLArRawTool_H6_jobOptions.py b/LArCalorimeter/LArCellRec/share/LArCellFromLArRawTool_H6_jobOptions.py deleted file mode 100755 index 358f4dec53047383f6e809325455783b054f79c9..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/share/LArCellFromLArRawTool_H6_jobOptions.py +++ /dev/null @@ -1,34 +0,0 @@ -# jobOptions file for LAr Cell Reconstruction from LArRawChannel -# with full corrections. -# Properties of LArCellRec: -theApp.Dlls += [ "LArCellRec" ] - -theApp.Dlls += [ "LArTools","LArCalibUtils" ] - -#add cell maker tools to top cell maker alg (defined elsewhere) -#one tool for all LAr -# -# split the cells -# -# CaloCellMaker.CaloCellMakerToolNames += [ -# "LArCellBuilderFromLArRawChannelTool/cellbuilderLAr" ] -# # CellBuilder properties -# ToolSvc.cellbuilderLAr.LArRegion = "" -# ToolSvc.cellbuilderLAr.EThreshold = -100000. * MeV -# ToolSvc.cellbuilderLAr.OutputLevel = ERROR - -# it is also possible to specify one tool per sub calo: -CaloCellMaker.CaloCellMakerToolNames += [ - "LArCellBuilderFromLArRawChannelTool/cellbuilderEM", - "LArCellBuilderFromLArRawChannelTool/cellbuilderHEC", - "LArCellBuilderFromLArRawChannelTool/cellbuilderFCal"] -# CellBuilder properties -ToolSvc.cellbuilderEM.LArRegion = "LAr_EM" -ToolSvc.cellbuilderEM.EThreshold =-100000. * MeV -ToolSvc.cellbuilderEM.OutputLevel = WARNING -ToolSvc.cellbuilderHEC.LArRegion = "LAr_HEC" -ToolSvc.cellbuilderHEC.EThreshold =-100000. * MeV -ToolSvc.cellbuilderHEC.OutputLevel = WARNING -ToolSvc.cellbuilderFCal.LArRegion = "LAr_FCal" -ToolSvc.cellbuilderFCal.EThreshold =-100000. * MeV -ToolSvc.cellbuilderFCal.OutputLevel = WARNING diff --git a/LArCalorimeter/LArCellRec/share/LArCellFromLArRawTool_MCG4_jobOptions.py b/LArCalorimeter/LArCellRec/share/LArCellFromLArRawTool_MCG4_jobOptions.py deleted file mode 100755 index f40cf0397a9f3f3ac47dfb71aa7cf14cf310e68e..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/share/LArCellFromLArRawTool_MCG4_jobOptions.py +++ /dev/null @@ -1,49 +0,0 @@ -# jobOptions file for LAr Cell Reconstruction from LArRawChannel -# with full corrections. -# Properties of LArCellRec: -theApp.Dlls += [ "LArCellRec" ] - -theApp.Dlls += [ "LArTools","LArCalibUtils" ] - -#add cell maker tools to top cell maker alg (defined elsewhere) -# if all LAR required only one builder -if DetFlags.makeRIO.LAr_allOn(): - CaloCellMaker.CaloCellMakerToolNames += [ - "LArCellBuilderFromLArRawChannelTool/cellbuilderLAr" ] - # CellBuilder properties - ToolSvc.cellbuilderLAr.LArRegion = "" - ToolSvc.cellbuilderLAr.EThreshold =-100000. * MeV -else: - # one builder per lar calo - if DetFlags.makeRIO.em_on(): - CaloCellMaker.CaloCellMakerToolNames += [ - "LArCellBuilderFromLArRawChannelTool/cellbuilderem" ] - # CellBuilder properties - ToolSvc.cellbuilderLArem.LArRegion = "LAr_EM" - ToolSvc.cellbuilderLArem.EThreshold =-100000. * MeV - if DetFlags.makeRIO.HEC_on(): - CaloCellMaker.CaloCellMakerToolNames += [ - "LArCellBuilderFromLArRawChannelTool/cellbuilderem" ] - # CellBuilder properties - ToolSvc.cellbuilderLArHEC.LArRegion = "LAr_HEC" - ToolSvc.cellbuilderLArHEC.EThreshold =-100000. * MeV - if DetFlags.makeRIO.FCal_on(): - CaloCellMaker.CaloCellMakerToolNames += [ - "LArCellBuilderFromLArRawChannelTool/cellbuilderem" ] - # CellBuilder properties - ToolSvc.cellbuilderLArFCal.LArRegion = "LAr_FCal" - ToolSvc.cellbuilderLArFCal.EThreshold =-100000. * MeV -# it is also possible to specify one tool per sub calo: but this is less -# efficient -#CaloCellMaker.CaloCellMakerToolNames += [ -# "LArCellBuilderFromLArRawChannelTool/cellbuilderEM", -# "LArCellBuilderFromLArRawChannelTool/cellbuilderHEC", -# "LArCellBuilderFromLArRawChannelTool/cellbuilderFCal] -# CellBuilder properties -#ToolSvc.cellbuilderEM.LArRegion = "LAr_EM" -#ToolSvc.cellbuilderEM.EThreshold =-100000. * MeV -#ToolSvc.cellbuilderHEC.LArRegion = "LAr_HEC" -#ToolSvc.cellbuilderHEC.EThreshold =-100000. * MeV -#ToolSvc.cellbuilderFCal.LArRegion = "LAr_FCal" -#ToolSvc.cellbuilderFCal.EThreshold =-100000. * MeV - diff --git a/LArCalorimeter/LArCellRec/share/LArCellFromLArRawTool_MC_jobOptions.py b/LArCalorimeter/LArCellRec/share/LArCellFromLArRawTool_MC_jobOptions.py deleted file mode 100755 index aeb1f752b4a1c9aab995cd30285b7a5a2bbf1cc6..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/share/LArCellFromLArRawTool_MC_jobOptions.py +++ /dev/null @@ -1,37 +0,0 @@ -# jobOptions file for LAr Cell Reconstruction from LArRawChannel -# with full corrections. -# Properties of LArCellRec: -theApp.Dlls += [ "LArCellRec" ] - -theApp.Dlls += [ "LArTools","LArCalibUtils" ] - -#add cell maker tools to top cell maker alg (defined elsewhere) - -# if all LAr required one tool for all LAr -if DetFlags.makeRIO.LAr_allOn(): - CaloCellMaker.CaloCellMakerToolNames += [ - "LArCellBuilderFromLArRawChannelTool/cellbuilderLAr" ] - # CellBuilder properties - ToolSvc.cellbuilderLAr.LArRegion = "" - ToolSvc.cellbuilderLAr.EThreshold =-100000. * MeV -else: - # one builder per lar calo - if DetFlags.makeRIO.em_on(): - CaloCellMaker.CaloCellMakerToolNames += [ - "LArCellBuilderFromLArRawChannelTool/cellbuilderem" ] - # CellBuilder properties - ToolSvc.cellbuilderLArem.LArRegion = "LAr_EM" - ToolSvc.cellbuilderLArem.EThreshold =-100000. * MeV - if DetFlags.makeRIO.HEC_on(): - CaloCellMaker.CaloCellMakerToolNames += [ - "LArCellBuilderFromLArRawChannelTool/cellbuilderem" ] - # CellBuilder properties - ToolSvc.cellbuilderLArHEC.LArRegion = "LAr_HEC" - ToolSvc.cellbuilderLArHEC.EThreshold =-100000. * MeV - if DetFlags.makeRIO.FCal_on(): - CaloCellMaker.CaloCellMakerToolNames += [ - "LArCellBuilderFromLArRawChannelTool/cellbuilderem" ] - # CellBuilder properties - ToolSvc.cellbuilderLArFCal.LArRegion = "LAr_FCal" - ToolSvc.cellbuilderLArFCal.EThreshold =-100000. * MeV - diff --git a/LArCalorimeter/LArCellRec/share/LArCellTest_jobOptions.py b/LArCalorimeter/LArCellRec/share/LArCellTest_jobOptions.py deleted file mode 100755 index 7c99f2a0789035df888a7cd31f1145ecee8d9cfe..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/share/LArCellTest_jobOptions.py +++ /dev/null @@ -1,19 +0,0 @@ -# jobOptions file for testing LArCell -# ApplicationMgr.Dlls += { "LArCellRec" }; -theApp.TopAlg += [ -"LArCellTest/LArCellTestEM", -"LArCellTest/LArCellTestHEC", -"LArCellTest/LArCellTestFCAL" -] -#-------------------------------------------------------------- -# Algorithms Private Options -#-------------------------------------------------------------- -LArCellTestEM = Algorithm( "LArCellTestEM" ) -LArCellTestEM.CellColl="LArEM" -LArCellTestEM.NtupleID=101; -LArCellTestHEC = Algorithm( "LArCellTestHEC" ) -LArCellTestHEC.CellColl="LArHEC" -LArCellTestHEC.NtupleID=102; -LArCellTestFCAL = Algorithm( "LArCellTestFCAL" ) -LArCellTestFCAL.CellColl="LArFCal" -LArCellTestFCAL.NtupleID=103; diff --git a/LArCalorimeter/LArCellRec/share/LArCollisionTime_jobOptions.py b/LArCalorimeter/LArCellRec/share/LArCollisionTime_jobOptions.py deleted file mode 100644 index e3e1def8efbbae395ec2ba9e4c03ffab52ebffb3..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/share/LArCollisionTime_jobOptions.py +++ /dev/null @@ -1,29 +0,0 @@ -# jobOptions fragment to compute lar time in end-cap for collisions - -#David Cote: added include block to avoid duplication ERROR when TAG_COMM and DESDs are executed in the same job (both including this fragment). -include.block("LArCellRec/LArCollisionTime_jobOptions.py") - -#this could need mapping -condSeq = AthSequencer ('AthCondSeq') -if not hasattr (condSeq, 'LArOnOffMappingAlg'): - from LArCabling.LArCablingAccess import LArOnOffIdMapping - LArOnOffIdMapping() - -from CaloTools.CaloNoiseCondAlg import CaloNoiseCondAlg -CaloNoiseCondAlg() -from LArCellRec.LArCellRecConf import LArCollisionTimeAlg -theLArCollisionTimeAlg = LArCollisionTimeAlg("LArCollisionTimeAlg") - -from AthenaCommon.GlobalFlags import globalflags -if globalflags.DataSource()=='data' : - theLArCollisionTimeAlg.isMC = False -else : - theLArCollisionTimeAlg.isMC = True - -# dont require anymore explicitely that the time iteration converges -theLArCollisionTimeAlg.cutIteration = False - -from AthenaCommon.AlgSequence import AlgSequence -topSequence = AlgSequence() -topSequence += theLArCollisionTimeAlg - diff --git a/LArCalorimeter/LArCellRec/test/LArBadFebMaskingTool_test.sh b/LArCalorimeter/LArCellRec/test/LArBadFebMaskingTool_test.sh deleted file mode 100755 index afc3e01782b1157177d1062761e80bb6c82400c4..0000000000000000000000000000000000000000 --- a/LArCalorimeter/LArCellRec/test/LArBadFebMaskingTool_test.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -# -# Script running the LArBadFebMakingTool_test.py test with CTest. -# - -# Run the job: -athena.py LArCellRec/LArBadFebMaskingTool_test.py diff --git a/LArCalorimeter/LArDigitization/python/LArDigitizationConfig.py b/LArCalorimeter/LArDigitization/python/LArDigitizationConfig.py index 6bf2bd62a765c68393b5ea40a586c1ed90beaf8c..61f8812d61f2fd40e16b74d66a14acdcb58d5a59 100644 --- a/LArCalorimeter/LArDigitization/python/LArDigitizationConfig.py +++ b/LArCalorimeter/LArDigitization/python/LArDigitizationConfig.py @@ -14,13 +14,13 @@ from LArRecUtils.LArXTalkWeightCondAlgConfig import LArXTalkWeightCondAlgCfg from LArRecUtils.LArRecUtilsConfig import LArAutoCorrNoiseCondAlgCfg from LArBadChannelTool.LArBadChannelConfig import LArBadFebCfg,LArBadChannelCfg from LArConfiguration.LArElecCalibDBConfig import LArElecCalibDBCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # for Digitization from LArROD.LArRawChannelBuilderAlgConfig import LArRawChannelBuilderAlgCfg from LArROD.LArDigitThinnerConfig import LArDigitThinnerCfg from LArROD.LArNNChannelBuilder import LArNNRawChannelBuilderCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg # for Trigger Tower from CaloConditions.CaloConditionsConfig import CaloTriggerTowerCfg from SGComps.AddressRemappingConfig import InputOverwriteCfg diff --git a/LArCalorimeter/LArMonitoring/python/LArDigitalTriggMonAlg.py b/LArCalorimeter/LArMonitoring/python/LArDigitalTriggMonAlg.py index 1e8d70af37a507fcc73e71792a3b981c15b74477..9ef778393bad1e0b05aaf0425bfb81269f9f190c 100644 --- a/LArCalorimeter/LArMonitoring/python/LArDigitalTriggMonAlg.py +++ b/LArCalorimeter/LArMonitoring/python/LArDigitalTriggMonAlg.py @@ -251,7 +251,7 @@ def LArDigitalTriggMonConfig(flags,larLATOMEBuilderAlg, nsamples=32, streamTypes pattern=[(part)]) #### End of plots only for ALL - + partGroup_digi.defineHistogram('Digi_part_eta,Digi_part_phi;Coverage_Eta_Phi_'+thisSel, title='SC coverage '+selStrPart[thisSel]+': #phi vs #eta;#eta;#phi', type='TH2F', @@ -262,7 +262,7 @@ def LArDigitalTriggMonConfig(flags,larLATOMEBuilderAlg, nsamples=32, streamTypes pattern=[(part)]) - + if not flags.Common.isOnline: continue # Skip the remaining histos if we are running offline #### HERE - plots which should only be booked for the nominal selection if thisSel != "passDigiNom": continue partGroup_digi.defineHistogram('Digi_part_eta,Digi_part_phi,Digi_part_diff_adc_ped;Coverage_Diff_ADC_Ped_'+thisSel, @@ -397,7 +397,7 @@ def LArDigitalTriggMonConfig(flags,larLATOMEBuilderAlg, nsamples=32, streamTypes ybins=partybins, pattern=[(part)]) - + if not flags.Common.isOnline: continue # Skip the remaining histos if we are running offline #### HERE - plots which should only be booked for the nominal selection if thisSel != "passSCNom": continue diff --git a/LArCalorimeter/LArMonitoring/share/StateLessPT_NewConfig.py b/LArCalorimeter/LArMonitoring/share/StateLessPT_NewConfig.py index 94147fbb8697ff984eb41372fb45c96ec4434057..ce82e965cfdc1d696a18f646884312719d31a3b2 100755 --- a/LArCalorimeter/LArMonitoring/share/StateLessPT_NewConfig.py +++ b/LArCalorimeter/LArMonitoring/share/StateLessPT_NewConfig.py @@ -130,7 +130,7 @@ if __name__=='__main__': ReadDigits = False print("RUN CONFIGURATION: ReadDigits =", ReadDigits) - + ## And now CA from AthenaConfiguration.AllConfigFlags import initConfigFlags flags = initConfigFlags() @@ -418,7 +418,7 @@ if __name__=='__main__': if RunType == 0 and CONFIG!="LArDTMon": acc.getEventAlgo("LArRawDataReadingAlg").LArRawChannelKey="" - #example for blocking the folder not filled during cosmics + # example for blocking the folder not filled during cosmics cil=acc.getCondAlgo('CondInputLoader') iovdbsvc=acc.getService('IOVDbSvc') folder='/TRIGGER/LUMI/LBLB' @@ -426,10 +426,15 @@ if __name__=='__main__': if (iovdbsvc.Folders[i].find(folder)>=0): del iovdbsvc.Folders[i] break - for i in range(0, len(cil.Load)): - if (cil.Load[i][-1] == folder): - del cil.Load[i] + + remove_folder = False + for cil_Loadval in cil.Load: + if folder in cil_Loadval: + print(f"Removing {cil_Loadval} from cil/Load") + remove_folder = True break + if remove_folder: cil.Load.remove(cil_Loadval) + if flags.DQ.enableLumiAccess: lbd = acc.getCondAlgo('LBDurationCondAlg') lbd.LBLBFolderInputKey="" diff --git a/LArCalorimeter/LArMonitoring/src/LArDigitalTriggMonAlg.cxx b/LArCalorimeter/LArMonitoring/src/LArDigitalTriggMonAlg.cxx index 04096fe18339a99341bad774229b1cf3cf6f1dcb..ffa1f020cbd3b959aa815cc1dab3395b0243214b 100755 --- a/LArCalorimeter/LArMonitoring/src/LArDigitalTriggMonAlg.cxx +++ b/LArCalorimeter/LArMonitoring/src/LArDigitalTriggMonAlg.cxx @@ -399,7 +399,7 @@ StatusCode LArDigitalTriggMonAlg::fillHistograms(const EventContext& ctx) const auto digi_part_diff_adc_ped_norm = Monitored::Collection("Digi_part_diff_adc_ped_norm",tool,[](const auto& v){return v.digi_diff_adc_ped_norm;}); auto digi_part_diff_adc_ped = Monitored::Collection("Digi_part_diff_adc_ped",tool,[](const auto& v){return v.digi_diff_adc_ped;}); auto digi_part_bcid = Monitored::Collection("Digi_part_BCID",tool,[](const auto& v){return v.digi_bcid;}); - auto digi_part_lb = Monitored::Collection("Digi_part_LB",tool,[](const auto& v){return v.digi_bcid;}); + auto digi_part_lb = Monitored::Collection("Digi_part_LB",tool,[](const auto& v){return v.digi_lb;}); auto digi_part_passDigiNom = Monitored::Collection("Digi_part_passDigiNom",tool,[](const auto& v){return v.digi_passDigiNom;}); auto digi_part_badNotMasked = Monitored::Collection("Digi_part_badNotMasked",tool,[](const auto& v){return v.digi_badNotMasked;}); @@ -581,7 +581,7 @@ StatusCode LArDigitalTriggMonAlg::fillHistograms(const EventContext& ctx) const auto sc_part_et_onl_muscaled = Monitored::Collection("SC_part_et_onl_muscaled",tool,[](const auto& v){return v.sc_et_onl_muscaled;}); auto sc_part_time = Monitored::Collection("SC_part_time",tool,[](const auto& v){return v.sc_time;}); auto sc_part_bcid = Monitored::Collection("SC_part_BCID",tool,[](const auto& v){return v.sc_bcid;}); - auto sc_part_lb = Monitored::Collection("SC_part_LB",tool,[](const auto& v){return v.sc_bcid;}); + auto sc_part_lb = Monitored::Collection("SC_part_LB",tool,[](const auto& v){return v.sc_lb;}); auto sc_part_passSCNom = Monitored::Collection("SC_part_passSCNom",tool,[](const auto& v){return v.sc_passSCNom;}); auto sc_part_passSCNom1 = Monitored::Collection("SC_part_passSCNom1",tool,[](const auto& v){return v.sc_passSCNom1;}); auto sc_part_passSCNom10 = Monitored::Collection("SC_part_passSCNom10",tool,[](const auto& v){return v.sc_passSCNom10;}); diff --git a/LArCalorimeter/LArMonitoring/src/LArDigitalTriggMonAlg.h b/LArCalorimeter/LArMonitoring/src/LArDigitalTriggMonAlg.h index b92ba2365af5b21c1200276bcc5b92ef3c645bed..96ed3b0ed6c425bb569020b0c1377f9605304fb5 100755 --- a/LArCalorimeter/LArMonitoring/src/LArDigitalTriggMonAlg.h +++ b/LArCalorimeter/LArMonitoring/src/LArDigitalTriggMonAlg.h @@ -88,13 +88,12 @@ private: SG::ReadDecorHandleKey<xAOD::EventInfo> m_actualMuKey {this, "actualInteractionsPerCrossing", "EventInfo.actualInteractionsPerCrossing","Decoration for Actual Number of Interactions Per Crossing"}; - StringArrayProperty m_layerNames{this, "LayerNames", {"EMBPA", "EMBPC", "EMB1A", "EMB1C", "EMB2A", "EMB2C", "EMB3A", "EMB3C", "HEC0A", "HEC0C", "HEC1A", "HEC1C", "HEC2A", "HEC2C", "HEC3A", "HEC3C", "EMECPA", "EMECPC", "EMEC1A", "EMEC1C", "EMEC2A", "EMEC2C", "EMEC3A", "EMEC3C", "FCAL1A", "FCAL1C", "FCAL2A", "FCAL2C", "FCAL3A", "FCAL3C", "ALL"}, + StringArrayProperty m_layerNames{this, "LayerNames", {"EMBPC", "EMBPA", "EMB1C", "EMB1A", "EMB2C", "EMB2A", "EMB3C", "EMB3A", "EMECPC", "EMECPA", "EMEC1C", "EMEC1A", "EMEC2C", "EMEC2A", "EMEC3C", "EMEC3A", "HEC0C", "HEC0A", "HEC1C", "HEC1A", "HEC2C", "HEC2A", "HEC3C", "HEC3A", "FCAL1C", "FCAL1A", "FCAL2C", "FCAL2A", "FCAL3C", "FCAL3A", "ALL"}, "Names of individual layers to monitor"}; //Enumerate layer-types, ignoring sides. Useful for configuration that is per-definition symmetric - enum LayerEnumNoSides{EMBPNS=0, EMB1NS, EMB2NS, EMB3NS, HEC0NS, HEC1NS, HEC2NS, HEC3NS, - EMECPNS,EMEC1NS,EMEC2NS,EMEC3NS,FCAL1NS,FCAL2NS,FCAL3NS,MAXLYRNS}; + enum LayerEnumNoSides{EMBPNS=0,EMB1NS,EMB2NS,EMB3NS,EMECPNS,EMEC1NS,EMEC2NS,EMEC3NS,HEC0NS, HEC1NS, HEC2NS,HEC3NS,FCAL1NS,FCAL2NS,FCAL3NS,MAXLYRNS}; //Mapping of CaloCell nomencature to CaloCellMonitoring nomencature const std::array<unsigned,CaloSampling::Unknown> m_caloSamplingToLyrNS{ diff --git a/LumiBlock/LumiBlockComps/python/BunchCrossingCondAlgConfig.py b/LumiBlock/LumiBlockComps/python/BunchCrossingCondAlgConfig.py index 255f95cd45652ed3b30d38db8332246483b64787..b29a1e1204f0b45f0bc17e9469db2e41e9c6c960 100644 --- a/LumiBlock/LumiBlockComps/python/BunchCrossingCondAlgConfig.py +++ b/LumiBlock/LumiBlockComps/python/BunchCrossingCondAlgConfig.py @@ -15,7 +15,7 @@ def BunchCrossingCondAlgCfg(flags): if flags.Beam.BunchStructureSource == BunchStructureSource.MC: folder = '/Digitization/Parameters' - from Digitization.DigitizationParametersConfig import readDigitizationParameters + from DigitizationConfig.DigitizationParametersConfig import readDigitizationParameters result.merge(readDigitizationParameters(flags)) elif flags.Beam.BunchStructureSource == BunchStructureSource.FILLPARAMS: folder = '/TDAQ/OLC/LHC/FILLPARAMS' diff --git a/LumiBlock/LumiBlockComps/python/LuminosityCondAlgConfig.py b/LumiBlock/LumiBlockComps/python/LuminosityCondAlgConfig.py index f65b449f680fb945adc7f35fdbda9db08be81b64..f829c35d7efaad1fa5ea065adf20228f9b92b766 100644 --- a/LumiBlock/LumiBlockComps/python/LuminosityCondAlgConfig.py +++ b/LumiBlock/LumiBlockComps/python/LuminosityCondAlgConfig.py @@ -52,7 +52,7 @@ def LuminosityCondAlgCfg (flags, useOnlineLumi=None, suffix=None): def luminosityCondAlgMCCfg (flags, name, result): - from Digitization.DigitizationParametersConfig import readDigitizationParameters + from DigitizationConfig.DigitizationParametersConfig import readDigitizationParameters result.merge(readDigitizationParameters(flags)) return { 'LuminosityFolderInputKey' : '', 'DigitizationFolderInputKey' : '/Digitization/Parameters', diff --git a/MuonSpectrometer/MuonCnv/MuonRdoToPrepData/src/MuonRdoToPrepDataAlg.cxx b/MuonSpectrometer/MuonCnv/MuonRdoToPrepData/src/MuonRdoToPrepDataAlg.cxx index 924f87f1cb8b34e298c21e216ba56ecba770ec89..9ce73892cd0c897452e14bcad49eaace462e5d32 100755 --- a/MuonSpectrometer/MuonCnv/MuonRdoToPrepData/src/MuonRdoToPrepDataAlg.cxx +++ b/MuonSpectrometer/MuonCnv/MuonRdoToPrepData/src/MuonRdoToPrepDataAlg.cxx @@ -29,26 +29,23 @@ StatusCode MuonRdoToPrepDataAlg::execute(const EventContext& ctx) const { if (m_seededDecoding) { // decoding from trigger roi SG::ReadHandle<TrigRoiDescriptorCollection> muonRoI(m_roiCollectionKey, ctx); - if (!muonRoI.isValid()) { - ATH_MSG_WARNING("Cannot retrieve muonRoI " << m_roiCollectionKey.key()); - return StatusCode::SUCCESS; - } else { - for (const auto *roi : *muonRoI) { - if (m_robDecoding) { - m_regsel->ROBIDList(*roi, robs); - } else { - m_regsel->HashIDList(*roi, toDecode); - } - if (!robs.empty()) { - ATH_CHECK(m_tool->decode(ctx, robs)); - robs.clear(); - } else if (!toDecode.empty()) { - ATH_CHECK(m_tool->decode(ctx, toDecode, toDecodeWithData)); - } else { - ATH_CHECK(m_tool->provideEmptyContainer(ctx)); - } + ATH_CHECK(muonRoI.isPresent()); + for (const auto *roi : *muonRoI) { + if (m_robDecoding) { + m_regsel->ROBIDList(*roi, robs); + } else { + m_regsel->HashIDList(*roi, toDecode); + } + if (!robs.empty()) { + ATH_CHECK(m_tool->decode(ctx, robs)); + robs.clear(); + } else if (!toDecode.empty()) { + ATH_CHECK(m_tool->decode(ctx, toDecode, toDecodeWithData)); + } else { + ATH_CHECK(m_tool->provideEmptyContainer(ctx)); } - } + } + } else ATH_CHECK(m_tool->decode(ctx, toDecode, toDecodeWithData)); diff --git a/MuonSpectrometer/MuonConfig/python/CSC_DigitizationConfig.py b/MuonSpectrometer/MuonConfig/python/CSC_DigitizationConfig.py index bc1007ac37d0c96f3e4da8090a4b5e24db399579..dc2ca8caaf0d59ac49bf558db053518d495a9935 100644 --- a/MuonSpectrometer/MuonConfig/python/CSC_DigitizationConfig.py +++ b/MuonSpectrometer/MuonConfig/python/CSC_DigitizationConfig.py @@ -10,9 +10,9 @@ from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg from MuonConfig.MuonCondAlgConfig import CscCondDbAlgCfg from MuonConfig.MuonByteStreamCnvTestConfig import CscDigitToCscRDOCfg from MuonConfig.MuonCablingConfig import CSCCablingConfigCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest and last bunch crossing times for which interactions will be sent diff --git a/MuonSpectrometer/MuonConfig/python/MDT_DigitizationConfig.py b/MuonSpectrometer/MuonConfig/python/MDT_DigitizationConfig.py index c64d1ea834685b5428848ede4e4078bdcb9611a7..77b2d2024787f262bf7a4e3a277adec8ebfd4ec5 100644 --- a/MuonSpectrometer/MuonConfig/python/MDT_DigitizationConfig.py +++ b/MuonSpectrometer/MuonConfig/python/MDT_DigitizationConfig.py @@ -9,9 +9,9 @@ from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg from MuonConfig.MuonByteStreamCnvTestConfig import MdtDigitToMdtRDOCfg from MuonConfig.MuonCablingConfig import MDTCablingConfigCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest and last bunch crossing times for which interactions will be sent diff --git a/MuonSpectrometer/MuonConfig/python/MM_DigitizationConfig.py b/MuonSpectrometer/MuonConfig/python/MM_DigitizationConfig.py index b313733579d81a1a9dac09e69c1ba4cab84e1abe..99fdd1cd9bd49e1082cfadfa45db2ee14c7887be 100644 --- a/MuonSpectrometer/MuonConfig/python/MM_DigitizationConfig.py +++ b/MuonSpectrometer/MuonConfig/python/MM_DigitizationConfig.py @@ -5,9 +5,9 @@ Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg from MagFieldServices.MagFieldServicesConfig import AtlasFieldCacheCondAlgCfg from MuonConfig.MuonByteStreamCnvTestConfig import MM_DigitToRDOCfg from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg diff --git a/MuonSpectrometer/MuonConfig/python/MuonRdoDecodeConfig.py b/MuonSpectrometer/MuonConfig/python/MuonRdoDecodeConfig.py index 1b56bf64cc302324dac935e866f71e6c3c812407..105de15440deb460880110c9ef541878b014aa2f 100644 --- a/MuonSpectrometer/MuonConfig/python/MuonRdoDecodeConfig.py +++ b/MuonSpectrometer/MuonConfig/python/MuonRdoDecodeConfig.py @@ -48,7 +48,7 @@ def MuonRdoToPrepDataAlgCfg(flags, name="MuonRdoToPrepDataAlg", **kwargs): from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg result.merge(MuonGeoModelCfg(flags)) - kwargs.setdefault("DoSeededDecoding", flags.Common.isOnline) + kwargs.setdefault("DoSeededDecoding", flags.Trigger.doHLT ) the_alg = CompFactory.MuonRdoToPrepDataAlg(name, **kwargs) result.addEventAlgo(the_alg, primary = True) return result @@ -70,7 +70,7 @@ def RpcRDODecodeCfg(flags, name="RpcRdoToRpcPrepData", RDOContainer = None, **kw tool_kwargs["overlap_timeTolerance"] = 1000 tool_kwargs["solvePhiAmbiguities"] = True tool_kwargs["etaphi_coincidenceTime"] = 1000 - if not flags.Common.isOnline: + if not flags.Trigger.doHLT: tool_kwargs["RpcPrdContainerCacheKey"] = "" tool_kwargs["RpcCoinDataContainerCacheKey"] = "" @@ -109,7 +109,7 @@ def TgcRDODecodeCfg(flags, name="TgcRdoToTgcPrepData", RDOContainer = None, **k # Get the RDO -> PRD tool tool_args = {} - if not flags.Common.isOnline: + if not flags.Trigger.doHLT: tool_args.setdefault("PrdCacheString", "") tool_args.setdefault("CoinCacheString", "") @@ -170,7 +170,7 @@ def StgcRDODecodeCfg(flags, name="StgcRdoToStgcPrepData", **kwargs): def MMRdoToPrepDataToolCfg(flags, name="MmRdoToPrepDataTool", **kwargs): result = ComponentAccumulator() - kwargs.setdefault("PrdCacheKey" , MuonPrdCacheNames.MmCache if flags.Common.isOnline else "") + kwargs.setdefault("PrdCacheKey" , MuonPrdCacheNames.MmCache if flags.Trigger.doHLT else "") from MuonConfig.MuonRecToolsConfig import SimpleMMClusterBuilderToolCfg kwargs.setdefault("ClusterBuilderTool",result.popToolsAndMerge(SimpleMMClusterBuilderToolCfg(flags))) diff --git a/MuonSpectrometer/MuonConfig/python/RPC_DigitizationConfig.py b/MuonSpectrometer/MuonConfig/python/RPC_DigitizationConfig.py index fd6b271ea072f2ac5b160f6ce32057a1f461b1d2..e027df3548bf217a38383473bd3eed6f48a4c2c2 100644 --- a/MuonSpectrometer/MuonConfig/python/RPC_DigitizationConfig.py +++ b/MuonSpectrometer/MuonConfig/python/RPC_DigitizationConfig.py @@ -10,9 +10,9 @@ from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg from MuonConfig.MuonByteStreamCnvTestConfig import RpcDigitToRpcRDOCfg from MuonConfig.MuonByteStreamCnvTestConfig import NrpcDigitToNrpcRDOCfg from MuonConfig.MuonCablingConfig import RPCCablingConfigCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest and last bunch crossing times for which interactions will be sent diff --git a/MuonSpectrometer/MuonConfig/python/TGC_DigitizationConfig.py b/MuonSpectrometer/MuonConfig/python/TGC_DigitizationConfig.py index 40c846a6b55797ef3222484f430e4a6c76804b28..d5fa2383c5c691ea140de3e9f4e2aed6be629e9b 100644 --- a/MuonSpectrometer/MuonConfig/python/TGC_DigitizationConfig.py +++ b/MuonSpectrometer/MuonConfig/python/TGC_DigitizationConfig.py @@ -9,9 +9,9 @@ from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg from MuonConfig.MuonByteStreamCnvTestConfig import TgcDigitToTgcRDOCfg from MuonConfig.MuonCablingConfig import TGCCablingConfigCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest and last bunch crossing times for which interactions will be sent diff --git a/MuonSpectrometer/MuonConfig/python/sTGC_DigitizationConfig.py b/MuonSpectrometer/MuonConfig/python/sTGC_DigitizationConfig.py index 06071dfb1ee736d25852381a0111b616faa6528c..81f008b7465ea00bc6c8d0d39a94fe0c70a6f5f8 100644 --- a/MuonSpectrometer/MuonConfig/python/sTGC_DigitizationConfig.py +++ b/MuonSpectrometer/MuonConfig/python/sTGC_DigitizationConfig.py @@ -8,9 +8,9 @@ from AthenaConfiguration.Enums import ProductionStep from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg from MuonConfig.MuonByteStreamCnvTestConfig import STGC_DigitToRDOCfg -from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # The earliest and last bunch crossing times for which interactions will be sent diff --git a/MuonSpectrometer/MuonValidation/MuonRecValidation/MuonRecRTT/test/test_q445_RAWtoALL_MT.sh b/MuonSpectrometer/MuonValidation/MuonRecValidation/MuonRecRTT/test/test_q445_RAWtoALL_MT.sh index 18693b36863a5a235459edf1aec236a31aacb76b..4692cea9e27616ee1f55e08f9ee3a85bf023a191 100755 --- a/MuonSpectrometer/MuonValidation/MuonRecValidation/MuonRecRTT/test/test_q445_RAWtoALL_MT.sh +++ b/MuonSpectrometer/MuonValidation/MuonRecValidation/MuonRecRTT/test/test_q445_RAWtoALL_MT.sh @@ -25,7 +25,7 @@ # Run each Reco_tf in a seperate directory export ATHENA_CORE_NUMBER=1 -mdkir 1thread +mkdir 1thread cd 1thread ##################################################################### diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkInDet/src/PixelNtupleMaker.cxx b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkInDet/src/PixelNtupleMaker.cxx index 5136bbe3c22dc8ea2638a940a523945a785a0cc1..ffde9849af691a2139822cf4eefabc2a4da70de0 100644 --- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkInDet/src/PixelNtupleMaker.cxx +++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkInDet/src/PixelNtupleMaker.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ #include "DerivationFrameworkInDet/PixelNtupleMaker.h" @@ -151,7 +151,7 @@ StatusCode DerivationFramework::PixelNtupleMaker::addBranches() const { clusterCharge.push_back(clus_itr->auxdata<float>("charge")); clusterToT.push_back(clus_itr->auxdata<int>("ToT")); clusterL1A.push_back(clus_itr->auxdata<int>("LVL1A")); - clusterIsSplit.push_back(clus_itr->auxdata<int>("isSplit")); + clusterIsSplit.push_back(clus_itr->auxdata<char>("isSplit")); clusterSize.push_back(clus_itr->auxdata<int>("nRDO")); clusterSizePhi.push_back(clus_itr->auxdata<int>("sizePhi")); clusterSizeZ.push_back(clus_itr->auxdata<int>("sizeZ")); diff --git a/PhysicsAnalysis/JetTagging/FlavourTaggingTests/test/test_FTAG_AOD_withtrackless_MC_grid.sh b/PhysicsAnalysis/JetTagging/FlavourTaggingTests/test/test_FTAG_AOD_withtrackless_MC_grid.sh index 409196a9ae82e7d0295205f859539b30981b3af6..bb680774e906320bad5d6818c22d7c7df5ef4d05 100755 --- a/PhysicsAnalysis/JetTagging/FlavourTaggingTests/test/test_FTAG_AOD_withtrackless_MC_grid.sh +++ b/PhysicsAnalysis/JetTagging/FlavourTaggingTests/test/test_FTAG_AOD_withtrackless_MC_grid.sh @@ -4,6 +4,7 @@ # art-description: RDO to AOD step with trackless b-tagging for Run 3 MC # art-type: grid # art-include: main/Athena +# art-include: 24.0/Athena # art-output: *.pool.root # art-output: *.log # art-output: *log. diff --git a/PhysicsAnalysis/JetTagging/FlavourTaggingTests/test/test_FTAG_AOD_withtrackless_data_grid.sh b/PhysicsAnalysis/JetTagging/FlavourTaggingTests/test/test_FTAG_AOD_withtrackless_data_grid.sh index d888b1af19e2b6d489ae631546cd88ebeb2940ba..66e0f8080956ddf95a3b1f65c198b5ceb57f4008 100755 --- a/PhysicsAnalysis/JetTagging/FlavourTaggingTests/test/test_FTAG_AOD_withtrackless_data_grid.sh +++ b/PhysicsAnalysis/JetTagging/FlavourTaggingTests/test/test_FTAG_AOD_withtrackless_data_grid.sh @@ -4,6 +4,7 @@ # art-description: RDO to AOD step with trackless b-tagging on data 2023 # art-type: grid # art-include: main/Athena +# art-include: 24.0/Athena # art-output: *.pool.root # art-output: *.log # art-output: *log. diff --git a/Reconstruction/RecJobTransforms/python/RAWtoALL_Skeleton.py b/Reconstruction/RecJobTransforms/python/RAWtoALL_Skeleton.py index 81556b647f68c28a6377a2092c21a60b8476a0e9..3375b3378f90db8d0e6971fb2a58fc8d49849572 100644 --- a/Reconstruction/RecJobTransforms/python/RAWtoALL_Skeleton.py +++ b/Reconstruction/RecJobTransforms/python/RAWtoALL_Skeleton.py @@ -271,7 +271,7 @@ def fromRunArgs(runArgs): log.info("---------- Configured ALLCELLS perfDPD") # Special message service configuration - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg cfg.merge(DigitizationMessageSvcCfg(flags)) # Post-include diff --git a/Reconstruction/egamma/egammaConfig/python/runEgammaOnly.py b/Reconstruction/egamma/egammaConfig/python/runEgammaOnly.py index 8ad4671506876768e44e131b6ba101cd5fce6b25..c1bb4ef26e6af056452268377dfaeac1b58f3f03 100644 --- a/Reconstruction/egamma/egammaConfig/python/runEgammaOnly.py +++ b/Reconstruction/egamma/egammaConfig/python/runEgammaOnly.py @@ -55,7 +55,7 @@ def _run(args): acc = RecoSteering(flags) # Special message service configuration - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg acc.merge(DigitizationMessageSvcCfg(flags)) diff --git a/Reconstruction/egamma/egammaConfig/python/runEgammaOnlyESD.py b/Reconstruction/egamma/egammaConfig/python/runEgammaOnlyESD.py index 1c2c8e21e0da9815a54fb58b161b6caa582a14a2..4d11c1ed9ca01162b3d12a4b6437a60f024189cf 100644 --- a/Reconstruction/egamma/egammaConfig/python/runEgammaOnlyESD.py +++ b/Reconstruction/egamma/egammaConfig/python/runEgammaOnlyESD.py @@ -87,7 +87,7 @@ def _run(args): acc.merge(LArBadFebCfg(flags)) # Special message service configuration - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg acc.merge(DigitizationMessageSvcCfg(flags)) diff --git a/Reconstruction/tauRec/python/runTauOnly_EMPFlow.py b/Reconstruction/tauRec/python/runTauOnly_EMPFlow.py index 81accf91de9f41435a71a1af406be2e7ed62c8c0..e1eeaabebb88f8f1b25b9f0c7bfde4421225f14f 100644 --- a/Reconstruction/tauRec/python/runTauOnly_EMPFlow.py +++ b/Reconstruction/tauRec/python/runTauOnly_EMPFlow.py @@ -63,7 +63,7 @@ def _run(): tauSpecialContent(flags,acc) # Special message service configuration - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg acc.merge(DigitizationMessageSvcCfg(flags)) from AthenaConfiguration.Utils import setupLoggingLevels diff --git a/Reconstruction/tauRec/python/runTauOnly_EMTopo.py b/Reconstruction/tauRec/python/runTauOnly_EMTopo.py index 1e76a0e292c0287a2ed28c67dcaf6558aa1eef8c..41cf0fc1a0218f2585323e986c8cd9fd200d056a 100644 --- a/Reconstruction/tauRec/python/runTauOnly_EMTopo.py +++ b/Reconstruction/tauRec/python/runTauOnly_EMTopo.py @@ -63,7 +63,7 @@ def _run(): tauSpecialContent(flags,acc) # Special message service configuration - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg acc.merge(DigitizationMessageSvcCfg(flags)) from AthenaConfiguration.Utils import setupLoggingLevels diff --git a/Reconstruction/tauRec/python/runTauOnly_LCTopo.py b/Reconstruction/tauRec/python/runTauOnly_LCTopo.py index dcda6360c69f990d0ecdab6c9f6b46f0631cee8b..5248ce7469f0e87bfa04bfba83e1a2e5084ff51e 100644 --- a/Reconstruction/tauRec/python/runTauOnly_LCTopo.py +++ b/Reconstruction/tauRec/python/runTauOnly_LCTopo.py @@ -62,7 +62,7 @@ def _run(): tauSpecialContent(flags,acc) # Special message service configuration - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg acc.merge(DigitizationMessageSvcCfg(flags)) from AthenaConfiguration.Utils import setupLoggingLevels diff --git a/Simulation/Digitization/CMakeLists.txt b/Simulation/Digitization/DigitizationConfig/CMakeLists.txt similarity index 86% rename from Simulation/Digitization/CMakeLists.txt rename to Simulation/Digitization/DigitizationConfig/CMakeLists.txt index 68d7e44250a6c59453b9caadeba9fb60e245706b..c591ac0b7062b5d2c6b746a3433612c5baa4d87b 100644 --- a/Simulation/Digitization/CMakeLists.txt +++ b/Simulation/Digitization/DigitizationConfig/CMakeLists.txt @@ -1,9 +1,9 @@ ################################################################################ -# Package: Digitization +# Package: DigitizationConfig ################################################################################ # Declare the package name: -atlas_subdir( Digitization ) +atlas_subdir( DigitizationConfig ) # Install files from the package: atlas_install_python_modules( python/*.py diff --git a/Simulation/Digitization/data/UpdateAthFileCache.py b/Simulation/Digitization/DigitizationConfig/data/UpdateAthFileCache.py similarity index 100% rename from Simulation/Digitization/data/UpdateAthFileCache.py rename to Simulation/Digitization/DigitizationConfig/data/UpdateAthFileCache.py diff --git a/Simulation/Digitization/data/digitization-afcache.ascii b/Simulation/Digitization/DigitizationConfig/data/digitization-afcache.ascii similarity index 100% rename from Simulation/Digitization/data/digitization-afcache.ascii rename to Simulation/Digitization/DigitizationConfig/data/digitization-afcache.ascii diff --git a/Simulation/Digitization/python/DigitizationConfigFlags.py b/Simulation/Digitization/DigitizationConfig/python/DigitizationConfigFlags.py similarity index 100% rename from Simulation/Digitization/python/DigitizationConfigFlags.py rename to Simulation/Digitization/DigitizationConfig/python/DigitizationConfigFlags.py diff --git a/Simulation/Digitization/python/DigitizationFlagsHelpers.py b/Simulation/Digitization/DigitizationConfig/python/DigitizationFlagsHelpers.py similarity index 100% rename from Simulation/Digitization/python/DigitizationFlagsHelpers.py rename to Simulation/Digitization/DigitizationConfig/python/DigitizationFlagsHelpers.py diff --git a/Simulation/Digitization/python/DigitizationParametersConfig.py b/Simulation/Digitization/DigitizationConfig/python/DigitizationParametersConfig.py similarity index 100% rename from Simulation/Digitization/python/DigitizationParametersConfig.py rename to Simulation/Digitization/DigitizationConfig/python/DigitizationParametersConfig.py diff --git a/Simulation/Digitization/python/DigitizationSteering.py b/Simulation/Digitization/DigitizationConfig/python/DigitizationSteering.py similarity index 96% rename from Simulation/Digitization/python/DigitizationSteering.py rename to Simulation/Digitization/DigitizationConfig/python/DigitizationSteering.py index 70e2e69b1a28d343004a9b8eb326920a394083d1..23e18a3285439986754e28936c80753974f775a5 100644 --- a/Simulation/Digitization/python/DigitizationSteering.py +++ b/Simulation/Digitization/DigitizationConfig/python/DigitizationSteering.py @@ -10,7 +10,7 @@ from AthenaConfiguration.Enums import ProductionStep from AthenaConfiguration.DetectorConfigFlags import getEnabledDetectors from AthenaConfiguration.MainServicesConfig import MainServicesCfg from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg -from Digitization.DigitizationParametersConfig import writeDigitizationMetadata +from DigitizationConfig.DigitizationParametersConfig import writeDigitizationMetadata from RunDependentSimComps.PileUpUtils import pileupInputCollections from AthenaCommon.Logging import logging @@ -32,11 +32,11 @@ def DigitizationMainServicesCfg(flags): logDigiSteering.info("DigitizationMainServicesCfg: Attempting to run pile-up digitization AthenaMT using %s threads!", str(flags.Concurrency.NumThreads)) logDigiSteering.info("DigitizationMainServicesCfg: Using new PileUpMT code.") # raise RuntimeError("DigitizationSteering.DigitizationMainServicesCfg: Running pile-up digitization with AthenaMT is not supported. Please update your configuration.") - from Digitization.PileUpMTConfig import PileUpMTAlgCfg + from DigitizationConfig.PileUpMTConfig import PileUpMTAlgCfg acc = MainServicesCfg(flags) acc.merge(PileUpMTAlgCfg(flags)) else: - from Digitization.PileUpConfig import PileUpEventLoopMgrCfg + from DigitizationConfig.PileUpConfig import PileUpEventLoopMgrCfg acc = MainServicesCfg(flags, LoopMgr="PileUpEventLoopMgr") acc.merge(PileUpEventLoopMgrCfg(flags)) else: @@ -73,7 +73,7 @@ def DigitizationMainContentCfg(flags): acc.merge(EventInfoUpdateFromContextAlgCfg(flags)) # Decorate pile-up values - from Digitization.PileUpConfig import NoPileUpMuWriterCfg + from DigitizationConfig.PileUpConfig import NoPileUpMuWriterCfg acc.merge(NoPileUpMuWriterCfg(flags)) # Signal-only truth information @@ -115,7 +115,7 @@ def DigitizationMainContentCfg(flags): acc.merge(MergeHijingParsCfg(flags)) - from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg + from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg acc.merge(TruthDigitizationOutputCfg(flags)) # Beam spot reweighting diff --git a/Simulation/Digitization/python/PileUpConfig.py b/Simulation/Digitization/DigitizationConfig/python/PileUpConfig.py similarity index 99% rename from Simulation/Digitization/python/PileUpConfig.py rename to Simulation/Digitization/DigitizationConfig/python/PileUpConfig.py index f7c67f8a7412bfd4ee4f67e4540cb56faea5330d..7a5c2f21c6a3a7e39e2c2818ea4ed092e2c8b214 100644 --- a/Simulation/Digitization/python/PileUpConfig.py +++ b/Simulation/Digitization/DigitizationConfig/python/PileUpConfig.py @@ -6,8 +6,8 @@ from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg from RngComps.RandomServices import dSFMT, AthRNGSvcCfg -from Digitization import PileUpEventType -from Digitization.RunDependentConfig import ( +from DigitizationConfig import PileUpEventType +from DigitizationConfig.RunDependentConfig import ( maxNevtsPerXing, LumiProfileSvcCfg, NoProfileSvcCfg, ) diff --git a/Simulation/Digitization/python/PileUpEventType.py b/Simulation/Digitization/DigitizationConfig/python/PileUpEventType.py similarity index 100% rename from Simulation/Digitization/python/PileUpEventType.py rename to Simulation/Digitization/DigitizationConfig/python/PileUpEventType.py diff --git a/Simulation/Digitization/python/PileUpMTConfig.py b/Simulation/Digitization/DigitizationConfig/python/PileUpMTConfig.py similarity index 99% rename from Simulation/Digitization/python/PileUpMTConfig.py rename to Simulation/Digitization/DigitizationConfig/python/PileUpMTConfig.py index e97cee0c07155ec859bdb979202d2b4df7d9fd8d..91cae5fa8d6c877b324bde217b1e20ccf7da4cb0 100644 --- a/Simulation/Digitization/python/PileUpMTConfig.py +++ b/Simulation/Digitization/DigitizationConfig/python/PileUpMTConfig.py @@ -7,12 +7,12 @@ from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg from SGComps.AddressRemappingConfig import InputRenameCfg -from Digitization.RunDependentConfig import ( +from DigitizationConfig.RunDependentConfig import ( maxNevtsPerXing, LumiProfileSvcCfg, NoProfileSvcCfg, ) -from Digitization.PileUpConfig import ( +from DigitizationConfig.PileUpConfig import ( LowPtMinBiasEventSelectorCfg, HighPtMinBiasEventSelectorCfg, CavernEventSelectorCfg, diff --git a/Simulation/Digitization/python/PileUpMergeSvcConfig.py b/Simulation/Digitization/DigitizationConfig/python/PileUpMergeSvcConfig.py similarity index 100% rename from Simulation/Digitization/python/PileUpMergeSvcConfig.py rename to Simulation/Digitization/DigitizationConfig/python/PileUpMergeSvcConfig.py diff --git a/Simulation/Digitization/python/PileUpToolsConfig.py b/Simulation/Digitization/DigitizationConfig/python/PileUpToolsConfig.py similarity index 100% rename from Simulation/Digitization/python/PileUpToolsConfig.py rename to Simulation/Digitization/DigitizationConfig/python/PileUpToolsConfig.py diff --git a/Simulation/Digitization/python/RunDependentConfig.py b/Simulation/Digitization/DigitizationConfig/python/RunDependentConfig.py similarity index 94% rename from Simulation/Digitization/python/RunDependentConfig.py rename to Simulation/Digitization/DigitizationConfig/python/RunDependentConfig.py index 0783ca2226d0da2602eb92f7e8138f620a482d9d..5de8c330d03dc2db63735342d0c086ab37254573 100644 --- a/Simulation/Digitization/python/RunDependentConfig.py +++ b/Simulation/Digitization/DigitizationConfig/python/RunDependentConfig.py @@ -10,13 +10,13 @@ from AthenaConfiguration.ComponentFactory import CompFactory # Auxiliary def maxNevtsPerXing(flags): """Return the largest minbias pileup value, for PileUpEvtLoopMgr caches""" - # migrated from DigitizationFlags.py + # migrated from DigitizationConfig.lags.py pDicts = flags.Input.RunAndLumiOverrideList return max(element["mu"] for element in pDicts) def runLumiListAndScaleFactorLists(flags): - # migrated from DigitizationFlags.py + # migrated from DigitizationConfig.lags.py runLumiList = [] scaleFactorList = [] pDicts = flags.Input.RunAndLumiOverrideList diff --git a/Simulation/Digitization/python/TruthDigitizationOutputConfig.py b/Simulation/Digitization/DigitizationConfig/python/TruthDigitizationOutputConfig.py similarity index 100% rename from Simulation/Digitization/python/TruthDigitizationOutputConfig.py rename to Simulation/Digitization/DigitizationConfig/python/TruthDigitizationOutputConfig.py diff --git a/Simulation/Digitization/python/__init__.py b/Simulation/Digitization/DigitizationConfig/python/__init__.py similarity index 100% rename from Simulation/Digitization/python/__init__.py rename to Simulation/Digitization/DigitizationConfig/python/__init__.py diff --git a/Simulation/Digitization/test/DigitizationConfig_test.py b/Simulation/Digitization/DigitizationConfig/test/DigitizationConfig_test.py similarity index 91% rename from Simulation/Digitization/test/DigitizationConfig_test.py rename to Simulation/Digitization/DigitizationConfig/test/DigitizationConfig_test.py index 6fbf68f23a1ff74d2b72ad65de4da7ede44e2502..ea2e6084da74524dcacab92ced0f4446972239fb 100755 --- a/Simulation/Digitization/test/DigitizationConfig_test.py +++ b/Simulation/Digitization/DigitizationConfig/test/DigitizationConfig_test.py @@ -8,7 +8,7 @@ from AthenaCommon.Logging import log from AthenaCommon.Constants import DEBUG from AthenaConfiguration.AllConfigFlags import initConfigFlags from AthenaConfiguration.TestDefaults import defaultTestFiles -from Digitization.DigitizationSteering import DigitizationMainCfg, DigitizationMessageSvcCfg +from DigitizationConfig.DigitizationSteering import DigitizationMainCfg, DigitizationMessageSvcCfg # Set up logging log.setLevel(DEBUG) diff --git a/Simulation/Digitization/test/test_Digitization.sh b/Simulation/Digitization/DigitizationConfig/test/test_Digitization.sh similarity index 100% rename from Simulation/Digitization/test/test_Digitization.sh rename to Simulation/Digitization/DigitizationConfig/test/test_Digitization.sh diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/ATLAS_CHECK_THREAD_SAFETY b/Simulation/Digitization/MCTruthSimAlgs/ATLAS_CHECK_THREAD_SAFETY similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/ATLAS_CHECK_THREAD_SAFETY rename to Simulation/Digitization/MCTruthSimAlgs/ATLAS_CHECK_THREAD_SAFETY diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/CMakeLists.txt b/Simulation/Digitization/MCTruthSimAlgs/CMakeLists.txt similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/CMakeLists.txt rename to Simulation/Digitization/MCTruthSimAlgs/CMakeLists.txt diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/doc/packagedoc.h b/Simulation/Digitization/MCTruthSimAlgs/doc/packagedoc.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/doc/packagedoc.h rename to Simulation/Digitization/MCTruthSimAlgs/doc/packagedoc.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/python/MCTruthSimAlgsConfig.py b/Simulation/Digitization/MCTruthSimAlgs/python/MCTruthSimAlgsConfig.py similarity index 99% rename from Simulation/G4Utilities/MCTruthSimAlgs/python/MCTruthSimAlgsConfig.py rename to Simulation/Digitization/MCTruthSimAlgs/python/MCTruthSimAlgsConfig.py index 5402f0d584ec9b4efc85b8b08f6c35562d6e23ed..ef7c36c51adeaab75ca933a569858c92d9929d09 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/python/MCTruthSimAlgsConfig.py +++ b/Simulation/Digitization/MCTruthSimAlgs/python/MCTruthSimAlgsConfig.py @@ -5,8 +5,8 @@ Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import ProductionStep -from Digitization.PileUpToolsConfig import PileUpToolsCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg # Note: various experimentalDigi uses not migrated diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHits.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeCalibHits.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHits.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeCalibHits.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHits.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeCalibHits.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHits.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeCalibHits.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeCalibHitsTool.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeCalibHitsTool.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitColl.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeGenericMuonSimHitColl.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitColl.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeGenericMuonSimHitColl.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitColl.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeGenericMuonSimHitColl.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitColl.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeGenericMuonSimHitColl.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingPars.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeHijingPars.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingPars.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeHijingPars.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingPars.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeHijingPars.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingPars.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeHijingPars.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingParsTool.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeHijingParsTool.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingParsTool.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeHijingParsTool.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingParsTool.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeHijingParsTool.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeHijingParsTool.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeHijingParsTool.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeMcEventCollTool.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeMcEventCollTool.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeMcEventCollTool.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollTool.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeMcEventCollTool.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollection.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeMcEventCollection.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollection.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeMcEventCollection.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollection.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeMcEventCollection.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeMcEventCollection.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeMcEventCollection.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTrackRecordCollTool.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTrackRecordCollTool.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTrackRecordCollTool.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollTool.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTrackRecordCollTool.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollection.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTrackRecordCollection.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollection.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTrackRecordCollection.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollection.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTrackRecordCollection.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTrackRecordCollection.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTrackRecordCollection.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJets.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthJets.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJets.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthJets.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJets.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthJets.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJets.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthJets.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthJetsTool.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthJetsTool.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthParticles.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthParticles.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthParticles.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthParticles.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthParticles.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthParticles.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthParticles.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthParticles.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthParticlesTool.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthParticlesTool.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthParticlesTool.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthParticlesTool.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthParticlesTool.h b/Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthParticlesTool.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthParticlesTool.h rename to Simulation/Digitization/MCTruthSimAlgs/src/MergeTruthParticlesTool.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/NewMergeMcEventCollTool.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/NewMergeMcEventCollTool.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/NewMergeMcEventCollTool.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/NewMergeMcEventCollTool.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/NewMergeMcEventCollTool.h b/Simulation/Digitization/MCTruthSimAlgs/src/NewMergeMcEventCollTool.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/NewMergeMcEventCollTool.h rename to Simulation/Digitization/MCTruthSimAlgs/src/NewMergeMcEventCollTool.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.cxx diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.h b/Simulation/Digitization/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.h similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.h rename to Simulation/Digitization/MCTruthSimAlgs/src/SimpleMergeMcEventCollTool.h diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/components/MCTruthSimAlgs_entries.cxx b/Simulation/Digitization/MCTruthSimAlgs/src/components/MCTruthSimAlgs_entries.cxx similarity index 100% rename from Simulation/G4Utilities/MCTruthSimAlgs/src/components/MCTruthSimAlgs_entries.cxx rename to Simulation/Digitization/MCTruthSimAlgs/src/components/MCTruthSimAlgs_entries.cxx diff --git a/Simulation/Digitization/python/DigitizationFlags.py b/Simulation/Digitization/python/DigitizationFlags.py deleted file mode 100755 index 70554155794befb0e57e55406efb0f224d5137a0..0000000000000000000000000000000000000000 --- a/Simulation/Digitization/python/DigitizationFlags.py +++ /dev/null @@ -1,845 +0,0 @@ -# Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration - -#======================================================================= -# File: DigitizationFlags.py -#======================================================================= -""" Digitization job properties - -""" -# -# -__author__ = 'Manuel Gallas, Sven Vahsen' -__version__="$Revision: 1.20 $" -__doc__="Digitization job properties " - -#======================================================================= -# imports -#======================================================================= -from AthenaCommon.JobProperties import JobProperty, JobPropertyContainer -from AthenaCommon.JobProperties import jobproperties -from AthenaCommon.ConfigurableDb import getConfigurable -from SimulationConfig.SimEnums import PixelRadiationDamageSimulationType - -# In here I set some AthenaCommon properties -from AthenaCommon.AthenaCommonFlags import jobproperties # noqa: F811 - -from AthenaCommon.Logging import logging -logDigitizationFlags = logging.getLogger( 'DigitizationFlags' ) - -class digiSteeringConf(JobProperty): - """Overall steering of the digitization""" - statusOn = True - allowedTypes = ['str'] - StoredValue = 'StandardPileUpToolsAlg' - #StoredValue = 'StandardInTimeOnlyTruthPileUpToolsAlg' -# -class rndmSeedList(JobProperty): - """ Random Number Seeds - """ - statusOn=True - allowedTypes=['list'] - StoredValue= [] - - def checkForExistingSeed(self, name): - """Ensure that each stream is only initialized once""" - found = False - seedlist = self.get_Value() - for iseed in seedlist: - found = iseed.startswith(name+" ") - if found: - break - return found - - def addSeed( self, name, seed1, seed2 ): - """Add seeds to internal seedlist. Seeds will be incremented by offset values - """ - seedlist = self.get_Value() - ## Only really need a single offset now. - offset = jobproperties.Digitization.rndmSeedOffset1.get_Value() + jobproperties.Digitization.rndmSeedOffset2.get_Value() - newseed = name + " OFFSET " + str(offset) + " " + str(seed1) + " " + str(seed2) - logDigitizationFlags.info("Adding Digitization random number seed '" + newseed + "'") - - #ensure each stream only initialized once - found = self.checkForExistingSeed(name) - if found: - logDigitizationFlags.error ("Initialization values for random number stream " + name + " already exist!") - else: - seedlist += [newseed] - self.set_Value (seedlist) - - return - - def printSeeds( self ): - """print random seeds """ - name = jobproperties.Digitization.rndmSvc.get_Value() - rndmSvc = getConfigurable(name)() - logDigitizationFlags.info ("Random Number Seeds stored in digitization jobProperty: " + str(jobproperties.Digitization.rndmSeedList.get_Value())) - logDigitizationFlags.info ("Random Number Seeds attached to Service '" + name + "': " + str(rndmSvc.Seeds)) - return - - def addtoService(self): - """ Attach seeds stored in digitization jobProperties to ATLAS random number sevice - """ - name = jobproperties.Digitization.rndmSvc.get_Value() - rndmSvc = getConfigurable(name)() - logDigitizationFlags.info ("Adding Digitization random number seed stored in jobProperties to Random Number Service '" + name + "'") - #FIXME: add second check for seeds duplication upon insertion into random nubmer service! - rndmSvc.Seeds += jobproperties.Digitization.rndmSeedList.get_Value() - return - -# -class rndmSeedOffset1(JobProperty): - """ Integer value that will be added to initialization value of first seed for each digitization random number stream. - Default value (=1) will be always be used in straight athena jobs. - In the production system, however, csc_digitization_trf.py will set different values for each RDO file begin produced in a job, ensuring - that simulated detector noise and other digitization randomness is different in each file. - """ - statusOn=True - allowedTypes=['int'] - StoredValue=0 - -# -class rndmSeedOffset2(JobProperty): - """ Integer value that will be added to initialization value of second seed for each digitization random number stream. - Default value (=0) will be always be used in straight athena jobs. We may not need to change from the default in - productions jobs -- chaning seed 2 might suffice with ranlux. - """ - statusOn=True - allowedTypes=['int'] - StoredValue=0 - -# -class readSeedsFromFile(JobProperty): - """ Should seeds for the random number service be read in from a file? - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=False - -# -class rndmSeedInputFile(JobProperty): - """ Name of file containing the seeds for the Random Number Service to use - """ - statusOn=True - allowedTypes=['str'] - StoredValue='AtRanluxGenSvc.in' - -# -class rndmSvc(JobProperty): - """ Name of Random Number Service to use - """ - statusOn=True - allowedTypes=['str'] - StoredValue='AtDSFMTGenSvc' #'AtRanluxGenSvc' - -# -class physicsList(JobProperty): - """ Name of physics list used in G4 simulation --> needed to choose matching LAr and Tile calibrations for digitization - """ - statusOn=True - allowedTypes=['str'] - StoredValue='QGSP_BERT' - -# -class doMuonNoise(JobProperty): - """ Run Muon System noise simulation? - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=True - -# -class doInDetNoise(JobProperty): - """ Run Inner Detector noise simulation? - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=True - -# -class doCaloNoise(JobProperty): - """ Run Calorimeter noise simulation? - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=True - -# -class doFwdNoise(JobProperty): - """ Run noise simulation for the forward detectors? - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=True - -# -class pixelPlanarRadiationDamageSimulationType(JobProperty): - """ Type of the radiation damage simulation for pixel planar sensors - """ - statusOn=True - allowedTypes=['int'] - StoredValue=PixelRadiationDamageSimulationType.NoRadiationDamage.value - -# -class pixel3DRadiationDamageSimulationType(JobProperty): - """ Type of the radiation damage simulation for pixel 3D sensors - """ - statusOn=True - allowedTypes=['int'] - StoredValue=PixelRadiationDamageSimulationType.NoRadiationDamage.value - -# -class overrideMetadata(JobProperty): - """ If digi config differs from that stored in sim metadata use digi values. - """ - statusOn=True - allowedTypes=['list'] - StoredValue=[] - -# -class experimentalDigi(JobProperty): - """ This property can be used to tell sub-detector code to use experimental - configurations (avoids using global variables). - """ - statusOn=True - allowedTypes=['list'] - StoredValue=[] - -# -class specialConfiguration(JobProperty): - """ contains information on configuring digi for special physics models. - Populated, if possible, by evgen file metadata. - """ - statusOn=False - allowedTypes=['dict'] - StoredValue=dict() - -# -class pileupDSID(JobProperty): - """ Map from background type to DSID - """ - statusOn=True # False - allowedTypes=['dict'] - StoredValue= {'Low Pt Minimum Bias':361034, 'High Pt Minimum Bias':361035} #{'Signal':110401, 'Low Pt Minimum Bias':361034, 'High Pt Minimum Bias':361035} #dict() - -# -class doLowPtMinBias(JobProperty): - """ Superimpose mixed low pt minimum bias events (pile-up) on signal events? - --> will activate the default LowPtMinBiasInputCols as well - """ - statusOn=False - allowedTypes=['bool'] - StoredValue=False - def _do_action(self): - jobproperties.Digitization.LowPtMinBiasInputCols.set_On() - def _undo_action(self): - jobproperties.Digitization.LowPtMinBiasInputCols.set_Off() - -# -class doHighPtMinBias(JobProperty): - """ Superimpose mixed high pt minimum bias events (pile-up) on signal events? - --> will activate the default HighPtMinBiasInputCols as well - """ - statusOn=False - allowedTypes=['bool'] - StoredValue=False - def _do_action(self): - jobproperties.Digitization.HighPtMinBiasInputCols.set_On() - def _undo_action(self): - jobproperties.Digitization.HighPtMinBiasInputCols.set_Off() - -# -class doCavern(JobProperty): - """ Superimpose cavern events on signal events? - --> will activate cavernInputCols as well - """ - statusOn=False - allowedTypes=['bool'] - StoredValue=False - def _do_action(self): - jobproperties.Digitization.cavernInputCols.set_On() - def _undo_action(self): - jobproperties.Digitization.cavernInputCols.set_Off() - -# -class doBeamGas(JobProperty): - """ Superimpose beam gas events on signal events? - --> will activate beamGasInputCols as well - """ - statusOn=False - allowedTypes=['bool'] - StoredValue=False - def _do_action(self): - jobproperties.Digitization.beamGasInputCols.set_On() - def _undo_action(self): - jobproperties.Digitization.beamGasInputCols.set_Off() - -# -class doBeamHalo(JobProperty): - """ Superimpose beam halo events on signal events? - --> will activate beamHaloInputCols as well - """ - statusOn=False - allowedTypes=['bool'] - StoredValue=False - def _do_action(self): - jobproperties.Digitization.beamHaloInputCols.set_On() - def _undo_action(self): - jobproperties.Digitization.beamHaloInputCols.set_Off() -# -class numberOfCollisions(JobProperty): - """ Number of mixed ND, SD, DD min-bias events to superimpose per signal event per beam crossing - """ - statusOn=True - allowedTypes=['float'] - StoredValue=0.0 - -# -class numberOfLowPtMinBias(JobProperty): - """ Number of low pt min-bias events to superimpose per signal event per beam crossing - """ - statusOn=True - allowedTypes=['float'] - StoredValue=0.0 - -# -class numberOfHighPtMinBias(JobProperty): - """ Number of high pt min-bias events to superimpose per signal event per beam crossing - """ - statusOn=True - allowedTypes=['float'] - StoredValue=0.0 - -# -class bunchSpacing(JobProperty): - """ LHC bunch spacing, in ns, to use in pileup digitization --> only multiples of 25 allowed - """ - statusOn=True - allowedTypes=['int'] - StoredValue=25 - -# -class numberOfCavern(JobProperty): - """ Number of cavern events to superimpose per signal event per beam crossing - """ - statusOn=True - allowedTypes=['int'] - StoredValue=0 - -# -class numberOfBeamHalo(JobProperty): - """ Number of beam halo events to superimpose per signal event per beam crossing - """ - statusOn=True - allowedTypes=['float'] - StoredValue=0.0 - -# -class numberOfBeamGas(JobProperty): - """ Number of beam gas events to superimpose per signal event per beam crossing - """ - statusOn=True - allowedTypes=['float'] - StoredValue=0.0 - -# -class initialBunchCrossing(JobProperty): - """ Initial bunch crossing - """ - statusOn=True - allowedTypes=['int'] - StoredValue=-32 - -# -class finalBunchCrossing(JobProperty): - """ Final bunch crossing - """ - statusOn=True - allowedTypes=['int'] - StoredValue=6 #32 - -# -class HighPtMinBiasInputCols(JobProperty): - """ High Pt Mixed ND, SD, DD minimum bias input collections - """ - statusOn=False - allowedTypes=['list'] - StoredValue=[] - -# -class HighPtMinBiasInputColOffset(JobProperty): - """ Offset into the collection of high pt min-bias events - """ - statusOn=True - allowedTypes=['int'] - StoredValue=0 - -# -class LowPtMinBiasInputCols(JobProperty): - """ Low Pt Mixed ND, SD, DD minimum bias input collections - """ - statusOn=False - allowedTypes=['list'] - StoredValue=[] - -# -class cavernInputCols(JobProperty): - """ Cavern input collections - """ - statusOn=False - allowedTypes=['list'] - StoredValue=[] - -# -class beamGasInputCols(JobProperty): - """ Beam Gas input collections - """ - statusOn=False - allowedTypes=['list'] - StoredValue=[] - -# -class beamHaloInputCols(JobProperty): - """ Beam Halo input collections - """ - statusOn=False - allowedTypes=['list'] - StoredValue=[] - -# -class doXingByXingPileUp(JobProperty): - """ Should pile-up digitization be done one bunch crossing - at a time? The alternative is that all bunch crossings are - provided at once. - """ - statusOn=False - allowedTypes=['bool'] - StoredValue=False - -# -class doBichselSimulation(JobProperty): - """ Should the Bichsel model be used in Pixel and SCT - Digitization. - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=True - -# -class doDigiTruth(JobProperty): - """ Should DigiTruth information be calculated and stored. - """ - statusOn=False - allowedTypes=['bool'] - StoredValue=True - -class IOVDbGlobalTag(JobProperty): - """ This overrides the default IOVDbGlobalTag which - corresponds to the detector description in - jobproperties.Global.DetDescrVersion. - - Don't use it unless you know what you are doing - """ - statusOn=False - allowedTypes=['str'] - StoredValue='' - -class SimG4VersionUsed(JobProperty): - """ This is used to pass the version of Geant 4 used - from the input hit file metadata to digitization - algorithms. The default value of not_specified - indicates that no sim metadata check was possible. - - It is not intended to be set by the user. - """ - statusOn=True - allowedTypes=['str'] - StoredValue='not_specified' -# -class RunAndLumiOverrideList(JobProperty): - """This is used to pass a list of dictionaries of the form - {'run':152166, 'lb':202, 'starttstamp':1269948352889940910, 'evts':1, 'mu':0.005} - to the EvtIdModifierSvc. - Once it is a locked property, it can be used to configure the services. - """ - statusOn=False - allowedTypes=['list'] - StoredValue=[] - def __setattr__(self, name, n_value): - KeysRequired=('run','lb','starttstamp','evts','mu') - if name=='StoredValue' and not(self._locked): - def noEventsInLumiBlock(element): - return element['evts'] == 0 - - for element in n_value: - if not type(element) == dict : - raise ValueError( ' %s is not the expected type (dict) for an element of RunAndLumiOverrideList' % (element.__str__()) ) - if not set(element) >= set(KeysRequired): - raise ValueError( 'Not all required keys for RunAndLumiOverrideList (%s) were found in %s' % (KeysRequired.__repr__(), element.__repr__()) ) - if noEventsInLumiBlock(element): - logDigitizationFlags.warning('Found lumiblock with no events! This lumiblock will not be used:\n (' + element.__str__() + ')' ) - n_value = [x for x in n_value if not noEventsInLumiBlock(x)] - JobProperty.__setattr__(self, name, n_value) - def getEvtsMax(self): #todo -- check if locked first? - """Get the total number of events requested by this fragment of the task""" - pDicts = self.get_Value() - return sum(element['evts'] for element in pDicts)#py24 - def getMaxNevtsPerXing(self): - """Get the largest minbias pileup value needed (so the caches can be set up by PileUpEvtLoopMgr).""" - pDicts = self.get_Value() - return max(element['mu'] for element in pDicts)#py24 - def ScaleNumberOfCollisions(self, scaleFrom): - """Scale the number of events per crossing to the largest value in job. Note: beam halo and beam gas will NOT be scaled!""" - mmax = self.getMaxNevtsPerXing() - if (not ((mmax > 0) and scaleFrom)): - return - scal = mmax/scaleFrom - n = jobproperties.Digitization.numberOfCollisions.get_Value() - if n: - jobproperties.Digitization.numberOfCollisions = mmax - logDigitizationFlags.info( - "RunAndLumiOverrideList.ScaleNumberOfCollisions: Changing jobproperties.Digitization.numberOfCollisions from %s to %s", - n, jobproperties.Digitization.numberOfCollisions.get_Value()) - pass - - def scaleThisAttribute(numberOfWhat): - if hasattr(jobproperties.Digitization, numberOfWhat): - att = getattr(jobproperties.Digitization, numberOfWhat) - n = att.get_Value() - if n: - try: - att.set_Value(n * scal) - except ValueError: - att.set_Value(int(n * scal)) - logDigitizationFlags.info( - "RunAndLumiOverrideList.ScaleNumberOfCollisions: Changing jobproperties.Digitization.%s from %s to %s", - numberOfWhat, n, att.get_Value()) - else: pass - pass #hasattr - else: - logDigitizationFlags.info( - "RunAndLumiOverrideList.ScaleNumberOfCollisions: Cannot scalejobproperties.Digitization.%s", numberOfWhat ) - pass - return #minifcn - scaleThisAttribute('numberOfLowPtMinBias') - scaleThisAttribute('numberOfHighPtMinBias') - #scaleThisAttribute('numberOfBeamHalo') - #scaleThisAttribute('numberOfBeamGas') - scaleThisAttribute('numberOfCavern') - return - def getMinMaxRunNumbers(self): - """Get a pair (firstrun,lastrun + 1) for setting ranges in IOVMetaData """ - pDicts = self.get_Value() - allruns = [element['run'] for element in pDicts] - mini = min(allruns) + 0 - maxi = max(allruns) + 1 - return (mini,maxi) - def SetEvtIDModifierSvcProps(self,eventIdModSvc): - """Check that status is on, and locked, and then configure the eventIdModSvc - """ - if not(self._locked): - raise RuntimeError( 'You cannot configure the EvtIdModifierSvc with an unlocked JobProperty.' ) - pDicts = self.get_Value() - #clear svc properties? - for el in pDicts: - if 'evt_nbr' in el: - eventIdModSvc.add_modifier(run_nbr=el['run'], lbk_nbr=el['lb'], time_stamp=el['starttstamp'], nevts=el['evts'], evt_nbr=el['evt_nbr']) - else: - eventIdModSvc.add_modifier(run_nbr=el['run'], lbk_nbr=el['lb'], time_stamp=el['starttstamp'], nevts=el['evts']) - return - def SetPileUpEventLoopMgrProps(self,pileUpEventLoopMgr): - if not (self._locked): - raise RuntimeError( 'You cannot configure the pileup event loop with an unlocked JobProperty.' ) - pileUpEventLoopMgr.MaxMinBiasCollPerXing=self.getMaxNevtsPerXing() - return - def getRunLumiListAndScaleFactorLists(self): - runLumiList = [] - scaleFactorList = [] - pDicts = self.get_Value() - MaxCollisionsPerXing = self.getMaxNevtsPerXing() - for el in pDicts: - run = el['run'] - lbk = el['lb'] - mu = el['mu'] - iovt = (run << 32) + lbk - runLumiList += [iovt] - if (MaxCollisionsPerXing > 0): scaleFactorList += [(mu/MaxCollisionsPerXing)] - else: scaleFactorList += [1.0] - return runLumiList, scaleFactorList - def SetLumiProfileSvcProps(self,lumiProfSvc): - """Check that status is on, and locked, and then configure the eventIdModSvc - """ - if not(self._locked): - raise RuntimeError( 'You cannot configure the EvtIdModifierSvc with an unlocked JobProperty.' ) - #clear svc properties? - runLumiList, scaleFactorList = self.getRunLumiListAndScaleFactorLists() - lumiProfSvc.RunLumiList += runLumiList - lumiProfSvc.ScaleFactorList += scaleFactorList - return - def Print(self): - """Print the contents of the RunAndLumiOverrideList - """ - logDigitizationFlags.info( 'setting Digitization data run,lb info:' ) - for d in self.get_Value(): logDigitizationFlags.info('\t %s', str(d)) - return - def print_JobProperty(self,mode='minimal'): - """ Prints the information of the JobProperty - """ - Indent='' - obj_p=object.__getattribute__(self, 'StoredValue') - if self.statusOn: - obj_ps=obj_p - else: - obj_ps=None - for i in range(self._context_name.count('.')-2): - Indent+='-' - if self.is_locked(): - Indent+='x' - else: - Indent+='-' - if mode=='minimal': - import pprint - self._log.info(" %s-> %s = %s ",Indent, - self._context_name,pprint.pformat(str(obj_ps)) ) - elif(mode=='print_v'): - return JobProperty.print_JobProperty(self, mode) - else: - JobProperty.print_JobProperty(self, mode) -# -class dataRunNumber(JobProperty): - """ Override the HIT file Run Number with one from a data run - """ - statusOn=False - allowedTypes=['int'] - StoredValue=-1 -# -class simRunNumber(JobProperty): - """ The HIT file Run Number set during the simulation job - """ - statusOn=False - allowedTypes=['int'] - StoredValue=-1 -# -class BeamIntensityPattern(JobProperty): - """ LHC Bunch Structure (list of positive floats). - """ - statusOn=False - allowedTypes=['list'] - StoredValue=[] - def __setattr__(self, name, n_value): - if name=='StoredValue' and not(self._locked): - for element in n_value: - if not type(element) == float : - raise ValueError( ' %s is not the expected type (float) for an element of BeamIntensityPattern' % (element) ) - if element < 0.0 : - raise ValueError( ' Negative elements (%s) are not allowed in BeamIntensityPattern' % (element) ) - JobProperty.__setattr__(self, name, n_value) - def createConstBunchSpacingPattern( self, constBunchSpacing): - """ Will fill digitizationFlags.BeamIntensity pattern, such - that it corresponds to a constant bunchSpacing of the - specified value. - """ - # First check input isn't crazy - if not type(constBunchSpacing) == int : - raise ValueError( ' %s is not of the expected type (int). Only integer bunch-spacings are currently supported.' % (constBunchSpacing) ) - if constBunchSpacing%25 != 0 : - raise ValueError( ' Bunch spacing values must be a multiple of 25, therefore %s is not supported!' % (constBunchSpacing) ) - # Create the pattern - if constBunchSpacing == 25 : - # special case - pattern = [1.0] - else: - # general case - pattern = [0.0,1.0] - nBunches = (constBunchSpacing//25)-2 - if nBunches > 0 : - for bunch in range(nBunches): - pattern += [0.0] - self.set_Value (pattern) - return - def print_JobProperty(self,mode='minimal'): - """ Prints the information of the JobProperty - """ - Indent='' - obj_p=object.__getattribute__(self, 'StoredValue') - if self.statusOn: - obj_ps=obj_p - else: - obj_ps=None - for i in range(self._context_name.count('.')-2): - Indent+='-' - if self.is_locked(): - Indent+='x' - else: - Indent+='-' - if mode=='minimal': - import pprint - self._log.info(" %s-> %s = %s ",Indent, - self._context_name,pprint.pformat(str(obj_ps) )) - elif(mode=='print_v'): - return JobProperty.print_JobProperty(self, mode) - else: - JobProperty.print_JobProperty(self, mode) -# -class FixedT0BunchCrossing(JobProperty): - """ If we're simulating bunch structure and want to - always have the central bunch crossing at the same location - in the BeamIntensityPattern, then set this property to that location - """ - statusOn=False - allowedTypes=['int'] - StoredValue=0 -# -class cavernIgnoresBeamInt(JobProperty): - """ Should the cavern background be added every bunch, - independent of any bunch structure? - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=True -# -class SignalPatternForSteppingCache(JobProperty): - """ Repeating pattern to determine which events to simulate when using Stepping Cache - """ - statusOn=False - allowedTypes=['list'] - StoredValue=[] - def __setattr__(self, name, n_value): - if name=='StoredValue' and not(self._locked): - for element in n_value: - if not type(element) == float : - raise ValueError( ' %s is not the expected type (float) for an element of SignalPatternForSteppingCache' % (element) ) - if element < 0.0 : - raise ValueError( ' Negative elements (%s) are not allowed in SignalPatternForSteppingCache' % (element) ) - JobProperty.__setattr__(self, name, n_value) - def print_JobProperty(self,mode='minimal'): - """ Prints the information of the JobProperty - """ - Indent='' - obj_p=object.__getattribute__(self, 'StoredValue') - if self.statusOn: - obj_ps=obj_p - else: - obj_ps=None - for i in range(self._context_name.count('.')-2): - Indent+='-' - if self.is_locked(): - Indent+='x' - else: - Indent+='-' - if mode=='minimal': - import pprint - self._log.info(" %s-> %s = %s ",Indent, - self._context_name,pprint.pformat(str(obj_ps)) ) - elif(mode=='print_v'): - return JobProperty.print_JobProperty(self, mode) - else: - JobProperty.print_JobProperty(self, mode) -# -class TRTRangeCut(JobProperty): - """ TRT Range cut used in simulation in mm - """ - statusOn=True - allowedTypes=['float'] - allowedValues = [0.05,30.0] - StoredValue=30.0 - -# -class UseUpdatedTGCConditions(JobProperty): - """ Temporary flag for TGC conditions - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=False - -# -class PileUpPresampling(JobProperty): - """ Run pile-up presampling - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=False - -# -class doBeamSpotSizeReweighting(JobProperty): - """ calculate a weight to reweight events to a new beam spot size - """ - statusOn=True - allowedTypes=['bool'] - StoredValue=False - -# -class OldBeamSpotZSize(JobProperty): - """ old beam spot size used to calculate a weight to reweight events to a new beam spot size - """ - statusOn=True - allowedTypes=['float'] - StoredValue=42.0 #42mm is the beam spot size in the original MC16 HIT file simulation - def __setattr__(self, name, value): - if name=='StoredValue' and not(self._locked): - jobproperties.Digitization.doBeamSpotSizeReweighting=True - JobProperty.__setattr__(self, name, value) - -# -# Defines the container for the digitization flags -class Digitization(JobPropertyContainer): - """ The global Digitization flag/job property container. - """ - ## Helper functions - def getHitFileRunNumber(self,hitfile): - """Retrieve the Run Number from the HIT file""" - #-------------------------------------------------- - # Check for the Run Number in the first Input file - #-------------------------------------------------- - simRunNumber = -1 - import PyUtils.AthFile as af - af.server.load_cache('digitization-afcache.ascii') - f = af.fopen(hitfile) - if len(f.run_numbers)>0 : - simRunNumber = f.run_numbers[0] - else : - logDigitizationFlags.error("Failed to find Run Number in hits file metadata.") - raise SystemExit(1) - - logDigitizationFlags.info('Found Run Number %s in hits file metadata.', str(simRunNumber) ) - return simRunNumber - - def lockMostFlags(self): - """ Locks the Values of the JobProperties - """ - keysToIgnore = ['rndmSeedList'] - for j in self.__dict__.keys(): - if j not in keysToIgnore: - j_obj=self.__dict__.get(j) - if hasattr(j_obj,'lock_JobProperties'): - j_obj.lock_JobProperties() - j_obj._locked=True - elif hasattr(j_obj,'_locked'): - j_obj._locked=True - self._log.info('Locked all Digitization JobProperties except %s.', - str(keysToIgnore)) -# add the digitization reconstruction flags container to the top container -jobproperties.add_Container(Digitization) - - -# We want always the following flags in the container -list_jobproperties=[doInDetNoise,doCaloNoise,doMuonNoise,doFwdNoise,\ - pixelPlanarRadiationDamageSimulationType,pixel3DRadiationDamageSimulationType,\ - rndmSvc,rndmSeedList,rndmSeedOffset1,rndmSeedOffset2,readSeedsFromFile,\ - rndmSeedInputFile,physicsList,overrideMetadata,doBichselSimulation,\ - IOVDbGlobalTag,SimG4VersionUsed,numberOfCollisions,\ - doLowPtMinBias,numberOfLowPtMinBias,LowPtMinBiasInputCols,\ - doHighPtMinBias,doDigiTruth,numberOfHighPtMinBias,HighPtMinBiasInputCols,HighPtMinBiasInputColOffset,\ - doCavern,numberOfCavern,cavernInputCols,\ - doBeamGas,numberOfBeamGas,beamGasInputCols,\ - doBeamHalo,numberOfBeamHalo,beamHaloInputCols,\ - bunchSpacing,initialBunchCrossing,finalBunchCrossing,doXingByXingPileUp,\ - simRunNumber,dataRunNumber,BeamIntensityPattern,FixedT0BunchCrossing,cavernIgnoresBeamInt,\ - RunAndLumiOverrideList,SignalPatternForSteppingCache, - experimentalDigi,pileupDSID,specialConfiguration,digiSteeringConf,TRTRangeCut,UseUpdatedTGCConditions,PileUpPresampling,doBeamSpotSizeReweighting,OldBeamSpotZSize] - -for i in list_jobproperties: - jobproperties.Digitization.add_JobProperty(i) - -#======================================================================= -digitizationFlags = jobproperties.Digitization diff --git a/Simulation/Overlay/OverlayConfiguration/python/OverlaySkeleton.py b/Simulation/Overlay/OverlayConfiguration/python/OverlaySkeleton.py index 17a25b7cc54521df22e60a537845d25733c239dc..031fa2abb83cee4f2d69032a6dfba2d7a6a4d16e 100644 --- a/Simulation/Overlay/OverlayConfiguration/python/OverlaySkeleton.py +++ b/Simulation/Overlay/OverlayConfiguration/python/OverlaySkeleton.py @@ -100,7 +100,7 @@ def fromRunArgs(runArgs): detectors = None # Setup digitization flags - from Digitization.DigitizationConfigFlags import digitizationRunArgsToFlags + from DigitizationConfig.DigitizationConfigFlags import digitizationRunArgsToFlags digitizationRunArgsToFlags(runArgs, flags) # Setup detector flags @@ -141,7 +141,7 @@ def fromRunArgs(runArgs): cfg = OverlayMainCfg(flags) # Special message service configuration - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg cfg.merge(DigitizationMessageSvcCfg(flags)) # Special Configuration postInclude diff --git a/Simulation/Overlay/OverlayConfiguration/python/OverlaySteering.py b/Simulation/Overlay/OverlayConfiguration/python/OverlaySteering.py index 56ffcc9ab9a80b83abb9a722e24c90d416ac58d3..c498522201746ba00384b61a08e8e0ddb9ffb0d4 100644 --- a/Simulation/Overlay/OverlayConfiguration/python/OverlaySteering.py +++ b/Simulation/Overlay/OverlayConfiguration/python/OverlaySteering.py @@ -8,7 +8,7 @@ from AthenaConfiguration.MainServicesConfig import MainServicesCfg from AthenaConfiguration.DetectorConfigFlags import getEnabledDetectors from AthenaConfiguration.Enums import LHCPeriod from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg -from Digitization.DigitizationParametersConfig import writeDigitizationParameters +from DigitizationConfig.DigitizationParametersConfig import writeDigitizationParameters from OverlayCopyAlgs.OverlayCopyAlgsConfig import \ CopyCaloCalibrationHitContainersCfg, CopyJetTruthInfoCfg, CopyPileupParticleTruthInfoCfg, CopyMcEventCollectionCfg, \ diff --git a/Simulation/Overlay/OverlayConfiguration/test/OverlayMetadataConfig_test.py b/Simulation/Overlay/OverlayConfiguration/test/OverlayMetadataConfig_test.py index 0db0c889752e18160a2c42d0b1aab7893a5dc58b..78fbc16800cf400f9806680823b7732a93901519 100755 --- a/Simulation/Overlay/OverlayConfiguration/test/OverlayMetadataConfig_test.py +++ b/Simulation/Overlay/OverlayConfiguration/test/OverlayMetadataConfig_test.py @@ -10,7 +10,7 @@ from AthenaConfiguration.MainServicesConfig import MainServicesCfg from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg from xAODEventInfoCnv.xAODEventInfoCnvConfig import EventInfoOverlayCfg -from Digitization.DigitizationParametersConfig import writeDigitizationParameters +from DigitizationConfig.DigitizationParametersConfig import writeDigitizationParameters from OverlayConfiguration.OverlayMetadata import overlayMetadataCheck from OverlayConfiguration.OverlayTestHelpers import overlayTestFlags, postprocessAndLockFlags, printAndRun, CommonTestArgumentParser diff --git a/Simulation/Overlay/OverlayConfiguration/test/OverlayTest.py b/Simulation/Overlay/OverlayConfiguration/test/OverlayTest.py index 87e3aeeabddd6f25c1a32e12bd2a9e6fd07c77e9..08b84e99f3b81df56c99957c24eb0d53de94a40c 100755 --- a/Simulation/Overlay/OverlayConfiguration/test/OverlayTest.py +++ b/Simulation/Overlay/OverlayConfiguration/test/OverlayTest.py @@ -7,7 +7,7 @@ import sys from AthenaConfiguration.AllConfigFlags import initConfigFlags -from Digitization.DigitizationSteering import DigitizationMessageSvcCfg +from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg from OverlayConfiguration.OverlaySteering import OverlayMainCfg from OverlayConfiguration.OverlayTestHelpers import \ CommonTestArgumentParser, OverlayJobOptsDumperCfg, \ diff --git a/Simulation/SimuJobTransforms/python/HITtoRDO_Skeleton.py b/Simulation/SimuJobTransforms/python/HITtoRDO_Skeleton.py index 3155166a42defe3f12005718b3debf57efb0e656..380d0578df57dbda11ff6f1a2a2d7b0ea11f262f 100644 --- a/Simulation/SimuJobTransforms/python/HITtoRDO_Skeleton.py +++ b/Simulation/SimuJobTransforms/python/HITtoRDO_Skeleton.py @@ -50,11 +50,11 @@ def fromRunArgs(runArgs): detectors = None # Setup digitization flags - from Digitization.DigitizationConfigFlags import digitizationRunArgsToFlags + from DigitizationConfig.DigitizationConfigFlags import digitizationRunArgsToFlags digitizationRunArgsToFlags(runArgs, flags) # Setup common digitization flags - from Digitization.DigitizationConfigFlags import setupDigitizationFlags + from DigitizationConfig.DigitizationConfigFlags import setupDigitizationFlags setupDigitizationFlags(runArgs, flags) log.info('Running with pile-up: %s', flags.Digitization.PileUp) @@ -76,7 +76,7 @@ def fromRunArgs(runArgs): processPreExec(runArgs, flags) # Load pile-up stuff after pre-include/exec to ensure everything is up-to-date - from Digitization.DigitizationConfigFlags import pileupRunArgsToFlags + from DigitizationConfig.DigitizationConfigFlags import pileupRunArgsToFlags pileupRunArgsToFlags(runArgs, flags) # Setup pile-up profile @@ -94,11 +94,11 @@ def fromRunArgs(runArgs): flags.lock() # Main overlay steering - from Digitization.DigitizationSteering import DigitizationMainCfg + from DigitizationConfig.DigitizationSteering import DigitizationMainCfg cfg = DigitizationMainCfg(flags) # Special message service configuration - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg cfg.merge(DigitizationMessageSvcCfg(flags)) # Special Configuration postInclude diff --git a/Simulation/SimuJobTransforms/python/RDOMerge_Skeleton.py b/Simulation/SimuJobTransforms/python/RDOMerge_Skeleton.py index 212a782db1bfa8d96063d14fd9bf1845224d09ab..7e9191fb405fba369c400ced138d3cf4222e9598 100644 --- a/Simulation/SimuJobTransforms/python/RDOMerge_Skeleton.py +++ b/Simulation/SimuJobTransforms/python/RDOMerge_Skeleton.py @@ -113,7 +113,7 @@ def fromRunArgs(runArgs): cfg.merge(SetupMetaDataForStreamCfg(flags, 'RDO')) # Silence HepMcParticleLink warnings - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg cfg.merge(DigitizationMessageSvcCfg(flags)) # Post-include diff --git a/Simulation/SimuJobTransforms/python/SimTransformUtils.py b/Simulation/SimuJobTransforms/python/SimTransformUtils.py index ea2b254a9494ace583ad992b05ef56683a44bb42..3ec65cde95bd0a4978edda71c8b9161717b2a708 100644 --- a/Simulation/SimuJobTransforms/python/SimTransformUtils.py +++ b/Simulation/SimuJobTransforms/python/SimTransformUtils.py @@ -8,98 +8,6 @@ msg = logging.getLogger(__name__) from PyJobTransforms.trfExe import athenaExecutor -### Returns the toal number of needed events -def pileUpCalc(nSignalEvts, refreshRate, nSubEvtPerBunch,nBunches): - totalSubEvts = nBunches*nSubEvtPerBunch - totalSubEvts += totalSubEvts*refreshRate*nSignalEvts - return totalSubEvts - - -### get number of events in a file -def getNBkgEventsPerFile(initialList, logger): - nBkgEventsPerFile = 5000 - try: - from PyUtils.MetaReader import read_metadata - metadata = read_metadata(initialList[0]) - metadata = metadata[initialList[0]] # promote all keys one level up - nBkgEventsPerFile = int(metadata['nentries']) - print('{} -> __Test__001__:\n{}'.format(__file__, nBkgEventsPerFile)) - logger.info('Number of background events per file (read from file) = %s.', nBkgEventsPerFile ) - except Exception: - import traceback - traceback.print_exc() - logger.warning('Failed to count the number of background events in %s. Assuming 5000 - if this is an overestimate the job may die.', initialList[0]) - return nBkgEventsPerFile - - -### Calculate random offset into the input PU files -def getInputColOffset(initialList, jobNumber, logger): - offsetrnd = 0 - if ( jobNumber>=0 ): - nBkgEventsPerFile = getNBkgEventsPerFile(initialList, logger) - #Turn jobNumber into a random number following https://en.wikipedia.org/wiki/Xorshift - #x ^= x << 13; - #x ^= x >> 17; - #x ^= x << 5; - offsetrnd = int( jobNumber + nBkgEventsPerFile*len(initialList) ) - offsetrnd = offsetrnd ^ (offsetrnd << 13) - offsetrnd = offsetrnd ^ (offsetrnd >> 17) - offsetrnd = offsetrnd ^ (offsetrnd << 15) - offsetrnd = offsetrnd % (nBkgEventsPerFile*len(initialList)) - logger.info('Event offset into the collection = %s',offsetrnd) - return offsetrnd - - -### Preparing the list of required input PU files -import math -def makeBkgInputCol(initialList, nBkgEvtsPerCrossing, correctForEmptyBunchCrossings, logger, eventoffset=0): - uberList = [] - - nSignalEvts = 1000 - from AthenaCommon.AthenaCommonFlags import athenaCommonFlags - if (athenaCommonFlags.EvtMax.get_Value()>0): - nSignalEvts = int(athenaCommonFlags.EvtMax.get_Value()) - logger.info('Number of signal events (from athenaCommonFlags.EvtMax) = %s.', nSignalEvts ) - else: - nSignalEvts = 0 - from PyUtils.MetaReader import read_metadata - for inFile in athenaCommonFlags.PoolHitsInput.get_Value(): - try: - metadata = read_metadata(inFile) - metadata = metadata[inFile] # promote all keys one level up - nSignalEvts += int(metadata['nentries']) - print('{} -> __Test__001__:\n{}'.format(__file__, nSignalEvts)) - except Exception as err: - logger.warning("Unable to open file [%s]", inFile) - logger.warning('caught:\n%s',err) - import traceback - traceback.print_exc() - logger.info('Number of signal events (read from files) = %s.', nSignalEvts ) - - nBkgEventsPerFile = getNBkgEventsPerFile(initialList, logger) - - from Digitization.DigitizationFlags import digitizationFlags - from AthenaCommon.BeamFlags import jobproperties - Nbunches = 1 + digitizationFlags.finalBunchCrossing.get_Value() - digitizationFlags.initialBunchCrossing.get_Value() - nbunches = int(Nbunches) - if correctForEmptyBunchCrossings: - nbunches = int(math.ceil(float(nbunches) * float(digitizationFlags.bunchSpacing.get_Value())/float(jobproperties.Beam.bunchSpacing.get_Value()))) - logger.info('Simulating a maximum of %s colliding-bunch crossings (%s colliding+non-colliding total) per signal event', nbunches, Nbunches) - nBkgEventsForJob = pileUpCalc(float(nSignalEvts), 1.0, float(nBkgEvtsPerCrossing), nbunches) - - # Add the event offset to the number of required background events to ensure a sufficient duplication of the minbias files - nBkgEventsForJob += eventoffset - - logger.info('Number of background events required: %s, including %s for the offset. Number of background events in input files: %s', nBkgEventsForJob, eventoffset, (nBkgEventsPerFile*len(initialList)) ) - numberOfRepetitionsRequired =float(nBkgEventsForJob)/float(nBkgEventsPerFile*len(initialList)) - NumberOfRepetitionsRequired = 1 + int(math.ceil(numberOfRepetitionsRequired)) - for i in range(0, NumberOfRepetitionsRequired): - uberList+=initialList - logger.info('Expanding input list from %s to %s', len(initialList), len(uberList)) - - return uberList - - ### Add Argument Methods def addCommonSimDigArguments(parser): from SimuJobTransforms.simTrfArgs import addForwardDetTrfArgs, addCommonSimDigTrfArgs diff --git a/Simulation/Tests/DigitizationTests/scripts/DigitizationCheckReferenceLocation.sh b/Simulation/Tests/DigitizationTests/scripts/DigitizationCheckReferenceLocation.sh index 92ad5d5646ada83130059203e41ae8d1e9d18394..69db38b5e1dacac0a200b00bdab0618c5aabe347 100755 --- a/Simulation/Tests/DigitizationTests/scripts/DigitizationCheckReferenceLocation.sh +++ b/Simulation/Tests/DigitizationTests/scripts/DigitizationCheckReferenceLocation.sh @@ -25,6 +25,8 @@ elif [[ $ATLAS_RELEASE_BASE == *"22.0"* ]]; then DigitizationTestsVersion="22.0" elif [[ $ATLAS_RELEASE_BASE == *"23.0"* ]]; then DigitizationTestsVersion="23.0" +elif [[ $ATLAS_RELEASE_BASE == *"24.0"* ]]; then + DigitizationTestsVersion="24.0" fi export DigitizationTestsVersion diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_presampling.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_presampling.sh index af321ab3f4f2ab9559804c505b785149b6be60f8..9245ddc38cbfb3fca9b2914358a78ad6dffdbbe2 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_presampling.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_presampling.sh @@ -29,7 +29,7 @@ Digi_tf.py \ --jobNumber 1 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20a' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_qballs.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_qballs.sh index 08c20095cedba8a904f931a2f960fc5a8416a89e..4f96cac5cb370235c7c3b0cdc75ed8775109900b 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_qballs.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_qballs.sh @@ -28,7 +28,7 @@ Digi_tf.py \ --jobNumber 1 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20a' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_ttbar.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_ttbar.sh index cdea70f8d7a1ecb83c9012f348f2561e29d2c8e1..ca5582b8ad7c516168cd6ffbb1162c74bc87ab56 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_ttbar.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_ttbar.sh @@ -29,7 +29,7 @@ Digi_tf.py \ --jobNumber 1 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20a' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_ttbar_no_minbias.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_ttbar_no_minbias.sh index 475ce04879bf8c2e620d9690f2bbee5d594022a6..41eed8c7352dd8cf777ab500fcc6d0699e45a49e 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_ttbar_no_minbias.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2016_ttbar_no_minbias.sh @@ -25,7 +25,7 @@ Digi_tf.py \ --jobNumber 1 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20a' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_presampling.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_presampling.sh index f40863561d6659f45acd9afcb81d833840229751..1636b51ea808d9bd63eda2de0fb2a356630c665b 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_presampling.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_presampling.sh @@ -30,7 +30,7 @@ Digi_tf.py \ --jobNumber 1 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20d' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_ttbar.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_ttbar.sh index 94dbc046804b887e656317ceb33038572012bdb5..66993f56a1ebba99b0655e305393723450f3f3fe 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_ttbar.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_ttbar.sh @@ -29,7 +29,7 @@ Digi_tf.py \ --jobNumber 1 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20d' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_ttbar_no_minbias.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_ttbar_no_minbias.sh index afc1332088fe0cb2f24550d62162377b5af9613d..39c56fdf14574147ec7d195f1781f7461426dd31 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_ttbar_no_minbias.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2017_ttbar_no_minbias.sh @@ -25,7 +25,7 @@ Digi_tf.py \ --jobNumber 1 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20d' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_presampling.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_presampling.sh index ba5d7e019b75d6204edbd3651efa7609139e512e..741bfa7bb565bedc68e60d94e6c3a92812182ef1 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_presampling.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_presampling.sh @@ -30,7 +30,7 @@ Digi_tf.py \ --jobNumber 568 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20e' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_presampling_custom.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_presampling_custom.sh index f88bb5b6cb7621fcd8d9f501ea1db584d1a10d52..b9b44e9cd63a39a39d2e860aeb06dfe2c2d3bacb 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_presampling_custom.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_presampling_custom.sh @@ -30,7 +30,7 @@ Digi_tf.py \ --jobNumber 568 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preExec 'HITtoRDO:ConfigFlags.Digitization.PU.CustomProfile={"run":310000, "startmu":0.0, "endmu":10.0, "stepmu":1.0, "startlb":1, "timestamp": 1550000000};' \ --preInclude 'HITtoRDO:Campaigns.MC20e' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar.sh index b2c3dc3bd707714e98c178f93f6670fd582ded02..5b87d022424942a407892f7a660a918a1775e667 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar.sh @@ -29,7 +29,7 @@ Digi_tf.py \ --jobNumber 568 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20e' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar_beamspotsizereweight.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar_beamspotsizereweight.sh index 05498a19e1f948aab78e25bea117bf7917b5b239..ba7f33f48bc77f8112dc867407a868760361b526 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar_beamspotsizereweight.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar_beamspotsizereweight.sh @@ -27,7 +27,7 @@ Digi_tf.py \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ --postExec 'all:from IOVDbSvc.IOVDbSvcConfig import addOverride;cfg.merge(addOverride(flags, "/Indet/Beampos", "IndetBeampos-13TeV-MC16-002"))' \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20a' \ --preExec 'HITtoRDO:flags.Digitization.InputBeamSigmaZ=42;' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar_no_minbias.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar_no_minbias.sh index d1a89ec03ec17ff3ab5af32aa8e1944dbca74250..8cdb1218294dba4f1828a22d4c35e18b87045fa1 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar_no_minbias.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_RUN2_2018_ttbar_no_minbias.sh @@ -25,7 +25,7 @@ Digi_tf.py \ --jobNumber 568 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC20e' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_mc21a_presampling_variable.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_mc21a_presampling_variable.sh index 9fea69f2f3f061589487d3d8b2eb622600949c17..6e79883f16baaba3819d5de489afa1e2d7e3baf7 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_mc21a_presampling_variable.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_mc21a_presampling_variable.sh @@ -46,7 +46,7 @@ Digi_tf.py \ --jobNumber 568 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC21a' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_mc21a_presampling_variable_TruthOnly.sh b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_mc21a_presampling_variable_TruthOnly.sh index b2628d2584509f0798b690311a49003e22292c26..622baa74f107e6365e1b3500fa2b67e9afa62754 100755 --- a/Simulation/Tests/DigitizationTests/test/test_Digi_tf_mc21a_presampling_variable_TruthOnly.sh +++ b/Simulation/Tests/DigitizationTests/test/test_Digi_tf_mc21a_presampling_variable_TruthOnly.sh @@ -48,7 +48,7 @@ Digi_tf.py \ --jobNumber 1 \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ - --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC21a' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTestsMT/test/test_Digi_tf_mc23a_MP_presampling_variable.sh b/Simulation/Tests/DigitizationTestsMT/test/test_Digi_tf_mc23a_MP_presampling_variable.sh index b80255826d0f98bf4e810243be9036afa91125c4..0339c011d2c75ccaf27b53203348cb3a87fdfca2 100755 --- a/Simulation/Tests/DigitizationTestsMT/test/test_Digi_tf_mc23a_MP_presampling_variable.sh +++ b/Simulation/Tests/DigitizationTestsMT/test/test_Digi_tf_mc23a_MP_presampling_variable.sh @@ -50,7 +50,7 @@ Digi_tf.py \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ --postExec 'HITtoRDO:cfg.getService("PileUpEventLoopMgr").AllowSerialAndMPToDiffer=False' \ - --postInclude 'all:PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'all:PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC23a' \ --skipEvents 0 diff --git a/Simulation/Tests/DigitizationTestsMT/test/test_Digi_tf_mc23d_MP_presampling_variable.sh b/Simulation/Tests/DigitizationTestsMT/test/test_Digi_tf_mc23d_MP_presampling_variable.sh index 1d9638d4636f9c3e9bb4241fe3a1f4542dcb5e1f..564742ef516c309d6c65ada5528e55e40ae5a368 100755 --- a/Simulation/Tests/DigitizationTestsMT/test/test_Digi_tf_mc23d_MP_presampling_variable.sh +++ b/Simulation/Tests/DigitizationTestsMT/test/test_Digi_tf_mc23d_MP_presampling_variable.sh @@ -50,7 +50,7 @@ Digi_tf.py \ --maxEvents ${Events} \ --outputRDOFile ${DigiOutFileName} \ --postExec 'HITtoRDO:cfg.getService("PileUpEventLoopMgr").AllowSerialAndMPToDiffer=False' \ - --postInclude 'all:PyJobTransforms.UseFrontier' 'HITtoRDO:Digitization.DigitizationSteering.DigitizationTestingPostInclude' \ + --postInclude 'all:PyJobTransforms.UseFrontier' 'HITtoRDO:DigitizationConfig.DigitizationSteering.DigitizationTestingPostInclude' \ --preInclude 'HITtoRDO:Campaigns.MC23d' \ --skipEvents 0 diff --git a/TileCalorimeter/TileConditions/python/TileCondToolConf.py b/TileCalorimeter/TileConditions/python/TileCondToolConf.py index 020b15aa73be348fed4da0c0f221ab7e308f72e6..20c2bf51e36eaa4c9b9772b0b3593a945eaed946 100644 --- a/TileCalorimeter/TileConditions/python/TileCondToolConf.py +++ b/TileCalorimeter/TileConditions/python/TileCondToolConf.py @@ -822,7 +822,7 @@ def bookTileSamplingFractionCondAlg(source = 'FILE'): G4Version = "" try: - from Digitization.DigitizationFlags import jobproperties + from DigitizationConfig.DigitizationFlags import jobproperties G4Version = jobproperties.Digitization.SimG4VersionUsed() if not G4Version or G4Version == 'not_specified': from PyUtils.MetaReaderPeeker import metadata diff --git a/TileCalorimeter/TileConditions/python/TileInfoConfigurator.py b/TileCalorimeter/TileConditions/python/TileInfoConfigurator.py index 5babb920bbee2a0d8b37bd52ab03fc8a2a04d280..778e524a2563c4f603c9c4b089c9c2b738c7dbd2 100644 --- a/TileCalorimeter/TileConditions/python/TileInfoConfigurator.py +++ b/TileCalorimeter/TileConditions/python/TileInfoConfigurator.py @@ -103,7 +103,7 @@ class _TileInfoConfigurator( TileInfoLoader ): from PyUtils.moduleExists import moduleExists doXingByXingPileUp = False if moduleExists ('Digitization'): - from Digitization.DigitizationFlags import digitizationFlags + from DigitizationConfig.DigitizationFlags import digitizationFlags doXingByXingPileUp = digitizationFlags.doXingByXingPileUp() if not doXingByXingPileUp: self.msg.info("Changing default TileCondToolTiming configuration to COOL source") diff --git a/TileCalorimeter/TileSimAlgs/python/TileDigitsMakerConfig.py b/TileCalorimeter/TileSimAlgs/python/TileDigitsMakerConfig.py index 0413556d095ec6e363cb76733523fde6b49a171f..6897ef67a4437e01aac255ea0b00586a17239357 100644 --- a/TileCalorimeter/TileSimAlgs/python/TileDigitsMakerConfig.py +++ b/TileCalorimeter/TileSimAlgs/python/TileDigitsMakerConfig.py @@ -149,7 +149,7 @@ def TileDigitsMakerOutputCfg(flags, **kwargs): if flags.Output.doWriteRDO: if flags.Digitization.EnableTruth: outputItemList += ["CaloCalibrationHitContainer#*"] - from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg + from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg acc.merge(TruthDigitizationOutputCfg(flags)) from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg acc.merge( OutputStreamCfg(flags, streamName = 'RDO', ItemList = outputItemList) ) diff --git a/TileCalorimeter/TileSimAlgs/python/TileHitToTTL1Config.py b/TileCalorimeter/TileSimAlgs/python/TileHitToTTL1Config.py index 990961d5cda5e2cab3c752ff6f019363e7a8299e..7a5d2288e8c35072225e9360ae1b36d6461bc0ba 100644 --- a/TileCalorimeter/TileSimAlgs/python/TileHitToTTL1Config.py +++ b/TileCalorimeter/TileSimAlgs/python/TileHitToTTL1Config.py @@ -104,7 +104,7 @@ def TileTTL1OutputCfg(flags, TileHitToTTL1): if flags.Output.doWriteRDO: if flags.Digitization.EnableTruth: outputItemList += ["CaloCalibrationHitContainer#*"] - from Digitization.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg + from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg acc.merge(TruthDigitizationOutputCfg(flags)) from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg acc.merge(OutputStreamCfg(flags, streamName = 'RDO', ItemList = outputItemList)) diff --git a/TileCalorimeter/TileSimAlgs/python/TileHitVecToCntConfig.py b/TileCalorimeter/TileSimAlgs/python/TileHitVecToCntConfig.py index 73f222ecf7a31dbcfad71c805ca1cb25371de300..db1ed7fe4e4e6d11affdfac868d0fcaec2e4677c 100644 --- a/TileCalorimeter/TileSimAlgs/python/TileHitVecToCntConfig.py +++ b/TileCalorimeter/TileSimAlgs/python/TileHitVecToCntConfig.py @@ -6,8 +6,8 @@ from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import BeamType from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg -from Digitization.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg -from Digitization.PileUpToolsConfig import PileUpToolsCfg +from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg +from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg def getTileFirstXing(): """Return the earliest bunch crossing time for which interactions will be sent to the TileHitVecToCntTool""" diff --git a/Tools/FullChainTransforms/python/FastChainSkeleton.py b/Tools/FullChainTransforms/python/FastChainSkeleton.py index 231c38a96e363fecec1a425dfb1c1cff0709f3dc..8aa79c9d8f75e1726f0e793bffaa2f9f08ea1b0f 100644 --- a/Tools/FullChainTransforms/python/FastChainSkeleton.py +++ b/Tools/FullChainTransforms/python/FastChainSkeleton.py @@ -83,13 +83,13 @@ def fromRunArgs(runArgs): simulationRunArgsToFlags(runArgs, flags) # Setup digitization flags - from Digitization.DigitizationConfigFlags import digitizationRunArgsToFlags + from DigitizationConfig.DigitizationConfigFlags import digitizationRunArgsToFlags digitizationRunArgsToFlags(runArgs, flags) # Setup flags for pile-up if not flags.Overlay.FastChain: # Setup common digitization flags - from Digitization.DigitizationConfigFlags import setupDigitizationFlags + from DigitizationConfig.DigitizationConfigFlags import setupDigitizationFlags setupDigitizationFlags(runArgs, flags) logFastChain.info('Running with pile-up: %s', flags.Digitization.PileUp) @@ -112,7 +112,7 @@ def fromRunArgs(runArgs): if not flags.Overlay.FastChain: # Load pile-up stuff after pre-include/exec to ensure everything is up-to-date - from Digitization.DigitizationConfigFlags import pileupRunArgsToFlags + from DigitizationConfig.DigitizationConfigFlags import pileupRunArgsToFlags pileupRunArgsToFlags(runArgs, flags) # Setup pile-up profile @@ -140,7 +140,7 @@ def fromRunArgs(runArgs): flags.lock() if flags.Digitization.PileUp: - from Digitization.PileUpConfig import PileUpEventLoopMgrCfg + from DigitizationConfig.PileUpConfig import PileUpEventLoopMgrCfg cfg = MainServicesCfg(flags, LoopMgr="PileUpEventLoopMgr") cfg.merge(PileUpEventLoopMgrCfg(flags)) else: @@ -172,11 +172,11 @@ def fromRunArgs(runArgs): from OverlayConfiguration.OverlaySteering import OverlayMainContentCfg cfg.merge(OverlayMainContentCfg(flags)) else: - from Digitization.DigitizationSteering import DigitizationMainContentCfg + from DigitizationConfig.DigitizationSteering import DigitizationMainContentCfg cfg.merge(DigitizationMainContentCfg(flags)) # Special message service configuration - from Digitization.DigitizationSteering import DigitizationMessageSvcCfg + from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg cfg.merge(DigitizationMessageSvcCfg(flags)) # Special Configuration postInclude diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloRecConfig.py b/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloRecConfig.py index 3ca303a6e84f80ed3ca1746b9d40c3054e0cb51d..3070a0307e2b01cc8ae20f025853257334b5eb22 100755 --- a/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloRecConfig.py +++ b/Trigger/TrigAlgorithms/TrigCaloRec/python/TrigCaloRecConfig.py @@ -116,14 +116,23 @@ def hltCaloCellSeedlessMakerCfg(flags, roisKey='UNSPECIFIED'): @AccumulatorCache -def L0CaloGlobalRoIBuilderCfg(flags): +def L0CaloGlobalRoIBuilderCfg(flags,DoNoiseThrRings=True): acc = ComponentAccumulator() from TrigT2CaloEgamma.TrigT2CaloEgammaConfig import RingerReFexConfig - ringer = RingerReFexConfig(flags,'RingerGlobalFex',RingerKey='NOTNEEDED', - ClustersName='CaloClustersGlobal') - L0CaloGlobalRoIBuilderAlg = CompFactory.CaloGlobalRoIBuilder("L0CaloGlobalRoIBuilder", - Cells ="SeedLessFS", ClustersName='CaloClustersGlobal', - RingerKey='RingerGlobal', + nameTool='RingerGlobalFex' + nameAlgo='L0CaloGlobalRoIBuilder' + nameContCalo='CaloClustersGlobal' + nameContRinger='RingerGlobal' + if ( DoNoiseThrRings ): + nameTool='RingerGlobal2sigFex' + nameAlgo='L0CaloGlobalRoI2sigBuilder' + nameContCalo='CaloClusters2sigGlobal' + nameContRinger='Ringer2sigGlobal' + ringer = RingerReFexConfig(flags,name=nameTool,RingerKey='NOTNEEDED', + ClustersName=nameContCalo,DoNoiseThrRings=DoNoiseThrRings) + L0CaloGlobalRoIBuilderAlg = CompFactory.CaloGlobalRoIBuilder(name=nameAlgo, + Cells ="SeedLessFS", ClustersName=nameContCalo, + RingerKey=nameContRinger, RingerTool=ringer ) acc.addEventAlgo(L0CaloGlobalRoIBuilderAlg) @@ -132,16 +141,24 @@ def L0CaloGlobalRoIBuilderCfg(flags): return acc -def CaloL0RingerPreCfg(flags): - flags.Trigger.ExtraEDMList=[('xAOD::TrigRingerRingsContainer#RingerGlobal', 'BS ESD AODFULL', 'Calo'), ('xAOD::TrigRingerRingsAuxContainer#RingerGlobalAux.', 'BS ESD AODFULL', 'Calo'), ('xAOD::TrigEMClusterContainer#CaloClustersGlobal', 'BS ESD AODFULL', 'Calo'), ('xAOD::TrigEMClusterAuxContainer#CaloClustersGlobalAux.', 'BS ESD AODFULL', 'Calo')] +def CaloL0RingerPreCfg(flags,DoNoiseThrRings=True): + flags.Trigger.ExtraEDMList+= CaloL0RingerPrepareList(DoNoiseThrRings) -def CaloL0RingerCfg(flags): +def CaloL0RingerPrepareList(DoNoiseThrRings=True): + extraEDMList=[] + if DoNoiseThrRings : + extraEDMList+=[('xAOD::TrigRingerRingsContainer#Ringer2sigGlobal', 'BS ESD AODFULL', 'Calo'), ('xAOD::TrigRingerRingsAuxContainer#Ringer2sigGlobalAux.', 'BS ESD AODFULL', 'Calo'), ('xAOD::TrigEMClusterContainer#CaloClusters2sigGlobal', 'BS ESD AODFULL', 'Calo'), ('xAOD::TrigEMClusterAuxContainer#CaloClusters2sigGlobalAux.', 'BS ESD AODFULL', 'Calo')] + else : + extraEDMList+=[('xAOD::TrigRingerRingsContainer#RingerGlobal', 'BS ESD AODFULL', 'Calo'), ('xAOD::TrigRingerRingsAuxContainer#RingerGlobalAux.', 'BS ESD AODFULL', 'Calo'), ('xAOD::TrigEMClusterContainer#CaloClustersGlobal', 'BS ESD AODFULL', 'Calo'), ('xAOD::TrigEMClusterAuxContainer#CaloClustersGlobalAux.', 'BS ESD AODFULL', 'Calo')] + return extraEDMList + +def CaloL0RingerCfg(flags,DoNoiseThrRings=True): from OutputStreamAthenaPool.OutputStreamConfig import addToESD,addToAOD - extraContent=['xAOD::TrigRingerRingsContainer#RingerGlobal','xAOD::TrigRingerRingsAuxContainer#RingerGlobalAux.','xAOD::TrigEMClusterContainer#CaloClustersGlobal','xAOD::TrigEMClusterAuxContainer#CaloClustersGlobalAux.'] + extraContent=CaloL0RingerPrepareList(DoNoiseThrRings) acc = ComponentAccumulator() if (flags.Output.doWriteRDO): acc.merge(hltCaloCellSeedlessMakerCfg(flags)) - acc.merge(L0CaloGlobalRoIBuilderCfg(flags)) + acc.merge(L0CaloGlobalRoIBuilderCfg(flags,DoNoiseThrRings=DoNoiseThrRings)) if (flags.Output.doWriteESD or flags.Output.doWriteAOD): if ( flags.Output.doWriteESD ): diff --git a/Trigger/TrigAlgorithms/TrigMinBias/python/MinBiasCountersConfig.py b/Trigger/TrigAlgorithms/TrigMinBias/python/MinBiasCountersConfig.py index d92ba1eeb1b698103b95bfaf2ef369ce850d155e..9323db1315024a3d4cb9cc63634561aff30ccb9d 100644 --- a/Trigger/TrigAlgorithms/TrigMinBias/python/MinBiasCountersConfig.py +++ b/Trigger/TrigAlgorithms/TrigMinBias/python/MinBiasCountersConfig.py @@ -18,10 +18,7 @@ def TrackCounterHypoAlgCfg(flags): """""" acc = ComponentAccumulator() from TrigMinBias.TrigMinBiasMonitoring import TrackCountMonitoring - # TODO we should get that from the flags - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - idTrigConfig = getInDetTrigConfig('minBias') - alg = CompFactory.TrackCountHypoAlg(tracksKey=recordable(idTrigConfig.tracks_IDTrig()), + alg = CompFactory.TrackCountHypoAlg(tracksKey=recordable(flags.Trigger.InDetTracking.minBias.tracks_IDTrig), trackCountKey = recordable("HLT_TrackCount")) alg.MonTool = TrackCountMonitoring(flags, alg) # monitoring tool configures itself using config of the hypo alg acc.addEventAlgo(alg) diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaConfig.py b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaConfig.py index 09c0c1cb1725f91a9f19e4bd24857f8a6b0c33ec..0476fc5ecb725a70da4a1b5b03e82cdc8f34a122 100644 --- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaConfig.py +++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaConfig.py @@ -25,7 +25,7 @@ from HLTSeeding.HLTSeedingConfig import mapThresholdToL1RoICollection inputEDM = mapThresholdToL1RoICollection("FSNOSEED") def RingerReFexConfig(flags, name="RingerReMaker", RingerKey="FastCaloRings", - ClustersName="HLT_FastCaloEMClusters"): + ClustersName="HLT_FastCaloEMClusters",**kwargs): from TrigT2CaloEgamma.RingerConstants import Layer from TrigT2CaloEgamma.RingerConstants import DETID as det @@ -68,6 +68,8 @@ def RingerReFexConfig(flags, name="RingerReMaker", RingerKey="FastCaloRings", DoEtaAxesDivision = [True]*_lenNRings, DoPhiAxesDivision = [True]*_lenNRings, MonTool = monTool) + for k, v in kwargs.items(): + setattr(ringer,k,v) return ringer #======================================================================= diff --git a/Trigger/TrigAnalysis/TrigGlobalEfficiencyCorrection/Root/TrigGlobalEfficiencyCorrectionTool.cxx b/Trigger/TrigAnalysis/TrigGlobalEfficiencyCorrection/Root/TrigGlobalEfficiencyCorrectionTool.cxx index b557277a812b86633b096f684edfd004fc896447..878edecf5e05151896a1aaed709e97dd23779a0c 100644 --- a/Trigger/TrigAnalysis/TrigGlobalEfficiencyCorrection/Root/TrigGlobalEfficiencyCorrectionTool.cxx +++ b/Trigger/TrigAnalysis/TrigGlobalEfficiencyCorrection/Root/TrigGlobalEfficiencyCorrectionTool.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration */ // contact: jmaurer@cern.ch @@ -15,10 +15,10 @@ #include "xAODEgamma/Photon.h" #include <array> +#include <cmath> #include <sstream> #include <algorithm> #include <cctype> -#include <iterator> #include <type_traits> #include <limits> #include <regex> @@ -763,7 +763,7 @@ CP::CorrectionCode TrigGlobalEfficiencyCorrectionTool::getEfficiency(unsigned ru { efficiencyData = efficiencies.data(); efficiencyMc = efficiencies.mc(); - if(efficiencies.data()<=0. || efficiencies.mc()<=0.) + if(std::isnan(efficiencies.data()) || efficiencies.data()<=0. || std::isnan(efficiencies.mc()) || efficiencies.mc()<=0.) { ATH_MSG_WARNING("Efficiencies do not seem valid"); m_cpCode.ignore(); diff --git a/Trigger/TrigHypothesis/TrigHLTJetHypo/python/scenario_simple.py b/Trigger/TrigHypothesis/TrigHLTJetHypo/python/scenario_simple.py index 8a9b89ddfa33be85613ae187e598454a9dd3232d..a3b7bb3a8440f653dbbaa7e8134131331931ad21 100644 --- a/Trigger/TrigHypothesis/TrigHLTJetHypo/python/scenario_simple.py +++ b/Trigger/TrigHypothesis/TrigHLTJetHypo/python/scenario_simple.py @@ -222,6 +222,8 @@ def get_condition_args_from_chainpart(cp): { '': float('-inf') , '90': -0.846 , '85': 0.048 + , '80': 0.693 + , '75': 1.229 } assert (values[0] in gntau_WPs.keys()),f"The efficiency of the specified gntau cut \'{v}\' can not be found in the WP dictionary. Please add or remove the WP from the gntau WP dictionary." diff --git a/Trigger/TrigMonitoring/TrigBjetMonitoring/src/TrigBjetMonitorAlgorithm.cxx b/Trigger/TrigMonitoring/TrigBjetMonitoring/src/TrigBjetMonitorAlgorithm.cxx index eed934f375ebe02ed234dcc88c9ac05f7b3e8538..e6ef2abd1222ca220babf93a071d47b55a6193f7 100644 --- a/Trigger/TrigMonitoring/TrigBjetMonitoring/src/TrigBjetMonitorAlgorithm.cxx +++ b/Trigger/TrigMonitoring/TrigBjetMonitoring/src/TrigBjetMonitorAlgorithm.cxx @@ -345,11 +345,11 @@ StatusCode TrigBjetMonitorAlgorithm::fillHistograms( const EventContext& ctx ) c ATH_MSG_DEBUG(" GN1_mv: " << GN1_mv << " LLR: " << theLLR); double GN2_pu(0.), GN2_pc(0.), GN2_pb(0.); - btag->pu("GN120220813",GN2_pu); + btag->pu("GN220240122",GN2_pu); ATH_MSG_DEBUG(" GN2_pu: " << GN2_pu); - btag->pc("GN120220813",GN2_pc); + btag->pc("GN220240122",GN2_pc); ATH_MSG_DEBUG(" GN2_pc: " << GN2_pc); - btag->pb("GN120220813",GN2_pb); + btag->pb("GN220240122",GN2_pb); ATH_MSG_DEBUG(" GN2_pb: " << GN2_pb); theLLR = LLR (GN2_pu, GN2_pc, GN2_pb, GN2_mv); theLLR_GN2 = theLLR; @@ -535,21 +535,21 @@ StatusCode TrigBjetMonitorAlgorithm::fillHistograms( const EventContext& ctx ) c NameH = "GN2_pu_tr_"+trigName; ATH_MSG_DEBUG( " NameH: " << NameH ); auto GN2_pu = Monitored::Scalar<double>(NameH,0.0); - btag->pu("GN120220813",GN2_pu); + btag->pu("GN220240122",GN2_pu); ATH_MSG_DEBUG(" GN2_pu: " << GN2_pu); fill("TrigBjetMonitor",GN2_pu); NameH = "GN2_pc_tr_"+trigName; ATH_MSG_DEBUG( " NameH: " << NameH ); auto GN2_pc = Monitored::Scalar<double>(NameH,0.0); - btag->pc("GN120220813",GN2_pc); + btag->pc("GN220240122",GN2_pc); ATH_MSG_DEBUG(" GN2_pc: " << GN2_pc); fill("TrigBjetMonitor",GN2_pc); NameH = "GN2_pb_tr_"+trigName; ATH_MSG_DEBUG( " NameH: " << NameH ); auto GN2_pb = Monitored::Scalar<double>(NameH,0.0); - btag->pb("GN120220813",GN2_pb); + btag->pb("GN220240122",GN2_pb); ATH_MSG_DEBUG(" GN2_pb: " << GN2_pb); fill("TrigBjetMonitor",GN2_pb); diff --git a/Trigger/TrigMonitoring/TrigJetMonitoring/python/TrigJetMonitorAlgorithm.py b/Trigger/TrigMonitoring/TrigJetMonitoring/python/TrigJetMonitorAlgorithm.py index 29848bda09ba58fb1aec3871c53e4244901a098e..c4e9f05602f5e308982f60d054e8800fc094073c 100644 --- a/Trigger/TrigMonitoring/TrigJetMonitoring/python/TrigJetMonitorAlgorithm.py +++ b/Trigger/TrigMonitoring/TrigJetMonitoring/python/TrigJetMonitorAlgorithm.py @@ -63,8 +63,6 @@ L1JetCollections['pp'] = { 'L1_jFexSRJetRoI': {'MatchTo': match_smallRL1_OfflineJets_List}, - 'L1_jFexLRJetRoI': {'MatchTo': match_largeRL1_OfflineJets_List}, - 'L1_gFexSRJetRoI': {'MatchTo': match_smallRL1_OfflineJets_List}, 'L1_gFexLRJetRoI': {'MatchTo': match_largeRL1_OfflineJets_List}, @@ -103,7 +101,6 @@ for case in L1JetCollections.keys(): l1Coll2MatcherKey = { 'LVL1JetRoIs': 'L1JetContainerName1', 'L1_jFexSRJetRoI': 'L1jFexSRJetRoIContainerName', - 'L1_jFexLRJetRoI': 'L1jFexLRJetRoIContainerName', 'L1_gFexSRJetRoI': 'L1gFexJetRoIContainerName', 'L1_gFexLRJetRoI': 'L1gFexJetRoIContainerName', } @@ -130,6 +127,9 @@ Chain2L1JetCollDict['pp'] = { # set L1 jet collection name for L1 jet chains 'L1_jJ40': ['L1_jFexSRJetRoI'], 'L1_jJ50': ['L1_jFexSRJetRoI'], 'L1_jJ160': ['L1_jFexSRJetRoI'], + 'L1_jJ85p0ETA21_3jJ40p0ETA25': ['L1_jFexSRJetRoI'], + 'L1_3jJ70p0ETA23': ['L1_jFexSRJetRoI'], + 'L1_4jJ40': ['L1_jFexSRJetRoI'], 'L1_gJ20': ['L1_gFexSRJetRoI'], 'L1_gJ50': ['L1_gFexSRJetRoI'], @@ -137,11 +137,6 @@ Chain2L1JetCollDict['pp'] = { # set L1 jet collection name for L1 jet chains 'L1_gJ160': ['L1_gFexSRJetRoI'], - 'L1_jLJ40': ['L1_jFexLRJetRoI'], - 'L1_jLJ80': ['L1_jFexLRJetRoI'], - 'L1_jLJ120': ['L1_jFexLRJetRoI'], - 'L1_jLJ140': ['L1_jFexLRJetRoI'], - 'L1_gLJ80': ['L1_gFexLRJetRoI'], 'L1_gLJ120': ['L1_gFexLRJetRoI'], 'L1_gLJ140': ['L1_gFexLRJetRoI'], @@ -193,9 +188,7 @@ Legacy2PhaseIgJThresholdDict = { 'J120' : 'gJ180', 'J400' : 'gJ500', } -Legacy2PhaseIjLJThresholdDict = { - 'J100' : 'jLJ140' -} + Legacy2PhaseIgLJThresholdDict = { 'J100' : 'gLJ140' } @@ -265,13 +258,13 @@ def getChains2Monitor(inputFlags, monMode): elif 'a10r' in chainName: Chains2Monitor['pp'][chainName]["HLTColl"] = "HLT_AntiKt10EMTopoRCJets_subjesIS" else: Chains2Monitor['pp'][chainName]["HLTColl"] = "HLT_AntiKt10LCTopoJets_subjes" elif '_noalg_' in chainName: - Chains2Monitor['pp'][chainName]["RefChain"] = "HLT_j45_pf_ftf_preselj20_L1J15" # temporarily modify to using small-R jet in turn-on for both small and large-R jets to fix tier0 jet mon crash ATR-25800!! + Chains2Monitor['pp'][chainName]["RefChain"] = "HLT_j45_pf_ftf_preselj20_L1jJ40" # temporarily modify to using small-R jet in turn-on for both small and large-R jets to fix tier0 jet mon crash ATR-25800!! Chains2Monitor['pp'][chainName]["OfflineColl"] = "AntiKt4EMPFlowJets" - if 'jJ' in chainName or 'gJ' in chainName: Chains2Monitor['pp'][chainName]["HLTColl"] = "HLT_AntiKt4EMPFlowJets_subresjesgscIS_ftf" - if 'jLJ' in chainName or 'gLJ' in chainName: Chains2Monitor['pp'][chainName]["HLTColl"] = "HLT_AntiKt10EMPFlowCSSKSoftDropBeta100Zcut10Jets_jes_ftf" + if 'gLJ' in chainName: Chains2Monitor['pp'][chainName]["HLTColl"] = "HLT_AntiKt10EMPFlowCSSKSoftDropBeta100Zcut10Jets_jes_ftf" else: continue - # additional hard-coded chains for efficiency monitoring # Phase-I equivalents added by logic below, for now using legacy as reference + # only HLT_noalg get efficiency curves by default, so... + # these are additional hard-coded chains for efficiency monitoring if Chains2Monitor['pp'].get('HLT_j420_L1J100'): Chains2Monitor['pp']['HLT_j420_L1J100'].update({"RefChain": "HLT_j85_L1J20", "OfflineColl": "AntiKt4EMPFlowJets"}) if Chains2Monitor['pp'].get('HLT_3j200_L1J100'): Chains2Monitor['pp']['HLT_3j200_L1J100'].update({"RefChain": "HLT_j85_L1J20", "OfflineColl": "AntiKt4EMPFlowJets"}) if Chains2Monitor['pp'].get('HLT_4j120_L13J50'): Chains2Monitor['pp']['HLT_4j120_L13J50'].update({"RefChain": "HLT_j85_L1J20", "OfflineColl": "AntiKt4EMPFlowJets"}) @@ -279,38 +272,13 @@ def getChains2Monitor(inputFlags, monMode): if Chains2Monitor['pp'].get('HLT_j400_pf_ftf_L1J100'): Chains2Monitor['pp']['HLT_j400_pf_ftf_L1J100'].update({"RefChain": "HLT_j85_pf_ftf_preselj50_L1J20", "OfflineColl": "AntiKt4EMPFlowJets"}) if Chains2Monitor['pp'].get('HLT_j400_pf_ftf_preselj225_L1J100'): Chains2Monitor['pp']['HLT_j400_pf_ftf_preselj225_L1J100'].update({"RefChain": "HLT_j85_pf_ftf_preselj50_L1J20", "OfflineColl": "AntiKt4EMPFlowJets"}) + if Chains2Monitor['pp'].get('HLT_j420_L1jJ160'): Chains2Monitor['pp']['HLT_j420_L1jJ160'].update({"RefChain": "HLT_j85_L1jJ50", "OfflineColl": "AntiKt4EMPFlowJets"}) + if Chains2Monitor['pp'].get('HLT_3j200_L1jJ160'): Chains2Monitor['pp']['HLT_3j200_L1jJ160'].update({"RefChain": "HLT_j85_L1jJ50", "OfflineColl": "AntiKt4EMPFlowJets"}) + if Chains2Monitor['pp'].get('HLT_4j120_L13jJ90'): Chains2Monitor['pp']['HLT_4j120_L13jJ90'].update({"RefChain": "HLT_j85_L1jJ50", "OfflineColl": "AntiKt4EMPFlowJets"}) + if Chains2Monitor['pp'].get('HLT_5j80_pf_ftf_presel5j50_L14jJ40'): Chains2Monitor['pp']['HLT_5j80_pf_ftf_presel5j50_L14jJ40'].update({"RefChain": "HLT_j45_pf_ftf_preselj20_L1jJ40", "OfflineColl": "AntiKt4EMPFlowJets"}) + if Chains2Monitor['pp'].get('HLT_j400_pf_ftf_L1jJ160'): Chains2Monitor['pp']['HLT_j400_pf_ftf_L1jJ160'].update({"RefChain": "HLT_j85_pf_ftf_preselj50_L1jJ50", "OfflineColl": "AntiKt4EMPFlowJets"}) + if Chains2Monitor['pp'].get('HLT_j400_pf_ftf_preselj225_L1jJ160'): Chains2Monitor['pp']['HLT_j400_pf_ftf_preselj225_L1jJ160'].update({"RefChain": "HLT_j85_pf_ftf_preselj50_L1jJ50", "OfflineColl": "AntiKt4EMPFlowJets"}) - # Phase1: duplicate all relevant chains with jFex algos - temp_Phase1_chains = dict() - L1pattern = re.compile(r"L1([0-9]*[J][0-9]+)") - for chainName in Chains2Monitor['pp']: - foundL1 = L1pattern.search(chainName) - if foundL1: - L1Legacy = foundL1.group(1) - if L1Legacy in Legacy2PhaseIjJThresholdDict: - L1PhaseI = Legacy2PhaseIjJThresholdDict[L1Legacy] - newChain = chainName.replace(L1Legacy,L1PhaseI) - temp_Phase1_chains[newChain] = Chains2Monitor['pp'][chainName] #uses same reference chain, not phase1 variation! - if L1Legacy in Legacy2PhaseIgJThresholdDict: - L1PhaseI = Legacy2PhaseIgJThresholdDict[L1Legacy] - newChain = chainName.replace(L1Legacy,L1PhaseI) - temp_Phase1_chains[newChain] = Chains2Monitor['pp'][chainName] #uses same reference chain, not phase1 variation! - if "a10" in chainName: - if L1Legacy in Legacy2PhaseIjLJThresholdDict: ## For now monitor a10 chains seeded by both jLJ and jJ items. - L1PhaseI = Legacy2PhaseIjLJThresholdDict[L1Legacy] - newChain = chainName.replace(L1Legacy,L1PhaseI) - temp_Phase1_chains[newChain] = Chains2Monitor['pp'][chainName] #uses same reference chain, not phase1 variation! - if L1Legacy in Legacy2PhaseIgLJThresholdDict: ## For now monitor a10 chains seeded by both jLJ and jJ items. - L1PhaseI = Legacy2PhaseIgLJThresholdDict[L1Legacy] - newChain = chainName.replace(L1Legacy,L1PhaseI) - temp_Phase1_chains[newChain] = Chains2Monitor['pp'][chainName] #uses same reference chain, not phase1 variation! - if 'L1SC111-CJ15' in chainName: - for largerSeed in ('L1SC111-CjJ40', 'L1jLJ140', 'L1jLJ160'): - newChain = chainName.replace('L1SC111-CJ15', largerSeed) - temp_Phase1_chains[newChain] = Chains2Monitor['pp'][chainName] - pass - pass - Chains2Monitor['pp'].update(temp_Phase1_chains) else: errmsg = 'Returned empty Chains2Monitor due to invalid monMode' raise RuntimeError(errmsg) @@ -337,7 +305,8 @@ def getBinningFromThreshold(chain,varname): #pt and et binning based on threshold if varname == "pt" or varname == "et": if 'noalg' in chain: - return 100,xmin,500000 # good enough for L1 jJ40 & jJ100 + if 'jJ500' in chain or 'J400' in chain: return 160,xmin,800000 + else: return 100,xmin,500000 # good enough for L1 jJ40 & jJ100 else: #threshold = int(chain.split("_")[1].split('j')[1]) threshold = int(re.search(r'\d+',chain.split("_")[1].split('j')[1]).group()) @@ -485,8 +454,6 @@ def getL1JetCopyAlg(injets,outjets): jcopy_alg = CompFactory.L1JetCopyAlgorithm_JTM_JetRoIContainer_(jcopy_alg_name) elif injets == "L1_jFexSRJetRoI": jcopy_alg = CompFactory.L1JetCopyAlgorithm_JTM_jFexSRJetRoIContainer_(jcopy_alg_name) - elif injets == "L1_jFexLRJetRoI": - jcopy_alg = CompFactory.L1JetCopyAlgorithm_JTM_jFexLRJetRoIContainer_(jcopy_alg_name) elif injets in ["L1_gFexSRJetRoI", "L1_gFexLRJetRoI"]: jcopy_alg = CompFactory.L1JetCopyAlgorithm_JTM_gFexJetRoIContainer_(jcopy_alg_name) else: diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/CMakeLists.txt b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/CMakeLists.txt index c0c836e653739c9b07e61d33dd300838b38cc312..dcb5c8a2d7addab094362079829266ceff5649e0 100644 --- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/CMakeLists.txt +++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/CMakeLists.txt @@ -6,13 +6,15 @@ atlas_subdir( L1CaloFEXAlgos ) # External dependencies: find_package( tdaq-common COMPONENTS eformat eformat_write ) +find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread Gpad Graf ) + # Component(s) in the package: atlas_add_component( L1CaloFEXAlgos src/*.cxx src/components/*.cxx DEFINITIONS OFFLINE_DECODER INCLUDE_DIRS ${TDAQ-COMMON_INCLUDE_DIRS} - LINK_LIBRARIES PathResolver CaloEvent xAODTrigL1Calo ${TDAQ-COMMON_LIBRARIES} L1CaloFEXSimLib LArRecConditions ) + LINK_LIBRARIES PathResolver CaloEvent xAODTrigL1Calo ${TDAQ-COMMON_LIBRARIES} ${ROOT_LIBRARIES} L1CaloFEXSimLib LArRecConditions ) # Install files from the package: atlas_install_python_modules( python/*.py POST_BUILD_CMD ${ATLAS_FLAKE8} ) diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/python/FexEmulatedTowersConfig.py b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/python/FexEmulatedTowersConfig.py index 3999dbb319d0ade96d0aff7d7e785dc8667d02c9..11f3db1e1161d7efd55bb74d339c36f208dc55ee 100644 --- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/python/FexEmulatedTowersConfig.py +++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/python/FexEmulatedTowersConfig.py @@ -26,7 +26,7 @@ def eFexEmulatedTowersCfg(flags, name, writeKey = "L1_eFexEmulatedTowers"): """ acc=ComponentAccumulator() - emulator = CompFactory.LVL1.eFexTowerBuilder(name) + emulator = CompFactory.LVL1.eFexTowerBuilder(name,ApplyMasking=not flags.Input.isMC) emulator.eFexContainerWriteKey = writeKey acc.addEventAlgo(emulator) diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTowerBuilder.cxx b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTowerBuilder.cxx index 84395a32f9adb907ffdc3009708cd0d651c4e1fe..6055ba3a73ec372a4a6e14450cac569b7f0bcd23 100644 --- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTowerBuilder.cxx +++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTowerBuilder.cxx @@ -24,7 +24,10 @@ #include "TFile.h" #include "TTree.h" #include "PathResolver/PathResolver.h" - +#include "TH2D.h" +#include "TROOT.h" +#include "TCanvas.h" +#include "TBox.h" namespace LVL1 { @@ -86,19 +89,28 @@ StatusCode eFexTowerBuilder::fillTowers(const EventContext& ctx) const { return StatusCode::FAILURE; } + + + std::map<std::pair<int,int>,std::array<int,11>> towers; for (auto digi: *scells) { const auto itr = m_scMap.find(digi->ID().get_compact()); if (itr == m_scMap.end()) { continue; } // not in map so not mapping to a tower - int val = std::round(digi->energy()/(12.5*std::cosh(digi->eta()))); - bool isMasked = ((digi)->provenance()&0x80); + int val = std::round(digi->energy()/(12.5*std::cosh(digi->eta()))); // 12.5 is b.c. energy is in units of 12.5MeV per count + // note: a val of -99999 is what is produced if efex was sent an invalid code of 1022 + bool isMasked = m_applyMasking ? ((digi)->provenance()&0x80) : false; + bool isInvalid = m_applyMasking ? ((digi)->provenance()&0x40) : false; + if(isInvalid && val!=-99999) { + ATH_MSG_ERROR("Unexpected energy value " << val <<" for invalid channel"); + } + auto& tower = towers[itr->second.first]; if (itr->second.second.second<11) { - // doing an energy split between slots ... don't include a masked channel - if (!isMasked) { - // if the other contribution was masked, revert to 0 before adding this contribution - if (tower.at(itr->second.second.first)==std::numeric_limits<int>::max()) { + // doing an energy split between slots ... don't include a masked channel (or invalid channel) + if (!isMasked && val!=-99999) { + // if the other contribution was masked or invalid, revert to 0 before adding this contribution + if (tower.at(itr->second.second.first)==std::numeric_limits<int>::max() || tower.at(itr->second.second.first)==-99999) { tower.at(itr->second.second.first)=0; } tower.at(itr->second.second.first) += val >> 1; @@ -129,15 +141,85 @@ StatusCode eFexTowerBuilder::fillTowers(const EventContext& ctx) const { towers[std::pair(etaIndex(tTower->eta()),phiIndex(phi))][10] = tTower->cpET(); } + if(msgLvl(MSG::DEBUG)) { + std::scoped_lock lock(m_debugMutex); + // dump towers to histograms + // current count units are latome counts = 12.5MeV per count + + TFile *debugFile = dynamic_cast<TFile *>(gROOT->GetListOfFiles()->FindObject("debug_eFexTowerBuilder.root")); + if (!debugFile) debugFile = TFile::Open("debug_eFexTowerBuilder.root", "RECREATE"); + if (debugFile->GetListOfKeys()->GetEntries() < 20) { + TDirectory *dir = gDirectory; + debugFile->cd(); + TH2D ps("ps", "ps [MeV];#eta;#phi", 50, -2.5, 2.5, 64, -M_PI, M_PI); + TH2D l1("l1", "l1 [MeV];#eta;#phi", 200, -2.5, 2.5, 64, -M_PI, M_PI); + TH2D l2("l2", "l2 [MeV];#eta;#phi", 200, -2.5, 2.5, 64, -M_PI, M_PI); + TH2D l3("l3", "l3 [MeV];#eta;#phi", 50, -2.5, 2.5, 64, -M_PI, M_PI); + TH2D had("had", "had [MeV];#eta;#phi", 50, -2.5, 2.5, 64, -M_PI, M_PI); + for (auto &[coord, counts]: towers) { + if (counts.empty()) continue; + double tEta = ((coord.first < 0 ? 0.5 : -0.5) + coord.first - 0.5) * 0.1; // left edge + double tPhi = ((coord.second < 0 ? 0.5 : -0.5) + coord.second) * M_PI / 32; // centre + if (counts.at(0) != std::numeric_limits<int>::max()) ps.Fill(tEta + 0.05, tPhi, counts.at(0) * 12.5); + for (int i = 0; i < 4; i++) + if (counts.at(i + 1) != std::numeric_limits<int>::max()) + l1.Fill(tEta + 0.025 * i + 0.0125, tPhi, counts.at(i + 1) * 12.5); + for (int i = 0; i < 4; i++) + if (counts.at(i + 5) != std::numeric_limits<int>::max()) + l2.Fill(tEta + 0.025 * i + 0.0125, tPhi, counts.at(i + 5) * 12.5); + if (counts.at(9) != std::numeric_limits<int>::max()) l3.Fill(tEta + 0.05, tPhi, counts.at(9) * 12.5); + if (counts.at(10) != std::numeric_limits<int>::max()) + had.Fill(tEta + 0.05, tPhi, counts.at(10) * (std::abs(coord.first) <= 15 ? 500. : 12.5)); + } + std::vector < TH1 * > hists{&ps, &l1, &l2, &l3, &had}; + TCanvas c; + c.SetName(TString::Format("evt%lu", ctx.eventID().event_number())); + c.SetTitle(TString::Format("Run %u LB %u Event %lu", ctx.eventID().run_number(), ctx.eventID().lumi_block(), + ctx.eventID().event_number())); + c.Divide(2, 3); + TH2D tobs("tobs", "Sum [MeV];#eta;#phi", 50, -2.5, 2.5, 64, -M_PI, M_PI); + for (size_t i = 0; i < hists.size(); i++) { + c.GetPad(i + 1)->cd(); + hists[i]->SetStats(false); + hists[i]->SetMarkerSize(2); // controls text size + hists[i]->GetXaxis()->SetRangeUser(-0.3, 0.3); + hists[i]->GetYaxis()->SetRangeUser(-0.3, 0.3); + hists[i]->Draw((hists[i]->GetNbinsX() > 50) ? "coltext89" : "coltext"); + for (int ii = 1; ii <= hists[i]->GetNbinsX(); ii++) { + for (int jj = 1; jj <= hists[i]->GetNbinsY(); jj++) + tobs.Fill(hists[i]->GetXaxis()->GetBinCenter(ii), hists[i]->GetYaxis()->GetBinCenter(jj), + hists[i]->GetBinContent(ii, jj)); + } + } + c.GetPad(hists.size() + 1)->cd(); + tobs.SetStats(false); + tobs.Draw("col"); + TBox b(-0.3, -0.3, 0.3, 0.3); + b.SetLineColor(kRed); + b.SetFillStyle(0); + b.SetLineWidth(1); + b.SetBit(TBox::kCannotMove); + tobs.GetListOfFunctions()->Add(b.Clone()); + gPad->AddExec("onClick", TString::Format( + "{ auto pad = gPad->GetCanvas()->GetPad(%lu); if( pad->GetEvent()==kButton1Down ) { double x = pad->PadtoX(pad->AbsPixeltoX(pad->GetEventX())); double y = pad->PadtoY(pad->AbsPixeltoY(pad->GetEventY())); for(int i=1;i<%lu;i++) {auto h = dynamic_cast<TH1*>(gPad->GetCanvas()->GetPad(i)->GetListOfPrimitives()->At(1)); if(h) {h->GetXaxis()->SetRangeUser(x-0.3,x+0.3);h->GetYaxis()->SetRangeUser(y-0.3,y+0.3); } } if(auto b = dynamic_cast<TBox*>(pad->FindObject(\"tobs\")->FindObject(\"TBox\"))) {b->SetX1(x-0.3);b->SetX2(x+0.3);b->SetY1(y-0.3);b->SetY2(y+0.3);} gPad->GetCanvas()->Paint(); gPad->GetCanvas()->Update(); } }", + hists.size() + 1, hists.size() + 1)); + c.Write(); + gDirectory = dir; + } + } + + + SG::WriteHandle<xAOD::eFexTowerContainer> eTowers = SG::WriteHandle<xAOD::eFexTowerContainer>(m_outKey,ctx); ATH_CHECK( eTowers.record(std::make_unique<xAOD::eFexTowerContainer>(),std::make_unique<xAOD::eFexTowerAuxContainer>()) ); static const auto calToFex = [](int calEt) { if(calEt == std::numeric_limits<int>::max()) return 0; // indicates masked channel - if(calEt<448) return std::max((calEt&~1)/2+32,1); - if(calEt<1472) return (calEt-448)/4+256; - if(calEt<3520) return (calEt-1472)/8+512; - if(calEt<11584) return (calEt-3520)/32+768; + if( calEt == -99999 ) return 1022; // invalid channel value + if(calEt<448) return std::max((calEt&~1)/2+32,1); // 25 MeV per eFexTower count + if(calEt<1472) return (calEt-448)/4+256; // 50 MeV per eFexTower count + if(calEt<3520) return (calEt-1472)/8+512; // 100 MeV ... + if(calEt<11584) return (calEt-3520)/32+768; // 400 MeV ... return 1020; }; diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTowerBuilder.h b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTowerBuilder.h index b5848ddc9ca6f886859bee3212eb677a71c931d0..8a4163afabc57eb0b2f14d8b7351cf631af58d20 100644 --- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTowerBuilder.h +++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXAlgos/src/eFexTowerBuilder.h @@ -69,6 +69,10 @@ class eFexTowerBuilder : public AthReentrantAlgorithm Gaudi::Property<std::string> m_mappingFile {this, "MappingFile", "L1CaloFEXByteStream/2023-02-13/scToEfexTowers.root", "PathResolver location to mapping file"}; ToolHandle<IeFEXSuperCellTowerIdProvider> m_eFEXSuperCellTowerIdProviderTool {this, "eFEXSuperCellTowerIdProviderTool", "LVL1::eFEXSuperCellTowerIdProvider", "Tool that provides tower-FOGA mapping"}; + Gaudi::Property<bool> m_applyMasking{this,"ApplyMasking",true,"Apply masking of supercells based on provenance bits. Should be set to False for MC"}; + + mutable std::mutex m_debugMutex; + }; } // end of LVL1 namespace diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXSim/python/L1CaloFEXSimCfg.py b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXSim/python/L1CaloFEXSimCfg.py index 58748fd2b8557972ad52989ed358633537a6c841..11a763fd691cd4d486fa161fb9ad1532b3ed726d 100644 --- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXSim/python/L1CaloFEXSimCfg.py +++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXSim/python/L1CaloFEXSimCfg.py @@ -106,7 +106,7 @@ def L1CaloFEXSimCfg(flags, eFexTowerInputs = ["L1_eFexDataTowers","L1_eFexEmulat acc.merge(TriggerTowersInputCfg(flags)) if 'L1_eFexEmulatedTowers' in eFexTowerInputs and "L1_eFexEmulatedTowers" not in flags.Input.Collections: - acc.addEventAlgo( CompFactory.LVL1.eFexTowerBuilder("L1_eFexEmulatedTowers",CaloCellContainerReadKey=sCellType) ) # builds the emulated towers to use as secondary input to eTowerMaker - name has to match what it gets called in other places to avoid conflict + acc.addEventAlgo( CompFactory.LVL1.eFexTowerBuilder("L1_eFexEmulatedTowers",CaloCellContainerReadKey=sCellType,ApplyMasking=not flags.Input.isMC) ) # builds the emulated towers to use as secondary input to eTowerMaker - name has to match what it gets called in other places to avoid conflict if flags.Trigger.L1.doeFex: if eFexTowerInputs==[]: diff --git a/Trigger/TrigTools/TrigInDetConfig/python/utils.py b/Trigger/TrigTools/TrigInDetConfig/python/utils.py index 8f34cf193a159b328fdf3cb3b068a13a077af9d8..f1e8d6469fdc9a32a6fea7a46d6d7297b13ce769 100644 --- a/Trigger/TrigTools/TrigInDetConfig/python/utils.py +++ b/Trigger/TrigTools/TrigInDetConfig/python/utils.py @@ -46,5 +46,6 @@ def getFlagsForActiveConfig( ) return flags.cloneAndReplace( "Tracking.ActiveConfig", - ("Trigger.ITkTracking." if flags.Detector.GeometryITk else "Trigger.InDetTracking.") + config_name + ("Trigger.ITkTracking." if flags.Detector.GeometryITk else "Trigger.InDetTracking.") + config_name, + keepOriginal = True ) diff --git a/Trigger/TrigTools/TrigInDetConfig/share/IDTrig_MC23a_preInclude.py b/Trigger/TrigTools/TrigInDetConfig/share/IDTrig_MC23a_preInclude.py index 4fb9f2b2e128a3da7425810b8af1965cede71725..f8c78d5e0b95ad32f6154dd3af3ed59f8c617477 100644 --- a/Trigger/TrigTools/TrigInDetConfig/share/IDTrig_MC23a_preInclude.py +++ b/Trigger/TrigTools/TrigInDetConfig/share/IDTrig_MC23a_preInclude.py @@ -4,13 +4,12 @@ from Campaigns.Utils import Campaign if flags.Input.MCCampaign is not Campaign.MC23a: raise Exception( "MC23a ID Trigger configuration is called when processing {}. Please remove this preInclude from the config/AMI tag".format(flags.Input.MCCampaign)) -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig; from AthenaCommon.SystemOfUnits import GeV; -getInDetTrigConfig('tauCore')._pTmin = 1*GeV; -getInDetTrigConfig('tauIso')._pTmin = 1*GeV; -getInDetTrigConfig('jetSuper')._zedHalfWidth = 150.; -getInDetTrigConfig('bmumux')._zedHalfWidth = 225.; -getInDetTrigConfig('bmumux')._SuperRoI = False; +flags.Trigger.InDetTracking.tauCore.pTmin = 1*GeV; +flags.Trigger.InDetTracking.tauIso.pTmin = 1*GeV; +flags.Trigger.InDetTracking.jetSuper.zedHalfWidth = 150.; +flags.Trigger.InDetTracking.bmumux.zedHalfWidth = 225.; +flags.Trigger.InDetTracking.bmumux.SuperRoI = False; flags.Trigger.InDetTracking.RoiZedWidthDefault=0.0 flags.Trigger.InDetTracking.bjet.Xi2max=9. diff --git a/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref b/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref index 3491f51a0d620bd9608d023ab6f999373db5add0..329927cb15c649080c5993d4d408daf6dc1582b5 100644 --- a/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref +++ b/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref @@ -2618,6 +2618,12 @@ HLT_3j45_j45_3timeSig_L14jJ40: 0: 3 stepFeatures: 0: 35 +HLT_3j45_j45_L14jJ40: + eventCount: 12 + stepCounts: + 0: 12 + stepFeatures: + 0: 140 HLT_3j60_0eta290_020jvt_bdl1d77_pf_ftf_presel3j45b95_L13J35p0ETA23: eventCount: 0 stepCounts: @@ -14188,7 +14194,7 @@ HLT_j0_HT500XX0eta240_pf_ftf_L1HT190-J15s5pETA21: stepFeatures: 0: 8 1: 6 -HLT_j0_HT500XX0eta240_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-J15s5pETA21: +HLT_j0_HT500XX0eta240_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-jJ40s5pETA21: eventCount: 1 stepCounts: 0: 2 @@ -15577,14 +15583,14 @@ HLT_j20_CLEANllp_momemfrac024_calratio_roiftf_preselj20emf24_L1TAU60: stepFeatures: 0: 2 1: 2 -HLT_j20_DarkJetPEBTLA_L1HT190-J15s5pETA21: - eventCount: 8 +HLT_j20_DarkJetPEBTLA_L1HT190-jJ40s5pETA21: + eventCount: 15 stepCounts: - 0: 8 - 1: 8 + 0: 15 + 1: 15 stepFeatures: - 0: 75 - 1: 75 + 0: 162 + 1: 162 HLT_j20_L1HT190-J15s5pETA21: eventCount: 8 stepCounts: @@ -15697,7 +15703,7 @@ HLT_j20_pf_ftf_presel6j40_PhysicsTLA_L14J15: 1: 94 2: 94 3: 3 -HLT_j20_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-J15s5pETA21: +HLT_j20_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-jJ40s5pETA21: eventCount: 2 stepCounts: 0: 2 @@ -15983,6 +15989,8 @@ HLT_j220_j150_2timing_L1jJ160: eventCount: 0 HLT_j220_j150_3timeSig_L1jJ160: eventCount: 0 +HLT_j220_j150_L1jJ160: + eventCount: 0 HLT_j220f_L1J75p31ETA49: eventCount: 0 HLT_j220f_L1jJ125p30ETA49: @@ -29749,7 +29757,7 @@ HLT_tau25_mediumRNN_tracktwoMVA_L1jTAU20: 6: 30 7: 30 8: 3 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 3 stepCounts: 0: 16 @@ -29771,29 +29779,29 @@ HLT_tau25_mediumRNN_tracktwoMVA_L1jTAU20: 6: 54 7: 54 8: 3 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn177_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo80XX1c20gntau80_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 3 stepCounts: 0: 16 - 1: 16 - 2: 14 - 3: 13 - 4: 13 - 5: 13 - 6: 13 - 7: 13 + 1: 12 + 2: 11 + 3: 11 + 4: 11 + 5: 11 + 6: 11 + 7: 11 8: 3 stepFeatures: 0: 80 - 1: 80 - 2: 298 - 3: 24 - 4: 53 - 5: 53 - 6: 53 - 7: 53 + 1: 60 + 2: 245 + 3: 23 + 4: 44 + 5: 44 + 6: 44 + 7: 44 8: 3 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo82XX1c20gntau80_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 3 stepCounts: 0: 16 @@ -29809,13 +29817,13 @@ HLT_tau25_mediumRNN_tracktwoMVA_L1jTAU20: 0: 80 1: 60 2: 245 - 3: 24 + 3: 23 4: 44 5: 44 6: 44 7: 44 8: 3 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau90_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo82XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 3 stepCounts: 0: 16 @@ -29831,35 +29839,123 @@ HLT_tau25_mediumRNN_tracktwoMVA_L1jTAU20: 0: 80 1: 60 2: 245 - 3: 24 + 3: 23 4: 44 5: 44 6: 44 7: 44 8: 3 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 +: eventCount: 3 + stepCounts: + 0: 16 + 1: 12 + 2: 11 + 3: 11 + 4: 11 + 5: 11 + 6: 11 + 7: 11 + 8: 3 + stepFeatures: + 0: 80 + 1: 60 + 2: 245 + 3: 23 + 4: 44 + 5: 44 + 6: 44 + 7: 44 + 8: 3 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau90_L1jJ85p0ETA21_3jJ40p0ETA25 +: eventCount: 3 + stepCounts: + 0: 16 + 1: 12 + 2: 11 + 3: 11 + 4: 11 + 5: 11 + 6: 11 + 7: 11 + 8: 3 + stepFeatures: + 0: 80 + 1: 60 + 2: 245 + 3: 23 + 4: 44 + 5: 44 + 6: 44 + 7: 44 + 8: 3 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 3 stepCounts: 0: 16 1: 16 2: 14 - 3: 14 - 4: 14 - 5: 14 - 6: 14 - 7: 14 + 3: 13 + 4: 13 + 5: 13 + 6: 13 + 7: 13 8: 3 stepFeatures: 0: 80 1: 80 2: 298 - 3: 27 - 4: 54 - 5: 54 - 6: 54 - 7: 54 + 3: 25 + 4: 51 + 5: 51 + 6: 51 + 7: 51 + 8: 3 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn177_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25 +: eventCount: 3 + stepCounts: + 0: 16 + 1: 16 + 2: 14 + 3: 13 + 4: 13 + 5: 13 + 6: 13 + 7: 13 + 8: 3 + stepFeatures: + 0: 80 + 1: 80 + 2: 298 + 3: 24 + 4: 53 + 5: 53 + 6: 53 + 7: 53 8: 3 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25 +: eventCount: 3 + stepCounts: + 0: 16 + 1: 16 + 2: 14 + 3: 13 + 4: 13 + 5: 13 + 6: 13 + 7: 13 + 8: 3 + stepFeatures: + 0: 80 + 1: 80 + 2: 298 + 3: 25 + 4: 51 + 5: 51 + 6: 51 + 7: 51 + 8: 3 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 3 stepCounts: 0: 16 @@ -29875,31 +29971,31 @@ HLT_tau25_mediumRNN_tracktwoMVA_L1jTAU20: 0: 80 1: 70 2: 261 - 3: 25 + 3: 24 4: 47 5: 47 6: 47 7: 47 8: 3 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel4c20_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel4c20_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 3 stepCounts: 0: 16 1: 14 - 2: 14 - 3: 14 - 4: 14 - 5: 14 - 6: 14 + 2: 13 + 3: 13 + 4: 13 + 5: 13 + 6: 13 7: 3 stepFeatures: 0: 80 1: 298 - 2: 27 - 3: 54 - 4: 54 - 5: 54 - 6: 54 + 2: 25 + 3: 51 + 4: 51 + 5: 51 + 6: 51 7: 3 ? HLT_tau25_mediumRNN_tracktwoMVA_probe_j75c_020jvt_j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn177_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 3 diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAactsvtx_preinclude.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDAactsvtx_preinclude.py deleted file mode 100644 index d6982327b3d7df7debaa0a42da0b444c13e16982..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAactsvtx_preinclude.py +++ /dev/null @@ -1,14 +0,0 @@ - -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: TIDAactsvtx_preinclude.py" ) - -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - -getInDetTrigConfig("fullScan")._actsVertex = True - -log.info( "ID Trigger actsVertex: "+str(getInDetTrigConfig("fullScan").actsVertex) ) - - - diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAbjetpt_preinclude.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDAbjetpt_preinclude.py deleted file mode 100644 index fa824d2e5165713a93a78a66deab596a31491ef6..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAbjetpt_preinclude.py +++ /dev/null @@ -1,16 +0,0 @@ -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: TIDAbjetpt_preinclude.py" ) - -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig -from AthenaCommon.SystemOfUnits import GeV - -getInDetTrigConfig("bjet")._pTmin = 0.8*GeV - -from AthenaConfiguration.AllConfigFlags import ConfigFlags as flags -flags.Trigger.InDetTracking.bjet.Xi2max=12. - -log.info( "ID Trigger pTmin: "+str(getInDetTrigConfig("bjet").pTmin) ) -log.info(f"ID Trigger Xi2max: {flags.Trigger.InDetTracking.bjet.Xi2max}") - diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAcloneremoval.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDAcloneremoval.py deleted file mode 100644 index 1fa8b90a9bad2322f45a3719d3a8225806f086de..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAcloneremoval.py +++ /dev/null @@ -1,16 +0,0 @@ -# leave this here for comparison ... -# ftf = findAlgorithm(topSequence, "TrigFastTrackFinder__electron") -# ftf.doCloneRemoval = True - -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: TIDAcloneremoval.py" ) - -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - -getInDetTrigConfig("electron")._doCloneRemoval = False - -log.info( "Setting clone removal: "+str(getInDetTrigConfig("electron").doCloneRemoval) ) - - diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAcloneremovalchi2.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDAcloneremovalchi2.py deleted file mode 100644 index 3c03116d7bca1ad432cd668b66fc023a3ab161ca..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAcloneremovalchi2.py +++ /dev/null @@ -1,19 +0,0 @@ -# leave this here for comparison ... -# ftf = findAlgorithm(topSequence, "TrigFastTrackFinder__electron") -# ftf.doCloneRemoval = True - -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: TIDAcloneremoval.py" ) - -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - -from AthenaConfiguration.AllConfigFlags import ConfigFlags as flags -flags.Trigger.InDetTracking.electron.Xi2max=12. - - -log.info( "Setting clone removal: "+str(getInDetTrigConfig("electron").doCloneRemoval) ) -log.info( f"Setting Xi2max: {flags.Trigger.InDetTracking.electron.Xi2max}" ) - - diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAcosmic_preinclude.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDAcosmic_preinclude.py deleted file mode 100644 index 6958dc64b39e218f563f59044dae3ccaf11a98d1..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAcosmic_preinclude.py +++ /dev/null @@ -1,13 +0,0 @@ -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: TIDtemp_preinclude.py" ) - -from IOVDbSvc.CondDB import conddb -conddb.addOverride('/PIXEL/PixelModuleFeMask','PixelModuleFeMask-SIM-MC16-000-03') -conddb.addOverride("/TRT/Calib/PID_NN", "TRTCalibPID_NN_v1") -conddb.addOverride("/PIXEL/PixelClustering/PixelNNCalibJSON", "PixelNNCalibJSON-SIM-RUN2-000-02") - -from AthenaConfiguration.AllConfigFlags import ConfigFlags -ConfigFlags.Trigger.enableL1CaloPhase1=False - diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAlrt_preinclude.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDAlrt_preinclude.py deleted file mode 100644 index d71aaa9f1bc322d3cc6cab45b9420e81fe3017b1..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAlrt_preinclude.py +++ /dev/null @@ -1,17 +0,0 @@ -# -# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration -# - -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: TIDAlrt_preinclude.py" ) - -# large-R track reconstruction is enabled by default -#from InDetRecExample.InDetJobProperties import InDetFlags -#InDetFlags.doR3LargeD0.set_Value_and_Lock(True) -#InDetFlags.storeSeparateLargeD0Container.set_Value_and_Lock(False) - -#ATR-25582 - FSLRT is now excluded from the default dev menu so need to change to the full dev menu rather than the filtered versions -from AthenaConfiguration.AllConfigFlags import ConfigFlags -ConfigFlags.Trigger.triggerMenuSetup='Dev_pp_run3_v1' diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAtaupt_preinclude.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDAtaupt_preinclude.py deleted file mode 100644 index 8c5ef019768b7c0acc61e7f44911937d23c4b581..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAtaupt_preinclude.py +++ /dev/null @@ -1,14 +0,0 @@ - -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: TIDAtaupt_preinclude.py" ) - -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig -from AthenaCommon.SystemOfUnits import GeV - -getInDetTrigConfig("tauIso")._pTmin = 0.8*GeV - -log.info( "ID Trigger pTmin: "+str(getInDetTrigConfig("tauIso").pTmin) ) - - diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAvtx_preinclude.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDAvtx_preinclude.py deleted file mode 100644 index b7a42cf2ead70c3bea12543ef52dff68b7da3e18..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAvtx_preinclude.py +++ /dev/null @@ -1,17 +0,0 @@ - -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: TIDAvtx_preinclude.py" ) - -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - -getInDetTrigConfig("fullScan")._addSingleTrackVertices = True -getInDetTrigConfig("fullScan")._minNSiHits_vtx = 8 -getInDetTrigConfig("fullScan")._TracksMaxZinterval = 3 - -log.info( "ID Trigger addSingleVertices: "+str(getInDetTrigConfig("fullScan").addSingleTrackVertices) ) -log.info( "ID Trigger minNSiHits: "+str(getInDetTrigConfig("fullScan").minNSiHits_vtx) ) -log.info( "ID Trigger TracksMaxZinterval: "+str(getInDetTrigConfig("fullScan").TracksMaxZinterval) ) - - diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAwithpid.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDAwithpid.py deleted file mode 100644 index 504c270c7e69551d2c6c58296f60d14b053aa5d6..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDAwithpid.py +++ /dev/null @@ -1,13 +0,0 @@ - -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: TIDAwithpid.py" ) - -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - -getInDetTrigConfig("electron")._electronPID = True - -log.info( "Setting electronPID in the TrackSumaryTool: "+str(getInDetTrigConfig("electron").electronPID) ) - - diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/TIDV_cond_fix.py b/Trigger/TrigValidation/TrigInDetValidation/share/TIDV_cond_fix.py deleted file mode 100644 index a8275a63ae2f8fc450c88a4935c261f8367cb3ab..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/TIDV_cond_fix.py +++ /dev/null @@ -1,7 +0,0 @@ -from AthenaConfiguration.AllConfigFlags import ConfigFlags -ConfigFlags.IOVDb.GlobalTag='OFLCOND-RUN12-SDR-31' -ConfigFlags.Trigger.enableL1CaloPhase1=False -from IOVDbSvc.CondDB import conddb -conddb.addOverride('/PIXEL/PixelModuleFeMask','PixelModuleFeMask-SIM-MC16-000-03') -conddb.addOverride("/TRT/Calib/PID_NN", "TRTCalibPID_NN_v1") -conddb.addOverride("/PIXEL/PixelClustering/PixelNNCalibJSON", "PixelNNCalibJSON-SIM-RUN2-000-02") diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/effpreinclude.py b/Trigger/TrigValidation/TrigInDetValidation/share/effpreinclude.py deleted file mode 100644 index 4fbfc1d44835c76a46b6e69376bb34b70c9eb97a..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/effpreinclude.py +++ /dev/null @@ -1,20 +0,0 @@ - -from AthenaCommon.Logging import logging -log = logging.getLogger("TrigInDetValidation") - -log.info( "preinclude: effpreinclude.py" ) - - -from TrigInDetConfig.ConfigSettingsBase import _ConfigSettingsBase - -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig -from AthenaCommon.SystemOfUnits import GeV - -getInDetTrigConfig("bjet")._pTmin = 0.8*GeV -getInDetTrigConfig("tauIso")._pTmin = 0.8*GeV - -log.info( "ID Trigger pTmin: "+str(getInDetTrigConfig("bjet").pTmin) ) -log.info( "ID Trigger pTmin: "+str(getInDetTrigConfig("tauIso").pTmin) ) - - - diff --git a/Trigger/TrigValidation/TrigInDetValidation/share/test_preinclude_NNclustering.py b/Trigger/TrigValidation/TrigInDetValidation/share/test_preinclude_NNclustering.py deleted file mode 100644 index 35e3613eec8b5370699b16878e49e4069cc5bcc6..0000000000000000000000000000000000000000 --- a/Trigger/TrigValidation/TrigInDetValidation/share/test_preinclude_NNclustering.py +++ /dev/null @@ -1,3 +0,0 @@ -# Turn on NN tracking -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig -getInDetTrigConfig("bjet")._usePixelNN = True diff --git a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80.py b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80.py index fb96fc2d8e46a34e1bf31da837c512c7095ddb5d..8955ec65759fe3b5c611b930ef44572916bb8c67 100755 --- a/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80.py +++ b/Trigger/TrigValidation/TrigInDetValidation/test/test_trigID_all_ttbar_pu80.py @@ -31,7 +31,7 @@ # not yet - need to establish how to postinclude in the RAWtoALL -# useCA_Reco = True +useCA_Reco = True Slices = ['muon','electron','tau','bjet','fsjet'] Events = 4000 @@ -41,8 +41,13 @@ Input = 'ttbar_pu80' # defined in TrigValTools/share/TrigValInputs.json GridFiles = True # the conditions override is needed because the RDO was produced with a single beamspot -preinclude_file = 'RDOtoRDOTrigger:TrigInDetValidation/TIDV_singlebeamspot.py' -postinclude_file = 'RAWtoALL:TrigInDetValidation.TIDV_singlebeamspot' +# preinclude_file = 'RDOtoRDOTrigger:TrigInDetValidation/TIDV_singlebeamspot.py' +# postinclude_file = 'RAWtoALL:TrigInDetValidation.TIDV_singlebeamspot' + +# perhaps need to have these implemented ... +# preinclude_trig="from IOVDbSvc.CondDB import conddb ; conddb.addOverride('/Indet/Beampos', 'IndetBeampos-RunDep-MC21-BestKnowledge-002')" +# postinclude_reco="from IOVDbSvc.CondDB import conddb ; conddb.addOverride('/Indet/Beampos', 'IndetBeampos-RunDep-MC21-BestKnowledge-002')" + Jobs = [ ( "Offline", " TIDAdata-run3-offline.dat -r Offline -o data-hists-offline.root" ), ( "OfflineVtx", " TIDAdata-run3-offline-vtx.dat -r Offline -o data-hists-offline-vtx.root" ) ] diff --git a/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref b/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref index 86a8a1190a9640517856051710c0644a580a9f02..02a0fbd621f71ff728b504218265255e7679f529 100644 --- a/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref +++ b/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref @@ -957,6 +957,8 @@ HLT_3j45_j45_2timing_L14jJ40: eventCount: 0 HLT_3j45_j45_3timeSig_L14jJ40: eventCount: 0 +HLT_3j45_j45_L14jJ40: + eventCount: 0 HLT_3j60_0eta290_020jvt_bdl1d77_pf_ftf_presel3j45b95_L13J35p0ETA23: eventCount: 0 HLT_3j60_0eta290_020jvt_bdl1d77_pf_ftf_presel3j45b95_L13jJ70p0ETA23: @@ -5553,7 +5555,7 @@ HLT_j0_HT500XX0eta240_L1HT190-J15s5pETA21: eventCount: 0 HLT_j0_HT500XX0eta240_pf_ftf_L1HT190-J15s5pETA21: eventCount: 0 -HLT_j0_HT500XX0eta240_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-J15s5pETA21: +HLT_j0_HT500XX0eta240_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-jJ40s5pETA21: eventCount: 0 HLT_j0_HT500XX0eta240_pf_ftf_preselcHT450_L1HT190-J15s5pETA21: eventCount: 0 @@ -6079,7 +6081,7 @@ HLT_j20_CLEANllp_momemfrac012_calratio_roiftf_preselj20emf12_L1TAU60: eventCount: 0 HLT_j20_CLEANllp_momemfrac024_calratio_roiftf_preselj20emf24_L1TAU60: eventCount: 0 -HLT_j20_DarkJetPEBTLA_L1HT190-J15s5pETA21: +HLT_j20_DarkJetPEBTLA_L1HT190-jJ40s5pETA21: eventCount: 0 HLT_j20_L1HT190-J15s5pETA21: eventCount: 0 @@ -6119,7 +6121,7 @@ HLT_j20_pf_ftf_presel5j50_PhysicsTLA_L14J15: eventCount: 0 HLT_j20_pf_ftf_presel6j40_PhysicsTLA_L14J15: eventCount: 0 -HLT_j20_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-J15s5pETA21: +HLT_j20_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-jJ40s5pETA21: eventCount: 0 HLT_j20_pf_ftf_preselcHT450_L1HT190-J15s5pETA21: eventCount: 0 @@ -6205,6 +6207,8 @@ HLT_j220_j150_2timing_L1jJ160: eventCount: 0 HLT_j220_j150_3timeSig_L1jJ160: eventCount: 0 +HLT_j220_j150_L1jJ160: + eventCount: 0 HLT_j220f_L1J75p31ETA49: eventCount: 0 HLT_j220f_L1jJ125p30ETA49: @@ -10871,19 +10875,27 @@ HLT_tau25_mediumRNN_tracktwoMVA_L1jTAU20: : eventCount: 0 ? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1cTAU12M_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 0 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 0 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn177_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo80XX1c20gntau80_L1jJ85p0ETA21_3jJ40p0ETA25 +: eventCount: 0 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo82XX1c20gntau80_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 0 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo82XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 0 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau90_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 +: eventCount: 0 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau90_L1jJ85p0ETA21_3jJ40p0ETA25 +: eventCount: 0 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25 +: eventCount: 0 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn177_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 0 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 0 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 0 -? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel4c20_L1jJ85p0ETA21_3jJ40p0ETA25 +? HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel4c20_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 0 ? HLT_tau25_mediumRNN_tracktwoMVA_probe_j75c_020jvt_j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn177_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25 : eventCount: 0 diff --git a/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_trfDbgStreamData21_build.py b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_trfDbgStreamData21_build.py new file mode 100755 index 0000000000000000000000000000000000000000..51d155d0a88726a7861ea01080497fa02357a381 --- /dev/null +++ b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_trfDbgStreamData21_build.py @@ -0,0 +1,57 @@ +#!/usr/bin/env python +# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration + +# art-description: perform debug recovery from PU crash using PhysicsP1 menu +# art-type: build +# art-include: main/Athena +# art-include: 24.0/Athena + +from TrigValTools.TrigValSteering import Test, ExecStep, CheckSteps + + +#==================================================================================================== +# HLT BS_RDO->RAW +hlt = ExecStep.ExecStep() +hlt.type = 'Trig_reco_tf' +hlt.forks = 1 +hlt.threads = 1 +hlt.concurrent_events = 1 +hlt.max_events = 50 +# currently using data21 input file (rel. 22), disable CA for athenaHLT +hlt.args = ' --CA "all:True" "BSRDOtoRAW:False" --precommand=\\\"setMenu=\\\'PhysicsP1_pp_run3_v1\\\'\\\"' +hlt.args += ' --streamSelection=Main,BphysDelayed,VBFDelayed' +hlt.args += ' --prodSysBSRDO True' +hlt.args += ' --outputBSFile=RAW.pool.root' +hlt.args += ' --outputHIST_DEBUGSTREAMMONFile=HIST_DEBUGSTREAMMON.ntup.root' # Turn on debug recovery step +hlt.input = 'data21_dbg_stream' + + +#==================================================================================================== +# The full test +test = Test.Test() +test.art_type = 'build' +test.exec_steps = [hlt] +test.check_steps = CheckSteps.default_check_steps(test) + +from TrigValTools.TrigValSteering.CheckSteps import LogMergeStep + +# Rename Trig_reco_tf.log to athena.log for linking in ART Monitor +logmerge = LogMergeStep() +logmerge.merged_name = 'athena.log' +logmerge.log_files = ['Trig_reco_tf.log'] +test.check_steps.append(logmerge) + +# Overwrite default MessageCount settings +msgcount = test.get_step("MessageCount") +msgcount.thresholds = { + 'INFO': 320, + 'WARNING': 40, # ATR-22815 + 'other': 10 +} + +msgcount.required = True + +test.check_steps.remove(test.get_step("ZeroCounts")) + +import sys +sys.exit(test.run()) diff --git a/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_trfDbgStream_build.py b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_trfDbgStream_build.py index d7cde47a448ad6d87d4a6b6dd62dae0341e33d00..d8830f8e7b3c8ded9ca12ebcff17a677041f2e3c 100755 --- a/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_trfDbgStream_build.py +++ b/Trigger/TrigValidation/TrigP1Test/test/test_trigP1_v1PhysP1_trfDbgStream_build.py @@ -17,8 +17,8 @@ hlt.forks = 1 hlt.threads = 1 hlt.concurrent_events = 1 hlt.max_events = 50 -# currently using data21 input file (rel. 22), disable CA for athenaHLT -hlt.args = ' --CA "all:True" "BSRDOtoRAW:False" --precommand=\\\"setMenu=\\\'PhysicsP1_pp_run3_v1\\\'\\\"' +hlt.args = '--CA "all:True"' +hlt.args += ' --preExec="Trigger.triggerMenuSetup=\'PhysicsP1_pp_run3_v1\'"' hlt.args += ' --streamSelection=Main,BphysDelayed,VBFDelayed' hlt.args += ' --prodSysBSRDO True' hlt.args += ' --outputBSFile=RAW.pool.root' @@ -44,9 +44,9 @@ test.check_steps.append(logmerge) # Overwrite default MessageCount settings msgcount = test.get_step("MessageCount") msgcount.thresholds = { - 'INFO': 320, - 'WARNING': 40, # ATR-22815 - 'other': 10 + 'INFO': 400, + 'WARNING': 25, + 'other': 20 } msgcount.required = True diff --git a/Trigger/TrigValidation/TrigValTools/share/TrigValInputs.json b/Trigger/TrigValidation/TrigValTools/share/TrigValInputs.json index 05c1dd3275b680038ca2c56f96c1409ee69837e0..633f4185c9df9abc345123f62ae4ee1965760c3c 100644 --- a/Trigger/TrigValidation/TrigValTools/share/TrigValInputs.json +++ b/Trigger/TrigValidation/TrigValTools/share/TrigValInputs.json @@ -37,6 +37,13 @@ ] }, "data_dbg_stream": { + "source": "data", + "format": "BS", + "paths": [ + "/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/TrigP1Test/data24_test.00466371.debug_PUCrash.daq.RAW._lb0000._SFO-19._0001.data" + ] + }, + "data21_dbg_stream": { "source": "data", "format": "BS", "paths": [ diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfig.py b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfig.py index 3cc2a20278d2e644b56f4279dcaea4882a528bad..d774e08ab46f359e1513834a9b744e99276dd3e8 100644 --- a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfig.py +++ b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfig.py @@ -666,7 +666,7 @@ def triggerRunCfg( flags, menu=None ): if flags.Trigger.doCFEmulationTest: summaryAlg.Prescaler=CompFactory.PrescalingEmulationTool() acc.addEventAlgo( summaryAlg, sequenceName="HLTFinalizeSeq" ) - # TODO: Add end-of-event sequences here (port from HLTCFConfig.py) + acc.merge( triggerEndOfEventCfg(flags), sequenceName="HLTFinalizeSeq" ) #once menu is included we should configure monitoring here as below hltSeedingAlg = hltSeedingAcc.getEventAlgo("HLTSeeding") @@ -741,6 +741,64 @@ def triggerIDCCacheCreatorsCfg(flags, seqName = None): return acc + +def triggerEndOfEventCfg(flags): + from TriggerMenuMT.HLT.Config.Utility.HLTMenuConfig import HLTMenuConfig + + acceptedEventChainDicts = [cd for cd in HLTMenuConfig.dictsList() \ + if 'Calib' in cd['signatures'] \ + and 'acceptedevts' in cd['chainParts'][0]['purpose']] + + acc = ComponentAccumulator() + + # If no relevant chains or just not desired, can shortcut and return empty CA + if not (flags.Trigger.enableEndOfEventProcessing and acceptedEventChainDicts): + return acc + + # Add end-of-event sequences executed conditionally on the DecisionSummaryMakerAlg filter status + endOfEventRoIMaker = CompFactory.EndOfEventROIConfirmerAlg('EndOfEventROIConfirmerAlg') + acc.addEventAlgo( endOfEventRoIMaker ) + acc.addSequence( parOR("acceptedEventTopSeq") ) + acc.getSequence("acceptedEventTopSeq").IgnoreFilterPassed=True + + # Define the alg configuration by purpose + def EndOfEventSeqCfg(flags, prescaleChain, purposes): + acc = ComponentAccumulator() + seqLabel = prescaleChain.replace('HLT_acceptedevts','') + seqName = 'acceptedEventSeq'+seqLabel + acc.addSequence( seqAND(seqName) ) + + endOfEventFilterAlg = CompFactory.EndOfEventFilterAlg('EndOfEventFilterAlg'+seqLabel, ChainName=prescaleChain) + acc.addEventAlgo(endOfEventFilterAlg, sequenceName=seqName) + # The LAr Noise Burst end-of-event sequence + if 'larnoiseburst' in purposes: + # Add stream filter to EndOfEventFilterAlg + # Only accept events going to streams that already do full calo reco + # CosmicCalo explicitly requested [ATR-26096] + endOfEventFilterAlg.StreamFilter = ['Main','VBFDelayed','TLA','DarkJetPEBTLA','FTagPEBTLA','CosmicCalo'] + + from TriggerMenuMT.HLT.CalibCosmicMon.CalibChainConfiguration import getLArNoiseBurstRecoCfg + acc.merge(getLArNoiseBurstRecoCfg(flags), sequenceName=seqName) + elif any(purpose.startswith("met") for purpose in purposes): + from TriggerMenuMT.HLT.MET.EndOfEvent import getMETRecoSequences + metcfg, rois, streams = getMETRecoSequences(flags, purposes) + endOfEventFilterAlg.StreamFilter = streams + endOfEventRoIMaker.RoIs = [x for x in rois if x not in endOfEventRoIMaker.RoIs] + acc.merge(metcfg, sequenceName=seqName) + + return acc + + + for acceptedEventChainDict in acceptedEventChainDicts: + # Common config for each chain + prescaleChain = acceptedEventChainDict['chainName'] + # Now add chain-specific end-of-event sequences executed conditionally on the prescale + purposes = acceptedEventChainDict['chainParts'][0]['purpose'] + + acc.merge(EndOfEventSeqCfg(flags, prescaleChain, purposes), sequenceName="acceptedEventTopSeq") + + return acc + def triggerPostRunCfg(flags): """ Configures components needed for processing trigger information in RAW/ESD step diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/CFtest/EmuStepProcessingConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/CFtest/EmuStepProcessingConfig.py index 31838896a888824ef947c97cbd1f046f9c5f9a35..4fe29f65e79986b0b99c5cb411bf17b1ed999d1e 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/CFtest/EmuStepProcessingConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/CFtest/EmuStepProcessingConfig.py @@ -133,7 +133,7 @@ def generateChainsManually(flags, maskbit=0x7): """ log.info("generateChainsManually mask=0x%d",maskbit) from TriggerMenuMT.CFtest.TestUtils import makeChain, makeChainStep - from TriggerMenuMT.HLT.Config.MenuComponents import getEmptyMenuSequence + from TriggerMenuMT.HLT.Config.MenuComponents import EmptyMenuSequence doMuon = maskbit & 0x1 doElectron = maskbit>>1 & 0x1 doCombo = maskbit>>2 & 0x1 @@ -203,8 +203,8 @@ def generateChainsManually(flags, maskbit=0x7): # combined chain if doCombo: - emptySeq1 = getEmptyMenuSequence("step1EmptySeqence") - emptySeq2 = getEmptyMenuSequence("step2EmptySeqence") + emptySeq1 = EmptyMenuSequence("step1EmptySeqence") + emptySeq2 = EmptyMenuSequence("step2EmptySeqence") if not doElectron: from TriggerMenuMT.CFtest.HLTSignatureConfig import elMenuSequence diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bjet/BjetMenuSequences.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bjet/BjetMenuSequences.py index f7d7bb11e8593124c7605b933561a86c9335046f..11f1d030fd9aede2949787e1006948ee028cb80e 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bjet/BjetMenuSequences.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bjet/BjetMenuSequences.py @@ -1,6 +1,5 @@ # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig from TrigEDMConfig.TriggerEDM import recordable from ..Config.MenuComponents import MenuSequenceCA, SelectionCA, InViewRecoCA @@ -13,11 +12,8 @@ def getBJetSequenceCfg(flags, jc_name=None): if not jc_name: raise ValueError("jet collection name is empty - pass the full HLT jet collection name to getBJetSequenceCfg().") - config=getInDetTrigConfig('fullScan') - prmVtxKey = config.vertex - - bjetconfig = getInDetTrigConfig('bjet') - outputRoIName = bjetconfig.roi + prmVtxKey = flags.Trigger.InDetTracking.fullScan.vertex + outputRoIName = flags.Trigger.InDetTracking.bjet.roi jc_key = f'{jc_name}_' # Output container names as defined in TriggerEDMRun3 @@ -27,9 +23,9 @@ def getBJetSequenceCfg(flags, jc_name=None): RoisWriteHandleKey = recordable( outputRoIName ), VertexReadHandleKey = prmVtxKey, PrmVtxLink = prmVtxKey.replace( "HLT_","" ), - RoIEtaWidth = bjetconfig.etaHalfWidth, - RoIPhiWidth = bjetconfig.phiHalfWidth, - RoIZWidth = bjetconfig.zedHalfWidth, + RoIEtaWidth = flags.Trigger.InDetTracking.bjet.etaHalfWidth, + RoIPhiWidth = flags.Trigger.InDetTracking.bjet.phiHalfWidth, + RoIZWidth = flags.Trigger.InDetTracking.bjet.zedHalfWidth, ) # Second stage of Fast Tracking and Precision Tracking @@ -49,7 +45,7 @@ def getBJetSequenceCfg(flags, jc_name=None): inputVertex=prmVtxKey, inputJets=InputMakerAlg.InViewJets) - PTTrackParticles = bjetconfig.tracks_IDTrig() # Final output xAOD::TrackParticle collection + PTTrackParticles = flags.Trigger.InDetTracking.bjet.tracks_IDTrig # Final output xAOD::TrackParticle collection from TriggerMenuMT.HLT.Bjet.BjetFlavourTaggingConfig import flavourTaggingCfg flavourTaggingAlgs = flavourTaggingCfg(flags, diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bjet/docs/bjet_configuration.md b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bjet/docs/bjet_configuration.md index 5d59d8b7f7b0e8fc5dcf696fecf99e4ba4a6afb9..03f303af6c48d7132943f5736d852d6c0b2d82b4 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bjet/docs/bjet_configuration.md +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bjet/docs/bjet_configuration.md @@ -265,7 +265,7 @@ In '*BjetChainConfiguration.py*' the bjet sequence is added as one step of the c This file assembles all reconstruction algorithms into the bjet sequence mentioned above. As input it requires only the name of the jet-collection. In this way the code can be run for "EMTopo" and "EMPFlow" jet-collections. In the end a '*MenuSequence*' is being returned. A '*MenuSequence*' consits of three parts: '*InputMaker*', '*Sequence*' and '*Hypo*'. - **InputMaker**\ The **InputMaker** defines the environement in which the **sequence** will be executed.\ - At first an event view is being created for every Region-of-Interest (RoI, `outputRoIName = getInDetTrigConfig('bjet').roi`, currently "HLT_Roi_Bjet") + At first an event view is being created for every Region-of-Interest (RoI, `outputRoIName = flags.Trigger.InDetTracking.ActiveConfig.roi`, currently "HLT_Roi_Bjet") ```python InputMakerAlg = EventViewCreatorAlgorithm( "IMBJet_{jc_name}_step2" ) ``` @@ -274,10 +274,9 @@ In '*BjetChainConfiguration.py*' the bjet sequence is added as one step of the c RoITool = ViewCreatorCentredOnJetWithPVConstraintROITool() ``` Currently the default values of $`\eta (\text{half-width}) = \phi (\text{half-width}) = 0.4`$ are being used (cf. [ViewCreatorCentredOnJetWithPVConstraintROITool.h](https://gitlab.cern.ch/atlas/athena/-/blob/main/Trigger/TrigSteer/DecisionHandling/src/ViewCreatorCentredOnJetWithPVConstraintROITool.h)). Hence, the total size will be $`0.8 \times 0.8`$. The event views allow us to process only the most relevant parts of the detector information and thereby speed up the computation time. In addition a constraint on the distance between jet and primary vertex of $`z < 10 mm`$ is applied when creating the view.\ - The primary vertex (PV) has already been determined by the jet code upstream. The collection name is configured from [TrigInDetConfig/ConfigSettings.py](https://gitlab.cern.ch/atlas/athena/-/blob/main/Trigger/TrigTools/TrigInDetConfig/python/ConfigSettings.py), currently being `HLT_IDVertex_FS` + The primary vertex (PV) has already been determined by the jet code upstream. The collection name is configured from flags.Trigger.InDetTracking.ActiveConfig.vertex, currently being `HLT_IDVertex_FS` ```python - config=getInDetTrigConfig('fullScan') - prmVtxKey = config.vertex + prmVtxKey = flags.Trigger.InDetTracking.ActiveConfig.vertex ``` The vertex-collection is attached to the RoI ```python diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bphysics/BphysicsMenuSequences.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bphysics/BphysicsMenuSequences.py index 05b1e5763bf860df4607262d148ff13124e939c3..1a464b712a86be26ba2099e542b16861a1042eff 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bphysics/BphysicsMenuSequences.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Bphysics/BphysicsMenuSequences.py @@ -12,16 +12,13 @@ from TrigEDMConfig.TriggerEDM import recordable @AccumulatorCache def bmumuxSequence(flags): - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - IDConfig = getInDetTrigConfig('bmumux') - - RoIToolCreator = CompFactory.ViewCreatorMuonSuperROITool if IDConfig.SuperRoI else CompFactory.ViewCreatorCentredOnIParticleROITool + RoIToolCreator = CompFactory.ViewCreatorMuonSuperROITool if flags.Trigger.InDetTracking.bmumux.SuperRoI else CompFactory.ViewCreatorCentredOnIParticleROITool roiToolOptions = { - 'RoIEtaWidth' : IDConfig.etaHalfWidth, - 'RoIPhiWidth' : IDConfig.phiHalfWidth, - 'RoIZedWidth' : IDConfig.zedHalfWidth, - 'RoisWriteHandleKey' : recordable(IDConfig.roi) } + 'RoIEtaWidth' : flags.Trigger.InDetTracking.bmumux.etaHalfWidth, + 'RoIPhiWidth' : flags.Trigger.InDetTracking.bmumux.phiHalfWidth, + 'RoIZedWidth' : flags.Trigger.InDetTracking.bmumux.zedHalfWidth, + 'RoisWriteHandleKey' : recordable(flags.Trigger.InDetTracking.bmumux.roi) } viewMakerOptions = { 'RoITool' : RoIToolCreator(**roiToolOptions), diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/BeamspotChainConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/BeamspotChainConfiguration.py index 8926b297179da0ed744905ffa0a89eed30e6b858..e3e74ada724b4c6f7c53016566ff065b9a4c8472 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/BeamspotChainConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/BeamspotChainConfiguration.py @@ -55,9 +55,6 @@ def allTE_trkfast( flags, signature="FS" ): def getBeamspotVtx(flags): signature = "BeamspotJet" - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - IDTrigConfig = getInDetTrigConfig("fullScan") - # run at event level inputMakerAlg = CompFactory.InputMakerForRoI("IM_beamspotJet_"+signature) inputMakerAlg.RoITool = CompFactory.ViewCreatorInitialROITool() @@ -65,7 +62,7 @@ def getBeamspotVtx(flags): #-- Configuring Beamspot vertex alg from TrigT2BeamSpot.T2VertexBeamSpotConfig import T2VertexBeamSpot_activeAllTE vertexAlg = T2VertexBeamSpot_activeAllTE(flags, "vertex_"+signature ) - vertexAlg.TrackCollection = IDTrigConfig.trkTracks_FTF() + vertexAlg.TrackCollection = flags.Trigger.InDetTracking.fullScan.trkTracks_FTF #-- Setting up beamspotSequence beamspotSequence = InEventRecoCA('beamspotJetSequence_'+signature,inputMaker=inputMakerAlg) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/CalibChainConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/CalibChainConfiguration.py index 083db7a9acef7337f0d40e21f0b1153bd756e031..bc1e7f3b810bba33f9584421bb0206e49fdfccb1 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/CalibChainConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/CalibChainConfiguration.py @@ -12,7 +12,6 @@ from TrigGenericAlgs.TrigGenericAlgsConfig import TimeBurnerCfg, TimeBurnerHypoT from AthenaConfiguration.AccumulatorCache import AccumulatorCache from TrigTrackingHypo.IDCalibHypoConfig import IDCalibHypoToolFromDict, createIDCalibHypoAlg -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig from ..CommonSequences.FullScanInDetConfig import commonInDetFullScanCfg from TriggerMenuMT.HLT.Jet.JetMenuSequencesConfig import getTrackingInputMaker @@ -164,7 +163,7 @@ def IDCalibTriggerCfg(flags): reco = InEventRecoCA('IDCalibEmptySeq_reco',inputMaker=DummyInputMakerAlg) theHypoAlg = createIDCalibHypoAlg(flags, "IDCalibHypo") - theHypoAlg.tracksKey = getInDetTrigConfig('fullScan').tracks_FTF() + theHypoAlg.tracksKey = flags.Trigger.InDetTracking.fullScan.tracks_FTF selAcc = SelectionCA('IDCalibEmptySeq_sel') selAcc.mergeReco(reco) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/CosmicChainConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/CosmicChainConfiguration.py index 6b838877695e57f5e2f1092aeda2d47641975e39..e1751d19b5b737342a56db48a8ac8564f5f35929 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/CosmicChainConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/CalibCosmicMon/CosmicChainConfiguration.py @@ -5,7 +5,7 @@ logging.getLogger().info("Importing %s",__name__) log = logging.getLogger(__name__) from AthenaConfiguration.ComponentFactory import CompFactory -from TriggerMenuMT.HLT.Config.MenuComponents import MenuSequenceCA, SelectionCA, InViewRecoCA, EmptyMenuSequenceCA +from TriggerMenuMT.HLT.Config.MenuComponents import MenuSequenceCA, SelectionCA, InViewRecoCA, EmptyMenuSequence from TrigEDMConfig.TriggerEDM import recordable import AthenaCommon.SystemOfUnits as Units @@ -54,7 +54,7 @@ def CosmicsTrkSequenceCfg(flags): def EmptyMSBeforeCosmicID(flags): - return EmptyMenuSequenceCA("EmptyBeforeCosmicID") + return EmptyMenuSequence("EmptyBeforeCosmicID") #---------------------------------------------------------------- class CosmicChainConfiguration(ChainConfigurationBase): diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/ControlFlow/HLTCFConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/ControlFlow/HLTCFConfig.py index dc1e5b1d76408db29f139eeed5e7bf6726114cdc..5a79b5423a95cf9d8af2b3aaf2a042cc3640cc3c 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/ControlFlow/HLTCFConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/ControlFlow/HLTCFConfig.py @@ -242,6 +242,7 @@ def createDataFlow(flags, chains, allDicts): # initialize arrays for monitor finalDecisions = [ [] for n in range(NSTEPS) ] CFseqList = [ [] for n in range(NSTEPS) ] + CFSeqByFilterName = [ {} for n in range(NSTEPS) ] # CFSeqeunces keyed by filter name (speedup) # loop over chains for chain in chains: @@ -269,20 +270,19 @@ def createDataFlow(flags, chains, allDicts): else: filterOutput = [CFNaming.filterOutName(filterName, inputName) for inputName in filterInput ] - foundCFSeq = [cfseq for cfseq in CFseqList[nstep] if filterName == cfseq.filter.Alg.getName()] # TODO: Check sequence consistency if skipping, to avoid issues like https://its.cern.ch/jira/browse/ATR-28617 - log.debug("Found %d CF sequences with filter name %s", len(foundCFSeq), filterName) - if not foundCFSeq: + foundCFseq = CFSeqByFilterName[nstep].get(filterName, None) + log.debug("%s CF sequences with filter name %s", "Not found" if foundCFseq is None else "Found", filterName) + if foundCFseq is None: sequenceFilter = buildFilter(filterName, filterInput, chainStep.isEmpty) CFseq = CFSequenceCA( chainStep = chainStep, filterAlg = sequenceFilter) CFseq.connect(filterOutput) + CFSeqByFilterName[nstep][CFseq.filter.Alg.getName()] = CFseq CFseqList[nstep].append(CFseq) lastCFseq = CFseq else: - if len(foundCFSeq) > 1: - log.error("Found more than one sequence containing filter %s", filterName) + lastCFseq = foundCFseq - lastCFseq = foundCFSeq[0] # skip re-merging if flags.Trigger.fastMenuGeneration: for menuseq in chainStep.sequences: diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/MenuComponents.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/MenuComponents.py index b4a3b985d5ba32448f6dc3bc5ba83c251a208a4c..fbb5e67e60f1a9d01bd1d0576776263c8247d0c5 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/MenuComponents.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/MenuComponents.py @@ -304,25 +304,29 @@ class ComboMaker(AlgNode): # Now sequences and chains ########################################################## +class EmptyMenuSequence: + """Class to emulate reco sequences with no Hypo""" -def getEmptyMenuSequence(name): - return EmptyMenuSequenceCA(name) - - -class EmptyMenuSequence(object): - """ Class to emulate reco sequences with no Hypo""" - """ By construction it has no Hypo;""" - def __init__(self, the_name): + log.debug("Made EmptySequence %s", the_name) self._name = the_name - Maker = CompFactory.InputMakerForRoI("IM"+the_name) - # isEmptyStep causes the IM to try at runtime to merge by feature by default (i.e for empty steps appended after a leg has finised). - # But if this failes then it will merge by initial ROI instead (i.e. for empy steps prepended before a leg has started) - Maker.isEmptyStep = True - Maker.RoIsLink = 'initialRoI' #(this is the default property, just making it explicit) - self._maker = InputMakerNode( Alg = Maker ) - self._sequence = Node( Alg = seqAND(the_name, [Maker])) - log.debug("Made EmptySequence %s",the_name) + + # isEmptyStep causes the IM to try at runtime to merge by feature by default + # (i.e for empty steps appended after a leg has finised). But if this failes then it will + # merge by initial ROI instead (i.e. for empy steps prepended before a leg has started) + makerAlg = CompFactory.InputMakerForRoI(f"IM{the_name}", + isEmptyStep = True, + RoIsLink = 'initialRoI') + + self._maker = InputMakerNode( Alg = makerAlg ) + self._sequence = Node( Alg = seqAND(the_name, [makerAlg])) + + self.ca = ComponentAccumulator() + self.ca.addSequence(seqAND(the_name)) + self.ca.addEventAlgo(makerAlg, sequenceName=the_name) + + def __del__(self): + self.ca.wasMerged() @property def sequence(self): @@ -330,8 +334,13 @@ class EmptyMenuSequence(object): @property def maker(self): + self._maker.Alg = self.ca.getEventAlgo(self._maker.Alg.name) return self._maker + @property + def globalRecoCA(self): + return None + @property def name(self): return self._name @@ -340,7 +349,7 @@ class EmptyMenuSequence(object): return self.maker.readOutputList() # Only one since it's merged def connectToFilter(self, outfilter): - """ Connect filter to the InputMaker""" + """Connect filter to the InputMaker""" self.maker.addInput(outfilter) def createHypoTools(self, chainDict): @@ -363,6 +372,7 @@ class EmptyMenuSequence(object): return "MenuSequence::%s \n Hypo::%s \n Maker::%s \n Sequence::%s \n HypoTool::%s\n"\ %(self.name, "Empty", self.maker.Alg.getName(), self.sequence.Alg.getName(), "None") + class MenuSequence(object): """ Class to group reco sequences with the Hypo""" """ By construction it has one Hypo Only; behaviour changed to support muFastOvlpRmSequence() which has two, but this will change""" @@ -586,27 +596,6 @@ class MenuSequenceCA(MenuSequence): self._globalCA.wasMerged() -class EmptyMenuSequenceCA(EmptyMenuSequence): - ''' EmptyMenuSequence with Component Accumulator ''' - def __init__(self, the_name): - EmptyMenuSequence.__init__(self,the_name ) - self.ca=ComponentAccumulator() - self.ca.addSequence(seqAND(the_name)) - self.ca.addEventAlgo(self._maker.Alg, sequenceName=the_name) - - @property - def maker(self): - makerAlg = self.ca.getEventAlgo(self._maker.Alg.getName()) - self._maker.Alg = makerAlg - return self._maker - - @property - def globalRecoCA(self): - return None - - def __del__(self): - self.ca.wasMerged() - class Chain(object): """Basic class to define the trigger menu """ __slots__ ='name','steps','nSteps','alignmentGroups','L1decisions', 'topoMap' diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/Utility/ChainMerging.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/Utility/ChainMerging.py index d5f4e92759070f81b8a3266f8e4a923a5fcd9a1f..d9d453716280d72370886e86a85e062c4f7cf950 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/Utility/ChainMerging.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Config/Utility/ChainMerging.py @@ -1,7 +1,7 @@ -# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration +# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration from TriggerMenuMT.HLT.Config.Utility.MenuAlignmentTools import get_alignment_group_ordering as getAlignmentGroupOrdering -from TriggerMenuMT.HLT.Config.MenuComponents import Chain, ChainStep, EmptyMenuSequence, getEmptyMenuSequence +from TriggerMenuMT.HLT.Config.MenuComponents import Chain, ChainStep, EmptyMenuSequence from AthenaCommon.Logging import logging from DecisionHandling.DecisionHandlingConfig import ComboHypoCfg @@ -563,10 +563,10 @@ def makeCombinedStep(parallel_steps, stepNumber, chainDefList, allSteps = [], cu seqName = getEmptySeqName(new_stepDict['signature'], stepNumber, alignment_group) if isFullScanRoI(chainDefList[chain_index].L1decisions[0]): - stepSeq.append(getEmptyMenuSequence(seqName+"FS")) + stepSeq.append(EmptyMenuSequence(seqName+"FS")) currentStepName = 'Empty' + alignment_group +'Align'+str(stepNumber)+'_'+new_stepDict['chainParts'][0]['multiplicity']+new_stepDict['signature']+'FS' else: - stepSeq.append(getEmptyMenuSequence(seqName)) + stepSeq.append(EmptyMenuSequence(seqName)) currentStepName = 'Empty' + alignment_group +'Align'+str(stepNumber)+'_'+new_stepDict['chainParts'][0]['multiplicity']+new_stepDict['signature'] log.debug("[makeCombinedStep] chain_index: %s, step name: %s, empty sequence name: %s", chain_index, currentStepName, seqName) @@ -675,10 +675,10 @@ def build_empty_sequences(emptyChainDicts, step_mult, caller, L1decisions, seqNa for ileg in range(len(L1decisions)): if isFullScanRoI(L1decisions[ileg]): log.debug("[%s] adding FS empty sequence", caller) - emptySequences += [getEmptyMenuSequence(seqNames[ileg]+"FS")] + emptySequences += [EmptyMenuSequence(seqNames[ileg]+"FS")] else: log.debug("[%s] adding non-FS empty sequence", caller) - emptySequences += [getEmptyMenuSequence(seqNames[ileg])] + emptySequences += [EmptyMenuSequence(seqNames[ileg])] log.verbose("[%s] emptyChainDicts %s", caller, emptyChainDicts) log.debug("[%s] %s has number of empty sequences %d and empty legs in stepDicts %d", diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Egamma/TrigEgammaKeys.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Egamma/TrigEgammaKeys.py index 2738324eb8d7079dbb056292b2321d9b7d341501..542ec8d36578134c4f6f982fa0048e91e2e932c5 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Egamma/TrigEgammaKeys.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Egamma/TrigEgammaKeys.py @@ -8,8 +8,9 @@ __all__ = [ "getTrigEgammaKeys" ] # Configuration of Electron and Photon chains #---------------------------------------------------------------- -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig + from TrigEDMConfig.TriggerEDM import recordable +from AthenaConfiguration.AllConfigFlags import initConfigFlags class TrigEgammaKeysBase(object): @@ -50,30 +51,22 @@ class TrigEgammaKeysBase(object): """Static class to collect all string manipulation in precision egamma sequences """ self.precisionEgammaSuperClusterRecCollection = 'HLT_EgammaSuperRecCollection' - # - # Track configuration - # - self._IDTrigConfig = getInDetTrigConfig( 'electron' ) - # # Special sequences # self.TrigTRTHTCountsContainer = recordable("HLT_TrigTRTHTCounts") self.egEventShape = recordable('HLT_HIEventShapeEG') + self._flags = initConfigFlags() @property def precisionTrackingContainer(self): - return self._IDTrigConfig.tracks_IDTrig() - - @property - def IDTrigConfig(self): - return self._IDTrigConfig + return self._flags.Trigger.InDetTracking.electron.tracks_IDTrig @property def fastTrackParticleContainer(self): - return self._IDTrigConfig.tracks_FTF() + return self._flags.Trigger.InDetTracking.electron.tracks_FTF @@ -88,8 +81,14 @@ class TrigEgammaKeys_LRT(TrigEgammaKeysBase): self.precisionElectronCaloClusterContainer = recordable("HLT_CaloEMClusters_LRT") self.precisionElectronContainer = recordable('HLT_egamma_Electrons_LRT') self.precisionTopoClusterContainer = recordable("HLT_TopoCaloClustersRoI_LRT") - self._IDTrigConfig = getInDetTrigConfig('electronLRT') + @property + def precisionTrackingContainer(self): + return self._flags.Trigger.InDetTracking.electronLRT.tracks_IDTrig + + @property + def fastTrackParticleContainer(self): + return self._flags.Trigger.InDetTracking.electronLRT.tracks_FTF class TrigEgammaKeys_GSF(TrigEgammaKeysBase): @@ -102,6 +101,14 @@ class TrigEgammaKeys_GSF(TrigEgammaKeysBase): self.precisionElectronTrkCollectionGSF = 'HLT_IDTrkTrack_Electron_GSF' self.precisionElectronTrackParticleContainerGSF = recordable('HLT_IDTrack_Electron_GSF') self.precisionElectronContainer = recordable('HLT_egamma_Electrons_GSF') + @property + def precisionTrackingContainer(self): + return self._flags.Trigger.InDetTracking.electron.tracks_IDTrig + + @property + def fastTrackParticleContainer(self): + return self._flags.Trigger.InDetTracking.electron.tracks_FTF + class TrigEgammaKeys_LRTGSF(TrigEgammaKeysBase): # This class contians modified base configuration class for LRT_GSF electron trigger chains @@ -114,8 +121,14 @@ class TrigEgammaKeys_LRTGSF(TrigEgammaKeysBase): self.precisionElectronTrackParticleContainerGSF = recordable('HLT_IDTrack_Electron_LRTGSF') self.precisionElectronCaloClusterContainer = recordable("HLT_CaloEMClusters_LRT") self.precisionElectronContainer = recordable('HLT_egamma_Electrons_LRTGSF') - self._IDTrigConfig = getInDetTrigConfig('electronLRT') + @property + def precisionTrackingContainer(self): + return self._flags.Trigger.InDetTracking.electronLRT.tracks_IDTrig + + @property + def fastTrackParticleContainer(self): + return self._flags.Trigger.InDetTracking.electronLRT.tracks_FTF # # Get keys from variant name diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/ExoticJetSequencesConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/ExoticJetSequencesConfig.py index a717bcf686b29b417da40529423a9bf468070997..9835956c3cf4cc1f008fccc2f6c19ed04d03faae 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/ExoticJetSequencesConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/ExoticJetSequencesConfig.py @@ -12,10 +12,8 @@ def jetEJsMenuSequence(flags, jetsIn): from TrigHLTJetHypo.TrigJetHypoToolConfig import trigJetEJsHypoToolFromDict # Get track sequence name - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - IDTrigConfig = getInDetTrigConfig( 'fullScan' ) - sequenceOut = IDTrigConfig.tracks_FTF() - vertices = IDTrigConfig.vertex_jet + sequenceOut = flags.Trigger.InDetTracking.fullScan.tracks_FTF + vertices = flags.Trigger.InDetTracking.fullScan.vertex_jet reco = InEventRecoCA( f"EmergingJets_{jetsIn}Reco", @@ -71,10 +69,8 @@ def jetCROldMenuSequence(flags, jetsIn): from TrigHLTJetHypo.TrigJetHypoToolConfig import trigJetCROldHypoToolFromDict # Get track sequence name - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig from ..CommonSequences.FullScanDefs import fs_cells, trkFSRoI - IDTrigConfig = getInDetTrigConfig( 'fullScan' ) - sequenceOut = IDTrigConfig.tracks_FTF() + sequenceOut = flags.Trigger.InDetTracking.fullScan.tracks_FTF cellsin=fs_cells from .JetMenuSequencesConfig import getTrackingInputMaker diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetMenuSequencesConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetMenuSequencesConfig.py index af36e71e8d9ffa1388ff95253b9d74ac727a4581..01d03e691259aee9cc003769b163abf51d40f7d0 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetMenuSequencesConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetMenuSequencesConfig.py @@ -278,7 +278,7 @@ def jetFSTrackingSelCfg(flags, clustersKey, isPerf, **jetRecoDict): log.debug("Generating jet tracking hypo menu sequence for reco %s",jetDef.fullname()) if isPFlow(jetRecoDict) and jetRecoDict['recoAlg'] == 'a4' and 'sub' in jetRecoDict['jetCalib']: - pvKey = getInDetTrigConfig('fullScan').vertex_jet + pvKey = flags.Trigger.InDetTracking.fullScan.vertex_jet trig_evt_info_key = recordable("HLT_TCEventInfo_jet") # Can encapsulate in another CA if necessary but only this instance diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetRecoCommon.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetRecoCommon.py index f727cf35337c24384209bb7956952f8ff6c36366..20c3e3959f889666296a29b9635aac03f321d5ee 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetRecoCommon.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Jet/JetRecoCommon.py @@ -12,7 +12,6 @@ from ..Menu.SignatureDicts import JetRecoKeys as recoKeys from JetRecConfig import StandardJetContext # this is to define trigger specific JetModifiers (ex: ConstitFourMom_copy) : from . import TriggerJetMods -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig import copy @@ -209,8 +208,6 @@ def getPrefilterCleaningString(prefilters_list): # the calibration config helper def getCalibMods(flags,jetRecoDict,dataSource,rhoKey="auto"): - config = getInDetTrigConfig( 'fullScan' ) - # Minimum modifier set for calibration w/o track GSC # Should eventually build in more mods, depend on track info etc jetalg = jetRecoDict["recoAlg"] @@ -241,7 +238,7 @@ def getCalibMods(flags,jetRecoDict,dataSource,rhoKey="auto"): gscDepth = "EM3" if "gsc" in jetRecoDict["jetCalib"]: gscDepth = "trackWIDTH" - pvname = config.vertex_jet + pvname = flags.Trigger.InDetTracking.fullScan.vertex_jet elif jetRecoDict["constitType"] == "pf": gscDepth = "auto" @@ -260,7 +257,7 @@ def getCalibMods(flags,jetRecoDict,dataSource,rhoKey="auto"): ("a4","subjesgscIS"): (calibKey,"JetArea_EtaJES_GSC"), # w/o pu residual + calo+trk GSC ("a4","subresjesgscIS"): (calibKey,"JetArea_Residual_EtaJES_GSC"), # pu residual + calo+trk GSC }[(jetRecoDict["recoAlg"],jetRecoDict["jetCalib"])] - pvname = config.vertex_jet + pvname = flags.Trigger.InDetTracking.fullScan.vertex_jet if jetRecoDict["jetCalib"].endswith("IS") and (dataSource=="data"): calibSeq += "_Insitu" diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/MET/EndOfEvent.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/MET/EndOfEvent.py new file mode 100644 index 0000000000000000000000000000000000000000..303a741d94e0c705568ed546c378547962faf884 --- /dev/null +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/MET/EndOfEvent.py @@ -0,0 +1,66 @@ +# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration +"""Code to setup MET reconstruction during the end-of-event sequence""" + +from typing import List + +from AthenaCommon.CFElements import parOR +from AthenaCommon.Configurable import ConfigurableCABehavior +from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator +from .ConfigHelpers import AlgConfig, stringToMETRecoDict +from ..CommonSequences.FullScanDefs import caloFSRoI, trkFSRoI + + +_algs_by_purpose = { + "metcalo": ["cell", "tcpufit", "tcpufit_sig30"], + "mettrk": [ + "pfopufit", + "pfsum", + "pfsum_vssk", + "pfsum_cssk", + "trkmht", + "mhtpufit_pf", + "mhtpufit_em", + "pfopufit_sig30", + "nn", + ], +} + + +def getMETRecoSequences(flags, purposes: List[str]): + """Create the full reconstruction sequences to run at the end of the event + + Parameters + ---------- + purposes : List[str] + The purpose keys given in the associated acceptedevts chain + + Returns + ------- + An OR containing the configured algorithms + A list of the required RoIs + A list of the required streams + """ + ef_reco_algs = [] + for purpose in purposes: + ef_reco_algs += [ + alg for alg in _algs_by_purpose.get(purpose, []) if alg not in ef_reco_algs + ] + seqname = f"{''.join(purposes)}EndOfEventRecoSequence" + with ConfigurableCABehavior(): + merged_ca = ComponentAccumulator() + merged_ca.addSequence(parOR(seqname), primary=True) + max_step_idx = 0 + for alg in ef_reco_algs: + cfg = AlgConfig.fromRecoDict(**stringToMETRecoDict(alg)) + step_output = cfg.make_reco_algs(flags, **cfg.interpret_reco_dict()) + max_step_idx = max(max_step_idx, step_output.max_step_idx) + for ca in step_output.steps: + merged_ca.merge(ca, seqname) + + rois = [caloFSRoI] + if max_step_idx > 1: + # If we have more than one step then we also need the FS tracking RoI + rois.append(trkFSRoI) + + streams = ["Main", "VBFDelayed"] + return merged_ca, rois, streams diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py index 8594ebd7f6aa7d11ea62193c11767d45fb2e1751..707d38fe3367ef9e9b1a5b2df5b8b4e88e79853c 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py @@ -17,7 +17,6 @@ from ..Config.Utility.ChainDefInMenu import ChainProp from .Physics_pp_run3_v1 import (PhysicsStream, SingleMuonGroup, MultiMuonGroup, - SingleElectronGroup, MultiElectronGroup, METGroup, SingleJetGroup, @@ -132,8 +131,6 @@ def getDevSignatures(): # ChainProp(name='HLT_e26_dnntight_ivarloose_L1EM22VHI', groups=PrimaryLegGroup+SingleElectronGroup, monGroups=['egammaMon:t0']), # ChainProp(name='HLT_e60_dnnmedium_L1EM22VHI', groups=PrimaryLegGroup+SingleElectronGroup, monGroups=['egammaMon:t0_tp']), # ChainProp(name='HLT_e140_dnnloose_L1EM22VHI', groups=PrimaryLegGroup+SingleElectronGroup, monGroups=['egammaMon:t0_tp']), - # test - ChainProp(name='HLT_e5_etcut_L1eEM5' , groups=SingleElectronGroup+SupportPhIGroup+['RATE:CPS_eEM5']+['PS:NoBulkMCProd']), # ChainProp(name='HLT_g20_loose_noiso_L1EM15VH', groups=SupportLegGroup+SinglePhotonGroup+['RATE:CPS_EM15VH']), @@ -280,15 +277,15 @@ def getDevSignatures(): ChainProp(name='HLT_5j20_j20_pf_ftf_presel5c25XXc25b85_PhysicsTLA_L14jJ40', l1SeedThresholds=['FSNOSEED']*2, stream=['TLA'], groups=MultiJetGroup+DevGroup), #TLA+PEB test for jets ATR-21596, matching "multijet+PFlow" TLA chain in physics menu for cross-check of event size - ChainProp(name='HLT_j20_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-J15s5pETA21', l1SeedThresholds=['FSNOSEED'], stream=['DarkJetPEBTLA'], groups=DevGroup+MultiJetGroup+LegacyTopoGroup), - ChainProp(name='HLT_j20_DarkJetPEBTLA_L1HT190-J15s5pETA21', l1SeedThresholds=['FSNOSEED'], stream=['DarkJetPEBTLA'], groups=DevGroup+MultiJetGroup+LegacyTopoGroup), + ChainProp(name='HLT_j20_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-jJ40s5pETA21', l1SeedThresholds=['FSNOSEED'], stream=['DarkJetPEBTLA'], groups=DevGroup+MultiJetGroup+Topo3Group), + ChainProp(name='HLT_j20_DarkJetPEBTLA_L1HT190-jJ40s5pETA21', l1SeedThresholds=['FSNOSEED'], stream=['DarkJetPEBTLA'], groups=DevGroup+MultiJetGroup+Topo3Group), # Multijet TLA support ChainProp(name='HLT_2j20_2j20_pf_ftf_presel2c20XX2c20b85_DarkJetPEBTLA_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*2, stream=['DarkJetPEBTLA'], groups=DevGroup+MultiJetGroup, monGroups=['tlaMon:shifter']), # PEB for HH4b ChainProp(name='HLT_2j20_2j20_pf_ftf_presel2c20XX2c20b85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*2, stream=['Main'], groups=MultiJetGroup+DevGroup, monGroups=['tlaMon:shifter']), ChainProp(name='HLT_2j20_2j20_pf_ftf_presel2c20XX2c20b85_FTagPEBTLA_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*2, stream=['FTagPEBTLA'], groups=MultiJetGroup+DevGroup, monGroups=['tlaMon:shifter']), # PEB For Dark Showers - ChainProp(name='HLT_j0_HT500XX0eta240_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-J15s5pETA21', l1SeedThresholds=['FSNOSEED'], stream=['DarkJetPEBTLA'],groups=DevGroup+MultiJetGroup+LegacyTopoGroup), + ChainProp(name='HLT_j0_HT500XX0eta240_pf_ftf_preselcHT450_DarkJetPEBTLA_L1HT190-jJ40s5pETA21', l1SeedThresholds=['FSNOSEED'], stream=['DarkJetPEBTLA'],groups=DevGroup+MultiJetGroup+Topo3Group), # ChainProp(name='HLT_4j20c_L14jJ40p0ETA25', l1SeedThresholds=['FSNOSEED'], groups=MultiJetGroup+DevGroup), #ATR-26012 @@ -445,6 +442,9 @@ def getDevSignatures(): ChainProp(name='HLT_j220_j150_3timeSig_L1jJ160', l1SeedThresholds=['FSNOSEED']*2, groups=MultiJetGroup+DevGroup), ChainProp(name='HLT_3j45_j45_2timing_L14jJ40', l1SeedThresholds=['FSNOSEED']*2, groups=MultiJetGroup+DevGroup), ChainProp(name='HLT_j220_j150_2timing_L1jJ160', l1SeedThresholds=['FSNOSEED']*2, groups=MultiJetGroup+DevGroup), + # ATR-28836 Copies of delayed jets chains withot timing hypo for reference + ChainProp(name='HLT_3j45_j45_L14jJ40', l1SeedThresholds=['FSNOSEED']*2, groups=MultiJetGroup+DevGroup), + ChainProp(name='HLT_j220_j150_L1jJ160', l1SeedThresholds=['FSNOSEED']*2, groups=MultiJetGroup+DevGroup), ### END PURE TEST CHAINS @@ -771,12 +771,10 @@ def getDevSignatures(): ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L12cTAU20M_4DR32-eTAU30eTAU20-jJ55" , l1SeedThresholds=['cTAU20M','cTAU20M'], groups=MultiTauGroup+DevGroup), ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L12cTAU20M_10DR32-eTAU30eTAU20-jJ55", l1SeedThresholds=['cTAU20M','cTAU20M'], groups=MultiTauGroup+DevGroup), - ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L14jJ30p0ETA24_0DETA24-eTAU30eTAU12" , l1SeedThresholds=['eTAU20','eTAU12'], groups=MultiTauGroup+DevGroup), ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L14jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU20" , l1SeedThresholds=['eTAU20','eTAU12'], groups=MultiTauGroup+DevGroup), ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L14jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU12" , l1SeedThresholds=['eTAU20','eTAU12'], groups=MultiTauGroup+DevGroup), ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L14jJ30p0ETA24_0DETA24_10DPHI99-eTAU30eTAU12", l1SeedThresholds=['eTAU20','eTAU12'], groups=MultiTauGroup+DevGroup), #ATR-27132 - ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L1cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24-eTAU30eTAU12", l1SeedThresholds=['cTAU20M','cTAU12M'], groups=MultiTauGroup+DevGroup), ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L1cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU20" , l1SeedThresholds=['cTAU20M','cTAU12M'], groups=MultiTauGroup+DevGroup), ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L1cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU12" , l1SeedThresholds=['cTAU20M','cTAU12M'], groups=MultiTauGroup+DevGroup), ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L1cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24_10DPHI99-eTAU30eTAU12", l1SeedThresholds=['cTAU20M','cTAU12M'], groups=MultiTauGroup+DevGroup), @@ -974,8 +972,8 @@ def getDevSignatures(): ChainProp(name='HLT_2j20_mb_afprec_afpdijet_L1RD0_FILLED', l1SeedThresholds=['FSNOSEED']*2, stream=[PhysicsStream],groups=MinBiasGroup+SupportLegGroup), # AFP ToF Vertex Delta Z: ATR-15719 - ChainProp(name='HLT_2j20_ftf_mb_afprec_afpdz5_L1RD0_FILLED', l1SeedThresholds=['FSNOSEED']*2, stream=[PhysicsStream], groups=MinBiasGroup), - ChainProp(name='HLT_2j20_ftf_mb_afprec_afpdz10_L1RD0_FILLED', l1SeedThresholds=['FSNOSEED']*2, stream=[PhysicsStream], groups=MinBiasGroup), + ChainProp(name='HLT_2j20_ftf_mb_afprec_afpdz5_L1RD0_FILLED', l1SeedThresholds=['FSNOSEED']*2, stream=[PhysicsStream], groups=MinBiasGroup+SupportGroup), + ChainProp(name='HLT_2j20_ftf_mb_afprec_afpdz10_L1RD0_FILLED', l1SeedThresholds=['FSNOSEED']*2, stream=[PhysicsStream], groups=MinBiasGroup+SupportGroup), # Test PEB chains for AFP (single/di-lepton-seeded, can be prescaled) # ATR-23946 @@ -1055,11 +1053,9 @@ def getDevSignatures(): # b+tau with phase-1 L1 and various preselections - ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel4c20_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), - ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), - ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), - ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau90_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), - ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel4c20_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), # additional tests : ATR-28198 diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/MC_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/MC_pp_run3_v1.py index b2ab41a3e98c7b425bd71b934fbfc7d584359ca9..813bd0824042e20af4f60ce9e5ef125f626d9d20 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/MC_pp_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/MC_pp_run3_v1.py @@ -581,9 +581,6 @@ def getMCSignatures(): ChainProp(name='HLT_g25_tight_icaloloose_L1eEM26M', groups=SinglePhotonGroup, monGroups=['egammaMon:shifter']), ChainProp(name='HLT_g25_tight_icalotight_L1eEM26M', groups=SinglePhotonGroup, monGroups=['egammaMon:shifter']), - #------------ nopid trigger and etcut from ATR-26311 - # ATR-23723 - ChainProp(name='HLT_e5_nopid_L1eEM5', groups=SingleElectronGroup+['PS:NoBulkMCProd']), #ATR-27264 # ATR-26311 # Validating/checking eFEX and primary electron trigger diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/P1_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/P1_run3_v1.py index ef8f683ec4d352f805746867fb45c185cfe6b660..b4801c72becfba91db559e9bb5bc64fa131dff9b 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/P1_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/P1_run3_v1.py @@ -35,6 +35,44 @@ def addCommonP1Signatures(chains): chainsP1 = ChainStore() + # Intentionally commented -- may be used specifically for low-mu MBTS validation + # Probably only relevant in lowMu + chainsP1['Streaming'] = [ + ChainProp(name='HLT_noalg_L1MBTSA0', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA1', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA2', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA3', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA4', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA5', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA6', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA7', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA8', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA9', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA10', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA11', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA12', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA13', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA14', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSA15', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + + ChainProp(name='HLT_noalg_L1MBTSC0', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC1', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC2', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC3', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC4', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC5', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC6', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC7', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC8', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC9', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC10', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC11', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC12', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC13', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC14', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ChainProp(name='HLT_noalg_L1MBTSC15', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 + ] + chainsP1['Muon'] = [ # ATR-20650 ChainProp(name='HLT_mu0_muoncalib_L1MU3V_EMPTY', stream=['Muon_Calibration'], groups=['RATE:Muon_Calibration','BW:Muon']), @@ -235,7 +273,7 @@ def addCommonP1Signatures(chains): ChainProp(name='HLT_noalg_LArPEBNoise_L1jJ30_EMPTY', l1SeedThresholds=['jJ30'], stream=['LArCellsEmpty'],groups=['RATE:Calibration','BW:Detector']+SupportPhIGroup), ChainProp(name='HLT_noalg_LArPEBNoise_L1eTAU12_EMPTY', l1SeedThresholds=['eTAU12'], stream=['LArCellsEmpty'],groups=['RATE:Calibration','BW:Detector']+SupportPhIGroup), - ChainProp(name='HLT_noalg_LArPEBNoise_L1jJ60p30ETA49_EMPTY', l1SeedThresholds=['J30p31ETA49'], stream=['LArCellsEmpty'],groups=['RATE:Calibration','BW:Detector']+SupportPhIGroup), + ChainProp(name='HLT_noalg_LArPEBNoise_L1jJ60p30ETA49_EMPTY', l1SeedThresholds=['jJ60p30ETA49'], stream=['LArCellsEmpty'],groups=['RATE:Calibration','BW:Detector']+SupportPhIGroup), # ChainProp(name='HLT_noalg_LArPEBNoise_L1jJ30_FIRSTEMPTY', l1SeedThresholds=['jJ30'], stream=['LArCellsEmpty'],groups=['RATE:Calibration','BW:Detector']+SupportPhIGroup), ChainProp(name='HLT_noalg_LArPEBNoise_L1jJ60_FIRSTEMPTY', l1SeedThresholds=['jJ60'], stream=['LArCellsEmpty'],groups=['RATE:Calibration','BW:Detector']+SupportPhIGroup), @@ -454,44 +492,6 @@ def addLowMuP1Signatures(chains): ] - # Intentionally commented -- may be used specifically for low-mu MBTS validation - # Probably only relevant in lowMu - # chainsP1['Streaming'] = [ - # ChainProp(name='HLT_noalg_L1MBTSA0', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA1', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA2', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA3', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA4', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA5', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA6', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA7', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA8', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA9', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA10', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA11', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA12', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA13', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA14', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSA15', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - - # ChainProp(name='HLT_noalg_L1MBTSC0', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC1', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC2', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC3', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC4', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC5', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC6', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC7', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC8', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC9', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC10', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC11', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC12', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC13', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC14', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ChainProp(name='HLT_noalg_L1MBTSC15', l1SeedThresholds=['FSNOSEED'], stream=['MinBias'], groups=MinBiasGroup), #ATR-23216 - # ] - chainsP1['Beamspot'] = [ # Beamspot chains using FS tracking -- no PEB, fill BeamSpot histograms then reject all events ChainProp(name='HLT_j0_pf_ftf_preselj20_beamspotVtx_L1J15' , l1SeedThresholds=['FSNOSEED'], stream=['DISCARD'], groups=['RATE:DISCARD', 'BW:DISCARD', 'RATE:CPS_J15']+SupportLegGroup), diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Physics_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Physics_pp_run3_v1.py index 374f48ce942b452aca402fab8f7abba61118df5d..2dc777e4bf0c241815919cecbf2f8b1f872afd86 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Physics_pp_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Physics_pp_run3_v1.py @@ -485,8 +485,11 @@ def setupMenu(menu_name): ChainProp(name='HLT_e100_etcut_L1eEM28M', groups=SingleElectronGroup+SupportPhIGroup+['RATE:CPS_eEM28M']), #ATR-27251, Phase-I - #ChainProp(name='HLT_e5_etcut_L1eEM5', groups=SingleElectronGroup+SupportPhIGroup+['RATE:CPS_eEM5']+['PS:NoBulkMCProd']), - + ChainProp(name='HLT_e5_etcut_L1eEM5', groups=SingleElectronGroup+SupportPhIGroup+['RATE:CPS_eEM5']+['PS:NoBulkMCProd']), + #------------ nopid trigger and etcut from ATR-26311 + # ATR-23723 + ChainProp(name='HLT_e5_nopid_L1eEM5', groups=SingleElectronGroup+SupportPhIGroup+['RATE:CPS_eEM5']+['PS:NoBulkMCProd']), #ATR-27264 + #------------ support background studies ChainProp(name='HLT_e10_lhvloose_L1eEM9', groups=SupportPhIGroup+SingleElectronGroup+['RATE:CPS_eEM9']), @@ -739,9 +742,9 @@ def setupMenu(menu_name): # ATR-24268, ATR-19501, ATR-28162 # B->K*ee chains - ChainProp(name='HLT_e5_lhvloose_bBeeM6000_L1BKeePrimary', l1SeedThresholds=['eEM5'], stream=['BphysDelayed','express'], groups=SupportPhIGroup+BphysElectronGroup+['RATE:CPS_BKeePrimary'], monGroups=['bphysMon:online','bphysMon:shifter']), - ChainProp(name='HLT_2e5_lhvloose_bBeeM6000_L1BKeePrimary', l1SeedThresholds=['eEM5'], stream=['BphysDelayed','express'], groups=SupportPhIGroup+BphysElectronGroup+['RATE:CPS_BKeePrimary'], monGroups=['bphysMon:online','bphysMon:shifter']), - ChainProp(name='HLT_e5_lhvloose_e3_lhvloose_bBeeM6000_L1BKeePrimary', l1SeedThresholds=['eEM5','eEM5'], stream=['BphysDelayed'], groups=SupportPhIGroup+BphysElectronGroup+['RATE:CPS_BKeePrimary'], monGroups=['bphysMon:online','bphysMon:shifter']), + ChainProp(name='HLT_e5_lhvloose_bBeeM6000_L1BKeePrimary', l1SeedThresholds=['eEM5'], stream=['BphysDelayed','express'], groups=SupportPhIGroup+BphysElectronGroup, monGroups=['bphysMon:online','bphysMon:shifter']), + ChainProp(name='HLT_2e5_lhvloose_bBeeM6000_L1BKeePrimary', l1SeedThresholds=['eEM5'], stream=['BphysDelayed','express'], groups=SupportPhIGroup+BphysElectronGroup, monGroups=['bphysMon:online','bphysMon:shifter']), + ChainProp(name='HLT_e5_lhvloose_e3_lhvloose_bBeeM6000_L1BKeePrimary', l1SeedThresholds=['eEM5','eEM5'], stream=['BphysDelayed'], groups=SupportPhIGroup+BphysElectronGroup, monGroups=['bphysMon:online','bphysMon:shifter']), ChainProp(name='HLT_e5_lhvloose_bBeeM6000_L1BKeePrescaled', l1SeedThresholds=['eEM5'], stream=['BphysDelayed'], groups=EOFBeePhIGroup+BphysElectronGroup), ChainProp(name='HLT_2e5_lhvloose_bBeeM6000_L1BKeePrescaled', l1SeedThresholds=['eEM5'], stream=['BphysDelayed'], groups=EOFBeePhIGroup+BphysElectronGroup), ChainProp(name='HLT_e5_lhvloose_e3_lhvloose_bBeeM6000_L1BKeePrescaled', l1SeedThresholds=['eEM5','eEM5'], stream=['BphysDelayed'], groups=EOFBeePhIGroup+BphysElectronGroup), @@ -1028,7 +1031,7 @@ def setupMenu(menu_name): ChainProp(name='HLT_j360_L1J100', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+SupportLegGroup+['RATE:CPS_J100']), #ATR-27257, Phase-I ChainProp(name='HLT_j60_L1jJ50', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ50']), - ChainProp(name='HLT_j85_L1jJ50', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ50']), + ChainProp(name='HLT_j85_L1jJ50', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream,'express'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ50'], monGroups=['jetMon:t0']), ## Phase-I EMTopo calibration/monitoring triggers, same threshold as PF for rate evaluation ChainProp(name='HLT_j45_L1jJ40', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream,'express'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ40'], monGroups=['jetMon:t0','jetMon:online','caloMon:t0']), @@ -1255,7 +1258,7 @@ def setupMenu(menu_name): # Single jet support ChainProp(name='HLT_j45_pf_ftf_preselj20_L1jJ40', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream,'express'], groups=SingleJetGroup+SupportPhIGroup, monGroups=['idMon:shifter','jetMon:t0','jetMon:online']), ChainProp(name='HLT_j60_pf_ftf_preselj50_L1jJ50', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ50'], monGroups=['jetMon:shifter', 'jetMon:online']), - ChainProp(name='HLT_j85_pf_ftf_preselj50_L1jJ50', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ50']), + ChainProp(name='HLT_j85_pf_ftf_preselj50_L1jJ50', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream,'express'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ50'], monGroups=['jetMon:t0']), ChainProp(name='HLT_j110_pf_ftf_preselj80_L1jJ60', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ60']), ChainProp(name='HLT_j175_pf_ftf_preselj140_L1jJ90', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ90']), ChainProp(name='HLT_j260_pf_ftf_preselj200_L1jJ125', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jJ125']), @@ -1345,7 +1348,7 @@ def setupMenu(menu_name): ChainProp(name='HLT_5j70c_pf_ftf_presel5j55_L14jJ40', l1SeedThresholds=['FSNOSEED'], groups=MultiJetGroup + PrimaryPhIGroup), ChainProp(name='HLT_5j80_pf_ftf_presel5j50_L14jJ40', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream,'express'], groups=MultiJetGroup + PrimaryPhIGroup, monGroups=['jetMon:t0']), # ATR-25512 - ChainProp(name='HLT_5j80_pf_ftf_presel5j55_L14jJ40', l1SeedThresholds=['FSNOSEED'], groups=MultiJetGroup + PrimaryPhIGroup, monGroups=['jetMon:t0']), + ChainProp(name='HLT_5j80_pf_ftf_presel5j55_L14jJ40', l1SeedThresholds=['FSNOSEED'], groups=MultiJetGroup + PrimaryPhIGroup), ChainProp(name='HLT_6j55c_pf_ftf_presel6j40_L14jJ40', l1SeedThresholds=['FSNOSEED'], groups=MultiJetGroup + PrimaryPhIGroup), # ATR-25512 ChainProp(name='HLT_6j55c_pf_ftf_presel6c45_L14jJ40', l1SeedThresholds=['FSNOSEED'], groups=MultiJetGroup + PrimaryPhIGroup), @@ -1374,8 +1377,8 @@ def setupMenu(menu_name): ChainProp(name='HLT_j0_HT940_pf_ftf_preselj190_L1jJ160', l1SeedThresholds=['FSNOSEED'], groups=PrimaryPhIGroup+SingleJetGroup), ChainProp(name='HLT_j0_HT940_pf_ftf_preselj200_L1jJ160', l1SeedThresholds=['FSNOSEED'], groups=PrimaryPhIGroup+SingleJetGroup), - ChainProp(name='HLT_j0_HT940_pf_ftf_preselj180_L1HT190-jJ40s5pETA21', l1SeedThresholds=['FSNOSEED'], groups=PrimaryPhIGroup+SingleJetGroup+Topo3Group), - ChainProp(name='HLT_j0_HT940_pf_ftf_preselcHT450_L1HT190-jJ40s5pETA21', l1SeedThresholds=['FSNOSEED'], groups=PrimaryPhIGroup+SingleJetGroup+Topo3Group, monGroups=['jetMon:online', 'jetMon:shifter']), + ChainProp(name='HLT_j0_HT940_pf_ftf_preselj180_L1HT190-jJ40s5pETA21', l1SeedThresholds=['FSNOSEED'], groups=PrimaryPhIGroup+SingleJetGroup+Topo3Group, monGroups=['jetMon:online', 'jetMon:shifter']), + ChainProp(name='HLT_j0_HT940_pf_ftf_preselcHT450_L1HT190-jJ40s5pETA21', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream,'express'], groups=PrimaryPhIGroup+SingleJetGroup+Topo3Group, monGroups=['jetMon:online', 'jetMon:shifter']), # Multijet delayed stream ChainProp(name='HLT_6j35c_020jvt_pf_ftf_presel6c25_L14jJ40', l1SeedThresholds=['FSNOSEED'], stream=['VBFDelayed', 'express'], groups=PrimaryPhIGroup+MultiJetGroup, monGroups=['jetMon:t0']), @@ -1395,7 +1398,7 @@ def setupMenu(menu_name): ChainProp(name='HLT_j260_a10t_lcw_jes_L1jLJ120', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+SupportPhIGroup+['RATE:CPS_jLJ120']), # ATR-24838 Large R L1J100 jet chains with jLJ L1 items (L1J100->L1jLJ140) - ChainProp(name='HLT_j460_a10sd_cssk_pf_jes_ftf_preselj225_L1jLJ140', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream,'express'], groups=SingleJetGroup+PrimaryPhIGroup, monGroups=['jetMon:shifter', 'jetMon:online']), + ChainProp(name='HLT_j460_a10sd_cssk_pf_jes_ftf_preselj225_L1jLJ140', l1SeedThresholds=['FSNOSEED'], stream=[PhysicsStream,'express'], groups=SingleJetGroup+PrimaryPhIGroup), ChainProp(name='HLT_j460_a10t_lcw_jes_L1jLJ140', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+PrimaryPhIGroup), ChainProp(name='HLT_j480_a10sd_cssk_pf_jes_ftf_preselj225_L1jLJ140', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+PrimaryPhIGroup), ChainProp(name='HLT_j480_a10t_lcw_jes_L1jLJ140', l1SeedThresholds=['FSNOSEED'], groups=SingleJetGroup+PrimaryPhIGroup), @@ -1668,6 +1671,10 @@ def setupMenu(menu_name): ChainProp(name='HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB30_L1cTAU30M_2cTAU20M_DR-eTAU30eTAU20-jJ55', l1SeedThresholds=['cTAU30M','cTAU20M'], stream=['VBFDelayed'], groups=PrimaryPhIGroup+MultiTauGroup+Topo2Group), ChainProp(name='HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB30_L1cTAU30M_2cTAU20M_DR-eTAU30eTAU20', l1SeedThresholds=['cTAU30M','cTAU20M'], stream=['VBFDelayed'], groups=SupportPhIGroup+MultiTauGroup+Topo2Group), + # ATR-28890 new topo based HDBS chains - support and main for commissioning - needs to be re-evaluated + ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L14jJ30p0ETA24_0DETA24-eTAU30eTAU12", l1SeedThresholds=['eTAU20','eTAU12'], groups=SupportPhIGroup+MultiTauGroup+Topo3Group), + ChainProp(name="HLT_tau30_mediumRNN_tracktwoMVA_tau20_mediumRNN_tracktwoMVA_03dRAB_L1cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24-eTAU30eTAU12", l1SeedThresholds=['cTAU20M','cTAU12M'], groups=SupportPhIGroup+MultiTauGroup+Topo3Group), + # ATR-20450 ChainProp(name='HLT_tau35_mediumRNN_tracktwoMVA_tau25_mediumRNN_tracktwoMVA_03dRAB_L1cTAU30M_2cTAU20M_4jJ30p0ETA25', l1SeedThresholds=['cTAU30M','cTAU20M'], groups=PrimaryPhIGroup+MultiTauGroup, monGroups=['tauMon:t0']), @@ -2074,7 +2081,7 @@ def setupMenu(menu_name): ChainProp(name='HLT_2j120_mb_afprec_afpdijet_L1AFP_A_AND_C_TOF_jJ90', l1SeedThresholds=['FSNOSEED']*2, stream=[PhysicsStream],groups=MinBiasGroup+SupportPhIGroup, monGroups=['mbMon:shifter']), ChainProp(name='HLT_2j175_mb_afprec_afpdijet_L1AFP_A_AND_C_TOF_jJ125', l1SeedThresholds=['FSNOSEED']*2, stream=[PhysicsStream],groups=MinBiasGroup+SupportPhIGroup, monGroups=['mbMon:t0']), - + # Primary e-mu chains ChainProp(name='HLT_e17_lhloose_mu14_L1eEM18L_MU8F', l1SeedThresholds=['eEM18L','MU8F'], stream=[PhysicsStream], groups=PrimaryPhIGroup+EgammaMuonGroup), ChainProp(name='HLT_e7_lhmedium_mu24_L1MU14FCH',l1SeedThresholds=['EM3','MU14FCH'], stream=[PhysicsStream], groups=PrimaryLegGroup+EgammaMuonGroup), @@ -2122,10 +2129,10 @@ def setupMenu(menu_name): ChainProp(name='HLT_j180_2dispjet50_3d2p_L1J100', groups=SingleJetGroup+UnconvTrkGroup+PrimaryLegGroup, l1SeedThresholds=['FSNOSEED']*2), ChainProp(name='HLT_j180_dispjet50_3d2p_dispjet50_1p_L1J100', groups=SingleJetGroup+UnconvTrkGroup+PrimaryLegGroup, l1SeedThresholds=['FSNOSEED']*3), #ATR-27257, Phase-I - ChainProp(name='HLT_j180_2dispjet50_3d2p_L1jJ160', groups=SingleJetGroup+UnconvTrkGroup+PrimaryPhIGroup, l1SeedThresholds=['FSNOSEED']*2), + ChainProp(name='HLT_j180_2dispjet50_3d2p_L1jJ160', groups=SingleJetGroup+UnconvTrkGroup+PrimaryPhIGroup, l1SeedThresholds=['FSNOSEED']*2, monGroups=['idMon:online']), ChainProp(name='HLT_j180_dispjet50_3d2p_dispjet50_1p_L1jJ160', groups=SingleJetGroup+UnconvTrkGroup+PrimaryPhIGroup, l1SeedThresholds=['FSNOSEED']*3), ChainProp(name='HLT_j180_dispjet90_x3d1p_L1jJ160', groups=SingleJetGroup+UnconvTrkGroup+PrimaryPhIGroup, l1SeedThresholds=['FSNOSEED']*2), - ChainProp(name='HLT_j180_dispjet100_x3d1p_L1jJ160', groups=SingleJetGroup+UnconvTrkGroup+PrimaryPhIGroup, l1SeedThresholds=['FSNOSEED']*2), + ChainProp(name='HLT_j180_dispjet100_x3d1p_L1jJ160', groups=SingleJetGroup+UnconvTrkGroup+PrimaryPhIGroup, l1SeedThresholds=['FSNOSEED']*2, monGroups=['idMon:online']), #ATR-25456 # Combined slice - Primary @@ -2387,8 +2394,18 @@ def setupMenu(menu_name): ChainProp(name='HLT_tau80_mediumRNN_tracktwoLLP_probe_xe75_cell_xe100_pfopufit_L1jXE110', l1SeedThresholds=['PROBEeTAU80','FSNOSEED','FSNOSEED'], groups=TagAndProbePhIGroup+TauMETGroup), ChainProp(name='HLT_tau180_mediumRNN_tracktwoLLP_probe_xe75_cell_xe100_pfopufit_L1jXE110', l1SeedThresholds=['PROBEeTAU140','FSNOSEED','FSNOSEED'], groups=TagAndProbePhIGroup+TauMETGroup), + # b+tau chains for HH->bbtautau + # including backups for additional CPU savings # ATR-28198 - ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bg85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau90_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo85XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo82XX1c20gntau85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo82XX1c20gntau80_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo80XX1c20gntau80_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + # one remaining bgn1 chain for posterity + ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn185_pf_ftf_presel3c20XX1c20bgtwo85_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=['VBFDelayed'], groups=TagAndProbePhIGroup+TauBJetGroup), + #ATR-28679 -jXE ChainProp(name='HLT_tau20_mediumRNN_tracktwoMVA_probe_xe65_cell_xe90_pfopufit_L1jXE110', l1SeedThresholds=['PROBEeTAU12','FSNOSEED','FSNOSEED'], groups=TagAndProbePhIGroup+TauMETGroup), ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_xe65_cell_xe90_pfopufit_L1jXE110', l1SeedThresholds=['PROBEcTAU20M','FSNOSEED','FSNOSEED'], groups=TagAndProbePhIGroup+TauMETGroup), @@ -3095,12 +3112,12 @@ def setupMenu(menu_name): ChainProp(name='HLT_noalg_L1XE55', l1SeedThresholds=['FSNOSEED'], stream=['Main', 'express'], groups=['PS:NoBulkMCProd']+METStreamersGroup+SupportLegGroup+['RATE:CPS_XE55'], monGroups=['metMon:t0']), # Phase I jet inputs ATR-24411 - ChainProp(name='HLT_noalg_L1jJ500', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+PrimaryPhIGroup+JetStreamersGroup+['BW:Other']), # catch all high-Et + ChainProp(name='HLT_noalg_L1jJ500', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+PrimaryPhIGroup+JetStreamersGroup+['BW:Other'], monGroups=['jetMon:t0']), # catch all high-Et # Phase I primary candidates ChainProp(name='HLT_noalg_L1jJ160', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup, monGroups=['jetMon:t0']), - ChainProp(name='HLT_noalg_L1jLJ140', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup, monGroups=['jetMon:t0']), - ChainProp(name='HLT_noalg_L1gJ400p0ETA25', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup), + ChainProp(name='HLT_noalg_L1jLJ140', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup), + ChainProp(name='HLT_noalg_L1gJ400p0ETA25', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup, monGroups=['jetMon:t0']), ChainProp(name='HLT_noalg_L1gLJ160p0ETA25', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup, monGroups=['jetMon:t0']), ChainProp(name='HLT_noalg_L1jXE100', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+METPhaseIStreamersGroup, monGroups=['metMon:t0']), ChainProp(name='HLT_noalg_L1gXEJWOJ100', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+METPhaseIStreamersGroup, monGroups=['metMon:t0']), @@ -3183,7 +3200,7 @@ def setupMenu(menu_name): ChainProp(name='HLT_noalg_L1gJ20p25ETA49', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup), ChainProp(name='HLT_noalg_L1gJ20p0ETA25_EMPTY', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup), ChainProp(name='HLT_noalg_L1gJ50p0ETA25', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup), - ChainProp(name='HLT_noalg_L1gJ100p0ETA25', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup, monGroups=['jetMon:online']), + ChainProp(name='HLT_noalg_L1gJ100p0ETA25', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup, monGroups=['jetMon:t0', 'jetMon:online']), ChainProp(name='HLT_noalg_L1gLJ80p0ETA25', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup), ChainProp(name='HLT_noalg_L1gLJ100p0ETA25', l1SeedThresholds=['FSNOSEED'], stream=['Main'], groups=['PS:NoBulkMCProd']+SupportPhIGroup+JetPhaseIStreamersGroup), diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py index 069b04ef009555916881827e31abf8ed34aee992..26c9e64c721a58b99162abc1593e6bf26b3554fc 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/SignatureDicts.py @@ -221,8 +221,11 @@ JetChainParts = { # (b+)tau preselections 'presel4c20', 'presel3c20XX1c20bgtwo85', - 'presel2c20XX1c20bgtwo85XX1c20gntau85', 'presel2c20XX1c20bgtwo85XX1c20gntau90', + 'presel2c20XX1c20bgtwo85XX1c20gntau85', + 'presel2c20XX1c20bgtwo82XX1c20gntau85', + 'presel2c20XX1c20bgtwo82XX1c20gntau80', + 'presel2c20XX1c20bgtwo80XX1c20gntau80', 'presel5c25XXc25bgtwo85', 'presel3j45bgtwo95', 'presel4j25bgtwo95', @@ -379,7 +382,7 @@ JetChainParts = { 'MAXMULT20c', 'MAXMULT6c',], 'bsel': ['95bdips','90bdips','85bdips','80bdips','77bdips','95bgnone','90bgnone','85bgnone','80bgnone','77bgnone', '60bgntwox', '70bgntwox', '80bgntwox', '90bgntwox','95bgntwo','90bgntwo','85bgntwo','80bgntwo','82bgntwo','77bgntwo','75bgntwo','60bgntwo'], - 'tausel': [ '85gntau' , '90gntau' ], + 'tausel': [ '75gntau' , '80gntau', '85gntau' , '90gntau' ], 'smc' : # "Single mass condition" -- rename? ['30smcINF', '35smcINF', '40smcINF', '50smcINF', '60smcINF', 'nosmc'], # Setup for alternative data stream readout diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/MinBias/MinBiasMenuSequences.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/MinBias/MinBiasMenuSequences.py index ce282707d463c0eb4c5c9e18c1bbe98ef912caf3..cb26b35204f9b379f8a88ade209f3e7c93f1deaa 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/MinBias/MinBiasMenuSequences.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/MinBias/MinBiasMenuSequences.py @@ -158,9 +158,9 @@ def MinBiasTrkSequenceCfg(flags): selAcc = SelectionCA("MBTrackCountSel") selAcc.mergeReco(recoAcc) from TrigMinBias.MinBiasCountersConfig import TrackCounterHypoAlgCfg - trackCountHypoAlgo = TrackCounterHypoAlgCfg(flags) + trackCountHypoAlgo = TrackCounterHypoAlgCfg(flagsWithTrk) selAcc.mergeHypo(trackCountHypoAlgo) - return MenuSequenceCA(flags, selAcc, HypoToolGen = TrackCountHypoToolGen) + return MenuSequenceCA(flagsWithTrk, selAcc, HypoToolGen = TrackCountHypoToolGen) def MinBiasMbtsSequenceCfg(flags): recoAcc = InEventRecoCA(name="Mbts") diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Muon/MuonMenuSequences.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Muon/MuonMenuSequences.py index ffabe5bc09b25217c56c5d090595bc44c8760803..71016a1cb7061feb1a5f1235df285647c2d4296e 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Muon/MuonMenuSequences.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Muon/MuonMenuSequences.py @@ -299,10 +299,12 @@ def muCombLRTAlgSequenceCfg(flags, is_probe_leg=False): viewName="l2muCombLRT" ViewCreatorCenteredOnIParticleTool=CompFactory.ViewCreatorCentredOnIParticleROITool - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - IDConfig = getInDetTrigConfig("muonLRT") - roiTool = ViewCreatorCenteredOnIParticleTool(RoisWriteHandleKey = recordable("HLT_Roi_L2SAMuon_LRT"), RoIZedWidth=IDConfig.zedHalfWidth, RoIEtaWidth=IDConfig.etaHalfWidth, RoIPhiWidth=IDConfig.phiHalfWidth, UseZedPosition=False) + roiTool = ViewCreatorCenteredOnIParticleTool(RoisWriteHandleKey = recordable("HLT_Roi_L2SAMuon_LRT"), + RoIZedWidth=flags.Trigger.InDetTracking.muonLRT.zedHalfWidth, + RoIEtaWidth=flags.Trigger.InDetTracking.muonLRT.etaHalfWidth, + RoIPhiWidth=flags.Trigger.InDetTracking.muonLRT.phiHalfWidth, + UseZedPosition=False) requireParentView = True recol2cb = InViewRecoCA(name=viewName, RoITool = roiTool, RequireParentView = requireParentView, isProbe=is_probe_leg) @@ -853,11 +855,10 @@ def muEFIsoAlgSequenceCfg(flags, doMSiso=False, is_probe_leg=False): else: roisWriteHandleKey = recordable("HLT_Roi_MuonIso") - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - IDConfig = getInDetTrigConfig("muonIso") - - roiTool = CompFactory.ViewCreatorCentredOnIParticleROITool(RoisWriteHandleKey = roisWriteHandleKey, RoIEtaWidth=IDConfig.etaHalfWidth, - RoIPhiWidth=IDConfig.phiHalfWidth,RoIZedWidth=IDConfig.zedHalfWidth) + roiTool = CompFactory.ViewCreatorCentredOnIParticleROITool(RoisWriteHandleKey = roisWriteHandleKey, + RoIEtaWidth=flags.Trigger.InDetTracking.muonIso.etaHalfWidth, + RoIPhiWidth=flags.Trigger.InDetTracking.muonIso.phiHalfWidth, + RoIZedWidth=flags.Trigger.InDetTracking.muonIso.zedHalfWidth) recoIso = InViewRecoCA(name=viewName, RoITool = roiTool, isProbe=is_probe_leg, mergeUsingFeature=True, PlaceMuonInView=True, InViewMuons = "IsoViewMuons"+name, InViewMuonCandidates = "IsoMuonCandidates"+name) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Muon/MuonRecoSequences.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Muon/MuonRecoSequences.py index 895a4b3b1e86bae7ca8c4a5c38affc2ef139944f..f6ede33e5f3b3389e76fb43ca2a1c01d98aa2e3e 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Muon/MuonRecoSequences.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Muon/MuonRecoSequences.py @@ -69,14 +69,12 @@ def isLRT(name): #Returns relevant track collection name def getIDTracks(flags, name=''): - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - if isLRT(name): - return getInDetTrigConfig("muonLRT").tracks_FTF() + return flags.Trigger.InDetTracking.muonLRT.tracks_FTF elif isCosmic(flags): - return getInDetTrigConfig("cosmics" ).tracks_IDTrig() + return flags.Trigger.InDetTracking.cosmics.tracks_IDTrig else: - return getInDetTrigConfig("muon").tracks_FTF() + return flags.Trigger.InDetTracking.muon.tracks_FTF def MuDataPrepViewDataVerifierCfg(flags): diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/DJTriggerConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/DJTriggerConfiguration.py index b009d9dbde3d4c56b49c2bc66dfe335458dfe536..a454a30673c4d2e5a70429d9753463dc5e462625 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/DJTriggerConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/DJTriggerConfiguration.py @@ -9,7 +9,6 @@ from AthenaCommon.Logging import logging from TrigEDMConfig.TriggerEDM import recordable from TrigInDetConfig.utils import getFlagsForActiveConfig -from TrigInDetConfig.ConfigSettings import getInDetTrigConfig from TrigInDetConfig.TrigInDetConfig import trigInDetLRTCfg logging.getLogger().info("Importing %s",__name__) @@ -19,16 +18,14 @@ def DJPromptStep(flags): from TrigLongLivedParticlesHypo.TrigDJHypoConfig import TrigDJHypoPromptToolFromDict - hypo_alg = CompFactory.DisplacedJetPromptHypoAlg("DJTrigPromptHypoAlg") - - #get the jet tracking config to get the track collection name - fscfg = getInDetTrigConfig("fullScan") - - hypo_alg.min_trk_pt = 1.0 - hypo_alg.stdTracksKey = fscfg.tracks_FTF() - hypo_alg.jetContainerKey = recordable("HLT_AntiKt4EMTopoJets_subjesIS") - hypo_alg.vtxKey = fscfg.vertex_jet - hypo_alg.countsKey = "DispJetTrigger_Counts" + hypo_alg = CompFactory.DisplacedJetPromptHypoAlg( + "DJTrigPromptHypoAlg", + min_trk_pt = 1.0, + stdTracksKey = flags.Tracking.ActiveConfig.tracks_FTF, #fullScan + vtxKey = flags.Tracking.ActiveConfig.vertex_jet, + jetContainerKey = recordable("HLT_AntiKt4EMTopoJets_subjesIS"), + countsKey = "DispJetTrigger_Counts", + ) #run at the event level im_alg = CompFactory.InputMakerForRoI( "IM_DJTRIG_Prompt" ) @@ -46,24 +43,27 @@ def DJPromptStep(flags): def DJDispFragment(flags): - lrtcfg = getInDetTrigConfig( 'DJetLRT' ) - roiTool = CompFactory.ViewCreatorCentredOnIParticleROITool('ViewCreatorDJRoI', RoisWriteHandleKey = recordable(lrtcfg.roi), RoIEtaWidth = lrtcfg.etaHalfWidth, RoIPhiWidth = lrtcfg.phiHalfWidth, RoIZedWidth=lrtcfg.zedHalfWidth, UseZedPosition=False) + roiTool = CompFactory.ViewCreatorCentredOnIParticleROITool( + 'ViewCreatorDJRoI', + RoisWriteHandleKey = recordable(flags.Trigger.InDetTracking.DJetLRT.roi), + RoIEtaWidth = flags.Trigger.InDetTracking.DJetLRT.etaHalfWidth, + RoIPhiWidth = flags.Trigger.InDetTracking.DJetLRT.phiHalfWidth, + RoIZedWidth = flags.Trigger.InDetTracking.DJetLRT.zedHalfWidth, + UseZedPosition = False) InViewRoIs = "InViewRoIs" reco = InViewRecoCA("IMDJRoIFTF", RoITool = roiTool, mergeUsingFeature = True, InViewRoIs = InViewRoIs, RequireParentView = False,ViewFallThrough = True) - fscfg = getInDetTrigConfig("fullScan") - acc = ComponentAccumulator() reco_seq = parOR('UncTrkrecoSeqDJTrigDispRecoSeq') acc.addSequence(reco_seq) - flagsWithTrk = getFlagsForActiveConfig(flags, lrtcfg.name, log) + flagsWithTrk = getFlagsForActiveConfig(flags, flags.Trigger.InDetTracking.DJetLRT.name, log) lrt_algs = trigInDetLRTCfg(flagsWithTrk, - fscfg.trkTracks_FTF(), + flags.Tracking.ActiveConfig.trkTracks_FTF, InViewRoIs, in_view=True, ) @@ -82,13 +82,9 @@ def DJDispFragment(flags): def DJDispStep(flags): from TrigLongLivedParticlesHypo.TrigDJHypoConfig import TrigDJHypoDispToolFromDict - hypo_alg = CompFactory.DisplacedJetDispHypoAlg("DJTrigDispHypoAlg") - - lrtcfg = getInDetTrigConfig( 'DJetLRT' ) - fscfg = getInDetTrigConfig("fullScan") - - hypo_alg.lrtTracksKey = lrtcfg.tracks_FTF() - hypo_alg.vtxKey = fscfg.vertex_jet + hypo_alg = CompFactory.DisplacedJetDispHypoAlg("DJTrigDispHypoAlg", + lrtTracksKey = flags.Trigger.InDetTracking.DJetLRT.tracks_FTF, + vtxKey = flags.Tracking.ActiveConfig.vertex_jet) selAcc = DJDispFragment(flags) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/DVTriggerConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/DVTriggerConfiguration.py index d0d5e6e16e7ef347e9d695eab4325436fc07c86a..29d1f2cee2ecf4ba907e9b92f68fa08678a85733 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/DVTriggerConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/DVTriggerConfiguration.py @@ -20,11 +20,6 @@ vtxCountName = "HLT_TrigDV_VtxCount" def DVRecoFragment(flags): - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - fscfg = getInDetTrigConfig("fullScan") - lrtcfg = getInDetTrigConfig( 'DVtxLRT' ) - - selAcc = SelectionCA("DVRecoSequence1") inputMakerAlg = CompFactory.EventViewCreatorAlgorithm( @@ -32,9 +27,9 @@ def DVRecoFragment(flags): mergeUsingFeature = False, RoITool = CompFactory.ViewCreatorDVROITool( 'ViewCreatorDVRoI', - RoisWriteHandleKey = recordable( lrtcfg.roi ), - RoIEtaWidth = lrtcfg.etaHalfWidth, - RoIPhiWidth = lrtcfg.phiHalfWidth, + RoisWriteHandleKey = recordable( flags.Trigger.InDetTracking.DVtxLRT.roi ), + RoIEtaWidth = flags.Trigger.InDetTracking.DVtxLRT.etaHalfWidth, + RoIPhiWidth = flags.Trigger.InDetTracking.DVtxLRT.phiHalfWidth, ), Views = "DVRoIViews", InViewRoIs = "InViewRoIs", @@ -45,24 +40,24 @@ def DVRecoFragment(flags): reco = InViewRecoCA('DVRecoStep',viewMaker=inputMakerAlg) - flagsWithTrk = getFlagsForActiveConfig(flags, lrtcfg.name, log) + flagsWithTrk = getFlagsForActiveConfig(flags, flags.Trigger.InDetTracking.DVtxLRT.name, log) lrt_algs = trigInDetLRTCfg( flagsWithTrk, - fscfg.trkTracks_FTF(), + flags.Tracking.ActiveConfig.trkTracks_FTF, inputMakerAlg.InViewRoIs, in_view=True, extra_view_inputs=( - ( 'xAOD::TrackParticleContainer' , fscfg.tracks_FTF() ), - ( 'xAOD::VertexContainer' , fscfg.vertex ), + ( 'xAOD::TrackParticleContainer' , flags.Tracking.ActiveConfig.tracks_FTF ), + ( 'xAOD::VertexContainer' , flags.Tracking.ActiveConfig.vertex ), ) ) from TrigVrtSecInclusive.TrigVrtSecInclusiveConfig import TrigVrtSecInclusiveCfg vertexingAlgs = TrigVrtSecInclusiveCfg( flags, "TrigVrtSecInclusive_TrigDV", - FirstPassTracksName = fscfg.tracks_FTF(), - SecondPassTracksName = lrtcfg.tracks_FTF(), - PrimaryVertexInputName = fscfg.vertex, + FirstPassTracksName = flags.Tracking.ActiveConfig.tracks_FTF, + SecondPassTracksName = flags.Trigger.InDetTracking.DVtxLRT.tracks_FTF, + PrimaryVertexInputName = flags.Tracking.ActiveConfig.vertex, VxCandidatesOutputName = recordable(vtxOutName), TrkPairOutputName = recordable(trkPairOutName) ) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/FullScanLRTTrackingConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/FullScanLRTTrackingConfiguration.py index 912468e668c4ba04240a7b6e49b95c31a398bf31..4174f10963d30c657bd70d8e4dd0fdc4d9fa78d4 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/FullScanLRTTrackingConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/FullScanLRTTrackingConfiguration.py @@ -9,8 +9,6 @@ log = logging.getLogger(__name__) def FullScanLRTMenuSequence(flags): - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - lrtcfg = getInDetTrigConfig("fullScanLRT") # Construct the full reco sequence from TriggerMenuMT.HLT.UnconventionalTracking.CommonConfiguration import getCommonInDetFullScanLRTCfg @@ -20,7 +18,10 @@ def FullScanLRTMenuSequence(flags): from ..CommonSequences.FullScanDefs import trkFSRoI from TrigInDetConfig.TrigInDetConfig import trigInDetPrecisionTrackingCfg - reco.mergeReco(trigInDetPrecisionTrackingCfg(flags, trkFSRoI, lrtcfg.input_name,in_view=False)) + reco.mergeReco(trigInDetPrecisionTrackingCfg(flags, + trkFSRoI, + flags.Trigger.InDetTracking.fullScanLRT.input_name, + in_view=False)) # Construct the SelectionCA to hold reco + hypo selAcc = SelectionCA("UncFSLRTSeq") @@ -29,10 +30,12 @@ def FullScanLRTMenuSequence(flags): from TrigLongLivedParticlesHypo.TrigFullScanLRTHypoTool import TrigLRTHypoToolFromDict from TrigEDMConfig.TriggerEDM import recordable - theHypoAlg = CompFactory.FastTrackFinderLRTHypoAlg("FullScanLRTHypoAlg", - trackCountKey = recordable("HLT_FSLRT_TrackCount"), - tracksKey = lrtcfg.tracks_IDTrig(), - ) + theHypoAlg = CompFactory.FastTrackFinderLRTHypoAlg( + "FullScanLRTHypoAlg", + trackCountKey = recordable("HLT_FSLRT_TrackCount"), + tracksKey = flags.Trigger.InDetTracking.fullScanLRT.tracks_IDTrig, + ) + selAcc.addHypoAlgo(theHypoAlg) log.info("Building the Step dictinary for FullScanLRT!") diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/IsoHighPtTrackTriggerConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/IsoHighPtTrackTriggerConfiguration.py index ac8f373b83a90e4439af6497ec8a3f95917fa108..e89a61cbc74bae18b86e11d7d333cfb2abf92c43 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/IsoHighPtTrackTriggerConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/IsoHighPtTrackTriggerConfiguration.py @@ -10,12 +10,11 @@ log = logging.getLogger(__name__) def IsoHPtTrackTriggerHypoSequence(flags): from TrigLongLivedParticlesHypo.TrigIsoHPtTrackTriggerHypoTool import TrigIsoHPtTrackTriggerHypoToolFromDict - # Get sequence name - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - # Setup the hypothesis algorithm - theIsoHPtTrackTriggerHypo = CompFactory.TrigIsoHPtTrackTriggerHypoAlg("L2IsoHPtTrack") - theIsoHPtTrackTriggerHypo.trackKey = getInDetTrigConfig('fullScan').tracks_FTF() + theIsoHPtTrackTriggerHypo = CompFactory.TrigIsoHPtTrackTriggerHypoAlg( + "L2IsoHPtTrack", + trackKey = flags.Tracking.ActiveConfig.tracks_FTF + ) selAcc = SelectionCA('UncTrkEmptySeq') diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/VrtSecInclusiveConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/VrtSecInclusiveConfiguration.py index 12b420cc583e51363f4c5d4967fe508ae878df4b..65424d4d7591950189145677f4dddb37dbfc3d0c 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/VrtSecInclusiveConfiguration.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/UnconventionalTracking/VrtSecInclusiveConfiguration.py @@ -7,9 +7,6 @@ log = logging.getLogger(__name__) def VrtSecInclusiveMenuSequence(flags): - from TrigInDetConfig.ConfigSettings import getInDetTrigConfig - fscfg = getInDetTrigConfig("fullScan") - lrtcfg = getInDetTrigConfig("fullScanLRT") vsivtxname = "HLT_TrigVSIVertex" # Construct the full reco sequence @@ -20,7 +17,13 @@ def VrtSecInclusiveMenuSequence(flags): reco.mergeReco( getCommonInDetFullScanLRTCfg(flags) ) from TrigVrtSecInclusive.TrigVrtSecInclusiveConfig import TrigVrtSecInclusiveCfg - theVSI = TrigVrtSecInclusiveCfg(flags, "TrigVrtSecInclusive", fscfg.tracks_FTF(), lrtcfg.tracks_FTF(), fscfg.vertex, vsivtxname, "HLT_TrigVSITrkPair",recordTrkPair=False) + theVSI = TrigVrtSecInclusiveCfg(flags, + "TrigVrtSecInclusive", + flags.Tracking.ActiveConfig.tracks_FTF, + flags.Trigger.InDetTracking.fullScanLRT.tracks_FTF, + flags.Tracking.ActiveConfig.vertex, + vsivtxname, + "HLT_TrigVSITrkPair",recordTrkPair=False) reco.mergeReco(theVSI) # Construct the SelectionCA to hold reco + hypo diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py index 0a6bdbfc3478a9b65bdb3690130ed70eeed11e04..1cd635c15f402c70b81f9fd8ed93deb0ec42fa4b 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py @@ -70,7 +70,6 @@ def defineMenu(): 'L1_4jJ30p0ETA24_0DETA24_10DPHI99-eTAU30eTAU12', 'L1_jJ85p0ETA21_3jJ40p0ETA25_cTAU20M_2cTAU12M', #ATR-27132 - 'L1_cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24-eTAU30eTAU12', 'L1_cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU20', 'L1_cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU12', 'L1_cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24_10DPHI99-eTAU30eTAU12', diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_HI_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_HI_run3_v1.py index c432debce9908e2ad08a61edbeaa5ae42b3e745a..2e1845088522f308527ef8a724b831ca4d469b08 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_HI_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_HI_run3_v1.py @@ -323,8 +323,8 @@ def defineMenu(): 'L1_MBTS_2_BGRP11', 'L1_MBTS_A', 'L1_MBTS_C', # extra MBTS - #'L1_MBTSA0', 'L1_MBTSA1', 'L1_MBTSA2', 'L1_MBTSA3', 'L1_MBTSA4', 'L1_MBTSA5', 'L1_MBTSA6', 'L1_MBTSA7', 'L1_MBTSA8', 'L1_MBTSA9', 'L1_MBTSA10', 'L1_MBTSA11', 'L1_MBTSA12', 'L1_MBTSA13', 'L1_MBTSA14', 'L1_MBTSA15', - #'L1_MBTSC0', 'L1_MBTSC1', 'L1_MBTSC2', 'L1_MBTSC3', 'L1_MBTSC4', 'L1_MBTSC5', 'L1_MBTSC6', 'L1_MBTSC7', 'L1_MBTSC8', 'L1_MBTSC9', 'L1_MBTSC10', 'L1_MBTSC11', 'L1_MBTSC12', 'L1_MBTSC13', 'L1_MBTSC14', 'L1_MBTSC15', + 'L1_MBTSA0', 'L1_MBTSA1', 'L1_MBTSA2', 'L1_MBTSA3', 'L1_MBTSA4', 'L1_MBTSA5', 'L1_MBTSA6', 'L1_MBTSA7', 'L1_MBTSA8', 'L1_MBTSA9', 'L1_MBTSA10', 'L1_MBTSA11', 'L1_MBTSA12', 'L1_MBTSA13', 'L1_MBTSA14', 'L1_MBTSA15', + 'L1_MBTSC0', 'L1_MBTSC1', 'L1_MBTSC2', 'L1_MBTSC3', 'L1_MBTSC4', 'L1_MBTSC5', 'L1_MBTSC6', 'L1_MBTSC7', 'L1_MBTSC8', 'L1_MBTSC9', 'L1_MBTSC10', 'L1_MBTSC11', 'L1_MBTSC12', 'L1_MBTSC13', 'L1_MBTSC14', 'L1_MBTSC15', # L1 items for 2022 Nov. heavy ion test run, ATR-26405 diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1.py index 45e98371047eda2412416b5213b6cba7c01b2079..278c89f5b6d6087777bd0a5d3c50f7d80fa716ad 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1.py @@ -252,7 +252,7 @@ def defineMenu(): # extra MBTS # TODO: to be removed for high-mu pp - #'L1_MBTSA0', 'L1_MBTSA1', 'L1_MBTSA2', 'L1_MBTSA3', 'L1_MBTSA4', 'L1_MBTSA5', 'L1_MBTSA6', 'L1_MBTSA7', 'L1_MBTSA8', 'L1_MBTSA9', 'L1_MBTSA10', 'L1_MBTSA11', 'L1_MBTSA12', 'L1_MBTSA13', 'L1_MBTSA14', 'L1_MBTSA15', 'L1_MBTSC0', 'L1_MBTSC1', 'L1_MBTSC2', 'L1_MBTSC3', 'L1_MBTSC4', 'L1_MBTSC5', 'L1_MBTSC6', 'L1_MBTSC7', 'L1_MBTSC8', 'L1_MBTSC9', 'L1_MBTSC10', 'L1_MBTSC11', 'L1_MBTSC12', 'L1_MBTSC13', 'L1_MBTSC14', 'L1_MBTSC15', + 'L1_MBTSA0', 'L1_MBTSA1', 'L1_MBTSA2', 'L1_MBTSA3', 'L1_MBTSA4', 'L1_MBTSA5', 'L1_MBTSA6', 'L1_MBTSA7', 'L1_MBTSA8', 'L1_MBTSA9', 'L1_MBTSA10', 'L1_MBTSA11', 'L1_MBTSA12', 'L1_MBTSA13', 'L1_MBTSA14', 'L1_MBTSA15', 'L1_MBTSC0', 'L1_MBTSC1', 'L1_MBTSC2', 'L1_MBTSC3', 'L1_MBTSC4', 'L1_MBTSC5', 'L1_MBTSC6', 'L1_MBTSC7', 'L1_MBTSC8', 'L1_MBTSC9', 'L1_MBTSC10', 'L1_MBTSC11', 'L1_MBTSC12', 'L1_MBTSC13', 'L1_MBTSC14', 'L1_MBTSC15', @@ -281,6 +281,7 @@ def defineMenu(): 'L1_cTAU20M_DR-eTAU20eTAU12-jJ40', #ATR-26902 'L1_4jJ30p0ETA24_0DETA24-eTAU30eTAU12', + 'L1_cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24-eTAU30eTAU12', 'L1_4jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU12', 'L1_DY-BOX-2MU5VF', 'L1_DY-BOX-MU5VFMU3V', 'L1_DY-BOX-2MU3VF',