Public Member Functions | Static Public Member Functions

CMath Class Reference


Detailed Description

Class which collects generic mathematical functions.

Definition at line 131 of file Mathematics.h.

Inheritance diagram for CMath:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual const char * get_name () const
template<>
void display_vector (const uint8_t *vector, int32_t n, const char *name)
template<>
void display_vector (const int32_t *vector, int32_t n, const char *name)
template<>
void display_vector (const int64_t *vector, int32_t n, const char *name)
template<>
void display_vector (const uint64_t *vector, int32_t n, const char *name)
template<>
void display_vector (const float32_t *vector, int32_t n, const char *name)
template<>
void display_vector (const float64_t *vector, int32_t n, const char *name)
template<>
void display_matrix (const int32_t *matrix, int32_t rows, int32_t cols, const char *name)
template<>
void display_matrix (const float64_t *matrix, int32_t rows, int32_t cols, const char *name)
Constructor/Destructor.

 CMath ()
 Constructor - initializes log-table.
virtual ~CMath ()
 Destructor - frees logtable.

Static Public Member Functions

static float64_t mutual_info (float64_t *p1, float64_t *p2, int32_t len)
static float64_t relative_entropy (float64_t *p, float64_t *q, int32_t len)
static float64_t entropy (float64_t *p, int32_t len)
 returns entropy of p which is given in logspace
static uint32_t get_seed ()
 returns number generator seed
static int is_finite (double f)
 checks whether a float is finite
static int is_infinity (double f)
 checks whether a float is infinity
static int is_nan (double f)
 checks whether a float is nan
min/max/abs functions.

template<class T >
static T min (T a, T b)
 return the minimum of two integers
template<class T >
static T max (T a, T b)
 return the maximum of two integers
template<class T >
static T clamp (T value, T lb, T ub)
 return the value clamped to interval [lb,ub]
template<class T >
static T abs (T a)
 return the maximum of two integers
misc functions

static float64_t round (float64_t d)
static float64_t floor (float64_t d)
static float64_t ceil (float64_t d)
template<class T >
static T sign (T a)
 signum of type T variable a
template<class T >
static void swap (T &a, T &b)
 swap e.g. floats a and b
template<class T >
static void resize (T *&data, int64_t old_size, int64_t new_size)
template<class T >
static T twonorm (T *x, int32_t len)
 || x ||_2
template<class T >
static T qsq (T *x, int32_t len, float64_t q)
 || x ||_q^q
template<class T >
static T qnorm (T *x, int32_t len, float64_t q)
 || x ||_q
template<class T >
static T sq (T x)
 x^2
static float32_t sqrt (float32_t x)
 x^0.5
static float64_t sqrt (float64_t x)
 x^0.5
static floatmax_t sqrt (floatmax_t x)
 x^0.5
static floatmax_t powl (floatmax_t x, floatmax_t n)
 x^n
static int32_t pow (int32_t x, int32_t n)
static float64_t pow (float64_t x, int32_t n)
static float64_t pow (float64_t x, float64_t n)
static float64_t exp (float64_t x)
static float64_t log10 (float64_t v)
static float64_t log2 (float64_t v)
static float64_t log (float64_t v)
template<class T >
static void transpose_matrix (T *&matrix, int32_t &num_feat, int32_t &num_vec)
static float64_tpinv (float64_t *matrix, int32_t rows, int32_t cols, float64_t *target=NULL)
static void dgemm (double alpha, const double *A, int rows, int cols, CBLAS_TRANSPOSE transposeA, double *B, int cols_B, CBLAS_TRANSPOSE transposeB, double beta, double *C)
static void dgemv (double alpha, const double *A, int rows, int cols, const CBLAS_TRANSPOSE transposeA, const double *X, double beta, double *Y)
static int64_t factorial (int32_t n)
static void init_random (uint32_t initseed=0)
static int64_t random ()
static int32_t random (int32_t min_value, int32_t max_value)
static float32_t random (float32_t min_value, float32_t max_value)
static float64_t random (float64_t min_value, float64_t max_value)
template<class T >
static T * clone_vector (const T *vec, int32_t len)
template<class T >
static void fill_vector (T *vec, int32_t len, T value)
template<class T >
static void range_fill_vector (T *vec, int32_t len, T start=0)
template<class T >
static void random_vector (T *vec, int32_t len, T min_value, T max_value)
static int32_t * randperm (int32_t n)
static int64_t nchoosek (int32_t n, int32_t k)
template<class T >
static void vec1_plus_scalar_times_vec2 (T *vec1, T scalar, const T *vec2, int32_t n)
 x=x+alpha*y
