ATLAS Offline Software
Functions | Variables
ReadCool Namespace Reference

Functions

def StartDate (period)
 --> Definitions: More...
 
def ConvertedRunNumber (rNumber)
 
def RunListInDBTotal (start_date, end_date, file_name, string_pattern)
 
def channelValueQuery (server, schema, dbname, folder, iov0, iov1, tag, channels)
 
def RunListInDB (array, server, schema, dbname, folder, tag, channels)
 
def GetNumberOfNoisyModulesInDB (array, server, schema, dbname, folder, tag, channels)
 
def GetNumberOfNoisyStripsInDB (array, server, schema, dbname, folder, tag, channels)
 
def GetNoisyModulesAverageInDB (array)
 
def DisplayInfoForRunsInDB (runs, noisy_mods, noisy_strips)
 
def UnpackData (data)
 
def iov_keygen (iov)
 
def DumpFolderSummary (db_string, folder, tag, run=None)
 
def ReadRtCool (db_string, folder, tag, run_number)
 
def ReadT0Cool (db_string, folder, tag, run_number)
 
def GetFolderTag (db_string, folder)
 

Variables

 argv
 

Function Documentation

◆ channelValueQuery()

def ReadCool.channelValueQuery (   server,
  schema,
  dbname,
  folder,
  iov0,
  iov1,
  tag,
  channels 
)

Definition at line 64 of file InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py.

64 def channelValueQuery(server, schema, dbname, folder, iov0, iov1, tag, channels):
65  timespan= str(iov0) + '-' + str(iov1)
66  prefix='http://voatlas11.cern.ch:8080/cooldb/'
67  d = '/'
68  url = prefix+server+d+schema+d+dbname+folder+'/timespan/'+timespan+'/tag/'+tag+'/channels/'+channels
69  httpHeaders={'Accept':'text/xml'}
70  textData=None
71  # print(url)
72  request=urllib2.Request(url,textData, httpHeaders)
73  u=urllib2.urlopen(request)
74  xmlDocString = u.read()
75  return xmlDocString
76 

◆ ConvertedRunNumber()

def ReadCool.ConvertedRunNumber (   rNumber)

Definition at line 23 of file InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py.

23 def ConvertedRunNumber(rNumber):
24  RNumber = long(rNumber)
25  return RNumber << 32
26 

◆ DisplayInfoForRunsInDB()

def ReadCool.DisplayInfoForRunsInDB (   runs,
  noisy_mods,
  noisy_strips 
)

Definition at line 168 of file InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py.

168 def DisplayInfoForRunsInDB(runs, noisy_mods, noisy_strips):
169  if (len(runs) != 0):
170  for i in range(len(runs)):
171  print("Run: ",runs[i], " --> Num. noisy modules: ", noisy_mods[i], " --> Num. noisy channels: ", noisy_strips[i])
172  else:
173  print("--> No information found.")
174 

◆ DumpFolderSummary()

def ReadCool.DumpFolderSummary (   db_string,
  folder,
  tag,
  run = None 
)

Definition at line 30 of file MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py.

30 def DumpFolderSummary(db_string, folder, tag, run=None):
31 
32  try:
33  db=AtlCoolLib.indirectOpen(db_string, readOnly=True, debug=True)
34  except Exception as e:
35  print ('Problem opening database',e)
36  sys.exit(-1)
37 
38 #get folder and tag
39  cool_folder=db.getFolder(folder)
40  cool_tag=ResolveTag(cool_folder, tag)
41 
42  counters={}
43  if run:
44  objs=cool_folder.browseObjects((run<<32), ((run+1)<<32), cool.ChannelSelection.all(), cool_tag)
45  else:
46  objs=cool_folder.browseObjects(0, (999999<<32), cool.ChannelSelection.all(), cool_tag)
47  for obj in objs:
48  file_col=obj.payload()['file']
49  file_items=re.split('[A-Z,a-z]*', file_col)
50  site="default"
51  head_id=-1
52  if len(file_items)==2:
53  try:
54  head_id = int(file_items[1])
55  site = re.sub("[0-9]", "", file_col)
56  except ValueError:
57  site=file_col
58  ts="NOTS"
59  if TimeSlewingApplied(obj):
60  ts="TS"
61  ident=(obj.since()>>32, obj.until()>>32, site, head_id, ts)
62  if ident not in counters:
63  counters[ident] = 0
64  counters[ident] +=1
65  for ident in sorted(counters.keys(), key=iov_keygen):
66  print ("[", ident[0], ",", ident[1], "[", ident[2], ident[3], ident[4], ":" , counters[ident])
67 
68 

