ATLAS Offline Software
Loading...
Searching...
No Matches
OverlayTransformHelpers.py
Go to the documentation of this file.
1"""Main overlay transform configuration helpers
2
3Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
4"""
5
6from PyJobTransforms.trfArgClasses import argBSFile, argFactory, argList, argRDOFile, argSubstep, argSubstepInt
7from PyJobTransforms.trfExe import athenaExecutor
8
9
11 """Add common overlay command-line parser arguments."""
12 parser.defineArgGroup('Overlay', 'Common Overlay Options')
13 parser.add_argument('--detectors', nargs='+',
14 type=argFactory(argList),
15 help='Detectors autoconfiguration string',
16 group='Overlay')
17 parser.add_argument('--skipSecondaryEvents', nargs='+',
18 type=argFactory(argSubstepInt, defaultSubstep='first'),
19 help='Number of secondary input events to skip over in the first processing step (skipping substep can be overridden)',
20 group='Overlay')
21 parser.add_argument('--outputRDO_SGNLFile', nargs='+',
22 type=argFactory(argRDOFile, io='output'),
23 help='The output RDO file of the MC signal alone',
24 group='Overlay')
25
26
28 """Add data overlay command-line parser arguments."""
29 parser.defineArgGroup('DataOverlay', 'Data Overlay Options')
30 parser.add_argument('--inputBS_SKIMFile', nargs='+',
31 type=argFactory(argBSFile, io='input'),
32 help='Input skimmed RAW BS for pileup overlay',
33 group='DataOverlay')
34 parser.add_argument('--fSampltag',
35 type=argFactory(argSubstep, defaultSubstep='overlay'),
36 help='The cool tag for /LAR/ElecCalib/fSampl/Symmetry, see https://twiki.cern.ch/twiki/bin/viewauth/Atlas/LArCalibMCPoolCool',
37 group='DataOverlay')
38
39
41 """Add MC overlay command-line parser arguments."""
42 parser.defineArgGroup('MCOverlay', 'MC Overlay Options')
43 parser.add_argument('--inputRDO_BKGFile', nargs='+',
44 type=argFactory(argRDOFile, io='input'),
45 help='Input background RDO for MC+MC overlay',
46 group='MCOverlay')
47
48
50 """Add MC overlay command-line parser arguments."""
51 parser.defineArgGroup('DataOverlayBS', 'Data overlay BS pre-processing')
52 parser.add_argument('--inputBSFile', nargs='+',
53 type=argFactory(argBSFile, io='input'),
54 help='Input minimum-bias BS for data+MC overlay',
55 group='DataOverlayBS')
56 parser.add_argument('--outputRDO_BKGFile', nargs='+',
57 type=argFactory(argRDOFile, io='output'),
58 help='Output background RDO for data+MC overlay',
59 group='DataOverlayBS')
60
61
62
63def addOverlayArguments(parser, in_reco_chain=False):
64 """Add all overlay command-line parser arguments."""
65 # TODO: are forward detectors really needed?
66 from SimuJobTransforms.simTrfArgs import addBasicDigiArgs # , addForwardDetTrfArgs
67 addBasicDigiArgs(parser)
68 # addForwardDetTrfArgs(parser)
69 addOverlayTrfArgs(parser)
71 if not in_reco_chain:
74
75
76def addOverlaySubstep(executor_set, in_reco_chain=False):
77 executor = athenaExecutor(name='Overlay',
78 skeletonCA='OverlayConfiguration.OverlaySkeleton',
79 substep='overlay',
80 tryDropAndReload=False,
81 perfMonFile='ntuple.pmon.gz',
82 inData=['RDO_BKG', 'BS_SKIM', 'HITS'],
83 outData=['RDO', 'RDO_SGNL'])
84
85 if in_reco_chain:
86 executor.inData = []
87 executor.outData = []
88
89 executor_set.add(executor)
90
91
92def addBStoRDOSubstep(executor_set):
93 executor = athenaExecutor(name='BStoRDO',
94 skeletonCA='OverlayConfiguration.BStoRDO_Skeleton',
95 substep='BStoRDO',
96 tryDropAndReload=False,
97 perfMonFile='ntuple.pmon.gz',
98 inData=['BS'],
99 outData=['RDO_BKG'])
100
101 executor_set.add(executor)
102
103
104def appendOverlaySubstep(trf, in_reco_chain=False):
105 """Add overlay transform substep."""
106 executor = set()
107 addOverlaySubstep(executor, in_reco_chain)
108 trf.appendToExecutorSet(executor)
STL class.
Transform argument class definitions.
Transform execution functions.
addOverlayArguments(parser, in_reco_chain=False)
addOverlaySubstep(executor_set, in_reco_chain=False)
appendOverlaySubstep(trf, in_reco_chain=False)