Package PyFoam :: Package LogAnalysis :: Module BoundingLineAnalyzer
[hide private]
[frames] | no frames]

Source Code for Module PyFoam.LogAnalysis.BoundingLineAnalyzer

 1  #  ICE Revision: $Id: BoundingLineAnalyzer.py 7581 2007-06-27 15:29:14Z bgschaid $  
 2  """Check lines for Boundedness""" 
 3   
 4  import re 
 5   
 6  boundingRegExp="^bounding (.+), min: (.+) max: (.+) average: (.+)$" 
 7       
 8  # from FileLineAnalyzer import FileLineAnalyzer 
 9  # from TimeLineLineAnalyzer import TimeLineLineAnalyzer 
10   
11  from GeneralLineAnalyzer import GeneralLineAnalyzer 
12   
13 -class GeneralBoundingLineAnalyzer(GeneralLineAnalyzer):
14 """Parses the line for information about variables being bounded 15 16 Writes files of the form bounding_<var>""" 17
18 - def __init__(self,doTimelines=True,doFiles=True):
19 GeneralLineAnalyzer.__init__(self,titles=['Minimum','Maximum','Average'],doTimelines=doTimelines,doFiles=doFiles) 20 self.exp=re.compile(boundingRegExp)
21
22 - def addToFiles(self,match):
23 name=match.groups()[0] 24 rest=match.groups()[1:] 25 self.files.write("bounding_"+name,self.parent.getTime(),rest)
26
27 - def addToTimelines(self,match):
28 name=match.groups()[0] 29 rest=match.groups()[1:] 30 31 self.lines.setValue(name+"_min",rest[0]) 32 self.lines.setValue(name+"_max",rest[1]) 33 self.lines.setValue(name+"_avg",rest[2])
34
35 -class BoundingLineAnalyzer(GeneralBoundingLineAnalyzer):
36 """Parses the line for information about variables being bounded 37 38 Writes files of the form bounding_<var>""" 39
40 - def __init__(self):
41 GeneralBoundingLineAnalyzer.__init__(self,doTimelines=False)
42 43 ## FileLineAnalyzer.__init__(self,titles=['Minimum','Maximum','Average']) 44 ## self.exp=re.compile(boundingRegExp) 45 46 ## def doAnalysis(self,line): 47 ## m=self.exp.match(line) 48 ## if m!=None: 49 ## name=m.groups()[0] 50 ## rest=m.groups()[1:] 51 ## self.files.write("bounding_"+name,self.parent.getTime(),rest) 52
53 -class TimeLineBoundingLineAnalyzer(GeneralBoundingLineAnalyzer):
54 """Parses the line for information about variables being bounded""" 55
56 - def __init__(self):
57 GeneralBoundingLineAnalyzer.__init__(self,doFiles=False)
58 59 ## TimeLineLineAnalyzer.__init__(self) 60 ## self.exp=re.compile(boundingRegExp) 61 62 ## def doAnalysis(self,line): 63 ## m=self.exp.match(line) 64 ## if m!=None: 65 ## name=m.groups()[0] 66 ## rest=m.groups()[1:] 67 68 ## self.lines.setValue(name+"_min",rest[0]) 69 ## self.lines.setValue(name+"_max",rest[1]) 70 ## self.lines.setValue(name+"_avg",rest[2]) 71