static float64_t dot (const bool *v1, const bool *v2, int32_t n)
 compute dot product between v1 and v2 (blas optimized)
static floatmax_t dot (const floatmax_t *v1, const floatmax_t *v2, int32_t n)
 compute dot product between v1 and v2 (blas optimized)
static float64_t dot (const float64_t *v1, const float64_t *v2, int32_t n)
 compute dot product between v1 and v2 (blas optimized)
static float32_t dot (const float32_t *v1, const float32_t *v2, int32_t n)
 compute dot product between v1 and v2 (blas optimized)
static float64_t dot (const uint64_t *v1, const uint64_t *v2, int32_t n)
 compute dot product between v1 and v2 (for 64bit unsigned ints)
static float64_t dot (const int64_t *v1, const int64_t *v2, int32_t n)
 compute dot product between v1 and v2 (for 64bit ints)
static float64_t dot (const int32_t *v1, const int32_t *v2, int32_t n)
 compute dot product between v1 and v2 (for 32bit ints)
static float64_t dot (const uint32_t *v1, const uint32_t *v2, int32_t n)
 compute dot product between v1 and v2 (for 32bit unsigned ints)
static float64_t dot (const uint16_t *v1, const uint16_t *v2, int32_t n)
 compute dot product between v1 and v2 (for 16bit unsigned ints)
static float64_t dot (const int16_t *v1, const int16_t *v2, int32_t n)
 compute dot product between v1 and v2 (for 16bit unsigned ints)
static float64_t dot (const char *v1, const char *v2, int32_t n)
 compute dot product between v1 and v2 (for 8bit (un)signed ints)
static float64_t dot (const uint8_t *v1, const uint8_t *v2, int32_t n)
 compute dot product between v1 and v2 (for 8bit (un)signed ints)
static float64_t dot (const int8_t *v1, const int8_t *v2, int32_t n)
 compute dot product between v1 and v2 (for 8bit (un)signed ints)
static float64_t dot (const float64_t *v1, const char *v2, int32_t n)
 compute dot product between v1 and v2
template<class T >
static void add (T *target, T alpha, const T *v1, T beta, const T *v2, int32_t len)
 target=alpha*vec1 + beta*vec2
template<class T >
static void add_scalar (T alpha, T *vec, int32_t len)
 add scalar to vector inplace
template<class T >
static void scale_vector (T alpha, T *vec, int32_t len)
 scale vector inplace
template<class T >
static T sum (T *vec, int32_t len)
 return sum(vec)
template<class T >
static T max (T *vec, int32_t len)
 return max(vec)
template<class T >
static T sum_abs (T *vec, int32_t len)
 return sum(abs(vec))
template<class T >
static bool fequal (T x, T y, float64_t precision=1e-6)
 return sum(abs(vec))
static float64_t mean (float64_t *vec, int32_t len)
static float64_t trace (float64_t *mat, int32_t cols, int32_t rows)
static void sort (int32_t *a, int32_t cols, int32_t sort_col=0)
static void sort (float64_t *a, int32_t *idx, int32_t N)
template<class T >
static void radix_sort (T *array, int32_t size)
template<class T >
static uint8_t byte (T word, uint16_t p)
template<class T >
static void radix_sort_helper (T *array, int32_t size, uint16_t i)
template<class T >
static void insertion_sort (T *output, int32_t size)
template<class T >
static void qsort (T *output, int32_t size)
template<class T >
static void display_bits (T word, int32_t width=8 *sizeof(T))
 display bits (useful for debugging)
