Abstract
We describe an algorithm to evaluate all the complex branches of the Lambert W function with rigorous error bounds in arbitrary-precision interval arithmetic or ball arithmetic. The classic 1996 paper on the Lambert W function by Corless et al. provides a thorough but partly heuristic numerical analysis of the Lambert W function which needs to be complemented with some explicit inequalities and practical observations about managing precision and branch cuts. An implementation is provided in the Arb library.
Similar content being viewed by others
References
Agrawal, N., Bikineev, A., Bristow, P.A., Guazzone, M., Kormanyos, C., Holin, H., Lalande, B., Maddock, J., Murphy, J., Råade, J., Sewani, G., Sobotta, B., Thompson, N., van den Berg, T., Walker, D., Zhang, X.: BOOST C++ Libraries: Lambert W function https://www.boost.org/doc/libs/develop/libs/math/doc/html/math_toolkit/lambert_w.html (2017)
Barry, D.A., Culligan-Hensley, P.J., Barry, S.J.: Real values of the W-function. ACM Trans. Math. Softw. 21(2), 161–171 (1995)
Chapeau-Blondeau, F., Monir, A.: Numerical evaluation of the Lambert W function and application to generation of generalized Gaussian noise with exponent 1/2. IEEE Trans. Signal Process. 50(9), 2160–2165 (2002)
Corless, R.M., Gonnet, G.H., Hare, D.E.G., Jeffrey, D.J., Knuth, D.E.: On the Lambert W function. Adv. Comput. Math. 5(1), 329–359 (1996)
Fitsch, F.N., Shafer, R.E., Crowley, W.P.: Algorithm 443: Solution of the transcendental equation wew = x. Commun. ACM 16(2), 123–124 (1973)
Fukushima, T.: Precise and fast computation of Lambert W-functions without transcendental function evaluations. J. Comput. Appl. Math. 244, 77–89 (2013)
van der Hoeven, J.: Ball arithmetic. Tech. rep., HAL. http://hal.archives-ouvertes.fr/hal-00432152/fr/ (2009)
Jeffrey, D.J.: Celebrating 20 years of the Lambert W function http://www.apmaths.uwo.ca/~djeffrey/LambertW/LambertW.html (2016)
Johansson, F.: Efficient implementation of elementary functions in the medium-precision range. In: 22Nd IEEE Symposium on Computer Arithmetic, ARITH22, pp. 83–89. https://doi.org/10.1109/ARITH.2015.16 (2015)
Johansson, F.: Arb: efficient arbitrary-precision midpoint-radius interval arithmetic. IEEE Trans. Comput. 66, 1281–1292 (2017). https://doi.org/10.1109/TC.2017.2690633
Johansson, F., et al.: mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.1) http://mpmath.org (2018)
Kalugin, G.A., Jeffrey, D.J.: Convergence in C of series for the Lambert W function. arXiv:1208.0754 (2012)
Lawrence, P.W., Corless, R.M., Jeffrey, D.J.: Algorithm 917: complex double-precision evaluation of the Wright ω function. ACM Trans. Math. Softw. 38(3), 20 (2012)
Maplesoft: Productlog – Maple Programming Help https://www.maplesoft.com/support/help/maple/view.aspx?path=LambertW (2019)
Moore, R.E.: Methods and applications of interval analysis. SIAM (1979)
Olver, F.J., Lozier, D.W., Boisvert, R.F., Clark, C.W.: NIST Handbook of Mathematical Functions. Cambridge University Press, Cambridge (2010)
Veberič, D.: Lambert W function for applications in physics. Comput. Phys. Commun. 183(12), 2622–2628 (2012)
Wolfram Research: Productlog – Wolfram Language Documentation https://reference.wolfram.com/language/ref/ProductLog.html (2019)
Ziv, A.: Fast evaluation of elementary mathematical functions with correctly rounded last bit. ACM Trans. Math. Softw. 17(3), 410–423 (1991)
Acknowledgements
The author thanks the two referees, whose input greatly improved the article.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Johansson, F. Computing the Lambert W function in arbitrary-precision complex interval arithmetic. Numer Algor 83, 221–242 (2020). https://doi.org/10.1007/s11075-019-00678-x
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11075-019-00678-x