32 ''' Function to process a log line and keep what's needed for final reporting'''
35 if "PerfMonMTSvc" in line:
39 if 'FixHepMC' in line
and 'INFO Removed' in line:
41 if 'because of loops' in line:
44 reason = line.split(
'particles')[1]
51 self.
FixHepMCDict[
'lines'][reason] = [ line.split(
'Removed')[0] , line.split(
'particles')[1] ]
53 elif 'Py:EvgenFilterSeq' in line:
55 if 'Weighted Filter Efficiency' in line:
57 numbers = re.findall(
r'[\d.]+',line)
62 elif 'Filter Efficiency' in line:
64 numbers = re.findall(
r'[\d.]+',line)
71 elif 'TestHepMC' in line
and 'Event' in line:
72 if 'Events passed' in line:
74 numbers = re.findall(
r'[\d.]+',line)
80 self.
TestHepMCDict[
'lastpf'] = int(numbers[-2]) + int(numbers[-1])
83 reason = line.split(
'Event rate')[1].
split(
'=')[0]
87 if 'not included in test efficiency' in line:
90 my_perc = float( line.split(
'=')[1].
split(
'%')[0] )
95 elif 'TestHepMC' in line
and 'Efficiency' in line:
100 elif 'MetaData:' in line:
102 field = line.split(
'MetaData:')[1].
split(
'=')[0].
strip()
106 if field ==
'generatorName' and 'Sherpa' in line:
110 if field ==
'cross-section (nb)':
111 self.
MetadataDict[
'xsec_holder'] = float( line.split(
'=')[1] )
114 elif field ==
'sumOfPosWeightsNoFilter':
115 self.
MetadataDict[
'xsec_weight'] = float( line.split(
'=')[1] )
117 elif field ==
'sumOfNegWeightsNoFilter':
118 my_negw = float( line.split(
'=')[1] )