◆ GetFolderTag()

def ReadCool.GetFolderTag (   db_string,
  folder 
)

Definition at line 158 of file MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py.

158 def GetFolderTag(db_string, folder):
159  dbSvc=cool.DatabaseSvcFactory.databaseService()
160  try:
161  db=dbSvc.openDatabase(db_string)
162  except Exception as e:
163  print ('Problem opening database',e)
164  sys.exit(-1)
165 
166 #get folder and tag
167  cool_folder=db.getFolder(folder)
168  for x in cool_folder.listTags():
169  return x
170 

◆ GetNoisyModulesAverageInDB()

def ReadCool.GetNoisyModulesAverageInDB (   array)

Definition at line 157 of file InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py.

157 def GetNoisyModulesAverageInDB(array):
158  sum=0
159  if (len(array) != 0):
160  for j in range(len(array)):
161  sum=sum+array[j]
162  NoisyModulesAverage = sum/len(array)
163  else:
164  NoisyModulesAverage = -999
165  return NoisyModulesAverage
166 

◆ GetNumberOfNoisyModulesInDB()

def ReadCool.GetNumberOfNoisyModulesInDB (   array,
  server,
  schema,
  dbname,
  folder,
  tag,
  channels 
)

Definition at line 100 of file InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py.

100 def GetNumberOfNoisyModulesInDB(array, server, schema, dbname, folder, tag, channels):
101  Array_numNoisyModules=[]
102  if (array[0] != -999):
103  for i in range(len(array)):
104  runNumber=array[i]
105  iovSince=ConvertedRunNumber(runNumber)
106  iovUntil=ConvertedRunNumber(runNumber+1)-1
107 
108  derived_string=channelValueQuery(server, schema, dbname, folder, iovSince, iovUntil, tag, channels)
109 
110  derived=NonvalidatingReader.parseString(derived_string,uri="dummy")
111  numNoisyModules=derived.xpath(u'count(//channel)')
112  if numNoisyModules !=0.0:
113  Array_numNoisyModules.append(numNoisyModules)
114  else:
115  Array_numNoisyModules.append(-999)
116 
117  return Array_numNoisyModules
118 

◆ GetNumberOfNoisyStripsInDB()

def ReadCool.GetNumberOfNoisyStripsInDB (   array,
  server,
  schema,
  dbname,
  folder,
  tag,
  channels 
)

Definition at line 120 of file InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py.

120 def GetNumberOfNoisyStripsInDB(array, server, schema, dbname, folder, tag, channels):
121  Array_numNoisyStrips = []
122  if (array[0] != -999):
123  for i in range(len(array)):
124  runNumber=array[i]
125  iovSince=ConvertedRunNumber(runNumber)
126  iovUntil=ConvertedRunNumber(runNumber+1)-1
127 
128  derived_string=channelValueQuery(server, schema, dbname, folder, iovSince, iovUntil, tag, channels)
129 
130  derived=NonvalidatingReader.parseString(derived_string,uri="dummy")
131  numNoisyModules=derived.xpath(u'count(//channel)')
132  if numNoisyModules !=0.0:
133 
134  allDefectStripsList=(derived.xpath(u"//channel/value[@name='DefectList']"))
135  numNoisyStrips=0
136  numNoisyStripsAdds=0
137 
138  for strips in allDefectStripsList:
139  words=strips.firstChild.data.split()
140  for j in range(len(words)):
141  jk=words[j]
142  if jk.find("-")>=0:
143  sep=jk.replace ( '-', ' ' )
144  sep1=sep.split()
145  numNoisyStripsAdds=numNoisyStripsAdds+int(sep1[1])-int(sep1[0])
146 
147  numNoisyStrips=numNoisyStrips+len(strips.firstChild.data.split())
148 
149  Array_numNoisyStrips.append(numNoisyStrips + numNoisyStripsAdds)
150 
151  else:
152  Array_numNoisyStrips.append(-999)
153 
154  return Array_numNoisyStrips
155 

