version 0.4.2
lambertw.hh File Reference

Implementation of the zeroth branch of the lambertW function. More...

#include <cmath>
#include <limits>
#include <dune/common/exceptions.hh>
#include <dune/common/float_cmp.hh>
#include <ikarus/utils/concepts.hh>

Go to the source code of this file.

Namespaces

namespace  Ikarus
 
namespace  Ikarus::util
 

Functions

template<typename ST = double>
ST Ikarus::util::lambertW0 (ST z, int maxIterations=20, ST eps=std::numeric_limits< ST >::epsilon())
 Implementation of the principal branch of the Lambert-W function (branch 0 in the domain \( [- \dfrac{1}{e}, \inf) \) ), that is defined as the inverse function of \( f: x \mapsto xe^x \). It is defined for inputs of \( [- \dfrac{1}{e}, \inf) \). More...