Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

vnl_math.h File Reference

Namespace with standard math functions. More...

Go to the source code of this file.

Compounds

class  vnl_math

Functions

template<class T> T vnl_huge_val (T)
double vnl_huge_val (double)
float vnl_huge_val (float)
long int vnl_huge_val (long int)
int vnl_huge_val (int)
short vnl_huge_val (short)
char vnl_huge_val (char)
template<class T> bool vnl_math_isnan (T)
bool vnl_math_isnan (float)
bool vnl_math_isnan (double)
bool vnl_math_isnan (long double)
template<class T> bool vnl_math_isinf (T)
bool vnl_math_isinf (float)
bool vnl_math_isinf (double)
bool vnl_math_isinf (long double)
template<class T> bool vnl_math_isfinite (T)
bool vnl_math_isfinite (float)
bool vnl_math_isfinite (double)
bool vnl_math_isfinite (long double)
long vnl_math_rnd (float x)
int vnl_math_rnd (double x)
int vnl_math_abs (int x)
unsigned vnl_math_abs (unsigned x)
long vnl_math_abs (long x)
float vnl_math_abs (float x)
double vnl_math_abs (double x)
int vnl_math_max (int x, int y)
unsigned vnl_math_max (unsigned x, unsigned y)
long vnl_math_max (long x, long y)
float vnl_math_max (float x, float y)
double vnl_math_max (double x, double y)
int vnl_math_min (int x, int y)
unsigned vnl_math_min (unsigned x, unsigned y)
long vnl_math_min (long x, long y)
float vnl_math_min (float x, float y)
double vnl_math_min (double x, double y)
int vnl_math_sqr (int x)
unsigned vnl_math_sqr (unsigned x)
long vnl_math_sqr (long x)
float vnl_math_sqr (float x)
double vnl_math_sqr (double x)
int vnl_math_sgn (int x)
int vnl_math_sgn (long x)
int vnl_math_sgn (float x)
int vnl_math_sgn (double x)
int vnl_math_sgn0 (int x)
int vnl_math_sgn0 (long x)
int vnl_math_sgn0 (float x)
int vnl_math_sgn0 (double x)
int vnl_math_squared_magnitude (int x)
unsigned vnl_math_squared_magnitude (unsigned x)
long vnl_math_squared_magnitude (long x)
float vnl_math_squared_magnitude (float x)
double vnl_math_squared_magnitude (double x)
float vnl_math_sqrt (float x)
double vnl_math_sqrt (double x)
float vnl_math_cuberoot (float a)
double vnl_math_cuberoot (double a)
double vnl_math_hypot (int x, int y)
float vnl_math_hypot (float x, float y)
double vnl_math_hypot (double x, double y)


Detailed Description

Namespace with standard math functions.

Author:
Andrew W. Fitzgibbon, Oxford RRG, July 13, 1996 The vnl_math namespace provides a standard set of the simple mathematical functions (min, max, sqr, sgn, rnd, abs), and some predefined constants such as pi and e, which are not defined by the ANSI C++ standard.
There are complex versions defined in vnl_complex.h

That's right, M_PI is nonstandard!

Aside from e, pi and their associates the class also defines eps, the IEEE double machine precision. This is the smallest number eps such that 1+eps != 1.

The operations are overloaded for int, float and double arguments, which in combination with inlining can make them more efficient than their counterparts in the standard C library.

Definition in file vnl_math.h.


Function Documentation

char vnl_huge_val char   
 

short vnl_huge_val short   
 

int vnl_huge_val int   
 

long int vnl_huge_val long    int
 

float vnl_huge_val float   
 

double vnl_huge_val double   
 

template<class T>
T vnl_huge_val  
 

Type-accessible infinities for use in templates.

double vnl_math_abs double    x [inline]
 

Definition at line 106 of file vnl_math.h.

float vnl_math_abs float    x [inline]
 

Definition at line 105 of file vnl_math.h.

long double vnl_math_abs long    x [inline]
 

Definition at line 103 of file vnl_math.h.

unsigned long vnl_math_abs unsigned    x [inline]
 

Definition at line 102 of file vnl_math.h.

int vnl_math_abs int    x [inline]
 

Definition at line 101 of file vnl_math.h.

double vnl_math_cuberoot double    a [inline]
 

Definition at line 157 of file vnl_math.h.

float vnl_math_cuberoot float    a [inline]
 

Definition at line 156 of file vnl_math.h.

double vnl_math_hypot double    x,
double    y
[inline]
 

