ATLAS Offline Software
MuonHitTestConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2 
3 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4 from AthenaConfiguration.ComponentFactory import CompFactory
5 
6 def MuonHitTesterCfg(flags, name="MuonHitTester", outFile="SimHitTest.root", **kwargs):
7  result = ComponentAccumulator()
8  from MuonGeoModelTestR4.testGeoModel import setupHistSvcCfg
9  result.merge(setupHistSvcCfg(flags,outFile=outFile, outStream="MuonR4HitTest"))
10  from ActsAlignmentAlgs.AlignmentAlgsConfig import ActsGeometryContextAlgCfg
11  result.merge(ActsGeometryContextAlgCfg(flags))
12  kwargs.setdefault("isMC", flags.Input.isMC)
13 
14  kwargs.setdefault("dumpPileUp", True)
15 
16  kwargs.setdefault("dumpPrds", False)
17  kwargs.setdefault("dumpDigits", False)
18  kwargs.setdefault("dumpSimHits", True)
19 
20 
23  kwargs.setdefault("dumpMdtSimHits", flags.Detector.GeometryMDT)
24  kwargs.setdefault("dumpRpcSimHits", flags.Detector.GeometryRPC)
25  kwargs.setdefault("dumpTgcSimHits", flags.Detector.GeometryTGC)
26  kwargs.setdefault("dumpStgcSimHits",flags.Detector.GeometrysTGC)
27  kwargs.setdefault("dumpMmSimHits", flags.Detector.GeometryMM)
28 
29 
30  kwargs.setdefault("dumpMdtDigits", flags.Detector.GeometryMDT)
31  kwargs.setdefault("dumpRpcDigits", flags.Detector.GeometryRPC)
32  kwargs.setdefault("dumpTgcDigits", flags.Detector.GeometryTGC)
33  kwargs.setdefault("dumpStgcDigits",flags.Detector.GeometrysTGC)
34  kwargs.setdefault("dumpMmDigits", flags.Detector.GeometryMM)
35 
36  kwargs.setdefault("dumpMdtPrds", flags.Detector.GeometryMDT)
37  kwargs.setdefault("dumpRpcPrds", flags.Detector.GeometryRPC)
38  kwargs.setdefault("dumpTgcPrds", flags.Detector.GeometryTGC)
39  kwargs.setdefault("dumpMmPrds", flags.Detector.GeometryMM)
40 
41  theAlg = CompFactory.MuonValR4.MuonHitTesterAlg(name, **kwargs)
42  result.addEventAlgo(theAlg, primary = True)
43  return result
44 
45 
46 def MuonDigiTestCfg(flags, name="MuonDigiTester", outFile="DigiTest.root", **kwargs):
47  kwargs.setdefault("MdtSimHitKey", "MDT_SDO")
48  kwargs.setdefault("RpcSimHitKey", "RPC_SDO")
49  kwargs.setdefault("TgcSimHitKey", "TGC_SDO")
50  kwargs.setdefault("MmSimHitKey", "MM_SDO")
51  kwargs.setdefault("sTgcSimHitKey", "sTGC_SDO")
52  kwargs.setdefault("dumpDigits", True)
53  return MuonHitTesterCfg(flags, name = name, outFile = outFile, **kwargs)
54 
55 def MuonPileUpTestCfg(flags, name="MuonDigiTester", outFile="DigiTest.root", **kwargs):
56  kwargs.setdefault("MdtSimHitKey", "Bkg_MDT_SDO")
57  kwargs.setdefault("RpcSimHitKey", "Bkg_RPC_SDO")
58  kwargs.setdefault("TgcSimHitKey", "Bkg_TGC_SDO")
59  kwargs.setdefault("MmSimHitKey", "Bkg_MM_SDO")
60  kwargs.setdefault("sTgcSimHitKey", "Bkg_sTGC_SDO")
61  kwargs.setdefault("EvtInfoKey", "Bkg_EventInfo")
62  kwargs.setdefault("dumpDigits", True)
63  return MuonHitTesterCfg(flags, name = name, outFile = outFile, **kwargs)
64 
65 
66 if __name__=="__main__":
67  from MuonGeoModelTestR4.testGeoModel import setupGeoR4TestCfg, SetupArgParser, executeTest
68  parser = SetupArgParser()
69  parser.add_argument("--runTester", help="Choice on the tester to setup", default="SIM", choices=["SIM", "DIGI", "PILEUP"])
70  parser.set_defaults(nEvents = -1)
71  parser.set_defaults(inputFile=["/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/MuonGeomRTT/R3SimHits.pool.root"])
72  parser.set_defaults(outRootFile="SimHitDumpNtuple.root")
73 
74  args = parser.parse_args()
75  flags, cfg = setupGeoR4TestCfg(args)
76 
77  from MuonConfig.MuonDataPrepConfig import xAODUncalibMeasPrepCfg
78  cfg.merge(xAODUncalibMeasPrepCfg(flags))
79 
80  if args.runTester != "SIM":
81  if flags.Detector.GeometryMDT:
82  from MuonConfig.MuonByteStreamCnvTestConfig import MdtRdoToMdtDigitCfg
83  cfg.merge(MdtRdoToMdtDigitCfg(flags))
84  if flags.Detector.GeometryRPC:
85  from MuonConfig.MuonByteStreamCnvTestConfig import RpcRdoToRpcDigitCfg
86  cfg.merge(RpcRdoToRpcDigitCfg(flags))
87  if flags.Detector.GeometryTGC:
88  from MuonConfig.MuonByteStreamCnvTestConfig import TgcRdoToTgcDigitCfg
89  cfg.merge(TgcRdoToTgcDigitCfg(flags))
90  if flags.Detector.GeometrysTGC:
91  from MuonConfig.MuonByteStreamCnvTestConfig import STGC_RdoToDigitCfg
92  cfg.merge(STGC_RdoToDigitCfg(flags))
93  if flags.Detector.GeometryMM:
94  from MuonConfig.MuonByteStreamCnvTestConfig import MM_RdoToDigitCfg
95  cfg.merge(MM_RdoToDigitCfg(flags))
96 
97  if args.runTester == "SIM":
98  cfg.merge(MuonHitTesterCfg(flags,outFile=args.outRootFile))
99  elif args.runTester == "DIGI":
100  cfg.merge(MuonDigiTestCfg(flags,outFile=args.outRootFile))
101  elif args.runTester == "PILEUP":
102  cfg.merge(MuonPileUpTestCfg(flags,outFile=args.outRootFile))
103 
104  executeTest(cfg)
105 
MuonByteStreamCnvTestConfig.MM_RdoToDigitCfg
def MM_RdoToDigitCfg(flags, name="MM_RdoToDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:140
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
MuonByteStreamCnvTestConfig.MdtRdoToMdtDigitCfg
def MdtRdoToMdtDigitCfg(flags, name="MdtRdoToMdtDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:20
MuonByteStreamCnvTestConfig.RpcRdoToRpcDigitCfg
def RpcRdoToRpcDigitCfg(flags, name="RpcRdoToRpcDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:44
testGeoModel.setupHistSvcCfg
def setupHistSvcCfg(flags, outFile="MdtGeoDump.root", outStream="GEOMODELTESTER")
Definition: MuonPhaseII/MuonDetDescr/MuonGeoModelTestR4/python/testGeoModel.py:55
MuonByteStreamCnvTestConfig.TgcRdoToTgcDigitCfg
def TgcRdoToTgcDigitCfg(flags, name="TgcRdoToTgcDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:91
testGeoModel.executeTest
def executeTest(cfg)
Definition: MuonPhaseII/MuonDetDescr/MuonGeoModelTestR4/python/testGeoModel.py:227
MdtCablingTester.SetupArgParser
def SetupArgParser()
Definition: MdtCablingTester.py:3
MuonHitTestConfig.MuonPileUpTestCfg
def MuonPileUpTestCfg(flags, name="MuonDigiTester", outFile="DigiTest.root", **kwargs)
Definition: MuonHitTestConfig.py:55
testGeoModel.setupGeoR4TestCfg
def setupGeoR4TestCfg(args, flags=None)
Definition: MuonPhaseII/MuonDetDescr/MuonGeoModelTestR4/python/testGeoModel.py:126
MuonHitTestConfig.MuonHitTesterCfg
def MuonHitTesterCfg(flags, name="MuonHitTester", outFile="SimHitTest.root", **kwargs)
Definition: MuonHitTestConfig.py:6
AlignmentAlgsConfig.ActsGeometryContextAlgCfg
def ActsGeometryContextAlgCfg(flags, name="GeometryContextAlg", **kwargs)
Setup the Geometry context algorithm.
Definition: AlignmentAlgsConfig.py:125
MuonHitTestConfig.MuonDigiTestCfg
def MuonDigiTestCfg(flags, name="MuonDigiTester", outFile="DigiTest.root", **kwargs)
Definition: MuonHitTestConfig.py:46
MuonDataPrepConfig.xAODUncalibMeasPrepCfg
def xAODUncalibMeasPrepCfg(flags)
Configuriation snippet to schedule all algorithms providing the Uncalibrated measurements.
Definition: MuonDataPrepConfig.py:29
MuonByteStreamCnvTestConfig.STGC_RdoToDigitCfg
def STGC_RdoToDigitCfg(flags, name="STGC_RdoToDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:116