NAME

get_svd_basis_for_rows - Finds an ordered orthogonal basis according to variance

SYNOPSIS

#include "n/n_fit.h"

Example compile flags (system dependent):
  -DLINUX_X86_64 -DLINUX_X86_64_OPTERON  -DGNU_COMPILER 
   -I/home/kobus/include
   -L/home/kobus/misc/load/linux_x86_64_opteron -L/usr/lib/x86_64-linux-gnu
  -lKJB                               -lfftw3  -lgsl -lgslcblas -ljpeg  -lSVM -lstdc++                    -lpthread -lSLATEC -lg2c    -lacml -lacml_mv -lblas -lg2c      -lncursesw 


int get_svd_basis_for_rows
(
	const Matrix *mp,
	Matrix **basis_mpp,
	Vector **singular_vpp
);

DESCRIPTION

This is essentially PCA assuming that the data has mean 0. The basis vectors are the rows of the basis matrix.

RETURNS

NO_ERROR on success, and ERROR on failure, with an appropriate error message being set.

WARNING

Due to historical reasons, the basis vectors are the rows. (It is likely more comon to expect them as columns).

DISCLAIMER

This software is not adequatedly tested. It is recomended that results are checked independantly where appropriate.

AUTHOR

Kobus Barnard

DOCUMENTER

Kobus Barnard

SEE ALSO

least_squares , least_squares_2 , get_linear_equation_rms_error , get_best_diagonal_post_map , get_diagonal_post_map_error , get_best_map , get_best_post_map , get_post_map_error , get_row_fits , project_rows_onto_basis , get_best_linear_fit , get_best_linear_fit_2