template<class T >
static void display_vector (const T *vector, int32_t n, const char *name="vector")
 display vector (useful for debugging)
template<class T >
static void display_matrix (const T *matrix, int32_t rows, int32_t cols, const char *name="matrix")
 display matrix (useful for debugging)
template<class T1 , class T2 >
static void qsort_index (T1 *output, T2 *index, uint32_t size)
template<class T1 , class T2 >
static void qsort_backward_index (T1 *output, T2 *index, int32_t size)
template<class T1 , class T2 >
static void parallel_qsort_index (T1 *output, T2 *index, uint32_t size, int32_t n_threads, int32_t limit=262144)
template<class T1 , class T2 >
static void * parallel_qsort_index (void *p)
template<class T >
static void min (float64_t *output, T *index, int32_t size)
template<class T >
static void nmin (float64_t *output, T *index, int32_t size, int32_t n)
template<class T >
static int32_t unique (T *output, int32_t size)
template<class T >
static int32_t binary_search_helper (T *output, int32_t size, T elem)
template<class T >
static int32_t binary_search (T *output, int32_t size, T elem)
template<class T >
static int32_t binary_search_max_lower_equal (T *output, int32_t size, T elem)
static float64_t Align (char *seq1, char *seq2, int32_t l1, int32_t l2, float64_t gapCost)
static int32_t calcroc (float64_t *fp, float64_t *tp, float64_t *output, int32_t *label, int32_t &size, int32_t &possize, int32_t &negsize, float64_t &tresh, FILE *rocfile)
summing functions

static float64_t logarithmic_sum (float64_t p, float64_t q)

Static Public Attributes

constants

static const float64_t INFTY = -log(0.0)
 infinity
static const float64_t ALMOST_INFTY = +1e+20
static const float64_t ALMOST_NEG_INFTY = -1000
 almost neg (log) infinity
static int32_t LOGRANGE = 0
 range for logtable: log(1+exp(x)) -LOGRANGE <= x <= 0
static uint32_t seed = 0
 random generator seed
static char * rand_state = NULL

Constructor & Destructor Documentation

CMath (  ) 

Constructor - initializes log-table.

Definition at line 50 of file Mathematics.cpp.

~CMath (  )  [virtual]

Destructor - frees logtable.

Definition at line 70 of file Mathematics.cpp.


Member Function Documentation

static T abs ( a  )  [static]

return the maximum of two integers

Definition at line 177 of file Mathematics.h.

static void add ( T *  target,
alpha,
const T *  v1,
beta,
const T *  v2,
int32_t  len 
) [static]

target=alpha*vec1 + beta*vec2

Definition at line 692 of file Mathematics.h.

static void add_scalar ( alpha,
T *  vec,
int32_t  len 
) [static]

add scalar to vector inplace

Definition at line 702 of file Mathematics.h.

float64_t Align ( char *  seq1,
char *  seq2,
int32_t  l1,
int32_t  l2,
float64_t  gapCost 
) [static]

align two sequences seq1 & seq2 of length l1 and l2 using gapCost return alignment cost

Definition at line 150 of file Mathematics.cpp.

static int32_t binary_search ( T *  output,
int32_t  size,
elem 
) [static]

Definition at line 1086 of file Mathematics.h.

static int32_t binary_search_helper ( T *  output,
int32_t  size,
elem 
) [static]

Definition at line 1060 of file Mathematics.h.

static int32_t binary_search_max_lower_equal ( T *  output,
int32_t  size,
elem 
) [static]

Definition at line 1099 of file Mathematics.h.

static uint8_t byte ( word,
uint16_t  p 
) [static]

Definition at line 798 of file Mathematics.h.

