Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Sep 2012 11:18:10 +1000 (EST)
From:      Bruce Evans <brde@optusnet.com.au>
To:        Stephen Montgomery-Smith <stephen@missouri.edu>
Cc:        freebsd-numerics@freebsd.org
Subject:   Re: Complex arg-trig functions
Message-ID:  <20120923105546.J2746@besplex.bde.org>
In-Reply-To: <505E52EA.7090102@missouri.edu>
References:  <5017111E.6060003@missouri.edu> <20120917060116.G3825@besplex.bde.org> <50563C57.60806@missouri.edu> <20120918012459.V5094@besplex.bde.org> <5057A932.3000603@missouri.edu> <5057F24B.7020605@missouri.edu> <20120918162105.U991@besplex.bde.org> <20120918232850.N2144@besplex.bde.org> <20120919010613.T2493@besplex.bde.org> <505BD9B4.8020801@missouri.edu> <20120921172402.W945@besplex.bde.org> <20120921212525.W1732@besplex.bde.org> <505C7490.90600@missouri.edu> <20120922042112.E3044@besplex.bde.org> <505CBF14.70908@missouri.edu> <505CC11A.5030502@missouri.edu> <20120922081607.F3613@besplex.bde.org> <20120922091625.Y3828@besplex.b! de.org> <505D1037.8010202@missouri.edu> <20120922142349.X4599@besplex.bde.org> <20120923044814.S1465@besplex.bde.org> <505E2575.6030302@missouri.edu> <505E27CE.3060107@missouri.edu> <20120923073807.K2059@besplex.bde.org> <505E3AE6.2010006@missouri.edu> <505E52EA.7090102@missouri.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 22 Sep 2012, Stephen Montgomery-Smith wrote:

> On 09/22/2012 05:25 PM, Stephen Montgomery-Smith wrote:
>> On 09/22/2012 04:47 PM, Bruce Evans wrote:
>>> On Sat, 22 Sep 2012, Stephen Montgomery-Smith wrote:
>>> 
>>>> 2.  In my accuracy tests for casin(h), I have never seen the double or
>>>> long double have an error greater than 4 ULP.  But for the float case
>>>> I have seen 4.15 ULP.
>>> 
>>> I haven't seen any larger than 3.4.  What is the worst case you found?
> ...
> Here is an error of about 4.15 ULP
>
> 171886645 acosh 0.504775 4.15104 1.0684067010879516602 
> -0.049668960273265838623 0.389377 -0.124716 0.389377 -0.124716

Even y+1 is inaccurate for this arg.  (do_hard_work() has several of
these.)

On i386, the error is only 2.15 ulps.  But changing all 1's to 1.0's and
all sqrtf()'s to sqrt()s in do_hard_work() made no difference, so it
must be other extra calculations that help on i386.

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120923105546.J2746>