Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #6907

Re: higher precision doubles

Path csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!news.albasani.net!.POSTED!not-for-mail
From BGB <cr88192@hotmail.com>
Newsgroups comp.lang.java.programmer
Subject Re: higher precision doubles
Date Tue, 09 Aug 2011 02:44:11 -0700
Organization albasani.net
Lines 64
Message-ID <j1qvqa$mti$1@news.albasani.net> (permalink)
References <j1hqc1$1ch$1@news.albasani.net> <strictfp-20110806003831@ram.dialup.fu-berlin.de> <j1k4db$1n2$1@news.albasani.net> <j1k87t$kol$1@dont-email.me> <j1kb73$h3p$1@news.albasani.net> <j1kg3g$61c$1@dont-email.me> <j1kheh$ta4$1@news.albasani.net> <GMCdnfvkB6IaUaDTnZ2dnUVZ_omdnZ2d@earthlink.com> <j1kj1j$be$1@news.albasani.net> <t8idnWDwz_v8iKPTnZ2dnUVZ_gCdnZ2d@earthlink.com> <j1manb$2lu$1@news.albasani.net> <nOednS4yGv5WIaPTnZ2dnUVZ_gqdnZ2d@earthlink.com> <j1momo$34q$1@news.albasani.net> <j1nbr7$h7r$1@dont-email.me> <j1o1sk$427$1@news.albasani.net> <j1pif0$lr4$1@news.albasani.net> <j1pq9c$6d0$1@news.albasani.net>
Mime-Version 1.0
Content-Type text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding 7bit
X-Trace news.albasani.net o69eyfqh1pRnXDAZH7D3rm/78eMxHDwSB0rIZKkylIuf4eCaUPfY8zEqLPWh35W3b6kdN4t4Ws7pPRdCcjCn5ZjWSo2zT9qu2ur9PAQAZ1V31D2MNgddVxUTJpv1xK5s
NNTP-Posting-Date Tue, 9 Aug 2011 09:48:58 +0000 (UTC)
Injection-Info news.albasani.net; logging-data="7RMkOzT9yphZdIwvfD9pnBAqHHdaJjN5nsZXdGWCuXNJgYTbOiyylXLCRTL1u+mhCrqkmyNlV90RZDIyk3XBETXO85nfDhWg/E5TBRcLB0jZTrLTWGducJjgTKRLMIYd"; mail-complaints-to="abuse@albasani.net"
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20110624 Thunderbird/5.0
In-Reply-To <j1pq9c$6d0$1@news.albasani.net>
Cancel-Lock sha1:K0wAc5SnCw54V1zuDXp5KwTS4aM=
Xref x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:6907

Show key headers only | View raw