Definition at line 162 of file vnl_math.h.

float vnl_math_hypot float    x,
float    y
[inline]
 

Definition at line 161 of file vnl_math.h.

double vnl_math_hypot int    x,
int    y
[inline]
 

Definition at line 160 of file vnl_math.h.

bool vnl_math_isfinite long    double
 

bool vnl_math_isfinite double   
 

bool vnl_math_isfinite float   
 

template<class T>
bool vnl_math_isfinite   [inline]
 

Definition at line 91 of file vnl_math.h.

bool vnl_math_isinf long    double
 

bool vnl_math_isinf double   
 

bool vnl_math_isinf float   
 

template<class T>
bool vnl_math_isinf   [inline]
 

Definition at line 85 of file vnl_math.h.

bool vnl_math_isnan long    double
 

bool vnl_math_isnan double   
 

bool vnl_math_isnan float   
 

template<class T>
bool vnl_math_isnan   [inline]
 

Definition at line 79 of file vnl_math.h.

double vnl_math_max double    x,
double    y
[inline]
 

Definition at line 114 of file vnl_math.h.

float vnl_math_max float    x,
float    y
[inline]
 

Definition at line 113 of file vnl_math.h.

long vnl_math_max long    x,
long    y
[inline]
 

Definition at line 112 of file vnl_math.h.

unsigned vnl_math_max unsigned    x,
unsigned    y
[inline]
 

Definition at line 111 of file vnl_math.h.

int vnl_math_max int    x,
int    y
[inline]
 

Definition at line 110 of file vnl_math.h.

double vnl_math_min double    x,
double    y
[inline]
 

Definition at line 121 of file vnl_math.h.

float vnl_math_min float    x,
float    y
[inline]
 

Definition at line 120 of file vnl_math.h.

long vnl_math_min long    x,
long    y
[inline]
 

Definition at line 119 of file vnl_math.h.

unsigned vnl_math_min unsigned    x,
unsigned    y
[inline]
 

Definition at line 118 of file vnl_math.h.

int vnl_math_min int    x,
int    y
[inline]
 

Definition at line 117 of file vnl_math.h.

int vnl_math_rnd double    x [inline]
 

Definition at line 98 of file vnl_math.h.

long vnl_math_rnd float    x [inline]
 

Definition at line 97 of file vnl_math.h.

int vnl_math_sgn double    x [inline]
 

Definition at line 134 of file vnl_math.h.

int vnl_math_sgn float    x [inline]
 

Definition at line 133 of file vnl_math.h.

int vnl_math_sgn long    x [inline]
 

Definition at line 132 of file vnl_math.h.

int vnl_math_sgn int    x [inline]
 

Definition at line 131 of file vnl_math.h.

int vnl_math_sgn0 double    x [inline]
 

Definition at line 140 of file vnl_math.h.

int vnl_math_sgn0 float    x [inline]
 

Definition at line 139 of file vnl_math.h.

int vnl_math_sgn0 long    x [inline]
 

Definition at line 138 of file vnl_math.h.

int vnl_math_sgn0 int    x [inline]
 

Definition at line 137 of file vnl_math.h.

double vnl_math_sqr double    x [inline]
 

Definition at line 128 of file vnl_math.h.

Referenced by itk::GaussianKernelFunction::Evaluate().

float vnl_math_sqr float    x [inline]
 

Definition at line 127 of file vnl_math.h.

long vnl_math_sqr long    x [inline]
 

Definition at line 126 of file vnl_math.h.

unsigned vnl_math_sqr unsigned    x [inline]
 

Definition at line 125 of file vnl_math.h.

int vnl_math_sqr int    x [inline]
 

Definition at line 124 of file vnl_math.h.

double vnl_math_sqrt double    x [inline]
 

Definition at line 153 of file vnl_math.h.

float vnl_math_sqrt float    x [inline]
 

Definition at line 152 of file vnl_math.h.

double vnl_math_squared_magnitude double    x [inline]
 

Definition at line 148 of file vnl_math.h.

float vnl_math_squared_magnitude float    x [inline]
 

Definition at line 147 of file vnl_math.h.

long double vnl_math_squared_magnitude long    x [inline]
 

Definition at line 145 of file vnl_math.h.

unsigned long vnl_math_squared_magnitude unsigned    x [inline]
 

Definition at line 144 of file vnl_math.h.

int vnl_math_squared_magnitude int    x [inline]
 

Definition at line 143 of file vnl_math.h.


Generated at Wed Mar 12 01:13:18 2003 for ITK by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2000