Not Enough Math
Lightweight zero-dependency C++ math library
Loading...
Searching...
No Matches
power.hpp File Reference
#include <bit>
#include "config.hpp"
#include "utils.hpp"

Go to the source code of this file.

Namespaces

namespace  nem
 
namespace  nem::fast
 
namespace  nem::accurate
 

Functions

template<std::floating_point T = float>
constexpr T nem::fast::log2 (T x)
 
template<std::floating_point T = float>
constexpr T nem::accurate::log2 (T x)
 
template<std::floating_point T = float, nem::Precision Prec = nem::default_precision>
constexpr T nem::log2 (T x)
 
template<std::floating_point T, nem::Precision Prec = nem::default_precision>
constexpr T nem::log (T base, T value)
 
template<std::floating_point T, nem::Precision Prec = nem::default_precision>
constexpr T nem::ln (T value)
 
template<std::floating_point T, nem::Precision Prec = nem::default_precision>
constexpr T nem::exp2 (T x)
 
template<nem::scalar_type T, std::integral E>
constexpr T nem::pow (T base, E exp)
 
template<std::floating_point T, nem::Precision Prec = nem::default_precision>
constexpr T nem::pow (T base, T exp, nem::unsafe_t)
 
template<std::floating_point T, nem::Precision Prec = nem::default_precision>
constexpr T nem::pow (T base, T exp, nem::safe_t=nem::safe)
 
template<typename T >
nem::sqrt (T value)
 
template<std::floating_point T, int Precision = 20>
constexpr T nem::csqrt (T value)
 
int nem::isqrt (unsigned x)
 
int nem::icbrt (unsigned x)