ATLAS Offline Software
Loading...
Searching...
No Matches
MDT_DigitizationConfig Namespace Reference

Functions

 MDT_FirstXing ()
 MDT_LastXing ()
 MDT_RangeCfg (flags, name="MDT_Range", **kwargs)
 RT_Relation_DB_DigiToolCfg (flags, name="RT_Relation_DB_DigiTool", **kwargs)
 MDT_Response_DigiToolCfg (flags, name="MDT_Response_DigiTool", **kwargs)
 MDT_DigitizationToolCommonCfg (flags, name="MdtDigitizationTool", **kwargs)
 MDT_DigitizationToolCfg (flags, name="MdtDigitizationTool", **kwargs)
 MDT_OverlayDigitizationToolCfg (flags, name="Mdt_OverlayDigitizationTool", **kwargs)
 MDT_OutputCfg (flags)
 MDT_DigitizationBasicCfg (flags, **kwargs)
 MDT_OverlayDigitizationBasicCfg (flags, **kwargs)
 MDT_DigitizationCfg (flags, **kwargs)
 MDT_DigitizationDigitToRDOCfg (flags)

Detailed Description

Define methods to construct configured MDT Digitization tools and algorithms

Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration

Function Documentation

◆ MDT_DigitizationBasicCfg()

MDT_DigitizationConfig.MDT_DigitizationBasicCfg ( flags,
** kwargs )
Return ComponentAccumulator for MDT digitization

Definition at line 142 of file MDT_DigitizationConfig.py.

142def MDT_DigitizationBasicCfg(flags, **kwargs):
143 """Return ComponentAccumulator for MDT digitization"""
144 acc = MuonGeoModelCfg(flags)
145 if "PileUpTools" not in kwargs:
146 PileUpTools = acc.popToolsAndMerge(MDT_DigitizationToolCfg(flags))
147 kwargs["PileUpTools"] = PileUpTools
148 acc.merge(PileUpToolsCfg(flags, **kwargs))
149 return acc
150
151

◆ MDT_DigitizationCfg()

MDT_DigitizationConfig.MDT_DigitizationCfg ( flags,
** kwargs )
Return ComponentAccumulator for MDT digitization and Output

Definition at line 179 of file MDT_DigitizationConfig.py.

179def MDT_DigitizationCfg(flags, **kwargs):
180 """Return ComponentAccumulator for MDT digitization and Output"""
181 acc = MDT_DigitizationBasicCfg(flags, **kwargs)
182 acc.merge(MDT_OutputCfg(flags))
183 return acc
184
185

◆ MDT_DigitizationDigitToRDOCfg()

MDT_DigitizationConfig.MDT_DigitizationDigitToRDOCfg ( flags)
Return ComponentAccumulator with MDT digitization and Digit to MDTCSM RDO

Definition at line 186 of file MDT_DigitizationConfig.py.

186def MDT_DigitizationDigitToRDOCfg(flags):
187 """Return ComponentAccumulator with MDT digitization and Digit to MDTCSM RDO"""
188 acc = MDT_DigitizationCfg(flags)
189 acc.merge(MDTCablingConfigCfg(flags))
190 acc.merge(MdtDigitToMdtRDOCfg(flags))
191 return acc

◆ MDT_DigitizationToolCfg()

MDT_DigitizationConfig.MDT_DigitizationToolCfg ( flags,
name = "MdtDigitizationTool",
** kwargs )
Return ComponentAccumulator with configured MdtDigitizationTool

Definition at line 96 of file MDT_DigitizationConfig.py.

96def MDT_DigitizationToolCfg(flags, name="MdtDigitizationTool", **kwargs):
97 """Return ComponentAccumulator with configured MdtDigitizationTool"""
98 acc = ComponentAccumulator()
99 if flags.Digitization.PileUp:
100 intervals = []
101 if not flags.Digitization.DoXingByXingPileUp:
102 intervals += [acc.popToolsAndMerge(MDT_RangeCfg(flags))]
103 kwargs.setdefault("PileUpMergeSvc", acc.getPrimaryAndMerge(PileUpMergeSvcCfg(flags, Intervals=intervals)))
104 else:
105 kwargs.setdefault("PileUpMergeSvc", '')
106 kwargs.setdefault("OnlyUseContainerName", flags.Digitization.PileUp)
107 kwargs.setdefault("OutputObjectName", "MDT_DIGITS")
108 if flags.Common.ProductionStep == ProductionStep.PileUpPresampling:
109 kwargs.setdefault("OutputSDOName", flags.Overlay.BkgPrefix + "MDT_SDO")
110 else:
111 kwargs.setdefault("OutputSDOName", "MDT_SDO")
112 tool = acc.popToolsAndMerge(MDT_DigitizationToolCommonCfg(flags, name, **kwargs))
113 acc.setPrivateTools(tool)
114 return acc
115
116

◆ MDT_DigitizationToolCommonCfg()

