mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
make the fuzzycompare script work, update reference solutions
This commit is contained in:
parent
95ae6949d8
commit
ab1ba788c7
@ -10,16 +10,19 @@ def isFuzzyEqual(vtkFile1, vtkFile2, absTol, relTol):
|
|||||||
for curLine1 in vtkFile1.xreadlines():
|
for curLine1 in vtkFile1.xreadlines():
|
||||||
curLine2 = vtkFile2.readline()
|
curLine2 = vtkFile2.readline()
|
||||||
|
|
||||||
if curLine1.find("</DataArray>"):
|
if curLine1.find("</DataArray>") >= 0:
|
||||||
inField = False
|
inField = False
|
||||||
continue
|
continue
|
||||||
|
|
||||||
m = re.match('Name="\([a-zA-Z0-9 _\-]*\)"', curLine1)
|
m = re.search(r'Name="([a-zA-Z0-9 _\-]*)"', curLine1)
|
||||||
if m:
|
if m:
|
||||||
curFieldName = m.group(1)
|
curFieldName = m.group(1)
|
||||||
inField = True
|
inField = True
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
if not inField:
|
||||||
|
continue
|
||||||
|
|
||||||
curVals1 = map(float, curLine1.split())
|
curVals1 = map(float, curLine1.split())
|
||||||
curVals2 = map(float, curLine2.split())
|
curVals2 = map(float, curLine2.split())
|
||||||
|
|
||||||
@ -30,11 +33,8 @@ def isFuzzyEqual(vtkFile1, vtkFile2, absTol, relTol):
|
|||||||
for i in range(0, len(curVals1)):
|
for i in range(0, len(curVals1)):
|
||||||
number1 = curVals1[i]
|
number1 = curVals1[i]
|
||||||
number2 = curVals2[i]
|
number2 = curVals2[i]
|
||||||
if abs(number1 - number2) > absTol:
|
if abs(number1 - number2) > absTol and number2 != 0 and abs(number1/number2 - 1) > relTol:
|
||||||
print 'Absolute difference between %f and %f too large (%f) in data field "%s"'%(number1,number2,abs(number1 - number2), curFieldName)
|
print 'Difference between %f and %f too large (%f%%) in data field "%s"'%(number1,number2,abs(number1/number2 - 1)*100, curFieldName)
|
||||||
return False
|
|
||||||
elif number2 != 0 and abs(number1/number2 - 1) > relTol:
|
|
||||||
print 'Relative difference between %f and %f too large (%f%%) in data field "%s"'%(number1,number2,abs(number1/number2 - 1)*100, curFieldName)
|
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user