|| || 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