ATLAS Offline Software
Loading...
Searching...
No Matches
python.STDM6 Namespace Reference

Functions

 STDM6KernelCfg (flags, name='STDM6Kernel', **kwargs)
 JETM1ExtraContentCfg (flags)
 STDM6CoreCfg (flags, name_tag='STDM6', StreamName='StreamDAOD_STDM6', TriggerListsHelper=None, TauJets_EleRM_in_input=None)
 STDM6Cfg (flags)

Variables

 logSTDM6 = logging.getLogger('STDM6')

Function Documentation

◆ JETM1ExtraContentCfg()

python.STDM6.JETM1ExtraContentCfg ( flags)

Definition at line 79 of file STDM6.py.

79def JETM1ExtraContentCfg(flags):
80
81 acc = ComponentAccumulator()
82
83 from JetRecConfig.JetRecConfig import JetRecCfg, getModifier
84 from JetRecConfig.StandardJetMods import stdJetModifiers
85 from JetRecConfig.StandardSmallRJets import AntiKt4PV0Track, AntiKt4EMPFlow, AntiKt4EMPFlowNoPtCut, AntiKt4EMPFlowML, AntiKt4EMTopoNoPtCut
86
87 #=======================================
88 # Schedule additional jet decorations
89 #=======================================
90 bJVTTool = getModifier(AntiKt4EMPFlow, stdJetModifiers['bJVT'], stdJetModifiers['bJVT'].modspec, flags=flags)
91 acc.addEventAlgo(CompFactory.JetDecorationAlg(name='bJVTAlg',
92 JetContainer='AntiKt4EMPFlowJets',
93 Decorators=[bJVTTool]))
94
95 #=======================================
96 # R = 0.4 track-jets (needed for Rtrk)
97 #=======================================
98 jetList = [AntiKt4PV0Track]
99
100 #=======================================
101 # SCHEDULE SMALL-R JETS WITH NO PT CUT
102 #=======================================
103 if flags.Input.isMC:
104 jetList += [AntiKt4EMPFlowNoPtCut, AntiKt4EMPFlowML, AntiKt4EMTopoNoPtCut]
105
106 #=======================================
107 # CSSK R = 0.4 UFO jets
108 #=======================================
109 if flags.Input.isMC:
110 from JetRecConfig.StandardSmallRJets import AntiKt4UFOCSSKNoPtCut
111 AntiKt4UFOCSSKNoPtCut_JETM1 = AntiKt4UFOCSSKNoPtCut.clone(
112 modifiers = AntiKt4UFOCSSKNoPtCut.modifiers+("NNJVT",)
113 )
114 jetList += [AntiKt4UFOCSSKNoPtCut_JETM1]
115 else:
116 from JetRecConfig.StandardSmallRJets import AntiKt4UFOCSSK
117 AntiKt4UFOCSSK_JETM1 = AntiKt4UFOCSSK.clone(
118 modifiers = AntiKt4UFOCSSK.modifiers+("NNJVT",)
119 )
120 jetList += [AntiKt4UFOCSSK_JETM1]
121
122
123 for jd in jetList:
124 acc.merge(JetRecCfg(flags,jd))
125
126 #=======================================
127 # UFO CSSK event shape
128 #=======================================
129
130 from JetRecConfig.JetRecConfig import getConstitPJGAlg
131 from JetRecConfig.StandardJetConstits import stdConstitDic as cst
132 from JetRecConfig.JetInputConfig import buildEventShapeAlg
133
134 acc.addEventAlgo(buildEventShapeAlg(cst.UFOCSSK,'', suffix=None))
135 acc.addEventAlgo(getConstitPJGAlg(cst.UFOCSSK, suffix='Neut'))
136 acc.addEventAlgo(buildEventShapeAlg(cst.UFOCSSK,'', suffix='Neut'))
137
138 #=======================================
139 # More detailed truth information
140 #=======================================
141
142 if flags.Input.isMC:
143 from DerivationFrameworkMCTruth.MCTruthCommonConfig import AddTopQuarkAndDownstreamParticlesCfg
144 acc.merge(AddTopQuarkAndDownstreamParticlesCfg(flags, generations=4,rejectHadronChildren=True))
145
146 #=======================================
147 # Add Run-2 jet trigger collections
148 # Only needed for Run-2 due to different aux container type (JetTrigAuxContainer) which required special wrapper for conversion to AuxContainerBase
149 # In Run-3, the aux. container type is directly JetAuxContainer (no conversion needed)
150 #=======================================
151
152 if flags.Trigger.EDMVersion == 2:
153 triggerNames = ["JetContainer_a4tcemsubjesFS", "JetContainer_a4tcemsubjesISFS", "JetContainer_GSCJet",
154 "JetContainer_a10tclcwsubjesFS", "JetContainer_a10tclcwsubFS", "JetContainer_a10ttclcwjesFS"]
155
156 for trigger in triggerNames:
157 wrapperName = trigger+'AuxWrapper'
158 auxContainerName = 'HLT_xAOD__'+trigger+'Aux'
159
160 acc.addEventAlgo(CompFactory.xAODMaker.AuxStoreWrapper( wrapperName, SGKeys = [ auxContainerName+"." ] ))
161
162 return acc
163
164

