Skip to content
Snippets Groups Projects
Commit 799673fb authored by Adam Edward Barton's avatar Adam Edward Barton
Browse files

Merge branch 'IDPVM_r22_ITk_21.9' into 'master'

Adapted IDPVM config to run on r21.9 AOD without the extrapolator

See merge request atlas/athena!50011
parents 56ce8a50 7cda9f8c
No related branches found
No related tags found
No related merge requests found
...@@ -44,7 +44,7 @@ def canAddDecorator(flags): ...@@ -44,7 +44,7 @@ def canAddDecorator(flags):
if not (flags.Detector.GeometryID or flags.Detector.GeometryITk): if not (flags.Detector.GeometryID or flags.Detector.GeometryITk):
return False return False
return "StreamESD" in flags.Input.ProcessingTags or "StreamAOD" in flags.Input.ProcessingTags return ("StreamESD" in flags.Input.ProcessingTags or "StreamAOD" in flags.Input.ProcessingTags) and flags.IDPVM.runDecoration
''' '''
if rec.readTAG: if rec.readTAG:
......
...@@ -22,6 +22,7 @@ def createIDPVMConfigFlags(): ...@@ -22,6 +22,7 @@ def createIDPVMConfigFlags():
icf.addFlag("IDPVM.doTruthOriginPlots", False ) icf.addFlag("IDPVM.doTruthOriginPlots", False )
icf.addFlag("IDPVM.doPerAuthorPlots", False ) icf.addFlag("IDPVM.doPerAuthorPlots", False )
icf.addFlag("IDPVM.doHitLevelPlots", False ) icf.addFlag("IDPVM.doHitLevelPlots", False )
icf.addFlag("IDPVM.runDecoration", True )
icf.addFlag("IDPVM.setTruthStrategy", "HardScatter" ) icf.addFlag("IDPVM.setTruthStrategy", "HardScatter" )
icf.addFlag("IDPVM.validateExtraTrackCollections", [] ) # List of extra track collection names to be validated in addition to Tracks. icf.addFlag("IDPVM.validateExtraTrackCollections", [] ) # List of extra track collection names to be validated in addition to Tracks.
icf.addFlag("IDPVM.ancestorIDs", [] ) icf.addFlag("IDPVM.ancestorIDs", [] )
......
...@@ -35,10 +35,13 @@ def InDetRttTruthSelectionToolCfg(flags, name="InDetRttTruthSelectionTool", **kw ...@@ -35,10 +35,13 @@ def InDetRttTruthSelectionToolCfg(flags, name="InDetRttTruthSelectionTool", **kw
kwargs.setdefault("maxEta", 2.5) kwargs.setdefault("maxEta", 2.5)
kwargs.setdefault("minPt", 500.) kwargs.setdefault("minPt", 500.)
from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg if "radiusCylinder" in kwargs or "zDisc" in kwargs:
extrapolator = acc.popToolsAndMerge(AtlasExtrapolatorCfg(flags)) from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
acc.addPublicTool(extrapolator) # TODO: migrate to private? extrapolator = acc.popToolsAndMerge(AtlasExtrapolatorCfg(flags))
kwargs.setdefault("Extrapolator", extrapolator) acc.addPublicTool(extrapolator) # TODO: migrate to private?
kwargs.setdefault("Extrapolator", extrapolator)
else:
kwargs.setdefault("Extrapolator", None)
tool = CompFactory.AthTruthSelectionTool(name = name, **kwargs) tool = CompFactory.AthTruthSelectionTool(name = name, **kwargs)
acc.setPrivateTools(tool) acc.setPrivateTools(tool)
...@@ -95,7 +98,7 @@ def InDetPhysValMonitoringToolCfg(flags, **kwargs): ...@@ -95,7 +98,7 @@ def InDetPhysValMonitoringToolCfg(flags, **kwargs):
kwargs.setdefault("doPerAuthorPlots", flags.IDPVM.doPerAuthorPlots) kwargs.setdefault("doPerAuthorPlots", flags.IDPVM.doPerAuthorPlots)
kwargs.setdefault("doHitLevelPlots", flags.IDPVM.doHitLevelPlots) kwargs.setdefault("doHitLevelPlots", flags.IDPVM.doHitLevelPlots)
# adding the VeretxTruthMatchingTool # adding the VertexTruthMatchingTool
VertexTruthMatchTool = acc.popToolsAndMerge(InDetVertexTruthMatchToolCfg(flags)) VertexTruthMatchTool = acc.popToolsAndMerge(InDetVertexTruthMatchToolCfg(flags))
kwargs.setdefault("useVertexTruthMatchTool", True) kwargs.setdefault("useVertexTruthMatchTool", True)
kwargs.setdefault("VertexTruthMatchTool", VertexTruthMatchTool) kwargs.setdefault("VertexTruthMatchTool", VertexTruthMatchTool)
......
...@@ -21,6 +21,7 @@ def GetCustomAthArgs(): ...@@ -21,6 +21,7 @@ def GetCustomAthArgs():
IDPVMparser.add_argument("--doMuonMatchedTracks", help='run plots for tracks matched to true muons', action='store_true', default=False) IDPVMparser.add_argument("--doMuonMatchedTracks", help='run plots for tracks matched to true muons', action='store_true', default=False)
IDPVMparser.add_argument("--doElectronMatchedTracks", help='run plots for tracks matched to true electrons', action='store_true', default=False) IDPVMparser.add_argument("--doElectronMatchedTracks", help='run plots for tracks matched to true electrons', action='store_true', default=False)
IDPVMparser.add_argument("--doTruthToRecoNtuple", help='output track-to-truth ntuple', action='store_true', default=False) IDPVMparser.add_argument("--doTruthToRecoNtuple", help='output track-to-truth ntuple', action='store_true', default=False)
IDPVMparser.add_argument("--disableDecoration", help='disable extra track and truth decoration if possible', action='store_true', default=False)
IDPVMparser.add_argument("--hardScatterStrategy", help='Strategy to select the hard scatter. 0 = SumPt² 1 = SumPt', choices=["0","1"], default="0") IDPVMparser.add_argument("--hardScatterStrategy", help='Strategy to select the hard scatter. 0 = SumPt² 1 = SumPt', choices=["0","1"], default="0")
IDPVMparser.add_argument("--outputFile", help='Name of output file',default="M_output.root") IDPVMparser.add_argument("--outputFile", help='Name of output file',default="M_output.root")
IDPVMparser.add_argument("--HSFlag", help='Hard-scatter flag - decides what is used for truth matching', choices=['HardScatter', 'All', 'PileUp'],default="HardScatter") IDPVMparser.add_argument("--HSFlag", help='Hard-scatter flag - decides what is used for truth matching', choices=['HardScatter', 'All', 'PileUp'],default="HardScatter")
...@@ -43,6 +44,7 @@ ConfigFlags.IDPVM.doValidateMuonMatchedTracks = MyArgs.doMuonMatchedTracks ...@@ -43,6 +44,7 @@ ConfigFlags.IDPVM.doValidateMuonMatchedTracks = MyArgs.doMuonMatchedTracks
ConfigFlags.IDPVM.doValidateElectronMatchedTracks = MyArgs.doElectronMatchedTracks ConfigFlags.IDPVM.doValidateElectronMatchedTracks = MyArgs.doElectronMatchedTracks
ConfigFlags.IDPVM.doPerAuthorPlots = MyArgs.doPerAuthor ConfigFlags.IDPVM.doPerAuthorPlots = MyArgs.doPerAuthor
ConfigFlags.IDPVM.doHitLevelPlots = MyArgs.doHitLevelPlots ConfigFlags.IDPVM.doHitLevelPlots = MyArgs.doHitLevelPlots
ConfigFlags.IDPVM.runDecoration = not MyArgs.disableDecoration
ConfigFlags.IDPVM.ancestorIDs = MyArgs.ancestorIDList ConfigFlags.IDPVM.ancestorIDs = MyArgs.ancestorIDList
ConfigFlags.IDPVM.hardScatterStrategy = int(MyArgs.hardScatterStrategy) ConfigFlags.IDPVM.hardScatterStrategy = int(MyArgs.hardScatterStrategy)
......
...@@ -247,7 +247,7 @@ AthTruthSelectionTool::initialize() { ...@@ -247,7 +247,7 @@ AthTruthSelectionTool::initialize() {
} }
ATH_MSG_INFO(msg); ATH_MSG_INFO(msg);
ATH_CHECK(m_extrapolator.retrieve()); ATH_CHECK(m_extrapolator.retrieve(EnableTool{ m_radiusCylinder > 0 || m_zDisc >0 }));
return StatusCode::SUCCESS; return StatusCode::SUCCESS;
} }
......
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