MDT_DigitizationConfig.MDT_DigitizationToolCommonCfg ( flags,
name = "MdtDigitizationTool",
** kwargs )
Return ComponentAccumulator with common MdtDigitizationTool config

Definition at line 57 of file MDT_DigitizationConfig.py.

57def MDT_DigitizationToolCommonCfg(flags, name="MdtDigitizationTool", **kwargs):
58 """Return ComponentAccumulator with common MdtDigitizationTool config"""
59 from MuonConfig.MuonCondAlgConfig import MdtCondDbAlgCfg # MT-safe conditions access
60 from MuonConfig.MuonCalibrationConfig import MdtCalibDbAlgCfg
61
62 acc = ComponentAccumulator()
63 acc.merge(MdtCondDbAlgCfg(flags))
64 acc.merge(MdtCalibDbAlgCfg(flags))
65
66
67 if not flags.Muon.usePhaseIIGeoSetup:
68 kwargs.setdefault("DiscardEarlyHits", True)
69 kwargs.setdefault("UseTof", flags.Beam.Type is not BeamType.Cosmics)
70 kwargs.setdefault("DoQballCharge", (flags.Input.SpecialConfiguration.get("MDT_QballConfig", "False") == "True"))
71 kwargs.setdefault("DigitizationTool", acc.popToolsAndMerge(MDT_Response_DigiToolCfg(flags)))
72 else:
73
74 from ActsAlignmentAlgs.AlignmentAlgsConfig import ActsGeometryContextAlgCfg
75 acc.merge(ActsGeometryContextAlgCfg(flags))
76 kwargs.setdefault("useTwinTubes", True)
77 if kwargs["useTwinTubes"]:
78 from MuonConfig.MuonCablingConfig import MdtTwinTubeMapCondAlgCfg
79 acc.merge(MdtTwinTubeMapCondAlgCfg(flags))
80 kwargs.setdefault("DigitizationTool", acc.popToolsAndMerge(RT_Relation_DB_DigiToolCfg(flags)))
81 kwargs.setdefault("SimHitKey", "xMdtSimHits")
82 kwargs.setdefault("StreamName", "MdtDigitForklifting")
83
84 if flags.Digitization.DoXingByXingPileUp:
85 kwargs.setdefault("FirstXing", MDT_FirstXing())
86 kwargs.setdefault("LastXing", MDT_LastXing())
87 from RngComps.RngCompsConfig import AthRNGSvcCfg
88 kwargs.setdefault("RndmSvc", acc.getPrimaryAndMerge(AthRNGSvcCfg(flags)))
89 if not flags.Muon.usePhaseIIGeoSetup:
90 acc.setPrivateTools(CompFactory.MdtDigitizationTool(name, **kwargs))
91 else:
92 acc.setPrivateTools(CompFactory.MuonR4.MdtDigitizationTool(name, **kwargs))
93 return acc
94
95

◆ MDT_FirstXing()

MDT_DigitizationConfig.MDT_FirstXing ( )

Definition at line 19 of file MDT_DigitizationConfig.py.

19def MDT_FirstXing():
20 return -800
21
22

◆ MDT_LastXing()

MDT_DigitizationConfig.MDT_LastXing ( )

Definition at line 23 of file MDT_DigitizationConfig.py.

23def MDT_LastXing():
24 # was 800 for large time window
25 return 150
26
27

◆ MDT_OutputCfg()

MDT_DigitizationConfig.MDT_OutputCfg ( flags)
Return ComponentAccumulator with Output for MDT. Not standalone.

Definition at line 126 of file MDT_DigitizationConfig.py.

126def MDT_OutputCfg(flags):
127 """Return ComponentAccumulator with Output for MDT. Not standalone."""
128 acc = ComponentAccumulator()
129 if flags.Output.doWriteRDO:
130 ItemList = ["MdtCsmContainer#*"]
131 if flags.Digitization.EnableTruth:
132 for pref in [flags.Overlay.SigPrefix, flags.Overlay.BkgPrefix, ""]:
133
134 ItemList += [f"MuonSimDataCollection#{pref}MDT_SDO"]
135
136 ItemList += [f"xAOD::MuonSimHitContainer#{pref}MDT_SDO", f"xAOD::MuonSimHitAuxContainer#{pref}MDT_SDOAux."]
137 acc.merge(TruthDigitizationOutputCfg(flags))
138 acc.merge(OutputStreamCfg(flags, "RDO", ItemList))
139 return acc
140
141

◆ MDT_OverlayDigitizationBasicCfg()

MDT_DigitizationConfig.MDT_OverlayDigitizationBasicCfg ( flags,
** kwargs )
Return ComponentAccumulator with MDT Overlay digitization

Definition at line 152 of file MDT_DigitizationConfig.py.