◆ iov_keygen()

def ReadCool.iov_keygen (   iov)

Definition at line 27 of file MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py.

27 def iov_keygen(iov):
28  return iov[0]*10000000 + iov[1]
29 

◆ ReadRtCool()

def ReadCool.ReadRtCool (   db_string,
  folder,
  tag,
  run_number 
)

Definition at line 69 of file MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py.

69 def ReadRtCool(db_string, folder, tag, run_number):
70 
71  try:
72  db=AtlCoolLib.indirectOpen(db_string, readOnly=True, debug=True)
73  except Exception as e:
74  print ('Problem opening database',e)
75  sys.exit(-1)
76 
77 #get folder and tag
78  cool_folder=db.getFolder(folder)
79  cool_tag=ResolveTag(cool_folder, tag)
80 
81 #data to be filled
82  graphs={}
83  splines={}
84  iovs=set([])
85 
86  myiov=(run_number<<32)
87 
88  objs=cool_folder.browseObjects(myiov,myiov, cool.ChannelSelection.all(), cool_tag)
89  for obj in objs:
90  iov=(obj.since(), obj.until())
91  iovs.add(iov)
92  sp=UnpackData(obj.payload()['data']).split('\n')
93  sp1=sp[0].split(',')
94  chamber=int(sp1[0])
95  n_points=int(sp1[1])
96  sp2=sp[1].split(',')
97  graphs[chamber]=TGraphErrors(n_points)
98  up=MuonFixedIdUnpack(chamber)
99  if up.stationNameString()=='XXX':
100  print ("Invalid station name in ", obj.payload()['file'])
101  sys.exit(1)
102  nm=up.stationNameString() + "_" + str(up.stationPhi()) + "_" + str(up.stationEta())
103 # print (nm)
104  ts_applied=TimeSlewingApplied(obj)
105  for i in range(0, n_points):
106  r=float(sp2[3*i])
107  t=float(sp2[3*i+1])
108  s=float(sp2[3*i+2])
109  if not ts_applied:
110  t_new=NoTs2Ts(r, t)
111  t=t_new
112  graphs[chamber].SetPoint(i, r, t)
113  graphs[chamber].SetPointError(i, 0, s)
114  splines[chamber]=TSpline3("sp_" + nm, graphs[chamber])
115  if gDirectory.IsWritable():
116  splines[chamber].Write("sp_" + nm)
117  graphs[chamber].Write("gr_" + nm)
118 
119  return graphs, splines, iovs
120 
121 

◆ ReadT0Cool()

def ReadCool.ReadT0Cool (   db_string,
  folder,
  tag,
  run_number 
)

Definition at line 122 of file MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py.

