WPILibC++ 2023.4.3-108-ge5452e3
MathFunctions.h File Reference

Go to the source code of this file.

Classes

struct  Eigen::internal::global_math_functions_filtering_base< T, dummy >
 
struct  Eigen::internal::always_void< T >
 
struct  Eigen::internal::global_math_functions_filtering_base< T, typename always_void< typename T::Eigen_BaseClassForSpecializationOfGlobalMathFuncImpl >::type >
 
struct  Eigen::internal::real_default_impl< Scalar, IsComplex >
 
struct  Eigen::internal::real_default_impl< Scalar, true >
 
struct  Eigen::internal::real_impl< Scalar >
 
struct  Eigen::internal::real_retval< Scalar >
 
struct  Eigen::internal::imag_default_impl< Scalar, IsComplex >
 
struct  Eigen::internal::imag_default_impl< Scalar, true >
 
struct  Eigen::internal::imag_impl< Scalar >
 
struct  Eigen::internal::imag_retval< Scalar >
 
struct  Eigen::internal::real_ref_impl< Scalar >
 
struct  Eigen::internal::real_ref_retval< Scalar >
 
struct  Eigen::internal::imag_ref_default_impl< Scalar, IsComplex >
 
struct  Eigen::internal::imag_ref_default_impl< Scalar, false >
 
struct  Eigen::internal::imag_ref_impl< Scalar >
 
struct  Eigen::internal::imag_ref_retval< Scalar >
 
struct  Eigen::internal::conj_default_impl< Scalar, IsComplex >
 
struct  Eigen::internal::conj_default_impl< Scalar, true >
 
struct  Eigen::internal::conj_impl< Scalar, IsComplex >
 
struct  Eigen::internal::conj_retval< Scalar >
 
struct  Eigen::internal::abs2_impl_default< Scalar, IsComplex >
 
struct  Eigen::internal::abs2_impl_default< Scalar, true >
 
struct  Eigen::internal::abs2_impl< Scalar >
 
struct  Eigen::internal::abs2_retval< Scalar >
 
struct  Eigen::internal::sqrt_impl< Scalar >
 
struct  Eigen::internal::sqrt_impl< std::complex< T > >
 
struct  Eigen::internal::sqrt_retval< Scalar >
 
struct  Eigen::internal::rsqrt_impl< std::complex< T > >
 
struct  Eigen::internal::rsqrt_retval< Scalar >
 
struct  Eigen::internal::norm1_default_impl< Scalar, true >
 
struct  Eigen::internal::norm1_default_impl< Scalar, false >
 
struct  Eigen::internal::norm1_impl< Scalar >
 
struct  Eigen::internal::norm1_retval< Scalar >
 
struct  Eigen::internal::hypot_retval< Scalar >
 
struct  Eigen::internal::cast_impl< OldType, NewType, EnableIf >
 
struct  Eigen::internal::cast_impl< OldType, NewType, typename internal::enable_if< !NumTraits< OldType >::IsComplex &&NumTraits< NewType >::IsComplex >::type >
 
struct  Eigen::internal::round_impl< Scalar >
 
struct  Eigen::internal::round_using_floor_ceil_impl< Scalar >
 
struct  Eigen::internal::round_impl< float >
 
struct  Eigen::internal::round_impl< double >
 
struct  Eigen::internal::round_retval< Scalar >
 
struct  Eigen::internal::rint_impl< Scalar >
 
struct  Eigen::internal::rint_impl< double >
 
struct  Eigen::internal::rint_impl< float >
 
struct  Eigen::internal::rint_retval< Scalar >
 
struct  Eigen::internal::arg_default_impl< Scalar, IsComplex >
 
struct  Eigen::internal::arg_default_impl< Scalar, true >
 
struct  Eigen::internal::arg_impl< Scalar >
 
struct  Eigen::internal::arg_retval< Scalar >
 
struct  Eigen::internal::expm1_impl< Scalar >
 
struct  Eigen::internal::expm1_retval< Scalar >
 
struct  Eigen::internal::log_impl< Scalar >
 
struct  Eigen::internal::log_impl< std::complex< Scalar > >
 
struct  Eigen::internal::log1p_impl< Scalar >
 
struct  Eigen::internal::log1p_impl< std::complex< RealScalar > >
 
struct  Eigen::internal::log1p_retval< Scalar >
 
struct  Eigen::internal::pow_impl< ScalarX, ScalarY, IsInteger >
 
struct  Eigen::internal::pow_impl< ScalarX, ScalarY, true >
 
struct  Eigen::internal::random_default_impl< Scalar, IsComplex, IsInteger >
 
struct  Eigen::internal::random_impl< Scalar >
 
struct  Eigen::internal::random_retval< Scalar >
 
struct  Eigen::internal::random_default_impl< Scalar, false, false >
 
struct  Eigen::internal::meta_floor_log2_selector< n, lower, upper >
 
struct  Eigen::internal::meta_floor_log2< n, lower, upper, selector >
 
struct  Eigen::internal::meta_floor_log2< n, lower, upper, meta_floor_log2_move_down >
 