152def MDT_OverlayDigitizationBasicCfg(flags, **kwargs):
153 """Return ComponentAccumulator with MDT Overlay digitization"""
154 acc = MuonGeoModelCfg(flags)
155 from MuonConfig.MuonCalibrationConfig import MdtCalibDbAlgCfg
156 acc.merge(MdtCalibDbAlgCfg(flags))
157
158 if flags.Common.ProductionStep != ProductionStep.FastChain:
159 from SGComps.SGInputLoaderConfig import SGInputLoaderCfg
160 if flags.Muon.usePhaseIIGeoSetup:
161 acc.merge(SGInputLoaderCfg(flags, ["xAOD::MuonSimHitContainer#xMdtSimHits",
162 "xAOD::MuonSimHitAuxContainer#xMdtSimHitsAux."]))
163 else:
164 acc.merge(SGInputLoaderCfg(flags, ["MDTSimHitCollection#MDT_Hits"]))
165
166 kwargs.setdefault("DigitizationTool", acc.popToolsAndMerge(MDT_OverlayDigitizationToolCfg(flags)))
167
168 if flags.Concurrency.NumThreads > 0:
169 kwargs.setdefault("Cardinality", flags.Concurrency.NumThreads)
170
171 # Set common overlay extra inputs
172 kwargs.setdefault("ExtraInputs", flags.Overlay.ExtraInputs)
173
174 acc.addEventAlgo(CompFactory.MuonDigitizer(name="MDT_OverlayDigitizer", **kwargs))
175 return acc
176
177
178# with output defaults

◆ MDT_OverlayDigitizationToolCfg()

MDT_DigitizationConfig.MDT_OverlayDigitizationToolCfg ( flags,
name = "Mdt_OverlayDigitizationTool",
** kwargs )
Return ComponentAccumulator with MdtDigitizationTool configured for Overlay

Definition at line 117 of file MDT_DigitizationConfig.py.

117def MDT_OverlayDigitizationToolCfg(flags, name="Mdt_OverlayDigitizationTool", **kwargs):
118 """Return ComponentAccumulator with MdtDigitizationTool configured for Overlay"""
119 kwargs.setdefault("OnlyUseContainerName", False)
120 kwargs.setdefault("OutputObjectName", flags.Overlay.SigPrefix + "MDT_DIGITS")
121 kwargs.setdefault("OutputSDOName", flags.Overlay.SigPrefix + "MDT_SDO")
122 kwargs.setdefault("PileUpMergeSvc", '')
123 return MDT_DigitizationToolCommonCfg(flags, name, **kwargs)
124
125

◆ MDT_RangeCfg()

MDT_DigitizationConfig.MDT_RangeCfg ( flags,
name = "MDT_Range",
** kwargs )
Return a PileUpXingFolder tool configured for MDT

Definition at line 28 of file MDT_DigitizationConfig.py.

28def MDT_RangeCfg(flags, name="MDT_Range", **kwargs):
29 """Return a PileUpXingFolder tool configured for MDT"""
30 kwargs.setdefault("FirstXing", MDT_FirstXing())
31 kwargs.setdefault("LastXing", MDT_LastXing())
32 kwargs.setdefault("CacheRefreshFrequency", 1.0)
33 if flags.Muon.usePhaseIIGeoSetup:
34 kwargs.setdefault("ItemList", ["xAOD::MuonSimHitContainer#xMdtSimHits",
35 "xAOD::MuonSimHitAuxContainer#xMdtSimHitsAux."])
36 else:
37 kwargs.setdefault("ItemList", ["MDTSimHitCollection#MDT_Hits"])
38 return PileUpXingFolderCfg(flags, name, **kwargs)
39
40

◆ MDT_Response_DigiToolCfg()

MDT_DigitizationConfig.MDT_Response_DigiToolCfg ( flags,
name = "MDT_Response_DigiTool",
** kwargs )
Return a configured MDT_Response_DigiTool

Definition at line 48 of file MDT_DigitizationConfig.py.

48def MDT_Response_DigiToolCfg(flags, name="MDT_Response_DigiTool",**kwargs):
49 """Return a configured MDT_Response_DigiTool"""
50 acc = ComponentAccumulator()
51 kwargs.setdefault("DoQballGamma", (flags.Input.SpecialConfiguration.get("MDT_QballConfig", "False") == "True"))
52 MDT_Response_DigiTool = CompFactory.MDT_Response_DigiTool
53 acc.setPrivateTools(MDT_Response_DigiTool(name, **kwargs))
54 return acc
55
56

◆ RT_Relation_DB_DigiToolCfg()

MDT_DigitizationConfig.RT_Relation_DB_DigiToolCfg ( flags,
name = "RT_Relation_DB_DigiTool",
** kwargs )
Return an RT_Relation_DB_DigiTool

Definition at line 41 of file MDT_DigitizationConfig.py.

41def RT_Relation_DB_DigiToolCfg(flags, name="RT_Relation_DB_DigiTool", **kwargs):
42 """Return an RT_Relation_DB_DigiTool"""
43 acc = ComponentAccumulator()
44 acc.setPrivateTools(CompFactory.RT_Relation_DB_DigiTool(name, **kwargs))
45 return acc
46
47