◆ STDM6Cfg()

python.STDM6.STDM6Cfg ( flags)

Definition at line 369 of file STDM6.py.

369def STDM6Cfg(flags):
370
371 logSTDM6.info('****************** STARTING STDM6 *****************')
372
373 stream_name = 'StreamDAOD_STDM6'
374 acc = ComponentAccumulator()
375
376 # Get the lists of triggers needed for trigger matching.
377 # This is needed at this scope (for the slimming) and further down in the config chain
378 # for actually configuring the matching, so we create it here and pass it down
379 # TODO: this should ideally be called higher up to avoid it being run multiple times in a train
380 from DerivationFrameworkPhys.TriggerListsHelper import TriggerListsHelper
381 STDM6TriggerListsHelper = TriggerListsHelper(flags)
382
383 # for AOD produced before 24.0.17, the electron removal tau is not available
384 TauJets_EleRM_in_input = (flags.Input.TypedCollections.count('xAOD::TauJetContainer#TauJets_EleRM') > 0)
385 if TauJets_EleRM_in_input:
386 logSTDM6.info("TauJets_EleRM is in the input AOD. Relevant containers will be scheduled")
387 else:
388 logSTDM6.info("TauJets_EleRM is Not in the input AOD. No relevant containers will be written")
389
390 # Common augmentations
391 acc.merge(STDM6KernelCfg(
392 flags,
393 name="STDM6Kernel",
394 StreamName = stream_name,
395 TriggerListsHelper = STDM6TriggerListsHelper,
396 TauJets_EleRM_in_input=TauJets_EleRM_in_input
397 ))
398 # STDM6 content
399 acc.merge(STDM6CoreCfg(
400 flags,
401 "STDM6",
402 StreamName = stream_name,
403 TriggerListsHelper = STDM6TriggerListsHelper,
404 TauJets_EleRM_in_input=TauJets_EleRM_in_input
405 ))
406
407 return acc

◆ STDM6CoreCfg()

python.STDM6.STDM6CoreCfg ( flags,
name_tag = 'STDM6',
StreamName = 'StreamDAOD_STDM6',
TriggerListsHelper = None,
TauJets_EleRM_in_input = None )

Definition at line 165 of file STDM6.py.

