Skip to content
Snippets Groups Projects
Commit 8eea30b2 authored by Petr Balek's avatar Petr Balek :fishing_pole_and_fish:
Browse files

fix AFP digi

parent 1764163d
No related branches found
No related tags found
No related merge requests found
Pipeline #4021547 passed
......@@ -91,52 +91,3 @@ def AFP_DigitizationCfg(flags, **kwargs):
return acc
if __name__ == "__main__":
"""Test AFP ComponentAccumulator Digitization configuration modules, inspired by Digitization/DigitizationConfigNew_test.py"""
from AthenaCommon.Logging import log
from AthenaCommon.Constants import DEBUG
from AthenaCommon.Configurable import Configurable
from AthenaConfiguration.AllConfigFlags import ConfigFlags
from Digitization.DigitizationSteering import DigitizationMainCfg, DigitizationMessageSvcCfg
# Set up logging and new style config
log.setLevel(DEBUG)
Configurable.configurableRun3Behavior = True
# Configure
ConfigFlags.Input.Files = ["test.pool.root"]
ConfigFlags.IOVDb.GlobalTag = "OFLCOND-MC16-SDR-RUN2-09"
ConfigFlags.Detector.EnableAFP = True
ConfigFlags.Detector.GeometryAFP = False
ConfigFlags.GeoModel.Align.Dynamic = False
ConfigFlags.Concurrency.NumThreads = 1
ConfigFlags.Concurrency.NumConcurrentEvents=1
ConfigFlags.Beam.NumberOfCollisions = 0.
ConfigFlags.Output.RDOFileName = "myRDO.pool.root"
# TODO: temporary
ConfigFlags.Digitization.TruthOutput = True
ConfigFlags.fillFromArgs() # enable unit tests to switch only parts of reco: AFP_Digitization.py Detector.EnableAFP=True
ConfigFlags.lock()
ConfigFlags.dump()
# Construct our accumulator to run
acc = DigitizationMainCfg(ConfigFlags)
acc.merge(DigitizationMessageSvcCfg(ConfigFlags))
# Dump config
acc.getService("StoreGateSvc").Dump = True
acc.getService("ConditionStore").Dump = True
acc.printConfig(withDetails=True)
ConfigFlags.dump()
acc.foreach_component("*AFP*").OutputLevel=DEBUG
# Execute and finish
status = acc.run(maxEvents=3)
if status.isFailure():
import sys
sys.exit(-1)
#!/bin/env python
# Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
# file AFP_DigitizationConfigNew_test.py
# author Petr Balek <petr.balek@cern.ch>
# date 2022-05-25
# brief A script to test AFP_Digitization package. Mostly inspired by Digitization/DigitizationConfigNew_test.py, but includes switching AFP digitization on (it's off by default). To test it:
# 0. setup athena enviroment
# 1a. run this script:
# $ python AFP_DigitizationConfigNew_test.py
# 1b. it's also possible to add some arguments:
# $ python AFP_DigitizationConfigNew_test.py Detector.EnableAFP=True
# 2. you may want to continue with reconstruction:
# $ RecoSteeringTest.py --filesInput=myRDO.pool.root --RDO Reco.EnableAFP=True
if __name__ == "__main__":
"""Test AFP ComponentAccumulator Digitization configuration modules, inspired by Digitization/DigitizationConfigNew_test.py"""
from AthenaCommon.Logging import log
from AthenaCommon.Constants import DEBUG
from AthenaCommon.Configurable import Configurable
from AthenaConfiguration.AllConfigFlags import ConfigFlags
from Digitization.DigitizationSteering import DigitizationMainCfg, DigitizationMessageSvcCfg
# Set up logging and new style config
log.setLevel(DEBUG)
Configurable.configurableRun3Behavior = True
# Configure
ConfigFlags.Input.Files = ["test.pool.root"]
ConfigFlags.IOVDb.GlobalTag = "OFLCOND-MC16-SDR-RUN2-09"
ConfigFlags.Detector.EnableAFP = True
ConfigFlags.Detector.GeometryAFP = False
ConfigFlags.GeoModel.Align.Dynamic = False
ConfigFlags.Concurrency.NumThreads = 1
ConfigFlags.Concurrency.NumConcurrentEvents=1
ConfigFlags.Exec.MaxEvents=3
ConfigFlags.Beam.NumberOfCollisions = 0.
ConfigFlags.Output.RDOFileName = "myRDO.pool.root"
# TODO: temporary
ConfigFlags.Digitization.TruthOutput = True
ConfigFlags.fillFromArgs()
ConfigFlags.lock()
# Construct our accumulator to run
acc = DigitizationMainCfg(ConfigFlags)
acc.merge(DigitizationMessageSvcCfg(ConfigFlags))
# Dump config
acc.getService("StoreGateSvc").Dump = True
acc.getService("ConditionStore").Dump = True
acc.printConfig(withDetails=True)
ConfigFlags.dump()
acc.foreach_component("*AFP*").OutputLevel=DEBUG
# Execute and finish
status = acc.run()
if status.isFailure():
import sys
sys.exit(-1)
......@@ -72,11 +72,11 @@ StatusCode AFP_PileUpTool::initialize()
// check the input object names
if (m_TDSimHitCollectionKey.key().empty()) {
ATH_MSG_ERROR("Property TDSimHitCollectionName not set !");
ATH_MSG_FATAL("Property TDSimHitCollectionName not set !");
return StatusCode::FAILURE;
}
if (m_SIDSimHitCollectionKey.key().empty()) {
ATH_MSG_ERROR("Property SIDSimHitCollectionName not set !");
ATH_MSG_FATAL("Property SIDSimHitCollectionName not set !");
return StatusCode::FAILURE;
}
......@@ -94,8 +94,6 @@ StatusCode AFP_PileUpTool::initialize()
}
else
{
ATH_CHECK(m_TDSimHitCollectionKey.initialize());
ATH_CHECK(m_SIDSimHitCollectionKey.initialize());
ATH_MSG_INFO("TD SimHits container key: " <<m_TDSimHitCollectionKey);
ATH_MSG_INFO("SID SimHits container key: " <<m_SIDSimHitCollectionKey);
}
......@@ -234,7 +232,7 @@ StatusCode AFP_PileUpTool::processAllSubEvents(const EventContext& ctx)
TimedTDSimHitCollList TDSimHitCollList;
unsigned int numberOfTDSimHits{0};
if (not (m_mergeSvc->retrieveSubEvtsData(m_TDSimHitCollectionName, TDSimHitCollList, numberOfTDSimHits).isSuccess()) and TDSimHitCollList.size() == 0) {
ATH_MSG_ERROR ( "Could not fill TimedTDSimHitCollList" );
ATH_MSG_FATAL ( "Could not fill TimedTDSimHitCollList" );
return StatusCode::FAILURE;
}
ATH_MSG_DEBUG ( " PileUp: Merge " << TDSimHitCollList.size() << " AFP_TDSimHitCollections with key " << m_TDSimHitCollectionName << " found." );
......@@ -266,7 +264,7 @@ StatusCode AFP_PileUpTool::processAllSubEvents(const EventContext& ctx)
TimedSIDSimHitCollList SIDSimHitCollList;
unsigned int numberOfSIDSimHits{0};
if (not (m_mergeSvc->retrieveSubEvtsData(m_SIDSimHitCollectionName, SIDSimHitCollList, numberOfSIDSimHits).isSuccess()) and SIDSimHitCollList.size() == 0) {
ATH_MSG_ERROR ( "Could not fill TimedSIDSimHitCollList" );
ATH_MSG_FATAL ( "Could not fill TimedSIDSimHitCollList" );
return StatusCode::FAILURE;
}
ATH_MSG_DEBUG ( " PileUp: Merge " << SIDSimHitCollList.size() << " AFP_SIDSimHitCollections with key " << m_SIDSimHitCollectionName << " found." );
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment