|
Boost : |
From: Hubert Holin (Hubert.Holin_at_[hidden])
Date: 2005-03-23 12:36:10
Paris (U.E.), le 23/03/2005
Bonjour
In article <989aceac050322131460c7f704_at_[hidden]>,
Caleb Epstein <caleb.epstein_at_[hidden]> wrote:
> On Wed, 16 Mar 2005 15:58:37 +0100, Hubert Holin <Hubert.Holin_at_[hidden]>
> wrote:
>
> > I am currently investigating some regressions for my quaternion
> > and octonion libraries, which appear in the report of the tests you run
> > under SunOS5.
> >
> > I have the feeling that for "long double" variables,
> > numeric_limits<long double>::epsilon() returns the correct value, but
> > standard transcendental functions (atan at least) behave as if their
> > input were "double" and not "long double".
> >
> > Do you know if this is the case?
>
> Sorry for the late reply.
>
> I believe you're correct. I don't see any prototypes for atan() that
> take a long-double or that are templatized, but indeed
> std::numeric_limits behaves correctly:
>
> numeric_limits<double>: digits=53 digits10=15 max_exponent=1024
> max_exponent10=308 min_exponent=-1021 min_exponent10=-307 radix=2
> episilon=2.22045e-16
> numeric_limits<long double>: digits=113 digits10=33 max_exponent=16384
> max_exponent10=4932 min_exponent=-16381 min_exponent10=-4931 radix=2
> episilon=1.92593e-34
Thanks for the information. This is the first platform where I see
this actually happening. I will modify my tests so quaternions and
octonions pass for that platform, even for "long double", though with a
message saying that quality may be degraded for that type.
Merci
Hubert Holin
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk