Subject: Generalized Lambert W function - premature commit
From: David Billinghurst
Date: Tue, 22 May 2012 23:12:36 +1000
On 22/05/2012 12:20 AM, David Billinghurst wrote:
> I have checked in a fix. It works for gcl under windows. Found
> another problem.
>
> fpprec:80$
> z:bfloat(-1/%e)-1b-20$
> (%i130) w:generalized_lambert_w(-1,z);
>
> Maxima encountered a Lisp error:
>
> Error in SETQ [or a callee]: Zero divisor.
>
Fixed this one too. The bigfloat guess for the Halley iteration is
generated in floating point. This doesn't work when z is -1/%e to
machine precision. Need to use a bigfloat power series around the
branch point.