Skip to content
Snippets Groups Projects
Commit ba1bbd41 authored by Duc Ta's avatar Duc Ta
Browse files

Merge branch 'FixATLFAST3F_ACTSMT_24.0' into '24.0'

Configuration fixes for Simulation configurations using Fatras (ATLASSIM-7425)

See merge request !77889
parents 277a4990 53a35625
No related branches found
No related tags found
2 merge requests!780022025-02-21: merge of 24.0 into main,!77889Configuration fixes for Simulation configurations using Fatras (ATLASSIM-7425)
# Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.ComponentFactory import CompFactory
...@@ -9,7 +9,7 @@ def HgtdSensorSDCfg(flags, name="HgtdSensorSD", **kwargs): ...@@ -9,7 +9,7 @@ def HgtdSensorSDCfg(flags, name="HgtdSensorSD", **kwargs):
bare_collection_name = "HGTD_Hits" bare_collection_name = "HGTD_Hits"
mergeable_collection_suffix = "_G4" mergeable_collection_suffix = "_G4"
merger_input_property = "HGTDHits" merger_input_property = "HGTDHits"
region = "ID" region = "ITk"
acc, hits_collection_name = CollectionMergerCfg(flags, acc, hits_collection_name = CollectionMergerCfg(flags,
bare_collection_name, bare_collection_name,
......
# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
...@@ -48,16 +48,34 @@ def SetupSensitiveDetectorsCfg(flags): ...@@ -48,16 +48,34 @@ def SetupSensitiveDetectorsCfg(flags):
def SimHitContainerListCfg(flags): def SimHitContainerListCfg(flags):
simHitContainers = [] simHitContainers = []
if flags.Detector.EnableMDT: if flags.Detector.EnableMDT:
simHitContainers+=[("MDTSimHitCollection", "MDT_Hits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("MDTSimHitCollection", "MDT_Hits_G4")]
else:
simHitContainers+=[("MDTSimHitCollection", "MDT_Hits")]
if flags.Detector.EnableRPC: if flags.Detector.EnableRPC:
simHitContainers+=[("RPCSimHitCollection", "RPC_Hits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("RPCSimHitCollection", "RPC_Hits_G4")]
else:
simHitContainers+=[("RPCSimHitCollection", "RPC_Hits")]
if flags.Detector.EnableTGC: if flags.Detector.EnableTGC:
simHitContainers+=[("TGCSimHitCollection", "TGC_Hits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("TGCSimHitCollection", "TGC_Hits_G4")]
else:
simHitContainers+=[("TGCSimHitCollection", "TGC_Hits")]
if flags.Detector.EnableMM: if flags.Detector.EnableMM:
simHitContainers+=[("MMSimHitCollection", "MM_Hits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("MMSimHitCollection", "MM_Hits_G4")]
else:
simHitContainers+=[("MMSimHitCollection", "MM_Hits")]
if flags.Detector.EnablesTGC: if flags.Detector.EnablesTGC:
simHitContainers+=[("sTGCSimHitCollection", "sTGC_Hits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("sTGCSimHitCollection", "sTGC_Hits_G4")]
else:
simHitContainers+=[("sTGCSimHitCollection", "sTGC_Hits")]
if flags.Detector.EnableCSC: if flags.Detector.EnableCSC:
simHitContainers+=[("CSCSimHitCollection", "CSC_Hits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("CSCSimHitCollection", "CSC_Hits_G4")]
else:
simHitContainers+=[("CSCSimHitCollection", "CSC_Hits")]
return simHitContainers return simHitContainers
# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.ComponentFactory import CompFactory
...@@ -74,7 +74,7 @@ def SetupSensitiveDetectorsCfg(flags): ...@@ -74,7 +74,7 @@ def SetupSensitiveDetectorsCfg(flags):
if flags.Detector.EnableMDT: if flags.Detector.EnableMDT:
tools += [result.popToolsAndMerge(MdtSensitiveDetectorToolCfg(flags))] tools += [result.popToolsAndMerge(MdtSensitiveDetectorToolCfg(flags))]
if flags.Detector.EnableRPC: if flags.Detector.EnableRPC:
tools += [result.popToolsAndMerge(RpcSensitiveDetectorToolCfg(flags))] tools += [result.popToolsAndMerge(RpcSensitiveDetectorToolCfg(flags))]
...@@ -91,14 +91,29 @@ def SetupSensitiveDetectorsCfg(flags): ...@@ -91,14 +91,29 @@ def SetupSensitiveDetectorsCfg(flags):
def SimHitContainerListCfg(flags): def SimHitContainerListCfg(flags):
simHitContainers = [] simHitContainers = []
if flags.Detector.EnableMDT: if flags.Detector.EnableMDT:
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawMdtSimHits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawMdtSimHits_G4")]
else:
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawMdtSimHits")]
if flags.Detector.EnableMM: if flags.Detector.EnableMM:
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawMmSimHits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawMmSimHits_G4")]
else:
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawMmSimHits")]
if flags.Detector.EnableRPC: if flags.Detector.EnableRPC:
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawRpcSimHits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawRpcSimHits_G4")]
else:
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawRpcSimHits")]
if flags.Detector.EnableTGC: if flags.Detector.EnableTGC:
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawTgcSimHits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawTgcSimHits_G4")]
else:
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawTgcSimHits")]
if flags.Detector.EnablesTGC: if flags.Detector.EnablesTGC:
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawStgcSimHits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('MUON', True)):
simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawStgcSimHits_G4")]
return simHitContainers else:
\ No newline at end of file simHitContainers+=[("xAOD::MuonSimHitContainer", "xRawStgcSimHits")]
return simHitContainers
# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.ComponentFactory import CompFactory
from AthenaConfiguration.Enums import BeamType from AthenaConfiguration.Enums import BeamType
...@@ -330,14 +330,47 @@ def SimHitContainerListCfg(flags): ...@@ -330,14 +330,47 @@ def SimHitContainerListCfg(flags):
writtenContainers += [("TileHitVector", "MBTSHits")] writtenContainers += [("TileHitVector", "MBTSHits")]
writtenContainers += [("TileHitVector", "TileHitVec")] writtenContainers += [("TileHitVector", "TileHitVec")]
if flags.Detector.GeometryTRT: if flags.Detector.GeometryTRT:
writtenContainers += [("TRTUncompressedHitCollection", "TRTUncompressedHits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('ID', True)):
writtenContainers += [("TRTUncompressedHitCollection", "TRTUncompressedHits_G4")]
else:
writtenContainers += [("TRTUncompressedHitCollection", "TRTUncompressedHits")]
if flags.Detector.EnableBCM: if flags.Detector.EnableBCM:
writtenContainers += [("SiHitCollection", "BCMHits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('ID', True)):
writtenContainers += [("SiHitCollection", "BLMHits")] writtenContainers += [("SiHitCollection", "BCMHits_G4")]
writtenContainers += [("SiHitCollection", "BLMHits_G4")]
else:
writtenContainers += [("SiHitCollection", "BCMHits")]
writtenContainers += [("SiHitCollection", "BLMHits")]
if flags.Detector.EnablePixel: if flags.Detector.EnablePixel:
writtenContainers += [("SiHitCollection", "PixelHits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('ID', True)):
writtenContainers += [("SiHitCollection", "PixelHits_G4")]
else:
writtenContainers += [("SiHitCollection", "PixelHits")]
if flags.Detector.EnableSCT: if flags.Detector.EnableSCT:
writtenContainers += [("SiHitCollection", "SCT_Hits")] if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('ID', True)):
writtenContainers += [("SiHitCollection", "SCT_Hits_G4")]
else:
writtenContainers += [("SiHitCollection", "SCT_Hits")]
if flags.Detector.EnableITkPixel:
if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('ITk', True)):
writtenContainers += [("SiHitCollection", "ITkPixelHits_G4")]
else:
writtenContainers += [("SiHitCollection", "ITkPixelHits")]
if flags.Detector.EnableITkStrip:
if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('ITk', True)):
writtenContainers += [("SiHitCollection", "ITkStripHits_G4")]
else:
writtenContainers += [("SiHitCollection", "ITkStripHits")]
if flags.Detector.EnablePLR:
if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('ITk', True)):
writtenContainers += [("SiHitCollection", "PLR_Hits_G4")]
else:
writtenContainers += [("SiHitCollection", "PLR_Hits")]
if flags.Detector.EnableHGTD:
if (flags.Sim.ISFRun and flags.Sim.ISF.HITSMergingRequired.get('ITk', True)):
writtenContainers += [("SiHitCollection", "HGTDHits_G4")]
else:
writtenContainers += [("SiHitCollection", "HGTDHits")]
from SimulationConfig.SimEnums import CalibrationRun from SimulationConfig.SimEnums import CalibrationRun
if flags.Sim.CalibrationRun in [CalibrationRun.LAr, CalibrationRun.LArTile, CalibrationRun.LArTileZDC]: if flags.Sim.CalibrationRun in [CalibrationRun.LAr, CalibrationRun.LArTile, CalibrationRun.LArTileZDC]:
# Needed to ensure that DeadMaterialCalibrationHitsMerger is scheduled correctly. # Needed to ensure that DeadMaterialCalibrationHitsMerger is scheduled correctly.
......
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