ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArExample
LArCalibProcessing
python
LArCalibConfigFlags.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
2
import
os
3
def
addLArCalibFlags
(flags, isSC=False):
4
flags.Input.isMC=
False
5
flags.addFlag(
"LArCalib.isSC"
,isSC)
6
flags.addFlag(
"LArCalib.BadChannelDB"
,
"LAR_OFL"
)
7
flags.addFlag(
"LArCalib.BadChannelTag"
,
"-RUN2-UPD3-00"
if
_useFrontier
()
else
""
)
8
flags.addFlag(
"LArCalib.BadChannelTagSC"
,
"-RUN3-UPD3-00"
if
_useFrontier
()
else
""
)
9
10
#Folders:
11
def
_prefix(prevFlags):
12
if
prevFlags.LArCalib.isSC:
13
return
"/LAR/ElecCalibOflSC/"
14
else
:
15
return
"/LAR/ElecCalibOfl/"
16
17
flags.addFlag(
"LArCalib.Pedestal.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"Pedestals/Pedestal"
)
18
flags.addFlag(
"LArCalib.AutoCorr.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"AutoCorrs/AutoCorr"
)
19
flags.addFlag(
"LArCalib.PhysAutoCorr.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"AutoCorrs/PhysicsAutoCorr"
)
20
flags.addFlag(
"LArCalib.CaliWave.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"CaliWaves/CaliWave"
)
21
flags.addFlag(
"LArCalib.OFCCali.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"OFC/CaliWave"
)
22
flags.addFlag(
"LArCalib.PhysWave.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"PhysWaves/RTM"
)
23
flags.addFlag(
"LArCalib.Ramp.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"Ramps/RampLinea"
)
24
flags.addFlag(
"LArCalib.OFCPhys.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"OFC/PhysWave/RTM/"
)
25
flags.addFlag(
"LArCalib.Shape.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"Shape/RTM/"
)
26
flags.addFlag(
"LArCalib.MphysOverMcal.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"MphysOverMcal/RTM"
)
27
flags.addFlag(
"LArCalib.PhysCaliTdiff.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"PhysCaliTdiff"
)
28
flags.addFlag(
"LArCalib.CaliPulseParams.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"CaliPulseParams/RTM"
)
29
flags.addFlag(
"LArCalib.DetCellParams.Folder"
,
lambda
prevFlags: _prefix(prevFlags)+
"DetCellParams/RTM"
)
30
31
flags.addFlag(
"LArCalib.FCALPhysWave.Folder"
,
"/LAR/ElecCalibOfl/PhysWaves/FCALFromTB"
)
32
33
flags.addFlag(
"LArCalib.GroupingType"
,
lambda
prevFlags:
"SuperCells"
if
prevFlags.LArCalib.isSC
else
"ExtendedSubDetector"
)
34
flags.addFlag(
"LArCalib.Output.POOLFile"
,
"ouput.pool.root"
)
35
flags.addFlag(
"LArCalib.Output.ROOTFile"
,
""
)
36
flags.addFlag(
"LArCalib.Output.POOLFile2"
,
"ouput2.pool.root"
)
37
flags.addFlag(
"LArCalib.Output.ROOTFile2"
,
""
)
38
flags.addFlag(
"LArCalib.Output.SaveAverages"
,
True
)
39
40
flags.addFlag(
"LArCalib.Gain"
,0)
41
42
flags.addFlag(
"LArCalib.doValidation"
,
_useFrontier
())
# = disabled when running at P1
43
44
flags.addFlag(
"LArCalib.CorrectBadChannels"
,
True
)
45
46
#Flags to find the input files/databases
47
flags.addFlag(
"LArCalib.Input.Dir"
,
"."
)
48
flags.addFlag(
"LArCalib.Input.RunNumbers"
,[])
49
flags.addFlag(
"LArCalib.Input.Type"
,
"calibration_LArElec-Pedestal"
)
50
flags.addFlag(
"LArCalib.Input.Files"
,_getInputFiles)
51
flags.addFlag(
"LArCalib.Input.SubDet"
,
""
)
#EM, HEC or FCAL
52
flags.addFlag(
"LArCalib.Input.isRawData"
,
False
)
53
flags.addFlag(
"LArCalib.Input.paramsFile"
,
"parameters.dat"
)
54
55
flags.addFlag(
"LArCalib.Input.Database"
,
"LAR_OFL"
)
#In practice, a sqlite file
56
flags.addFlag(
"LArCalib.Input.Database2"
,
"LAR_OFL"
)
#In practice, a sqlite file, sometimes we need 2 of them
57
flags.addFlag(
"LArCalib.Input.CoolOflP1Replica"
,
"LAR_OFL"
if
_useFrontier
()
else
"/det/lar/project/databases/jobsDatabase/database.db"
)
58
flags.addFlag(
"LArCalib.Input.ChannelSelection"
,
""
)
#Read only a subset of COOL channels. Format like '3,4,5:10'
59
60
flags.addFlag(
"LArCalib.IOVStart"
,
lambda
pF:
min
(pF.LArCalib.Input.RunNumbers)
if
len(pF.LArCalib.Input.RunNumbers)>0
else
0)
#Output IOV start (runnumber)
61
flags.addFlag(
"LArCalib.IOVEnd"
, 0x7FFFFFFF)
#Output IOV end (runnumber)
62
63
64
65
flags.addFlag(
"LArCalib.Preselection.Side"
,[])
66
flags.addFlag(
"LArCalib.Preselection.BEC"
,[])
67
flags.addFlag(
"LArCalib.Preselection.FT"
,[])
68
flags.addFlag(
"LArCalib.Preselection.Slot"
,[])
69
70
flags.addFlag(
"LArCalib.SCIgnoreBarrelChannels"
,
False
)
71
flags.addFlag(
"LArCalib.SCIgnoreEndcapChannels"
,
False
)
72
73
flags.addFlag(
"LArCalib.RTM.ExtractAll"
,
True
)
# False = extract only tauR
74
flags.addFlag(
"LArCalib.RTM.DumpOmegaScan"
,
False
)
75
flags.addFlag(
"LArCalib.RTM.DumpResOscill"
,
False
)
76
77
flags.addFlag(
"LArCalib.CaliWave.Nsteps"
,24)
78
flags.addFlag(
"LArCalib.CaliWave.NSubSteps"
,1)
79
flags.addFlag(
"LArCalib.doOFCCali"
,
True
)
80
81
flags.addFlag(
"LArCalib.OFC.Ncoll"
,0)
82
flags.addFlag(
"LArCalib.OFC.UsePhysCalibTDiff"
,
True
)
83
flags.addFlag(
"LArCalib.OFC.Normalize"
,
True
)
84
flags.addFlag(
"LArCalib.OFC.useDelta"
,
False
)
85
flags.addFlag(
"LArCalib.OFC.Nsamples"
,4)
86
flags.addFlag(
"LArCalib.OFC.ShapeCorrection"
,
False
)
87
flags.addFlag(
"LArCalib.OFC.usePed"
,
False
)
88
89
flags.addFlag(
"LArCalib.PhysACuseHG"
,
False
)
90
91
def
_getInputFiles
(prevFlags):
92
from
LArCalibProcessing.GetInputFiles
import
GetInputFiles
93
allFiles=[]
94
for
rn
in
prevFlags.LArCalib.Input.RunNumbers:
95
pattern=
"data.*%(rn)07d.%(type)s.*"
% {
'rn'
: rn,
'type'
: prevFlags.LArCalib.Input.Type }
96
allFiles+=GetInputFiles(prevFlags.LArCalib.Input.Dir,pattern)
97
98
return
allFiles
99
100
def
LArCalibFolderTag
(folder,tag):
101
return
''
.join(folder.split(
'/'
)) + tag
102
103
def
_useFrontier
():
104
return
(
105
"FRONTIER_SERVER"
in
os.environ
and
106
os.environ[
"FRONTIER_SERVER"
] !=
""
107
)
min
#define min(a, b)
Definition
cfImp.cxx:40
python.LArCalibConfigFlags.addLArCalibFlags
addLArCalibFlags(flags, isSC=False)
Definition
LArCalibConfigFlags.py:3
python.LArCalibConfigFlags.LArCalibFolderTag
LArCalibFolderTag(folder, tag)
Definition
LArCalibConfigFlags.py:100
python.LArCalibConfigFlags._getInputFiles
_getInputFiles(prevFlags)
Definition
LArCalibConfigFlags.py:91
python.LArCalibConfigFlags._useFrontier
_useFrontier()
Definition
LArCalibConfigFlags.py:103
Generated on
for ATLAS Offline Software by
1.17.0