|| 
|| def areclose(x,y,rtol=1.e-5,atol=1.e-8):
||      return abs(x-y)<atol+rtol*abs(y)
| 
| Looks interesting.  I don't quite understand what atol/rtol are,
| though. 

Does it help to spell it like this?

###
def areclose(x, y, relative_err = 1.e-5, absolute_err=1.e-8):
 diff = abs(x - y)
 ave = (abs(x) + abs(y))/2
 return diff < absolute_err or diff/ave < relative_err
###

Also, separating the two terms with 'or' rather than '+' makes the two error 
terms mean more what they are named. The '+' mixes the two effects and even 
though the result is basically the same, it makes it difficult to explain when 
the test will be true.

/c
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to