Command: LambertW0


double LambertW0 -> double

[1] Corless R. M. Gonnet G. H. Hare D. E. G. Jeffrey D. J. & Knuth D. E.
(1996). On the lambert w function. Advances in Computational Mathematics 5
[2] Galassi M. Davies J. Theiler J. Gough B. Jungman G. Booth M.
& Rossi F. (2006). GNU Scientific Library Reference Manual (2nd Ed.).
Network Theory Limited.
[3] Wikipedia (2009). Lambert W function ---wikipedia the free encyclopedia.


The Lambert-W function [1] is the inverse function of x=W*exp(W). For real values of
x and W the function W(x) is defined on [-1/e \infty). On the interval [-1/e 0)
it is double valued. The two branches coincide at W(-1/e)=-1. The so called
principal branch LambertW0 continuously grows (W>=-1) and crosses the origin (0 0).
The non-principal branch LambertWm1 is defined on [-1/e 0) and declines to -\infty for
growing x.

NEST uses the GSL [2] implementations of LambertW0 and LambertWm1 if available and
falls back to to the iterative scheme LambertW suggested in [1] if not.
The GSL interfaces for LambertW0 and LambertWm1 are in the SpecialFunctionsModule
of SLI.


The Lambert-W function has applications in many areas as described in [1] and [3].
For example the solution of
exp(s) = 1 + a*s
with respect to s can be written in closed form as
s=1/a * (-aW(-exp(-1/a)/a) -1 )

Version: 090818