[R] over/under flow

Gabor Grothendieck ggrothendieck at gmail.com
Sun Jul 3 22:58:33 CEST 2005

On 7/3/05, William H. Asquith <wasquith at austin.rr.com> wrote:
> I am porting some FORTRAN to R in which an Inf triggers an if().  The
> trigger is infinite on exp(lgamma(OVER)).  What is the canonical R
> style of determining OVER when exp(OVER)== Inf?  The code structure
> that I am
> porting is best left intact--so I need to query R somehow to the value
> of OVER that causes exp(lgamma(OVER)) to equal Inf.
> On my system,
> exp(lgamma(171)) is about first to equal Inf.
> I asked similar question a few weeks ago on exp(OVER) and got the
> answer back as log(.Machine$double.xmax).  I now have the lgamma
> involved.  I think that answer is what is OVER such the
> .Machine$double.xmax = lgamma(OVER),
> but I am not sure how to invert or solve for OVER

You could just test the result, e.g.  
   result <- exp(lgamma(x))
   if (is.finite(result)) ...

More information about the R-help mailing list