From: Reini U. <ru...@x-...> - 2008-06-01 14:14:26
|
2008/6/1 Sam Steingold <sd...@gn...>: >> * Reini Urban <eh...@k-...> [2008-06-01 13:17:49 +0200]: >> > > what do you get here? > > (loop :for i :from -10 :to 10 > :for e = (os:erf i) :and c = (os:erfc i) > :for s = (+ e c) > :unless (= 1 s) :collect (list i e c (- 1 s))) ((-1 -0.8427007929497149d0 1.8427007929497148d0 1.1102230246251565d-16)) It's a deviation in the last digit representation, but unfortunately it's a significant error for the erf(x)+erfc(x)=1 assumption. And I found another newlib problem, which I also reported upstream: (erfc 27) produces a floating point underflow But that's all in the range [-100, 100], everything else is just noise at the end caused by a different implementation. http://sourceware.org/ml/newlib/2008/msg00306.html -- Reini Urban http://phpwiki.org/ http://murbreak.at/ |