struct  Eigen::internal::meta_floor_log2< n, lower, upper, meta_floor_log2_move_up >
 
struct  Eigen::internal::meta_floor_log2< n, lower, upper, meta_floor_log2_terminate >
 
struct  Eigen::internal::meta_floor_log2< n, lower, upper, meta_floor_log2_bogus >
 
struct  Eigen::internal::random_default_impl< Scalar, false, true >
 
struct  Eigen::internal::random_default_impl< Scalar, true, false >
 
struct  Eigen::internal::scalar_fuzzy_default_impl< Scalar, IsComplex, IsInteger >
 
struct  Eigen::internal::scalar_fuzzy_default_impl< Scalar, false, false >
 
struct  Eigen::internal::scalar_fuzzy_default_impl< Scalar, false, true >
 
struct  Eigen::internal::scalar_fuzzy_default_impl< Scalar, true, false >
 
struct  Eigen::internal::scalar_fuzzy_impl< Scalar >
 
struct  Eigen::internal::random_impl< bool >
 
struct  Eigen::internal::scalar_fuzzy_impl< bool >
 
struct  Eigen::internal::expm1_impl< std::complex< RealScalar > >
 
struct  Eigen::internal::rsqrt_impl< T >
 

Namespaces

namespace  Eigen
 Namespace containing all symbols from the Eigen library.
 
namespace  Eigen::internal
 
namespace  Eigen::internal::std_fallback
 
namespace  Eigen::numext
 

Macros

#define EIGEN_PI   3.141592653589793238462643383279502884197169399375105820974944592307816406L
 
#define EIGEN_LOG2E   1.442695040888963407359924681001892137426645954152985934135449406931109219L
 
#define EIGEN_LN2   0.693147180559945309417232121458176568075500134360255254120680009493393621L
 
#define EIGEN_MATHFUNC_IMPL(func, scalar)   Eigen::internal::func##_impl<typename Eigen::internal::global_math_functions_filtering_base<scalar>::type>
 
#define EIGEN_MATHFUNC_RETVAL(func, scalar)   typename Eigen::internal::func##_retval<typename Eigen::internal::global_math_functions_filtering_base<scalar>::type>::type
 
#define EIGEN_USE_STD_FPCLASSIFY   0
 

Enumerations

enum  { Eigen::internal::meta_floor_log2_terminate , Eigen::internal::meta_floor_log2_move_up , Eigen::internal::meta_floor_log2_move_down , Eigen::internal::meta_floor_log2_bogus }
 

Functions

template<typename T >
EIGEN_DEVICE_FUNC std::complex< T > Eigen::internal::complex_sqrt (const std::complex< T > &z)
 
template<typename T >
EIGEN_DEVICE_FUNC std::complex< T > Eigen::internal::complex_rsqrt (const std::complex< T > &z)
 
