> Date: Wed, 29 Sep 2004 17:55:25 -0600
> From: James Giles <[log in to unmask]>
> robin wrote:
> >> Date: Tue, 28 Sep 2004 22:58:09 +0000
> >> From: [log in to unmask]
> ...
> >> Check your compiler documentation. Some compilers support what's
> >> usually called Quad precision. Some don't. If you have access to
> >> several, you might get lucky. Fortran90 allows processors to support
> >> higher precisions. A simple experiment is to try something like
> >> Do I = 1,50
> >> print *, I, selected_real_kind(I)
> >> Enddo
> >
> > This won't necessarily do it.
> >
> > Better is: print *, selected_real_kind(precision(1.0d0)+1)
> > A negative value indicates that quad precision is not available.
>
> That doesn't do the same thing as Dick Hendrickson's code.
It's not meant to.
It's meant to determine if there's a precision greater than double precision.
It's meant to address the original enquirer's request, viz:-
>> I need to go beyond the double precision (Real(8) and Complex(8)).
>> Is it possible to achieve this in Fortran 90?
And it does it precisely.
> So, it depends on what you want whether your solution is
> really better.
See above.
> If you want to know if there's a KIND that
> holds more precision than double precision (whether it
> meets any definition of "quad" or not), your program is
> fine.
That's what the original enquirer wanted.
> --
> J. Giles
|