Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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 
15  kwargs.setdefault("dumpPrds", False)
16  kwargs.setdefault("dumpDigits", False)
17  kwargs.setdefault("dumpSimHits", True)
18 
19 
22  kwargs.setdefault("dumpMdtSimHits", flags.Detector.GeometryMDT)
23  kwargs.setdefault("dumpRpcSimHits", flags.Detector.GeometryRPC)
24  kwargs.setdefault("dumpTgcSimHits", flags.Detector.GeometryTGC)
25  kwargs.setdefault("dumpStgcSimHits",flags.Detector.GeometrysTGC)
26  kwargs.setdefault("dumpMmSimHits", flags.Detector.GeometryMM)
27 
28 
29  kwargs.setdefault("dumpMdtDigits", flags.Detector.GeometryMDT)
30  kwargs.setdefault("dumpRpcDigits", flags.Detector.GeometryRPC)
31  kwargs.setdefault("dumpTgcDigits", flags.Detector.GeometryTGC)
32  kwargs.setdefault("dumpStgcDigits",flags.Detector.GeometrysTGC)
33  kwargs.setdefault("dumpMmDigits", flags.Detector.GeometryMM)
34 
35  kwargs.setdefault("dumpMdtPrds", flags.Detector.GeometryMDT)
36  kwargs.setdefault("dumpRpcPrds", flags.Detector.GeometryRPC)
37  kwargs.setdefault("dumpTgcPrds", flags.Detector.GeometryTGC)
38  kwargs.setdefault("dumpMmPrds", flags.Detector.GeometryMM)
39 
40  theAlg = CompFactory.MuonValR4.MuonHitTesterAlg(name, **kwargs)
41  result.addEventAlgo(theAlg, primary = True)
42  return result
43 
44 
45 def MuonDigiTestCfg(flags, name="MuonDigiTester", outFile="DigiTest.root", **kwargs):
46  kwargs.setdefault("MdtSimHitKey", "MDT_SDO")
47  kwargs.setdefault("RpcSimHitKey", "RPC_SDO")
48  kwargs.setdefault("TgcSimHitKey", "TGC_SDO")
49  kwargs.setdefault("MmSimHitKey", "MM_SDO")
50  kwargs.setdefault("sTgcSimHitKey", "sTGC_SDO")
51  kwargs.setdefault("dumpDigits", True)
52  return MuonHitTesterCfg(flags, name = name, outFile = outFile, **kwargs)
53 
54 def MuonPileUpTestCfg(flags, name="MuonDigiTester", outFile="DigiTest.root", **kwargs):
55  kwargs.setdefault("MdtSimHitKey", "Bkg_MDT_SDO")
56  kwargs.setdefault("RpcSimHitKey", "Bkg_RPC_SDO")
57  kwargs.setdefault("TgcSimHitKey", "Bkg_TGC_SDO")
58  kwargs.setdefault("MmSimHitKey", "Bkg_MM_SDO")
59  kwargs.setdefault("sTgcSimHitKey", "Bkg_sTGC_SDO")
60  kwargs.setdefault("EvtInfoKey", "Bkg_EventInfo")
61  kwargs.setdefault("dumpDigits", True)
62  return MuonHitTesterCfg(flags, name = name, outFile = outFile, **kwargs)
63 
64 
65 if __name__=="__main__":
66  from MuonGeoModelTestR4.testGeoModel import setupGeoR4TestCfg, SetupArgParser, executeTest
67  parser = SetupArgParser()
68  parser.add_argument("--runTester", help="Choice on the tester to setup", default="SIM", choices=["SIM", "DIGI", "PILEUP"])
69  parser.set_defaults(nEvents = -1)
70  parser.set_defaults(inputFile=["/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/MuonGeomRTT/R3SimHits.pool.root"])
71  parser.set_defaults(outRootFile="SimHitDumpNtuple.root")
72 
73  args = parser.parse_args()
74  flags, cfg = setupGeoR4TestCfg(args)
75 
76  from MuonConfig.MuonDataPrepConfig import xAODUncalibMeasPrepCfg
77  cfg.merge(xAODUncalibMeasPrepCfg(flags))
78 
79  if args.runTester != "SIM":
80  if flags.Detector.GeometryMDT:
81  from MuonConfig.MuonByteStreamCnvTestConfig import MdtRdoToMdtDigitCfg
82  cfg.merge(MdtRdoToMdtDigitCfg(flags))
83  if flags.Detector.GeometryRPC:
84  from MuonConfig.MuonByteStreamCnvTestConfig import RpcRdoToRpcDigitCfg
85  cfg.merge(RpcRdoToRpcDigitCfg(flags))
86  if flags.Detector.GeometryTGC:
87  from MuonConfig.MuonByteStreamCnvTestConfig import TgcRdoToTgcDigitCfg
88  cfg.merge(TgcRdoToTgcDigitCfg(flags))
89  if flags.Detector.GeometrysTGC:
90  from MuonConfig.MuonByteStreamCnvTestConfig import STGC_RdoToDigitCfg
91  cfg.merge(STGC_RdoToDigitCfg(flags))
92  if flags.Detector.GeometryMM:
93  from MuonConfig.MuonByteStreamCnvTestConfig import MM_RdoToDigitCfg
94  cfg.merge(MM_RdoToDigitCfg(flags))
95 
96  if args.runTester == "SIM":
97  cfg.merge(MuonHitTesterCfg(flags,outFile=args.outRootFile))
98  elif args.runTester == "DIGI":
99  cfg.merge(MuonDigiTestCfg(flags,outFile=args.outRootFile))
100  elif args.runTester == "PILEUP":
101  cfg.merge(MuonPileUpTestCfg(flags,outFile=args.outRootFile))
102 
103  executeTest(cfg)
104 
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.MuonByteStreamCnvTestConfig.MdtRdoToMdtDigitCfg
def MdtRdoToMdtDigitCfg(flags, name="MdtRdoToMdtDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:20
python.MdtCablingTester.SetupArgParser
def SetupArgParser()
Definition: MdtCablingTester.py:3
python.testGeoModel.setupHistSvcCfg
def setupHistSvcCfg(flags, outFile="MdtGeoDump.root", outStream="GEOMODELTESTER")
Definition: MuonPhaseII/MuonDetDescr/MuonGeoModelTestR4/python/testGeoModel.py:55
MuonHitTestConfig.MuonPileUpTestCfg
def MuonPileUpTestCfg(flags, name="MuonDigiTester", outFile="DigiTest.root", **kwargs)
Definition: MuonHitTestConfig.py:54
python.testGeoModel.executeTest
def executeTest(cfg)
Definition: MuonPhaseII/MuonDetDescr/MuonGeoModelTestR4/python/testGeoModel.py:224
python.testGeoModel.setupGeoR4TestCfg
def setupGeoR4TestCfg(args, flags=None)
Definition: MuonPhaseII/MuonDetDescr/MuonGeoModelTestR4/python/testGeoModel.py:122
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
python.MuonByteStreamCnvTestConfig.RpcRdoToRpcDigitCfg
def RpcRdoToRpcDigitCfg(flags, name="RpcRdoToRpcDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:44
MuonHitTestConfig.MuonDigiTestCfg
def MuonDigiTestCfg(flags, name="MuonDigiTester", outFile="DigiTest.root", **kwargs)
Definition: MuonHitTestConfig.py:45
python.MuonByteStreamCnvTestConfig.TgcRdoToTgcDigitCfg
def TgcRdoToTgcDigitCfg(flags, name="TgcRdoToTgcDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:91
python.MuonByteStreamCnvTestConfig.STGC_RdoToDigitCfg
def STGC_RdoToDigitCfg(flags, name="STGC_RdoToDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:116
python.MuonDataPrepConfig.xAODUncalibMeasPrepCfg
def xAODUncalibMeasPrepCfg(flags)
Configuriation snippet to schedule all algorithms providing the Uncalibrated measurements.
Definition: MuonDataPrepConfig.py:29
python.MuonByteStreamCnvTestConfig.MM_RdoToDigitCfg
def MM_RdoToDigitCfg(flags, name="MM_RdoToDigitAlg", **kwargs)
Definition: MuonByteStreamCnvTestConfig.py:140