Public Member Functions | Static Public Member Functions

auxlib Class Reference
[Auxlib]

wrapper for accessing external functions defined in ATLAS, LAPACK or BLAS libraries More...

#include <auxlib_proto.hpp>

List of all members.

Public Member Functions

template<typename T >
void eig_gen (Col< std::complex< T > > &eigval, Mat< T > &l_eigvec, Mat< T > &r_eigvec, const Mat< T > &A, const char side)
 Eigenvalues and eigenvectors of a general square real matrix using LAPACK. //! The argument 'side' specifies which eigenvectors should be calculated //! (see code for mode details).

Static Public Member Functions

template<typename eT >
static bool inv_noalias (Mat< eT > &out, const Mat< eT > &X)
 immediate matrix inverse
template<typename eT >
static bool inv_inplace (Mat< eT > &X)
 immediate inplace matrix inverse
template<typename eT >
static eT det (const Mat< eT > &X)
 immediate determinant of a matrix using ATLAS or LAPACK
template<typename eT >
static void log_det (eT &out_val, typename get_pod_type< eT >::result &out_sign, const Mat< eT > &X)
 immediate log determinant of a matrix using ATLAS or LAPACK
template<typename eT >
static void lu (Mat< eT > &L, Mat< eT > &U, podarray< int > &ipiv, const Mat< eT > &X_orig)
 immediate LU decomposition of a matrix using ATLAS or LAPACK
template<typename eT >
static void lu (Mat< eT > &L, Mat< eT > &U, Mat< eT > &P, const Mat< eT > &X)
template<typename eT >
static void lu (Mat< eT > &L, Mat< eT > &U, const Mat< eT > &X)
template<typename eT >
static void eig_sym (Col< eT > &eigval, const Mat< eT > &A)
 immediate eigenvalues of a symmetric real matrix using LAPACK
template<typename T >
static void eig_sym (Col< T > &eigval, const Mat< std::complex< T > > &A)
 immediate eigenvalues of a hermitian complex matrix using LAPACK
template<typename eT >
static void eig_sym (Col< eT > &eigval, Mat< eT > &eigvec, const Mat< eT > &A)
 immediate eigenvalues and eigenvectors of a symmetric real matrix using LAPACK
template<typename T >
static void eig_sym (Col< T > &eigval, Mat< std::complex< T > > &eigvec, const Mat< std::complex< T > > &A)
 immediate eigenvalues and eigenvectors of a hermitian complex matrix using LAPACK
template<typename eT >
static void eig_gen (Col< std::complex< eT > > &eigval, Mat< eT > &l_eigvec, Mat< eT > &r_eigvec, const Mat< eT > &A, const char side)
template<typename T >
static void eig_gen (Col< std::complex< T > > &eigval, Mat< std::complex< T > > &l_eigvec, Mat< std::complex< T > > &r_eigvec, const Mat< std::complex< T > > &A, const char side)
 Eigenvalues and eigenvectors of a general square complex matrix using LAPACK //! The argument 'side' specifies which eigenvectors should be calculated //! (see code for mode details).
template<typename eT >
static bool chol (Mat< eT > &out, const Mat< eT > &X)
template<typename eT >
static bool qr (Mat< eT > &Q, Mat< eT > &R, const Mat< eT > &X)
template<typename eT >
static bool svd (Col< eT > &S, const Mat< eT > &X)
template<typename T >
static bool svd (Col< T > &S, const Mat< std::complex< T > > &X)
template<typename eT >
static bool svd (Mat< eT > &U, Col< eT > &S, Mat< eT > &V, const Mat< eT > &X)
template<typename T >
static bool svd (Mat< std::complex< T > > &U, Col< T > &S, Mat< std::complex< T > > &V, const Mat< std::complex< T > > &X)
template<typename eT >
static bool solve (Mat< eT > &out, const Mat< eT > &A, const Mat< eT > &B)
 Solve a system of linear equations //! Assumes that A.n_rows = A.n_cols //! and B.n_rows = A.n_rows.
template<typename eT >
static bool solve_od (Mat< eT > &out, const Mat< eT > &A, const Mat< eT > &B)
 Solve an over-determined system. //! Assumes that A.n_rows > A.n_cols //! and B.n_rows = A.n_rows.
template<typename eT >
static bool solve_ud (Mat< eT > &out, const Mat< eT > &A, const Mat< eT > &B)
 Solve an under-determined system. //! Assumes that A.n_rows < A.n_cols //! and B.n_rows = A.n_rows.

Detailed Description

wrapper for accessing external functions defined in ATLAS, LAPACK or BLAS libraries

Definition at line 23 of file auxlib_proto.hpp.


Member Function Documentation

template<typename eT >
static void auxlib::eig_gen ( Col< std::complex< eT > > &  eigval,
Mat< eT > &  l_eigvec,
Mat< eT > &  r_eigvec,
const Mat< eT > &  A,
const char  side 
) [inline, static]

Referenced by eig_gen().