1 """Main derivation transform configuration helpers
3 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
10 """Add common derivation command-line parser arguments."""
11 parser.defineArgGroup(
'Derivation',
'Derivation Options')
12 parser.add_argument(
'--formats', nargs=
'+',
13 type=argFactory(argList),
14 help=
'List of required D(2)AOD formats',
16 parser.add_argument(
'--augmentations', nargs=
'*',
17 type=argFactory(argList),
18 help=
'List of augmentations CHILD:PARENT',
20 parser.add_argument(
'--inputAODFile', nargs=
'+',
21 type=argFactory(argPOOLFile, io=
'input'),
22 help=
'Input AOD for DAOD building',
24 parser.add_argument(
'--inputDAOD_PHYSFile', nargs=
'+',
25 type=argFactory(argPOOLFile, io=
'input'),
26 help=
'Input DAOD_PHYS for D2AOD building',
28 parser.add_argument(
'--inputDAOD_PHYSLITEFile', nargs=
'+',
29 type=argFactory(argPOOLFile, io=
'input'),
30 help=
'Input DAOD_PHYSLITE for D2AOD building',
32 parser.add_argument(
'--inputEVNTFile', nargs=
'+',
33 type=argFactory(argPOOLFile, io=
'input'),
34 help=
'Input EVNT for DAOD_TRUTHX building',
36 parser.add_argument(
'--outputDAODFile', nargs=
'+',
37 type=argFactory(argPOOLFile, io=
'output'),
38 help=
'Output DAOD filename stub, DAOD_X will be prepended to it',
40 parser.add_argument(
'--outputD2AODFile', nargs=
'+',
41 type=argFactory(argPOOLFile, io=
'output'),
42 help=
'Output D2AOD filename stub, D2AOD_X will be prepended to it',
44 parser.add_argument(
'--passThrough',
45 type=argFactory(argSubstepBool, defaultSubstep =
'Derivation', runarg=
True),
47 help=
'Disable all skimming and write every event',
49 parser.add_argument(
'--skimmingExpression',
50 type=argFactory(argString),
51 help=
'String defining skimming from command line, SKIM format only',
54 parser.add_argument(
'--skimmingContainers', nargs=
'+',
55 type=argFactory(argList),
56 help=
'List of containers used for skimming in the skimmingExpression, SKIM format only',
61 """Add validation command-line parser arguments."""
62 parser.defineArgGroup(
'Physics Validation',
'Physics validation options')
63 parser.add_argument(
'--validationFlags', nargs=
'+',
64 type=argFactory(argList),
65 help=
'Physics validation histogram switches',
66 group=
'Physics Validation')
67 parser.add_argument(
'--inputDAOD_PHYSVALFile', nargs=
'+',
68 type=argFactory(argPOOLFile, io=
'input'),
69 help=
'Input DAOD_PHYSVAL for validation ntuples building',
70 group=
'Physics Validation')
71 parser.add_argument(
'--outputNTUP_PHYSVALFile',
72 type=argFactory(argNTUPFile, io=
'output'),
73 help=
'Output physics validation file',
74 group=
'Physics Validation')
81 executor = reductionFrameworkExecutor(name=
'Derivation',
82 skeletonCA=
'DerivationFrameworkConfiguration.DerivationSkeleton',
83 substep=
'DerivationFramework',
84 tryDropAndReload=
False,
85 perfMonFile=
'ntuple.pmon.gz',
86 inData=[
'EVNT',
'AOD',
'DAOD_PHYS',
'DAOD_PHYSLITE'],
87 outData=[
'DAOD',
'D2AOD'])
88 executor_set.add(executor)
92 executor = athenaExecutor(name=
'PhysicsValidation',
93 skeletonCA=
'DerivationFrameworkConfiguration.PhysicsValidationSkeleton',
94 substep=
'PhysicsValidation',
95 tryDropAndReload=
False,
96 perfMonFile=
'ntuple.pmon.gz',
97 inData=[
'DAOD_PHYSVAL'],
98 outData=[
'NTUP_PHYSVAL'])
99 executor_set.add(executor)