MyraMath
Classes | Typedefs | Functions
Number.h File Reference

Various utility functions/classes related to scalar Number types. More...

#include <myramath/utility/detail/LIBPUBLIC.h>
#include <complex>
Include dependency graph for Number.h:

Go to the source code of this file.

Classes

class  myra::ReflectPrecision< Number >
 Reflects Precision trait for a Number, scalar Number types should specialize it. More...
 
class  myra::ReflectPrecision< NumberS >
 Specializations of ReflectPrecision. More...
 
class  myra::ReflectPrecision< NumberD >
 
class  myra::ReflectPrecision< NumberC >
 
class  myra::ReflectPrecision< NumberZ >
 
class  myra::ReflectComplex< Precision >
 Reflects a Precision type into a complex type. More...
 
class  myra::ReflectComplex< NumberS >
 Specializations of ReflectComplex. More...
 
class  myra::ReflectComplex< NumberD >
 
class  myra::ReflectNumber< Number >
 Reflects Number trait for a Container, containers of Numbers (Matrix's, Vector's, etc) should specialize it. More...
 
class  myra::RaisePrecision< Number >
 Reflectors that raise the Precision of a Number type. More...
 
class  myra::RaisePrecision< NumberS >
 
class  myra::RaisePrecision< NumberC >
 
class  myra::LowerPrecision< Number >
 Reflectors that lower the Precision of a Number type. More...
 
class  myra::LowerPrecision< NumberD >
 
class  myra::LowerPrecision< NumberZ >
 
class  myra::ReflectField< NumberA, NumberB >
 Rules for mixing Number types, template-heavy code uses this to figure out (eg) the resulting type of "field operations" like A+B and A/B. More...
 
class  myra::ReflectField< NumberS, NumberS >
 
class  myra::ReflectField< NumberD, NumberD >
 
class  myra::ReflectField< NumberC, NumberC >
 
class  myra::ReflectField< NumberZ, NumberZ >
 
class  myra::ReflectField< NumberS, NumberC >
 
class  myra::ReflectField< NumberD, NumberZ >
 
class  myra::ReflectField< NumberC, NumberS >
 
class  myra::ReflectField< NumberZ, NumberD >
 
class  myra::ReflectField< NumberS, int >
 
class  myra::ReflectField< NumberD, int >
 
class  myra::ReflectField< NumberC, int >
 
class  myra::ReflectField< NumberZ, int >
 
class  myra::ReflectField< int, NumberS >
 
class  myra::ReflectField< int, NumberD >
 
class  myra::ReflectField< int, NumberC >
 
class  myra::ReflectField< int, NumberZ >
 
class  myra::MatchNumber< NumberA, NumberB >
 Helper class to make sure that two Number's match. More...
 
class  myra::MatchNumber< NumberS, NumberS >
 
class  myra::MatchNumber< NumberD, NumberD >
 
class  myra::MatchNumber< NumberC, NumberC >
 
class  myra::MatchNumber< NumberZ, NumberZ >
 
class  myra::MatchNumber< NumberS, int >
 
class  myra::MatchNumber< NumberD, int >
 
class  myra::MatchNumber< NumberC, int >
 
class  myra::MatchNumber< NumberZ, int >
 
class  myra::MatchNumber< int, NumberS >
 
class  myra::MatchNumber< int, NumberD >
 
class  myra::MatchNumber< int, NumberC >
 
class  myra::MatchNumber< int, NumberZ >
 

Typedefs

typedef float myra::NumberS
 Useful typedefs.
 
typedef double myra::NumberD
 
typedef std::complex< float > myra::NumberC
 
typedef std::complex< double > myra::NumberZ
 

Functions

template<class Number >
char myra::typechar ()
 Returns a char representing a Number type.
 
template<class Number >
const char * myra::typestring ()
 Returns a const char* (string literal) representing a Number type.
 
NumberD myra::raise_precision (NumberS s)
 Functions that raise the Precision of a Number value.
 
NumberZ myra::raise_precision (NumberC c)
 
NumberS myra::lower_precision (NumberD d)
 Functions that lower the Precision of a Number value.
 
NumberC myra::lower_precision (NumberZ z)
 
NumberS myra::scalar_norm2 (NumberS x)
 Computing norm2's of Number types, a'*a.
 
NumberD myra::scalar_norm2 (NumberD d)
 
NumberS myra::scalar_norm2 (NumberC c)
 
NumberD myra::scalar_norm2 (NumberZ z)
 
NumberS myra::scalar_norm1 (NumberS x)
 Computing norm1's of Number types, sqrt(a'*a)
 
NumberD myra::scalar_norm1 (NumberD d)
 
NumberS myra::scalar_norm1 (NumberC c)
 
NumberD myra::scalar_norm1 (NumberZ z)
 
NumberS myra::realpart (NumberS s)
 Extract real part of a Number.
 
NumberD myra::realpart (NumberD d)
 
NumberS myra::realpart (NumberC c)
 
NumberD myra::realpart (NumberZ z)
 
NumberS myra::imagpart (NumberS s)
 Extract imaginary part of a Number.
 
NumberD myra::imagpart (NumberD d)
 
NumberS myra::imagpart (NumberC c)
 
NumberD myra::imagpart (NumberZ z)
 
NumberS myra::conjugate (NumberS s)
 Conjugation routines for Number types.
 
NumberD myra::conjugate (NumberD d)
 
NumberC myra::conjugate (NumberC c)
 
NumberZ myra::conjugate (NumberZ z)
 
NumberS myra::argument (NumberS s)
 Computing arguments of Number tpes.
 
NumberD myra::argument (NumberD d)
 
NumberS myra::argument (NumberC c)
 
NumberD myra::argument (NumberZ z)
 

Detailed Description

Various utility functions/classes related to scalar Number types.