eDSP  0.0.1
A cross-platform DSP library written in C++.
Namespaces | Enumerations | Functions
numeric.hpp File Reference
#include <cmath>
#include <cstdint>
#include <complex>
#include <random>

Go to the source code of this file.

Namespaces

 edsp
 
 edsp::math
 

Enumerations

enum  edsp::math::distances { edsp::math::manhattan, edsp::math::euclidean, edsp::math::logarithmic }
 

Functions

template<typename T >
constexpr bool edsp::math::is_negative (T x)
 Determines if the number is negative. More...
 
template<typename T >
constexpr bool edsp::math::is_odd (T x)
 Determines if the number is odd. More...
 
template<typename T >
constexpr bool edsp::math::is_even (T x)
 Determines if the number is even. More...
 
template<typename T >
constexpr bool edsp::math::is_power_two (T x)
 Determines if the number is power of two. More...
 
template<typename T >
constexpr bool edsp::math::is_denormal (T x)
 Determines if the number is denormal floating-point. More...
 
template<typename T >
constexpr bool edsp::math::is_normal (T x)
 Determines if the number is normal floating-point. More...
 
template<typename T >
constexpr bool edsp::math::is_zero (T x)
 Determines if the number is zero. More...
 
template<typename T >
constexpr bool edsp::math::is_nan (T x) noexcept
 Determines if the number is not-a-number (NAN). More...
 
template<typename T >
constexpr bool edsp::math::is_inf (T x)
 Determines if the number is \( \infty \). More...
 
template<typename T >
constexpr bool edsp::math::is_prime (T x)
 Determines if the number is prime. More...
 
template<typename T >
constexpr T edsp::math::sign (T x) noexcept
 Determines the sign of the input number. More...
 
template<typename T >
constexpr T edsp::math::next_power_two (T x)
 Computes the closest next higher power of 2 of the input number. More...
 
template<typename T >
constexpr T edsp::math::square (T x)
 Computes the square value of the input number. More...
 
template<typename T >
constexpr T edsp::math::fract (T x)
 Computes the fractional part of the input number. More...
 
template<typename T >
constexpr T edsp::math::inv (T x)
 Computes the inverse value of the input number. More...
 
template<typename T >
constexpr T edsp::math::half (T x)
 Computes the half value of the input number. More...
 
template<typename T >
std::enable_if< std::is_floating_point< T >::value, T >::type edsp::math::rand (T min, T max)
 Computes a random number in the range [min, max]. More...
 
template<typename T >
std::enable_if< std::is_floating_point< T >::value, T >::type edsp::math::rand ()
 Computes a random number. The generated numbers follow a uniform distribution. More...
 
template<typename T >
std::enable_if< std::is_integral< T >::value, T >::type edsp::math::rand (T min, T max)
 Computes a random number in the range [min, max]. More...
 
template<typename T >
std::enable_if< std::is_integral< T >::value, T >::type edsp::math::rand ()
 Computes a random number. The generated numbers follow a uniform distribution. More...
 
template<distances d, typename T >
constexpr T edsp::math::distance (T x, T y) noexcept
 Computes the distance between x and y. More...