On 8/8/2011 4:08 PM, Jan Burse wrote:
> BGB schrieb:
>> division is mostly calculating the reciprocal of the second value, and
>> multiplying the first by this (can be done using Newton's Method).
>
> I don't know exactly what you understand by
> this algorithm. But if I understand this as
> calculating the reciprocal first adn then
> multiplying, you will have as a result:
>
> o(x*o(1/y))
>
> Instead of
>
> o(x/y).
>
> you will usually get less accurate results
> since by the reciprocal-math option method
> two approximations will be involved.
>

yes, but try to find a good way to directly calculate x/y...

it is a much easier problem to calculate x*(1.0/y)...


Newton's Method is a reasonably good way to calculate 1.0/y, and in my 
case (with 128-bit floats), usually manages to converge in approx 12 
iterations.


here is some code from my own implementation (in C):

fv128_t fv128_rcp(fv128_t a)
{
	fv128_t f, g, xo, xn;
	int i;

	if(fv128_eq1p(a))
		return(a);

	i=fv128_getExponent(a);
	xo=fv128_pow2x(fv128_const_one, -i);

	for(i=0; i<100; i++)
	{
		f=fv128_mul(a, xo);
		g=fv128_sub(fv128_const_two, f);
		xn=fv128_mul(xo, g);
		if(fv128_eqp(xo, xn))
			return(xn);
		xo=xn;
	}
	return(xn);
}

fv128_t fv128_div(fv128_t a, fv128_t b)
{
	return(fv128_mul(a, fv128_rcp(b)));
}



<snip>

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-06 00:20 +0200
  Re: higher precision doubles Patricia Shanahan <pats@acm.org> - 2011-08-06 03:35 -0700
    Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-06 13:03 +0200
      Re: higher precision doubles BGB <cr88192@hotmail.com> - 2011-08-06 12:20 -0700
        Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-06 23:30 +0200
          Re: higher precision doubles BGB <cr88192@hotmail.com> - 2011-08-06 16:12 -0700
            Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-07 01:35 +0200
              Re: higher precision doubles BGB <cr88192@hotmail.com> - 2011-08-06 19:26 -0700
    Re: higher precision doubles supercalifragilisticexpialadiamaticonormalizeringelimatisticantations <supercalifragilisticexpialadiamaticonormalizeringelimatisticantations@averylongandannoyingdomainname.com> - 2011-08-09 00:42 -0400
      Re: higher precision doubles Patricia Shanahan <pats@acm.org> - 2011-08-09 04:07 -0700
        Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-09 14:00 +0200
          Re: higher precision doubles Patricia Shanahan <pats@acm.org> - 2011-08-09 09:07 -0700
            Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-10 08:50 +0200
        Re: higher precision doubles supercalifragilisticexpialadiamaticonormalizeringelimatisticantations <supercalifragilisticexpialadiamaticonormalizeringelimatisticantations@averylongandannoyingdomainname.com> - 2011-08-10 20:16 -0400
      Re: higher precision doubles Joshua Cranmer <Pidgeot18@verizon.invalid> - 2011-08-09 10:11 -0500
        Re: higher precision doubles Arne Vajhøj <arne@vajhoej.dk> - 2011-08-09 22:40 -0400
          Re: higher precision doubles Joshua Cranmer <Pidgeot18@verizon.invalid> - 2011-08-09 22:06 -0500
            Re: higher precision doubles BGB <cr88192@hotmail.com> - 2011-08-10 08:53 -0700
  Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-06 21:24 +0200
    Re: higher precision doubles markspace <-@.> - 2011-08-06 13:29 -0700
      Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-06 23:20 +0200
        Re: higher precision doubles markspace <-@.> - 2011-08-06 15:43 -0700
          Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-07 01:06 +0200
            Re: higher precision doubles Patricia Shanahan <pats@acm.org> - 2011-08-06 16:21 -0700
              Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-07 01:34 +0200
                Re: higher precision doubles Patricia Shanahan <pats@acm.org> - 2011-08-06 21:32 -0700
                Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-07 17:24 +0200
                Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-07 17:39 +0200
                Re: higher precision doubles Patricia Shanahan <pats@acm.org> - 2011-08-07 09:26 -0700
                Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-07 21:23 +0200
                Re: higher precision doubles Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-08-07 20:48 -0400
                Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-08 09:05 +0200
                Re: higher precision doubles Patricia Shanahan <pats@acm.org> - 2011-08-08 05:37 -0700
                Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-08 19:08 +0200
                Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-08 19:16 +0200
                Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-08 19:29 +0200
                Re: higher precision doubles Joshua Cranmer <Pidgeot18@verizon.invalid> - 2011-08-08 21:34 -0500
                Re: higher precision doubles BGB <cr88192@hotmail.com> - 2011-08-08 13:49 -0700
                Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-09 01:08 +0200
                Re: higher precision doubles BGB <cr88192@hotmail.com> - 2011-08-09 02:44 -0700
                Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-09 12:52 +0200
                Re: higher precision doubles BGB <cr88192@hotmail.com> - 2011-08-09 13:15 -0700
                Re: higher precision doubles BGB <cr88192@hotmail.com> - 2011-08-07 13:51 -0700
              Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-07 01:59 +0200
        Re: higher precision doubles Joshua Cranmer <Pidgeot18@verizon.invalid> - 2011-08-08 21:03 -0500
    Re: higher precision doubles Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-08-06 17:33 -0400
    Re: higher precision doubles Patricia Shanahan <pats@acm.org> - 2011-08-06 14:51 -0700
      Re: higher precision doubles Jan Burse <janburse@fastmail.fm> - 2011-08-07 00:57 +0200

csiph-web