template<typename OldType , typename NewType >
EIGEN_DEVICE_FUNC NewType Eigen::internal::cast (const OldType &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Scalar Eigen::internal::std_fallback::expm1 (const Scalar &x)
 
template<typename T >
EIGEN_DEVICE_FUNC std::complex< T > Eigen::internal::complex_log (const std::complex< T > &z)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Scalar Eigen::internal::std_fallback::log1p (const Scalar &x)
 
template<typename Scalar >
 Eigen::internal::EIGEN_MATHFUNC_RETVAL (random, Scalar) random(const Scalar &x
 
template<typename Scalar >
 Eigen::internal::EIGEN_MATHFUNC_RETVAL (random, Scalar) random()
 
template<typename T >
EIGEN_DEVICE_FUNC internal::enable_if< internal::is_integral< T >::value, bool >::type Eigen::internal::isnan_impl (const T &)
 
template<typename T >
EIGEN_DEVICE_FUNC internal::enable_if< internal::is_integral< T >::value, bool >::type Eigen::internal::isinf_impl (const T &)
 
template<typename T >
EIGEN_DEVICE_FUNC internal::enable_if< internal::is_integral< T >::value, bool >::type Eigen::internal::isfinite_impl (const T &)
 
template<typename T >
EIGEN_DEVICE_FUNC internal::enable_if<(!internal::is_integral< T >::value)&&(!NumTraits< T >::IsComplex), bool >::type Eigen::internal::isfinite_impl (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC internal::enable_if<(!internal::is_integral< T >::value)&&(!NumTraits< T >::IsComplex), bool >::type Eigen::internal::isinf_impl (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC internal::enable_if<(!internal::is_integral< T >::value)&&(!NumTraits< T >::IsComplex), bool >::type Eigen::internal::isnan_impl (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC bool Eigen::internal::isfinite_impl (const std::complex< T > &x)
 
template<typename T >
EIGEN_DEVICE_FUNC bool Eigen::internal::isnan_impl (const std::complex< T > &x)
 
template<typename T >
EIGEN_DEVICE_FUNC bool Eigen::internal::isinf_impl (const std::complex< T > &x)
 
template<typename T >
Eigen::internal::generic_fast_tanh_float (const T &a_x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::mini (const T &x, const T &y)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::maxi (const T &x, const T &y)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (real, Scalar) real(const Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC internal::add_const_on_value_type< EIGEN_MATHFUNC_RETVAL(real_ref, Scalar)>::type Eigen::numext::real_ref (const Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (real_ref, Scalar) real_ref(Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (imag, Scalar) imag(const Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (arg, Scalar) arg(const Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC internal::add_const_on_value_type< EIGEN_MATHFUNC_RETVAL(imag_ref, Scalar)>::type Eigen::numext::imag_ref (const Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (imag_ref, Scalar) imag_ref(Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (conj, Scalar) conj(const Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (abs2, Scalar) abs2(const Scalar &x)
 
EIGEN_DEVICE_FUNC bool Eigen::numext::abs2 (bool x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::absdiff (const T &x, const T &y)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE float Eigen::numext::absdiff (const float &x, const float &y)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE double Eigen::numext::absdiff (const double &x, const double &y)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE long double Eigen::numext::absdiff (const long double &x, const long double &y)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (norm1, Scalar) norm1(const Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (hypot, Scalar) hypot(const Scalar &x
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (log1p, Scalar) log1p(const Scalar &x)
 
template<typename ScalarX , typename ScalarY >
EIGEN_DEVICE_FUNC internal::pow_impl< ScalarX, ScalarY >::result_type Eigen::numext::pow (const ScalarX &x, const ScalarY &y)
 
template<typename T >
EIGEN_DEVICE_FUNC bool() Eigen::numext::isnan (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC bool() Eigen::numext::isinf (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC bool() Eigen::numext::isfinite (const T &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (rint, Scalar) rint(const Scalar &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (round, Scalar) round(const Scalar &x)
 
template<typename T >
EIGEN_DEVICE_FUNC T() Eigen::numext::floor (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC T() Eigen::numext::ceil (const T &x)
 
int Eigen::numext::log2 (int x)
 Log base 2 for 32 bits positive integers. More...
 
template<typename Scalar >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Eigen::numext::EIGEN_MATHFUNC_RETVAL (sqrt, Scalar) sqrt(const Scalar &x)
 
template<>
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_DEVICE_FUNC bool Eigen::numext::sqrt< bool > (const bool &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::rsqrt (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::log (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE internal::enable_if< NumTraits< T >::IsSigned||NumTraits< T >::IsComplex, typenameNumTraits< T >::Real >::type Eigen::numext::abs (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE internal::enable_if<!(NumTraits< T >::IsSigned||NumTraits< T >::IsComplex), typenameNumTraits< T >::Real >::type Eigen::numext::abs (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::exp (const T &x)
 
template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::numext::EIGEN_MATHFUNC_RETVAL (expm1, Scalar) expm1(const Scalar &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::cos (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::sin (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::tan (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::acos (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::asin (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::atan (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::cosh (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::sinh (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::tanh (const T &x)
 
template<typename T >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINEEigen::numext::fmod (const T &a, const T &b)
 
template<typename Scalar , typename OtherScalar >
EIGEN_DEVICE_FUNC bool Eigen::internal::isMuchSmallerThan (const Scalar &x, const OtherScalar &y, const typename NumTraits< Scalar >::Real &precision=NumTraits< Scalar >::dummy_precision())
 
template<typename Scalar >
EIGEN_DEVICE_FUNC bool Eigen::internal::isApprox (const Scalar &x, const Scalar &y, const typename NumTraits< Scalar >::Real &precision=NumTraits< Scalar >::dummy_precision())
 
template<typename Scalar >
EIGEN_DEVICE_FUNC bool Eigen::internal::isApproxOrLessThan (const Scalar &x, const Scalar &y, const typename NumTraits< Scalar >::Real &precision=NumTraits< Scalar >::dummy_precision())
 

Variables

const Scalar & Eigen::internal::y
 
EIGEN_DEVICE_FUNC const Scalar & Eigen::numext::y
 

Macro Definition Documentation

◆ EIGEN_LN2

#define EIGEN_LN2   0.693147180559945309417232121458176568075500134360255254120680009493393621L

◆ EIGEN_LOG2E

#define EIGEN_LOG2E   1.442695040888963407359924681001892137426645954152985934135449406931109219L

◆ EIGEN_MATHFUNC_IMPL

#define EIGEN_MATHFUNC_IMPL (   func,
  scalar 
)    Eigen::internal::func##_impl<typename Eigen::internal::global_math_functions_filtering_base<scalar>::type>

◆ EIGEN_MATHFUNC_RETVAL

#define EIGEN_MATHFUNC_RETVAL (   func,
  scalar 
)    typename Eigen::internal::func##_retval<typename Eigen::internal::global_math_functions_filtering_base<scalar>::type>::type

◆ EIGEN_PI

#define EIGEN_PI   3.141592653589793238462643383279502884197169399375105820974944592307816406L

◆ EIGEN_USE_STD_FPCLASSIFY

#define EIGEN_USE_STD_FPCLASSIFY   0