int32_t calcroc ( float64_t fp,
float64_t tp,
float64_t output,
int32_t *  label,
int32_t &  size,
int32_t &  possize,
int32_t &  negsize,
float64_t tresh,
FILE *  rocfile 
) [static]

calculates ROC into (fp,tp) from output and label of length size returns index with smallest error=fp+fn

Definition at line 195 of file Mathematics.cpp.

static float64_t ceil ( float64_t  d  )  [static]

Definition at line 203 of file Mathematics.h.

static T clamp ( value,
lb,
ub 
) [static]

return the value clamped to interval [lb,ub]

Definition at line 165 of file Mathematics.h.

static T* clone_vector ( const T *  vec,
int32_t  len 
) [static]

Definition at line 474 of file Mathematics.h.

static void dgemm ( double  alpha,
const double *  A,
int  rows,
int  cols,
CBLAS_TRANSPOSE  transposeA,
double *  B,
int  cols_B,
CBLAS_TRANSPOSE  transposeB,
double  beta,
double *  C 
) [static]

Definition at line 391 of file Mathematics.h.

static void dgemv ( double  alpha,
const double *  A,
int  rows,
int  cols,
const CBLAS_TRANSPOSE  transposeA,
const double *  X,
double  beta,
double *  Y 
) [static]

Definition at line 401 of file Mathematics.h.

static void display_bits ( word,
int32_t  width = 8*sizeof(T) 
) [static]

display bits (useful for debugging)

Definition at line 964 of file Mathematics.h.

static void display_matrix ( const T *  matrix,
int32_t  rows,
int32_t  cols,
const char *  name = "matrix" 
) [static]

display matrix (useful for debugging)

void display_matrix ( const int32_t *  matrix,
int32_t  rows,
int32_t  cols,
const char *  name 
)

Definition at line 480 of file Mathematics.cpp.

void display_matrix ( const float64_t matrix,
int32_t  rows,
int32_t  cols,
const char *  name 
)

Definition at line 497 of file Mathematics.cpp.

static void display_vector ( const T *  vector,
int32_t  n,
const char *  name = "vector" 
) [static]

display vector (useful for debugging)

void display_vector ( const uint8_t *  vector,
int32_t  n,
const char *  name 
)

Definition at line 420 of file Mathematics.cpp.

void display_vector ( const int64_t *  vector,
int32_t  n,
const char *  name 
)

Definition at line 440 of file Mathematics.cpp.

void display_vector ( const int32_t *  vector,
int32_t  n,
const char *  name 
)

Definition at line 430 of file Mathematics.cpp.

void display_vector ( const float32_t vector,
int32_t  n,
const char *  name 
)

Definition at line 460 of file Mathematics.cpp.

void display_vector ( const uint64_t *  vector,
int32_t  n,
const char *  name 
)

Definition at line 450 of file Mathematics.cpp.

void display_vector ( const float64_t vector,
int32_t  n,
const char *  name 
)

Definition at line 470 of file Mathematics.cpp.