165def STDM6CoreCfg(flags, name_tag='STDM6', StreamName='StreamDAOD_STDM6', TriggerListsHelper=None, TauJets_EleRM_in_input=None):
166
167 if TriggerListsHelper is None:
168 from DerivationFrameworkPhys.TriggerListsHelper import TriggerListsHelper
169 TriggerListsHelper = TriggerListsHelper(flags)
170
171 if TauJets_EleRM_in_input is None:
172 # for AOD produced before 24.0.17, the electron removal tau is not available
173 TauJets_EleRM_in_input = (flags.Input.TypedCollections.count('xAOD::TauJetContainer#TauJets_EleRM') > 0)
174
175 acc = ComponentAccumulator()
176
177
178 from DerivationFrameworkHiggs.HiggsPhysContent import HiggsAugmentationAlgsCfg
179 acc.merge(HiggsAugmentationAlgsCfg(flags))
180
181
183 from IsolationSelection.IsolationSelectionConfig import IsoCloseByAlgsCfg
184 acc.merge(IsoCloseByAlgsCfg(flags, suff = "_"+name_tag, isPhysLite = False, stream_name = StreamName))
185
186 #===================================================
187 # HEAVY FLAVOR CLASSIFICATION FOR ttbar+jets EVENTS
188 #===================================================
189 from DerivationFrameworkMCTruth.HFClassificationCommonConfig import HFClassificationCommonCfg
190 acc.merge(HFClassificationCommonCfg(flags))
191
192 # ============================
193 # Define contents of the format
194 # =============================
195 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
196 from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
197 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
198
199 STDM6SlimmingHelper = SlimmingHelper(name_tag+"SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
200 STDM6SlimmingHelper.SmartCollections = ["EventInfo",
201 "Electrons",
202 "Photons",
203 "Muons",
204 "PrimaryVertices",
205 "InDetTrackParticles",
206 "AntiKt4EMTopoJets",
207 "AntiKt4EMPFlowJets",
208 "AntiKt10UFOCSSKJets",
209 "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets",
210 "MET_Baseline_AntiKt4EMTopo",
211 "MET_Baseline_AntiKt4EMPFlow",
212 "TauJets",
213 "TauJets_MuonRM",
214 "DiTauJets",
215 "DiTauJetsLowPt"]
216 if TauJets_EleRM_in_input:
217 STDM6SlimmingHelper.SmartCollections.append("TauJets_EleRM")
218
219 # STDM6 needs additionally full info on:
220 # - AFP
221 # - Calo clusters
222 STDM6SlimmingHelper.AllVariables += [ "AFPSiHitContainer",
223 "AFPToFHitContainer",
224 "AFPSiHitsClusterContainer",
225 "AFPTrackContainer",
226 "AFPToFTrackContainer",
227 "AFPProtonContainer",
228 "AFPVertexContainer",
229 "CaloCalTopoClusters",
230 ]
231
232 # additional contenct from JET-M1
233 # Maciej LewickiL: I'd rather keep it the way it is because it will be easier to keep up with any future changes in JET-M1
234 STDM6SlimmingHelper.AllVariables += ["MuonSegments", "EventInfo",
235 "Kt4EMTopoOriginEventShape","Kt4EMPFlowEventShape","Kt4EMPFlowNeutEventShape","Kt4UFOCSSKEventShape","Kt4UFOCSSKNeutEventShape",
236 "AntiKt4EMPFlowJets"]
237
238 excludedVertexAuxData = "-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV"
239 StaticContent = []
240 StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Tight_Vertices"]
241 StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Tight_VerticesAux." + excludedVertexAuxData]
242 StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Medium_Vertices"]
243 StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Medium_VerticesAux." + excludedVertexAuxData]
244 StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Loose_Vertices"]
245 StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Loose_VerticesAux." + excludedVertexAuxData]
246
247 STDM6SlimmingHelper.StaticContent = StaticContent
248
249 # Extra content
250 STDM6SlimmingHelper.ExtraVariables += ["AntiKt4EMTopoJets.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt.constituentLinks",
251 "AntiKt4EMPFlowJets.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt.isJvtHS.isJvtPU",
252 "TruthPrimaryVertices.t.x.y.z",
253 "InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.numberOfTRTHits.numberOfTRTOutliers",
254 "EventInfo.GenFiltHT.GenFiltMET.GenFiltHTinclNu.GenFiltPTZ.GenFiltFatJ.HF_Classification.HF_SimpleClassification",
255 "TauJets.dRmax.etOverPtLeadTrk",
256 "TauJets_MuonRM.dRmax.etOverPtLeadTrk",
257 "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET.ex.ey",
258 "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_mht.ex.ey"]
259 if TauJets_EleRM_in_input:
260 STDM6SlimmingHelper.ExtraVariables += ["TauJets_EleRM.dRmax.etOverPtLeadTrk"]
261
262 # additional content from JET-M1
263 # Maciej Lewicki: I'd rather keep it the way it is because it will be easier to keep up with any future changes in JET-M1
264 STDM6SlimmingHelper.ExtraVariables += ["AntiKt4EMPFlowJets.passOnlyBJVT.DFCommonJets_bJvt.isJvtHS.isJvtPU",
265 "InDetTrackParticles.truthMatchProbability",
266 "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets.zg.rg.NumTrkPt1000.TrackWidthPt1000.GhostMuonSegmentCount.EnergyPerSampling.GhostTrack",
267 "AntiKt10UFOCSSKJets.NumTrkPt1000.TrackWidthPt1000.GhostMuonSegmentCount.EnergyPerSampling.GhostTrack"]
268
269
270 # FTAG Xbb extra content
271 extraList = []
272 for tagger in ["GN2Xv00", "GN2XWithMassv00", "GN2Xv01"]:
273 for score in ["phbb", "phcc", "ptop", "pqcd"]:
274 extraList.append(f"{tagger}_{score}")
275 STDM6SlimmingHelper.ExtraVariables += ["AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets." + ".".join(extraList)]
276
277 # Truth extra content
278 # ---> extetnding deafult PHYS conttents with:
279 # - AntiKt4EMTTopoJets
280 # - AntiKt4EMPFlowJets
281 # - TruthPrimaryVertices
282 # - InDetTrackParticles
283 if flags.Input.isMC:
284
285 from DerivationFrameworkMCTruth.MCTruthCommonConfig import addTruth3ContentToSlimmerTool
286 addTruth3ContentToSlimmerTool(STDM6SlimmingHelper)
287
288 # coming from the JET-M1 derivation
289 STDM6SlimmingHelper.AppendToDictionary.update({'TruthParticles': 'xAOD::TruthParticleContainer',
290 'TruthParticlesAux': 'xAOD::TruthParticleAuxContainer'})
291
292 STDM6SlimmingHelper.AllVariables += ['TruthHFWithDecayParticles','TruthHFWithDecayVertices','TruthCharm','TruthPileupParticles','InTimeAntiKt4TruthJets','OutOfTimeAntiKt4TruthJets']
293 STDM6SlimmingHelper.AllVariables += ["TruthEvents", "TruthParticles", "TruthVertices", "AntiKt4TruthJets","AntiKt4TruthWZJets"]
294 STDM6SlimmingHelper.ExtraVariables += ["Electrons.TruthLink",
295 "Muons.TruthLink",
296 "Photons.TruthLink",
297 "AntiKt4EMTopoJets.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
298 "AntiKt4EMPFlowJets.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
299 "TruthPrimaryVertices.t.x.y.z",
300 "InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.numberOfTRTHits.numberOfTRTOutliers",
301 "PrimaryVertices.x.y.z.covariance.trackWeights.vertexType.sumPt2",
302 ]
303
304 # Maciej Lewicki: coming from the JET-M1 derivation
305 STDM6SlimmingHelper.SmartCollections += ["AntiKt4TruthWZJets"]
306 STDM6SlimmingHelper.AllVariables += ["TruthTopQuarkWithDecayParticles","TruthTopQuarkWithDecayVertices",
307 "AntiKt4TruthJets", "InTimeAntiKt4TruthJets", "OutOfTimeAntiKt4TruthJets", "TruthParticles"]
308 STDM6SlimmingHelper.ExtraVariables += ["TruthVertices.uid.z"]
309
310 from DerivationFrameworkMCTruth.MCTruthCommonConfig import AddTauAndDownstreamParticlesCfg
311 acc.merge(AddTauAndDownstreamParticlesCfg(flags))
312 STDM6SlimmingHelper.AllVariables += ['TruthTausWithDecayParticles','TruthTausWithDecayVertices']
313
314 STDM6SlimmingHelper.AppendToDictionary.update({'Kt4UFOCSSKEventShape':'xAOD::EventShape',
315 'Kt4UFOCSSKEventShapeAux':'xAOD::EventShapeAuxInfo',
316 'Kt4UFOCSSKNeutEventShape':'xAOD::EventShape',
317 'Kt4UFOCSSKNeutEventShapeAux':'xAOD::EventShapeAuxInfo'})
318
319
320 from DerivationFrameworkHiggs.HiggsPhysContent import setupHiggsSlimmingVariables
321 setupHiggsSlimmingVariables(flags, STDM6SlimmingHelper)
322
323 # Trigger content
324 STDM6SlimmingHelper.IncludeTriggerNavigation = False
325 # modification from JET-M1 derivation:
326 STDM6SlimmingHelper.IncludeJetTriggerContent = True
327 STDM6SlimmingHelper.IncludeMuonTriggerContent = False
328 STDM6SlimmingHelper.IncludeEGammaTriggerContent = False
329 STDM6SlimmingHelper.IncludeJetTauEtMissTriggerContent = False
330 STDM6SlimmingHelper.IncludeTauTriggerContent = False
331 STDM6SlimmingHelper.IncludeEtMissTriggerContent = False
332 STDM6SlimmingHelper.IncludeBJetTriggerContent = False
333 STDM6SlimmingHelper.IncludeBPhysTriggerContent = False
334 STDM6SlimmingHelper.IncludeMinBiasTriggerContent = False
335
336 # Trigger matching
337 # Run 2
338 if flags.Trigger.EDMVersion == 2:
339 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import AddRun2TriggerMatchingToSlimmingHelper
340 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = STDM6SlimmingHelper,
341 OutputContainerPrefix = "TrigMatch_",
342 TriggerList = TriggerListsHelper.Run2TriggerNamesTau)
343 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = STDM6SlimmingHelper,
344 OutputContainerPrefix = "TrigMatch_",
345 TriggerList = TriggerListsHelper.Run2TriggerNamesNoTau)
346 triggerNames = ["a4tcemsubjesFS", "a4tcemsubjesISFS", "a10tclcwsubjesFS", "a10tclcwsubFS", "a10ttclcwjesFS", "GSCJet"]
347 for trigger in triggerNames:
348 STDM6SlimmingHelper.FinalItemList.append('xAOD::AuxContainerBase!#HLT_xAOD__JetContainer_'+trigger+'Aux.pt.eta.phi.m')
349
350 # Run 3, or Run 2 with navigation conversion
351 if flags.Trigger.EDMVersion == 3 or (flags.Trigger.EDMVersion == 2 and flags.Trigger.doEDMVersionConversion):
352 from TrigNavSlimmingMT.TrigNavSlimmingMTConfig import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
353 AddRun3TrigNavSlimmingCollectionsToSlimmingHelper(STDM6SlimmingHelper)
354
355 jetOutputList = ["AntiKt4PV0TrackJets", "AntiKt4UFOCSSKJets"]
356 if flags.Input.isMC:
357 jetOutputList = ["AntiKt4PV0TrackJets","AntiKt4UFOCSSKNoPtCutJets","AntiKt4EMPFlowNoPtCutJets","AntiKt4EMTopoNoPtCutJets","AntiKt4EMPFlowMLJets"]
358 from DerivationFrameworkJetEtMiss.JetCommonConfig import addJetsToSlimmingTool
359 addJetsToSlimmingTool(STDM6SlimmingHelper, jetOutputList, STDM6SlimmingHelper.SmartCollections)
360
361
362 # Output stream
363 STDM6ItemList = STDM6SlimmingHelper.GetItemList()
364 acc.merge(OutputStreamCfg(flags, "DAOD_"+name_tag, ItemList=STDM6ItemList, AcceptAlgs=[name_tag+"Kernel"]))
365 acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_"+name_tag, AcceptAlgs=[name_tag+"Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))
366
367 return acc
368

