1"""ComponentAccumulator configuration utilities for LArRecUtils
3Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
5from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
6from AthenaConfiguration.ComponentFactory
import CompFactory
7from AthenaCommon.Logging
import logging
8from LArCabling.LArCablingConfig
import LArOnOffIdMappingCfg
9from LArConfiguration.LArElecCalibDBConfig
import LArElecCalibDBCfg
10from AthenaConfiguration.Enums
import LHCPeriod
13 """Return ComponentAccumulator with configured LArMCSymCondAlg"""
14 acc = ComponentAccumulator()
15 kwargs.setdefault(
"ReadKey",
"LArOnOffIdMap")
16 acc.addCondAlgo(CompFactory.LArMCSymCondAlg(name, **kwargs))
21 """Return ComponentAccumulator with configured LArAutoCorrNoiseCondAlg"""
23 LArAutoCorrNoiseCondAlg=CompFactory.LArAutoCorrNoiseCondAlg
25 acc = LArOnOffIdMappingCfg(flags)
27 acc.merge(LArElecCalibDBCfg(flags,[
"AutoCorr",]))
28 kwargs.setdefault(
"nSampl", flags.LAr.ROD.nSamples)
35 mlog = logging.getLogger (
'LArOFCCondAlgCfg')
36 mlog.info(
" entering LArOFCCondAlgCfg")
38 kwargs.setdefault (
'isMC',
True)
39 kwargs.setdefault (
'firstSample', flags.LAr.ROD.FirstSample)
40 kwargs.setdefault (
'useHighestGainAutoCorr', flags.LAr.ROD.UseHighestGainAutoCorr)
41 kwargs.setdefault(
'Nminbias',flags.LAr.ROD.NumberOfCollisions)
42 mlog.info(
"Setup LArOFCCOndAlg Nminbias %f ", flags.LAr.ROD.NumberOfCollisions)
44 acc = LArOnOffIdMappingCfg(flags)
45 requiredConditons=[
"Shape",
"Noise",
"Pedestal"]
46 acc.merge(LArElecCalibDBCfg(flags,requiredConditons))
48 LArOFCCondAlg=CompFactory.LArOFCCondAlg
49 acc.addCondAlgo (LArOFCCondAlg (name, **kwargs))
55 mlog = logging.getLogger (
'LArOFCSCCondAlgCfg')
56 mlog.info(
" entering LArOFCSCCondAlgCfg")
58 kwargs.setdefault (
'isMC',
True)
59 kwargs.setdefault (
'isSuperCell',
True)
60 kwargs.setdefault (
'firstSample', flags.LAr.ROD.FirstSample)
61 kwargs.setdefault (
'useHighestGainAutoCorr', flags.LAr.ROD.UseHighestGainAutoCorr)
62 kwargs.setdefault (
'NGains',1)
63 from LArCabling.LArCablingConfig
import LArOnOffIdMappingSCCfg
64 acc = LArOnOffIdMappingSCCfg(flags)
65 kwargs.setdefault(
"LArOnOffIdMappingObjKey",
'LArOnOffIdMapSC')
66 requiredConditions=[
"ShapeSC",
"PedestalSC",
"NoiseSC"]
67 from LArConfiguration.LArElecCalibDBConfig
import LArElecCalibDBMCSCCfg
68 acc.merge(LArElecCalibDBMCSCCfg(flags,requiredConditions))
69 kwargs.setdefault(
"LArShapeObjKey",
'LArShapeSC')
70 kwargs.setdefault(
"LArNoiseObjKey",
'LArNoiseSC')
71 kwargs.setdefault(
"LArPedestalObjKey",
'LArPedestalSC')
74 kwargs.setdefault(
"LArAutoCorrTotalObjKey",
'LArAutoCorrTotalSC')
75 kwargs.setdefault(
"LArOFCObjKey",
'LArOFCSC')
77 kwargs.setdefault(
'Nminbias',flags.LAr.ROD.NumberOfCollisions)
78 mlog.info(
"Setup LArOFCSCCOndAlg Nminbias %f ", flags.LAr.ROD.NumberOfCollisions)
80 acc.addCondAlgo (CompFactory.LArOFCCondAlg (name, **kwargs))
85 mlog = logging.getLogger (
'LArAutoCorrTotalCondAlgCfg')
86 mlog.info(
" entering LArAutoCorrTotalCondAlgCfg")
87 from AthenaCommon.SystemOfUnits
import ns
90 kwargs.setdefault(
'NGains', 2
if flags.GeoModel.Run==LHCPeriod.Run4
and flags.IOVDb.UseCREST
else 3)
91 kwargs.setdefault(
'Nsamples', flags.LAr.ROD.nSamples)
92 kwargs.setdefault(
'firstSample',flags.LAr.ROD.FirstSample)
93 mlog.info(
"Nsamples %d",flags.LAr.ROD.nSamples)
94 mlog.info(
"firstSample %d",flags.LAr.ROD.FirstSample)
95 deltaBunch = int(flags.Beam.BunchSpacing/( 25.*ns)+0.5)
96 mlog.info(
"DeltaBunch %d " , deltaBunch)
97 kwargs.setdefault(
'deltaBunch',deltaBunch)
99 if flags.LAr.ROD.NumberOfCollisions <= 0:
100 kwargs.setdefault(
"NoPileUp",
True)
101 mlog.info(
" no pileup noise in LArAutoCorrTotal ")
103 kwargs.setdefault(
"NoPileUp",
False)
107 acc = LArOnOffIdMappingCfg(flags)
108 requiredConditons=[
"Shape",
"AutoCorr",
"Noise",
"Pedestal",
"fSampl",
"MinBias"]
109 acc.merge(LArElecCalibDBCfg(flags,requiredConditons))
110 LArAutoCorrTotalCondAlg=CompFactory.LArAutoCorrTotalCondAlg
111 acc.addCondAlgo (LArAutoCorrTotalCondAlg (name, **kwargs))
116 mlog = logging.getLogger (
'LArAutoCorrTotalSCCondAlgCfg')
117 mlog.info(
" entering LArAutoCorrTotalSCCondAlgCfg")
118 from AthenaCommon.SystemOfUnits
import ns
120 acc = LArOnOffIdMappingCfg(flags)
121 kwargs.setdefault(
"LArOnOffIdMappingObjKey",
'LArOnOffIdMapSC')
123 from LArRecUtils.LArADC2MeVSCCondAlgConfig
import LArADC2MeVSCCondAlgCfg
124 acc.merge(LArADC2MeVSCCondAlgCfg(flags))
125 kwargs.setdefault(
"LArADC2MeVObjKey",
'LArADC2MeVSC')
127 requiredConditons=[
"ShapeSC",
"AutoCorrSC",
"NoiseSC",
"PedestalSC",
"fSamplSC",
"MinBiasSC"]
128 from LArConfiguration.LArElecCalibDBConfig
import LArElecCalibDBMCSCCfg
129 acc.merge(LArElecCalibDBMCSCCfg(flags,requiredConditons))
130 kwargs.setdefault(
"LArShapeObjKey",
'LArShapeSC')
131 kwargs.setdefault(
"LArAutoCorrObjKey",
'LArAutoCorrSC')
132 kwargs.setdefault(
"LArNoiseObjKey",
'LArNoiseSC')
133 kwargs.setdefault(
"LArPedestalObjKey",
'LArPedestalSC')
134 kwargs.setdefault(
"LArfSamplObjKey",
'LArfSamplSC')
135 kwargs.setdefault(
"LArMinBiasObjKey",
'LArMinBiasSC')
137 kwargs.setdefault(
"LArAutoCorrTotalObjKey",
'LArAutoCorrTotalSC')
139 kwargs.setdefault(
"isSuperCell",
True)
140 kwargs.setdefault(
'Nsamples', flags.LAr.ROD.nSamples)
141 kwargs.setdefault(
'firstSample',flags.LAr.ROD.FirstSample)
142 mlog.info(
"Nsamples %d",flags.LAr.ROD.nSamples)
143 mlog.info(
"firstSample %d",flags.LAr.ROD.FirstSample)
144 deltaBunch = int(flags.Beam.BunchSpacing/( 25.*ns)+0.5)
145 mlog.info(
"DeltaBunch %d " , deltaBunch)
146 kwargs.setdefault(
'deltaBunch',deltaBunch)
149 if flags.LAr.ROD.NumberOfCollisions <= 0:
150 kwargs.setdefault(
"NoPileUp",
True)
151 mlog.info(
" no pileup noise in LArAutoCorrTotal ")
153 kwargs.setdefault(
"NoPileUp",
False)
155 LArAutoCorrTotalCondAlg=CompFactory.LArAutoCorrTotalCondAlg
156 acc.addCondAlgo (LArAutoCorrTotalCondAlg (name, **kwargs))
161 acc = ComponentAccumulator()
163 from LArCabling.LArCablingConfig
import LArFebRodMappingCfg, LArOnOffIdMappingCfg
164 acc.merge (LArFebRodMappingCfg (flags))
165 acc.merge (LArOnOffIdMappingCfg (flags))
167 from CaloConditions.CaloConditionsConfig
import LArTTCellMapCfg, CaloTTIdMapCfg
168 acc.merge(LArTTCellMapCfg(flags))
169 acc.merge(CaloTTIdMapCfg(flags))
171 CaloTriggerTowerService = CompFactory.CaloTriggerTowerService
174 LArRoIMapCondAlg = CompFactory.LArRoIMapCondAlg
175 acc.addCondAlgo (LArRoIMapCondAlg (name, **kwargs))
179if __name__ ==
"__main__":
180 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
181 from AthenaConfiguration.TestDefaults
import defaultTestFiles
183 print (
'--- LArOFCCondAlg 1')
184 flags1 = initConfigFlags()
185 flags1.LAr.ROD.NumberOfCollisions=0
186 flags1.Input.Files = defaultTestFiles.RDO_RUN2
188 acc1 = LArOFCCondAlgCfg (flags1)
189 acc1.printCondAlgs(summariseProps=
True)
192 print (
'--- LArAutoCorrTotalCondAlg')
193 flags4 = initConfigFlags()
194 flags4.LAr.ROD.NumberOfCollisions=0
195 flags4.Input.Files = defaultTestFiles.RDO_RUN2
196 flags4.LAr.ROD.nSamples = 32
198 acc4 = LArAutoCorrTotalCondAlgCfg (flags4)
199 acc4.printCondAlgs(summariseProps=
True)
202 print (
'--- LArRoIMapCondAlg')
203 flags5 = initConfigFlags()
204 flags5.LAr.ROD.NumberOfCollisions=0
205 flags5.Input.Files = defaultTestFiles.RDO_RUN2
207 acc5 = LArRoIMapCondAlgCfg (flags5)
208 acc5.printCondAlgs(summariseProps=
True)
Tool providing the mapping of the online and offline TriggerTower identifiers as well as the TT-cells...
LArAutoCorrTotalCondAlgCfg(flags, name='LArAutoCorrTotalCondAlg', **kwargs)
LArRoIMapCondAlgCfg(flags, name='LArRoIMapCondAlg', **kwargs)
LArOFCSCCondAlgCfg(flags, name='LArOFCSCCondAlg', **kwargs)
LArOFCCondAlgCfg(flags, name='LArOFCCondAlg', **kwargs)
LArMCSymCondAlgCfg(flags, name="LArMCSymCondAlg", **kwargs)
LArAutoCorrTotalSCCondAlgCfg(flags, name='LArAutoCorrTotalSCCondAlg', **kwargs)
LArAutoCorrNoiseCondAlgCfg(flags, name="LArAutoCorrNoiseCondAlg", **kwargs)