122 def ReadT0Cool(db_string, folder, tag, run_number):
123 
124  try:
125  db=AtlCoolLib.indirectOpen(db_string, readOnly=True, debug=True)
126  except Exception as e:
127  print ('Problem opening database',e)
128  sys.exit(-1)
129 
130 #get folder and tag
131  cool_folder=db.getFolder(folder)
132  cool_tag=ResolveTag(cool_folder, tag)
133  myiov=(run_number<<32)
134 #data
135  t0_values={}
136 
137  objs=cool_folder.browseObjects(myiov,myiov, cool.ChannelSelection.all(), cool_tag)
138 
139  for obj in objs:
140  sp=UnpackData(obj.payload()['data']).split('\n')
141  sp1=sp[0].split(',')
142  ch_sp=sp1[0][2:].split("_")
143  ch_id=(ch_sp[0], int(ch_sp[1]), int(ch_sp[2]))
144  ntubes=int(sp1[-1])
145 
146  t0_items=sp[1].split(",")
147  t0_values[ch_id] = []
148  ts_applied=TimeSlewingApplied(obj)
149  for i in range(0, ntubes):
150  t0=float(t0_items[3*i+0])
151  if not ts_applied:
152  t0+= GasmonDriftTimeOffsetT0
153  t0_values[ch_id].append((t0, int(t0_items[3*i+1]), float(t0_items[3*i+2])))
154 
155  return t0_values
156 
157 

◆ RunListInDB()

def ReadCool.RunListInDB (   array,
  server,
  schema,
  dbname,
  folder,
  tag,
  channels 
)

Definition at line 78 of file InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py.

78 def RunListInDB(array, server, schema, dbname, folder, tag, channels):
79  Array_runsInDB=[]
80  if (len(array) != 0):
81  for i in range(len(array)):
82  runNumber=array[i]
83  iovSince=ConvertedRunNumber(runNumber)
84  iovUntil=ConvertedRunNumber(runNumber+1)-1
85 
86  derived_string=channelValueQuery(server, schema, dbname, folder, iovSince, iovUntil, tag, channels)
87 
88  derived=NonvalidatingReader.parseString(derived_string,uri="dummy")
89  numNoisyModules=derived.xpath(u'count(//channel)')
90 
91  if numNoisyModules !=0.0:
92  Array_runsInDB.append(runNumber)
93  else:
94  Array_runsInDB.append(-999)
95 
96  return Array_runsInDB
97 
98 

◆ RunListInDBTotal()

def ReadCool.RunListInDBTotal (   start_date,
  end_date,
  file_name,
  string_pattern 
)

Definition at line 28 of file InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py.

28 def RunListInDBTotal(start_date, end_date, file_name, string_pattern):
29  prefix="http://atlas-service-runinformation.web.cern.ch/atlas-service-runinformation/cgi-bin/runnumbers.py?"
30  url=prefix+"start.date="+start_date+"%2012:06:00&end.date="+end_date+"%2012:06:00&format=html"
31  # print(url)
32  request=urllib2.Request(url)
33  u=urllib2.urlopen(request)
34  DocString = u.read()
35 
36  DocString_1 = DocString.replace ( '<td>', ' ' )
37  DocString_2 = DocString_1.replace ( '</td>', ' ' )
38  DocString_3 = DocString_2.replace ( '<tr>', ' ' )
39  DocString_4 = DocString_3.replace ( '</tr>', ' ' )
40  DocString_5 = DocString_4.replace ( '<th>Name</th><th>Number</th><th>Start At (UTC)</th><th>Duration</th><th>Partition</th>', ' ' )
41 
42 
43  f=open(file_name, 'w')
44  f.write(DocString_5)
45  f.close()
46 
47  Runs = []
48  if os.path.exists(file_name):
49  f = open(file_name,'r')
50  for line in f.readlines():
51  if line.find(string_pattern)>= 0:
52  ar=string.split(line)
53  Runs.append(int(ar[1]))
54  f.close()
55  else:
56  print("-->ERROR: athena_checkUpload: Can't find input file !")
57 
58 
59  os.remove(file_name)
60 
61  return Runs
62 

◆ StartDate()

def ReadCool.StartDate (   period)

--> Definitions:

Definition at line 17 of file InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py.

17 def StartDate(period):
18 
19  start_date = (datetime.date.today() - datetime.timedelta(period)).isoformat()
20  return start_date
21 

◆ UnpackData()

