ATLAS Offline Software
PFPhysValGlobalContainersCfg.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2 #Runs physics validation on global pflow containers
3 #Todo that we need to run jet finding first to create the global containers
4 
5 if __name__=="__main__":
6 
7  from AthenaConfiguration.AllConfigFlags import initConfigFlags
8  flags = initConfigFlags()
9  flags.Exec.MaxEvents=100
10  flags.Input.isMC=True
11  flags.Input.Files = ["/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/PFlowTests/valid1/valid1.601229.PhPy8EG_A14_ttbar_hdamp258p75_SingleLep.deriv.DAOD_PHYSVAL.e8514_s4479_s4377_r16821_p7025/DAOD_PHYSVAL.100evts.pool.root.1"]
12  #This will stop jet finding crashing due to missing containers needed for au data
13  #We don't need these to validate the FlowElement containers, so no need to worry about this.
14  flags.Jet.strictMode = False
15  flags.PhysVal.OutputFileName="physval.root"
16  flags.lock()
17 
18  from AthenaConfiguration.MainServicesConfig import MainServicesCfg
19  cfg=MainServicesCfg(flags)
20 
21  from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg
22  cfg.merge(PoolReadCfg(flags))
23 
24  #Run jet finding because it creates the global containers we want to validate
25  from JetRecConfig.JetRecConfig import JetRecCfg
26  from JetRecConfig.StandardSmallRJets import AntiKt4EMPFlow
27  cfg.merge( JetRecCfg(flags,AntiKt4EMPFlow) )
28 
29  #Configure the physics validation to use global containers
30  from PFODQA.PFPhysValConfig import PhysValPFOCfg
31  from PhysValMonitoring.PhysValMonitoringConfig import PhysValMonitoringCfg
32  cfg.merge(PhysValMonitoringCfg(flags,tools=cfg.popToolsAndMerge(PhysValPFOCfg(flags,useGlobalContainers=True))))
33 
34  #remap jet names to avoid errors about modifying locked data
35  from SGComps.AddressRemappingConfig import InputRenameCfg
36  cfg.merge(InputRenameCfg("xAOD::JetContainer","AntiKt4EMPFlowJets","AntiKt4EMPFlowJets.OLD"))
37  cfg.merge(InputRenameCfg("xAOD::JetAuxContainer","AntiKt4EMPFlowJetsAux.","AntiKt4EMPFlowJetsAux.OLD."))
38 
39  cfg.run()
40 
PFPhysValConfig.PhysValPFOCfg
def PhysValPFOCfg(flags, useGlobalContainers=False)
Definition: PFPhysValConfig.py:27
PhysValMonitoringConfig.PhysValMonitoringCfg
def PhysValMonitoringCfg(flags, name="PhysValMonManager", tools=None, **kwargs)
Definition: PhysValMonitoringConfig.py:81
python.JetRecConfig.JetRecCfg
def JetRecCfg(flags, jetdef, returnConfiguredDef=False)
Top level functions returning ComponentAccumulator out of JetDefinition.
Definition: JetRecConfig.py:36
python.MainServicesConfig.MainServicesCfg
def MainServicesCfg(flags, LoopMgr='AthenaEventLoopMgr')
Definition: MainServicesConfig.py:310
python.AllConfigFlags.initConfigFlags
def initConfigFlags()
Definition: AllConfigFlags.py:19
python.PoolReadConfig.PoolReadCfg
def PoolReadCfg(flags)
Definition: PoolReadConfig.py:71
AddressRemappingConfig.InputRenameCfg
def InputRenameCfg(type, from_name, to_name)
Definition: AddressRemappingConfig.py:28