toms443, a MATLAB code which evaluates Lambert's W function. This is a version of ACM TOMS algorithm 443, by Fritsch, Shafer and Crowley.

Lambert's W function W(X) satisfies the equation

        W(x) * exp ( W(x) ) = x

The text of many ACM TOMS algorithms is available online through ACM: or NETLIB:


The computer code and data files described and made available on this web page are distributed under the MIT license


toms443 is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:


test_values, a MATLAB code which contains routines which return sample values of various functions, including the modified beta function, and the logarithm of the gamma function.

toms743, a MATLAB code which evaluates lambert's w function. this is a version of acm toms algorithm 743, by barry, barry and culligan-hensley.


  1. Fred Fritsch, RE Shafer, WP Crowley,
    Algorithm 443: Solution of the Transcendental Equation W*exp(W)=X,
    Communications of the ACM,
    Volume 16, Number 1, February 1973, pages 123-124.
  2. Andrew Barry, S. J. Barry, Patricia Culligan-Hensley,
    Algorithm 743: WAPR - A Fortran routine for calculating real values of the W-function,
    ACM Transactions on Mathematical Software,
    Volume 21, Number 2, June 1995, pages 172-181.

Source Code:

Last revised on 01 March 2019.