This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: this seems to lost (complex norm, abs)
- To: lfarkas at mindmaker dot hu
- Subject: Re: this seems to lost (complex norm, abs)
- From: Theodore Papadopoulo <Theodore dot Papadopoulo at sophia dot inria dot fr>
- Date: Thu, 20 Sep 2001 14:56:56 +0200
- Cc: STDC++ <libstdc++ at sources dot redhat dot com>
lfarkas@mindmaker.hu said:
> it contains 2 abs, 2 addition, 2 division, 3 multilication and 1 sqrt
> may be a few cosine and tan help a bit more:-) while the trivial
> "grammar school implementation": sqrt(norm(__z))
> contains 1 addition, 2 multilication, 1 sqrt
> so why we use it? may be in case of __z == 0 it's faster a bit, so an
This is done to avoid overflow. Take eg, x = sqrt(DOUBLE_MAX)+epsilon
and y=0, your formula will overflow (yelding +Infinity) while the used formula
will give the proper result.
--------------------------------------------------------------------
Theodore Papadopoulo
Email: Theodore.Papadopoulo@sophia.inria.fr Tel: (33) 04 92 38 76 01
--------------------------------------------------------------------
PGP signature