15msg.info(
'logging set in %s', sys.argv[0])
19from PyJobTransforms.trfArgs
import addAthenaArguments, addDetectorArguments, addTriggerArguments
20from PyJobTransforms.trfDecorators
import stdTrfExceptionHandler, sigUsrStackTrace
21from RecJobTransforms.recTransformUtils
import addRecoSubsteps, addAllRecoArgs
22from SimuJobTransforms.simTrfArgs
import addCommonSimTrfArgs, addBasicDigiArgs, addCommonSimDigTrfArgs, addTrackRecordArgs, addSim_tfArgs, addSimIOTrfArgs, addPileUpTrfArgs
23from DerivationFrameworkConfiguration.DerivationTransformHelpers
import addDerivationArguments, addDerivationSubstep, addPhysicsValidationArguments, addPhysicsValidationSubstep
27@stdTrfExceptionHandler
31 msg.info(
'This is %s', sys.argv[0])
34 trf.parseCmdLineArgs(sys.argv[1:])
38 msg.info(
"%s stopped at %s, trf exit code %d", sys.argv[0], time.asctime(), trf.exitCode)
39 sys.exit(trf.exitCode)
44 addRecoSubsteps(executorSet)
46 executorSet.add(athenaExecutor(name =
'EVNTtoRDO',
47 skeletonCA =
'FullChainTransforms.FastChainSkeleton',
48 substep =
'simdigi', tryDropAndReload =
False, perfMonFile =
'ntuple.pmon.gz',
49 inData=[
'NULL',
'EVNT',
'RDO_BKG',
'BS_SKIM'],
50 outData=[
'RDO',
'HITS',
'NULL'] ))
53 addDerivationSubstep(executorSet)
54 addPhysicsValidationSubstep(executorSet)
56 trf = transform(executor = executorSet, description =
'Fast chain ATLAS transform with ISF simulation, digitisation'
57 ' and reconstruction. Inputs can be EVNT, with outputs of RDO, ESD, AOD or DPDs.'
58 ' See https://twiki.cern.ch/twiki/bin/viewauth/AtlasComputing/FastChainTf for more details.')
61 addAthenaArguments(trf.parser)
62 addDetectorArguments(trf.parser)
63 addTriggerArguments(trf.parser)
69 addCommonSimTrfArgs(trf.parser)
70 addCommonSimDigTrfArgs(trf.parser)
71 addBasicDigiArgs(trf.parser)
72 addSim_tfArgs(trf.parser)
73 addSimIOTrfArgs(trf.parser)
75 addPileUpTrfArgs(trf.parser)
76 addTrackRecordArgs(trf.parser)
80 from OverlayConfiguration.OverlayTransformHelpers
import addOverlayArguments
81 addOverlayArguments(trf.parser)
84 addDerivationArguments(trf.parser)
85 addPhysicsValidationArguments(trf.parser)
90 "Add transformation arguments for fast chain"
91 parser.defineArgGroup(
'FastChain',
'Fast chain options')
92 parser.add_argument(
'--preSimExec',type=argFactory(argList),nargs=
'+',
93 help=
'preExec before simulation step',
95 parser.add_argument(
'--postSimExec',type=argFactory(argList),nargs=
'+',
96 help=
'postExec after simulation step',
98 parser.add_argument(
'--preDigiExec',type=argFactory(argList),nargs=
'+',
99 help=
'preExec before digitisation step',
101 parser.add_argument(
'--preSimInclude',type=argFactory(argList),nargs=
'+',
102 help=
'preInclude before simulation step',
104 parser.add_argument(
'--postSimInclude',type=argFactory(argList),nargs=
'+',
105 help=
'postInclude after simulation step',
107 parser.add_argument(
'--preDigiInclude',type=argFactory(argList),nargs=
'+',
108 help=
'preInclude before digitisation step',
110 parser.defineArgGroup(
'MCOverlay',
'MC Overlay Options')
111 parser.add_argument(
'--inputRDO_BKGFile', nargs=
'+',
112 type=argFactory(argRDOFile, io=
'input'),
113 help=
'Input background RDO for MC+MC overlay',
117if __name__ ==
'__main__':
addFastChainTrfArgs(parser)