static float64_t dot ( const int32_t *  v1,
const int32_t *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (for 32bit ints)

Definition at line 603 of file Mathematics.h.

static float64_t dot ( const bool *  v1,
const bool *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (blas optimized)

Definition at line 535 of file Mathematics.h.

static float64_t dot ( const uint32_t *  v1,
const uint32_t *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (for 32bit unsigned ints)

Definition at line 614 of file Mathematics.h.

static float64_t dot ( const uint16_t *  v1,
const uint16_t *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (for 16bit unsigned ints)

Definition at line 625 of file Mathematics.h.

static floatmax_t dot ( const floatmax_t v1,
const floatmax_t v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (blas optimized)

Definition at line 544 of file Mathematics.h.

static float64_t dot ( const float64_t v1,
const float64_t v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (blas optimized)

Definition at line 553 of file Mathematics.h.

static float32_t dot ( const float32_t v1,
const float32_t v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (blas optimized)

Definition at line 567 of file Mathematics.h.

static float64_t dot ( const uint64_t *  v1,
const uint64_t *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (for 64bit unsigned ints)

Definition at line 582 of file Mathematics.h.

static float64_t dot ( const int64_t *  v1,
const int64_t *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (for 64bit ints)

Definition at line 592 of file Mathematics.h.

static float64_t dot ( const int16_t *  v1,
const int16_t *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (for 16bit unsigned ints)

Definition at line 636 of file Mathematics.h.

static float64_t dot ( const char *  v1,
const char *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (for 8bit (un)signed ints)

Definition at line 647 of file Mathematics.h.

static float64_t dot ( const uint8_t *  v1,
const uint8_t *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (for 8bit (un)signed ints)

Definition at line 658 of file Mathematics.h.

static float64_t dot ( const int8_t *  v1,
const int8_t *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2 (for 8bit (un)signed ints)

Definition at line 669 of file Mathematics.h.

static float64_t dot ( const float64_t v1,
const char *  v2,
int32_t  n 
) [static]

compute dot product between v1 and v2

Definition at line 680 of file Mathematics.h.

float64_t entropy ( float64_t p,
int32_t  len 
) [static]

returns entropy of p which is given in logspace

Definition at line 358 of file Mathematics.cpp.

static float64_t exp ( float64_t  x  )  [static]

Definition at line 340 of file Mathematics.h.

static int64_t factorial ( int32_t  n  )  [static]

Definition at line 412 of file Mathematics.h.

static bool fequal ( x,
y,
float64_t  precision = 1e-6 
) [static]

return sum(abs(vec))

Definition at line 753 of file Mathematics.h.

static void fill_vector ( T *  vec,
int32_t  len,
value 
) [static]

Definition at line 483 of file Mathematics.h.

static float64_t floor ( float64_t  d  )  [static]

Definition at line 198 of file Mathematics.h.

virtual const char* get_name ( void   )  const [virtual]
Returns:
object name

Implements CSGObject.

Definition at line 1261 of file Mathematics.h.

static uint32_t get_seed (  )  [static]

returns number generator seed

Definition at line 1139 of file Mathematics.h.

static void init_random ( uint32_t  initseed = 0  )  [static]

Definition at line 420 of file Mathematics.h.

static void insertion_sort ( T *  output,
int32_t  size 
) [static]

performs insertion sort of an array output of length size it is sorted from in ascending (for type T)

Definition at line 905 of file Mathematics.h.

static int is_finite ( double  f  )  [static]

checks whether a float is finite

Definition at line 1145 of file Mathematics.h.

static int is_infinity ( double  f  )  [static]

checks whether a float is infinity

Definition at line 1155 of file Mathematics.h.

static int is_nan ( double  f  )  [static]

checks whether a float is nan

Definition at line 1168 of file Mathematics.h.

static float64_t log ( float64_t  v  )  [static]

Definition at line 359 of file Mathematics.h.

static float64_t log10 ( float64_t  v  )  [static]

Definition at line 345 of file Mathematics.h.

static float64_t log2 ( float64_t  v  )  [static]

Definition at line 350 of file Mathematics.h.

static float64_t logarithmic_sum ( float64_t  p,
float64_t  q 
) [static]

sum logarithmic probabilities. Probability measures are summed up but are now given in logspace where direct summation of exp(operand) is not possible due to numerical problems, i.e. eg. exp(-1000)=0. Therefore we do log( exp(a) + exp(b)) = a + log (1 + exp (b-a)) where a = max(p,q) and b min(p,q).

Definition at line 1216 of file Mathematics.h.

static T max ( a,
b 
) [static]

return the maximum of two integers

Definition at line 158 of file Mathematics.h.

static T max ( T *  vec,
int32_t  len 
) [static]

return max(vec)

Definition at line 729 of file Mathematics.h.

static float64_t mean ( float64_t vec,
int32_t  len 
) [static]

Definition at line 758 of file Mathematics.h.

static T min ( a,
b 
) [static]

return the minimum of two integers

Definition at line 151 of file Mathematics.h.

void min ( float64_t output,
T *  index,
int32_t  size 
) [static]

Definition at line 1493 of file Mathematics.h.

float64_t mutual_info ( float64_t p1,
float64_t p2,
int32_t  len 
) [static]

returns the mutual information of p which is given in logspace where p,q are given in logspace

Definition at line 337 of file Mathematics.cpp.

static int64_t nchoosek ( int32_t  n,
int32_t  k 
) [static]

Definition at line 515 of file Mathematics.h.

void nmin ( float64_t output,
T *  index,
int32_t  size,
int32_t  n 
) [static]

Definition at line 1482 of file Mathematics.h.

static void parallel_qsort_index ( T1 *  output,
T2 *  index,
uint32_t  size,
int32_t  n_threads,
int32_t  limit = 262144 
) [static]

performs a quicksort on an array output of length size it is sorted in ascending order (for type T1) and returns the index (type T2) matlab alike [sorted,index]=sort(output)

parallel version

Definition at line 1015 of file Mathematics.h.

void * parallel_qsort_index ( void *  p  )  [static]

Definition at line 1292 of file Mathematics.h.

float64_t * pinv ( float64_t matrix,
int32_t  rows,
int32_t  cols,
float64_t target = NULL 
) [static]

return the pseudo inverse for matrix when matrix has shape (rows, cols) the pseudo inverse has (cols, rows)

Definition at line 379 of file Mathematics.cpp.

static float64_t pow ( float64_t  x,
float64_t  n 
) [static]

Definition at line 335 of file Mathematics.h.

static int32_t pow ( int32_t  x,
int32_t  n 
) [static]

Definition at line 315 of file Mathematics.h.

static float64_t pow ( float64_t  x,
int32_t  n 
) [static]

Definition at line 325 of file Mathematics.h.

static floatmax_t powl ( floatmax_t  x,
floatmax_t  n 
) [static]

x^n

Definition at line 304 of file Mathematics.h.

static T qnorm ( T *  x,
int32_t  len,
float64_t  q 
) [static]

|| x ||_q

Definition at line 265 of file Mathematics.h.

static void qsort ( T *  output,
int32_t  size 
) [static]

performs a quicksort on an array output of length size it is sorted from in ascending (for type T)

Definition at line 924 of file Mathematics.h.

void qsort_backward_index ( T1 *  output,
T2 *  index,
int32_t  size 
) [static]

performs a quicksort on an array output of length size it is sorted in ascending order (for type T1) and returns the index (type T2) matlab alike [sorted,index]=sort(output)

Definition at line 1440 of file Mathematics.h.

void qsort_index ( T1 *  output,
T2 *  index,
uint32_t  size 
) [static]

performs a quicksort on an array output of length size it is sorted in ascending order (for type T1) and returns the index (type T2) matlab alike [sorted,index]=sort(output)

Definition at line 1396 of file Mathematics.h.

static T qsq ( T *  x,
int32_t  len,
float64_t  q 
) [static]

|| x ||_q^q

Definition at line 254 of file Mathematics.h.

static void radix_sort ( T *  array,
int32_t  size 
) [static]

performs a in-place radix sort in ascending order

Definition at line 792 of file Mathematics.h.

static void radix_sort_helper ( T *  array,
int32_t  size,
uint16_t  i 
) [static]

Definition at line 804 of file Mathematics.h.

static int32_t random ( int32_t  min_value,
int32_t  max_value 
) [static]

Definition at line 446 of file Mathematics.h.

static int64_t random (  )  [static]

Definition at line 437 of file Mathematics.h.

static float64_t random ( float64_t  min_value,
float64_t  max_value 
) [static]

Definition at line 463 of file Mathematics.h.

static float32_t random ( float32_t  min_value,
float32_t  max_value 
) [static]

Definition at line 453 of file Mathematics.h.

static void random_vector ( T *  vec,
int32_t  len,
min_value,
max_value 
) [static]

Definition at line 496 of file Mathematics.h.

static int32_t* randperm ( int32_t  n  )  [static]

Definition at line 502 of file Mathematics.h.

static void range_fill_vector ( T *  vec,
int32_t  len,
start = 0 
) [static]

Definition at line 489 of file Mathematics.h.

float64_t relative_entropy ( float64_t p,
float64_t q,
int32_t  len 
) [static]

returns the relative entropy H(P||Q), where p,q are given in logspace

Definition at line 348 of file Mathematics.cpp.

static void resize ( T *&  data,
int64_t  old_size,
int64_t  new_size 
) [static]

resize array from old_size to new_size (keeping as much array content as possible intact)

Definition at line 230 of file Mathematics.h.

static float64_t round ( float64_t  d  )  [static]

Definition at line 193 of file Mathematics.h.

static void scale_vector ( alpha,
T *  vec,
int32_t  len 
) [static]

scale vector inplace

Definition at line 710 of file Mathematics.h.

static T sign ( a  )  [static]

signum of type T variable a

Definition at line 210 of file Mathematics.h.

void sort ( int32_t *  a,
int32_t  cols,
int32_t  sort_col = 0 
) [static]

performs a bubblesort on a given matrix a. it is sorted in ascending order from top to bottom and left to right

Definition at line 111 of file Mathematics.cpp.

void sort ( float64_t a,
int32_t *  idx,
int32_t  N 
) [static]

Definition at line 131 of file Mathematics.cpp.

static T sq ( x  )  [static]

x^2

Definition at line 273 of file Mathematics.h.

static float32_t sqrt ( float32_t  x  )  [static]

x^0.5

Definition at line 279 of file Mathematics.h.

static float64_t sqrt ( float64_t  x  )  [static]

x^0.5

Definition at line 285 of file Mathematics.h.

static floatmax_t sqrt ( floatmax_t  x  )  [static]

x^0.5

Definition at line 291 of file Mathematics.h.

static T sum ( T *  vec,
int32_t  len 
) [static]

return sum(vec)

Definition at line 718 of file Mathematics.h.

static T sum_abs ( T *  vec,
int32_t  len 
) [static]

return sum(abs(vec))

Definition at line 742 of file Mathematics.h.

static void swap ( T &  a,
T &  b 
) [static]

swap e.g. floats a and b

Definition at line 219 of file Mathematics.h.

static float64_t trace ( float64_t mat,
int32_t  cols,
int32_t  rows 
) [static]

Definition at line 769 of file Mathematics.h.

static void transpose_matrix ( T *&  matrix,
int32_t &  num_feat,
int32_t &  num_vec 
) [static]

Definition at line 365 of file Mathematics.h.

static T twonorm ( T *  x,
int32_t  len 
) [static]

|| x ||_2

Definition at line 243 of file Mathematics.h.

static int32_t unique ( T *  output,
int32_t  size 
) [static]

Definition at line 1047 of file Mathematics.h.

static void vec1_plus_scalar_times_vec2 ( T *  vec1,
scalar,
const T *  vec2,
int32_t  n 
) [static]

x=x+alpha*y

Definition at line 527 of file Mathematics.h.


Member Data Documentation

const float64_t ALMOST_INFTY = +1e+20 [static]

Definition at line 1267 of file Mathematics.h.

const float64_t ALMOST_NEG_INFTY = -1000 [static]

almost neg (log) infinity

Definition at line 1270 of file Mathematics.h.

const float64_t INFTY = -log(0.0) [static]

infinity

Definition at line 1266 of file Mathematics.h.

int32_t LOGRANGE = 0 [static]

range for logtable: log(1+exp(x)) -LOGRANGE <= x <= 0

Definition at line 1273 of file Mathematics.h.

char * rand_state = NULL [static]

Definition at line 1277 of file Mathematics.h.

uint32_t seed = 0 [static]

random generator seed

Definition at line 1276 of file Mathematics.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

SHOGUN Machine Learning Toolbox - Documentation