3 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
4 from AthenaConfiguration.ComponentFactory
import CompFactory
5 from AthenaConfiguration.Enums
import ProductionStep
6 from DigitizationConfig.PileUpMergeSvcConfig
import PileUpMergeSvcCfg, PileUpXingFolderCfg
25 kwargs.setdefault(
'CacheRefreshFrequency', 1.0 )
26 kwargs.setdefault(
'ItemList', [
"LUCID_SimHitCollection#LucidSimHitsVector"] )
34 if flags.Digitization.PileUp:
36 if flags.Digitization.DoXingByXingPileUp:
41 kwargs.setdefault(
"mergeSvc", acc.getPrimaryAndMerge(
PileUpMergeSvcCfg(flags, Intervals=intervals)).name)
44 kwargs.setdefault(
"mergeSvc",
'')
47 from RngComps.RngCompsConfig
import AthRNGSvcCfg
48 kwargs.setdefault(
"RndmSvc", acc.getPrimaryAndMerge(
AthRNGSvcCfg(flags)).name)
50 kwargs.setdefault(
'pmtSmearing', [0.317, 0.000, 0.292, 0.316, 0.208, 0.178, 0.204, 0.281, 0.233, 0.261, 0.223, 0.250, 0.254, 0.239, 0.202, 0.224, 1, 1, 1, 1,
51 0.268, 0.277, 0.297, 0.310, 0.203, 0.347, 0.269, 0.241, 0.234, 0.234, 0.277, 0.297, 0.225, 0.297, 0.238, 0.000, 1, 1, 1, 1] )
52 kwargs.setdefault(
'pmtScaling', [1.010, 0.000, 0.991, 0.948, 1.152, 1.221, 1.160, 0.988, 1.092, 1.063, 1.143, 1.091, 1.109, 1.117, 1.185, 1.142, 1, 1, 1, 1,
53 1.023, 1.127, 1.043, 0.986, 1.148, 0.899, 0.898, 1.098, 1.115, 1.109, 1.127, 1.043, 1.085, 1.043, 1.063, 0.000, 1, 1, 1, 1] )
54 kwargs.setdefault(
'gasScaling', [1.176, 0.000, 1.217, 1.101, 1.143, 1.105, 1.103, 1.144, 1.075, 1.069, 1.100, 1.208, 1.212, 1.125, 1.026, 1.037, 1, 1, 1, 1,
55 1.064, 0.956, 0.975, 0.938, 1.205, 1.095, 1.137, 1.222, 1.262, 1.160, 0.923, 0.969, 1.132, 0.969, 1.174, 0.000, 1, 1, 1, 1] )
56 kwargs.setdefault(
'npeThreshold', [ 17, 15, 16, 16, 18, 16, 16, 18, 17, 16, 16, 17, 19, 16, 16, 17, 15, 15, 15, 15,
57 17, 16, 16, 17, 17, 15, 16, 16, 17, 16, 15, 17, 17, 15, 16, 15, 15, 15, 15, 15] )
59 acc.setPrivateTools(CompFactory.LUCID_PileUpTool(name,**kwargs))
64 """Return ComponentAccumulator with LUCID_PileUpTool for Overlay"""
66 kwargs.setdefault(
"mergeSvc",
'')
69 acc.setPrivateTools(tool)
74 """Return ComponentAccumulator with Output for LUCID. Not standalone."""
76 if flags.Output.doWriteRDO:
77 ItemList = [
"LUCID_DigitContainer#LucidDigitsCnt"]
78 from OutputStreamAthenaPool.OutputStreamConfig
import OutputStreamCfg
84 """Return ComponentAccumulator for LUCID digitization"""
86 if "PileUpTools" not in kwargs:
88 kwargs[
"PileUpTools"] = PileUpTools
89 from DigitizationConfig.PileUpToolsConfig
import PileUpToolsCfg
95 """Return ComponentAccumulator with LUCID_DigiTop."""
97 if flags.Common.ProductionStep != ProductionStep.FastChain:
98 from SGComps.SGInputLoaderConfig
import SGInputLoaderCfg
99 acc.merge(
SGInputLoaderCfg(flags,Load={(
'LUCID_SimHitCollection',
'LucidSimHitsVector')} ) )
100 if "DigitizationTool" not in kwargs:
103 if flags.Concurrency.NumThreads > 0:
104 kwargs.setdefault(
"Cardinality", flags.Concurrency.NumThreads)
107 kwargs.setdefault(
"ExtraInputs", flags.Overlay.ExtraInputs)
109 acc.addEventAlgo(CompFactory.LUCID_DigiTop(
"LUCID_DigiTop", **kwargs))
114 """Return ComponentAccumulator for LUCID digitization and Output"""
123 """Return ComponentAccumulator for LUCID digitization and Output"""