def ReadCool.UnpackData (   data)

Definition at line 17 of file MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py.

17 def UnpackData(data):
18  if type(data)==str:
19  return data
20  if type(data)==coral.Blob:
21  blob=StringIO.StringIO()
22  for i in range(data.size()):
23  blob.write(chr(data[i]))
24  unpacked=zlib.decompress(blob.getvalue())
25  return unpacked
26 

Variable Documentation

◆ argv

ReadCool.argv
DerivationFramework::TriggerMatchingUtils::sorted
std::vector< typename R::value_type > sorted(const R &r, PROJ proj={})
Helper function to create a sorted vector from an unsorted range.
MuonCalibConvertTimeSlewing.NoTs2Ts
def NoTs2Ts(r, t)
Definition: MuonCalibConvertTimeSlewing.py:24
MuonFixedIdUnpack
Definition: MuonFixedIdUnpack.py:1
ReadCool.ConvertedRunNumber
def ConvertedRunNumber(rNumber)
Definition: InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py:23
ReadCool.DumpFolderSummary
def DumpFolderSummary(db_string, folder, tag, run=None)
Definition: MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py:30
dumpHVPathFromNtuple.append
bool append
Definition: dumpHVPathFromNtuple.py:91
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
ReadCool.ReadT0Cool
def ReadT0Cool(db_string, folder, tag, run_number)
Definition: MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py:122
ReadCool.RunListInDBTotal
def RunListInDBTotal(start_date, end_date, file_name, string_pattern)
Definition: InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py:28
ReadCool.UnpackData
def UnpackData(data)
Definition: MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py:17
MuonCalibConvertTimeSlewing.TimeSlewingApplied
def TimeSlewingApplied(obj)
Definition: MuonCalibConvertTimeSlewing.py:27
ReadCool.GetNoisyModulesAverageInDB
def GetNoisyModulesAverageInDB(array)
Definition: InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py:157
ReadCool.iov_keygen
def iov_keygen(iov)
Definition: MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py:27
ReadCool.RunListInDB
def RunListInDB(array, server, schema, dbname, folder, tag, channels)
Definition: InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py:78
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:194
ReadCool.GetNumberOfNoisyStripsInDB
def GetNumberOfNoisyStripsInDB(array, server, schema, dbname, folder, tag, channels)
Definition: InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py:120
ReadCool.GetNumberOfNoisyModulesInDB
def GetNumberOfNoisyModulesInDB(array, server, schema, dbname, folder, tag, channels)
Definition: InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py:100
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:232
ReadCool.channelValueQuery
def channelValueQuery(server, schema, dbname, folder, iov0, iov1, tag, channels)
Definition: InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py:64
print
void print(char *figname, TCanvas *c1)
Definition: TRTCalib_StrawStatusPlots.cxx:26
ReadCool.StartDate
def StartDate(period)
--> Definitions:
Definition: InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py:17
ReadCool.GetFolderTag
def GetFolderTag(db_string, folder)
Definition: MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py:158
Trk::open
@ open
Definition: BinningType.h:40
python.CaloAddPedShiftConfig.int
int
Definition: CaloAddPedShiftConfig.py:45
ReadCool.DisplayInfoForRunsInDB
def DisplayInfoForRunsInDB(runs, noisy_mods, noisy_strips)
Definition: InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/share/ReadCool.py:168
str
Definition: BTagTrackIpAccessor.cxx:11
ReadCool.ReadRtCool
def ReadRtCool(db_string, folder, tag, run_number)
Definition: MuonSpectrometer/MuonCalib/MuonCalibDbOperations/python/ReadCool.py:69
MuonCalibResolveTag.ResolveTag
def ResolveTag(folder, tag)
Definition: MuonCalibResolveTag.py:4
Trk::split
@ split
Definition: LayerMaterialProperties.h:38
python.LArMinBiasAlgConfig.float
float
Definition: LArMinBiasAlgConfig.py:65