◆ STDM6KernelCfg()

python.STDM6.STDM6KernelCfg ( flags,
name = 'STDM6Kernel',
** kwargs )
Configure the derivation framework driving algorithm (kernel) for STDM6

Definition at line 24 of file STDM6.py.

24def STDM6KernelCfg(flags, name='STDM6Kernel', **kwargs):
25 """Configure the derivation framework driving algorithm (kernel) for STDM6"""
26 acc = ComponentAccumulator()
27
28 # Common augmentations
29 from DerivationFrameworkPhys.PhysCommonConfig import PhysCommonAugmentationsCfg
30 acc.merge(PhysCommonAugmentationsCfg(
31 flags,
32 TriggerListsHelper = kwargs['TriggerListsHelper'],
33 TauJets_EleRM_in_input = kwargs['TauJets_EleRM_in_input']
34 ))
35
36 from DerivationFrameworkInDet.InDetToolsConfig import InDetTrackSelectionToolWrapperCfg
37 DFCommonTrackSelection = acc.getPrimaryAndMerge(InDetTrackSelectionToolWrapperCfg(
38 flags,
39 name = "DFJETM1CommonTrackSelectionLoose",
40 CutLevel = "Loose",
41 DecorationName = "DFJETM1Loose"))
42
43 acc.addEventAlgo(CompFactory.DerivationFramework.CommonAugmentation("JETM1CommonKernel", AugmentationTools = [DFCommonTrackSelection]))
44
45 # Thinning tools
46 # These are set up in PhysCommonThinningConfig. Only thing needed here the list of tools to schedule
47 thinningToolsArgs = {
48 'TrackParticleThinningToolName' : "STDM6TrackParticleThinningTool",
49 'MuonTPThinningToolName' : "STDM6MuonTPThinningTool",
50 'TauJetThinningToolName' : "STDM6TauJetThinningTool",
51 'TauJets_MuonRMThinningToolName' : "STDM6TauJets_MuonRMThinningTool",
52 'DiTauThinningToolName' : "STDM6DiTauThinningTool",
53 'DiTauTPThinningToolName' : "STDM6DiTauTPThinningTool",
54 'DiTauLowPtThinningToolName' : "STDM6DiTauLowPtThinningTool",
55 'DiTauLowPtTPThinningToolName' : "STDM6DiTauLowPtTPThinningTool",
56 }
57 # for AOD produced before 24.0.17, the electron removal tau is not available
58 if kwargs.get('TauJets_EleRM_in_input', False):
59 thinningToolsArgs['TauJets_EleRMThinningToolName'] = "STDM6TauJets_EleRMThinningTool"
60 # Configure the thinning tools
61 from DerivationFrameworkPhys.PhysCommonThinningConfig import PhysCommonThinningCfg
62 acc.merge(PhysCommonThinningCfg(flags, StreamName = kwargs['StreamName'], **thinningToolsArgs))
63 # Get them from the CA so they can be added to the kernel
64 thinningTools = []
65 for key in thinningToolsArgs:
66 thinningTools.append(acc.getPublicTool(thinningToolsArgs[key]))
67
68 # The kernel algorithm itself
69 DerivationKernel = CompFactory.DerivationFramework.DerivationKernel
70 acc.addEventAlgo(DerivationKernel(name, ThinningTools = thinningTools))
71
72 # not using the thinning from the JET-M1 derivation!
73
74 # From JET-M1 - extra jet content:
75 acc.merge(JETM1ExtraContentCfg(flags))
76
77 return acc
78

Variable Documentation

◆ logSTDM6

python.STDM6.logSTDM6 = logging.getLogger('STDM6')

Definition at line 19 of file STDM6.py.