mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
|
Declares and defines templatized wrappers for the Lapack library. More...
Declares and defines templatized wrappers for the Lapack library.
Definition in file templateLapack.hpp.
#include <complex>
#include <lapacke.h>
Go to the source code of this file.
Namespaces | |
namespace | mx |
The mxlib c++ namespace. | |
Functions | |
template<typename dataT > | |
dataT | mx::math::lamch (char CMACH) |
Determine machine parameters. | |
template<typename dataT > | |
MXLAPACK_INT | mx::math::potrf (char UPLO, MXLAPACK_INT N, dataT *A, MXLAPACK_INT LDA, MXLAPACK_INT &INFO) |
Compute the Cholesky factorization of a real symmetric positive definite matrix A. | |
template<typename dataT > | |
MXLAPACK_INT | mx::math::sytrd (char UPLO, MXLAPACK_INT N, dataT *A, MXLAPACK_INT LDA, dataT *D, dataT *E, dataT *TAU, dataT *WORK, MXLAPACK_INT LWORK, MXLAPACK_INT INFO) |
Reduce a real symmetric matrix to real symmetric tridiagonal form by an orthogonal similarity transformation. | |
template<typename dataT > | |
MXLAPACK_INT | mx::math::syevr (char JOBZ, char RANGE, char UPLO, MXLAPACK_INT N, dataT *A, MXLAPACK_INT LDA, dataT VL, dataT VU, MXLAPACK_INT IL, MXLAPACK_INT IU, dataT ABSTOL, MXLAPACK_INT *M, dataT *W, dataT *Z, MXLAPACK_INT LDZ, MXLAPACK_INT *ISUPPZ, dataT *WORK, MXLAPACK_INT LWORK, MXLAPACK_INT *IWORK, MXLAPACK_INT LIWORK) |
Compute selected eigenvalues and, optionally, eigenvectors of a real symmetric matrix. | |
template<typename dataT > | |
MXLAPACK_INT | mx::math::gesvd (char JOBU, char JOBVT, MXLAPACK_INT M, MXLAPACK_INT N, dataT *A, MXLAPACK_INT LDA, dataT *S, dataT *U, MXLAPACK_INT LDU, dataT *VT, MXLAPACK_INT LDVT, dataT *WORK, MXLAPACK_INT LWORK) |
Compute the singular value decomposition (SVD) of a real matrix. | |
MXLAPACK_INT mx::math::potrf | ( | char | UPLO, |
MXLAPACK_INT | N, | ||
dataT * | A, | ||
MXLAPACK_INT | LDA, | ||
MXLAPACK_INT & | INFO | ||
) |
Compute the Cholesky factorization of a real symmetric positive definite matrix A.
The factorization has the form A = U**T * U, if UPLO = 'U', or A = L * L**T, if UPLO = 'L', where U is an upper triangular matrix and L is lower triangular.
[in] | UPLO | 'U' if upper triangle of A is stored, 'L' if lower triangle of A is stored. |
[in] | N | The order of the matrix A, >= 0. |
A | [in.out] Symmetric matrix of dimension (LDA,N), stored as specified in UPLO. Note that the opposite half is not referenced. | |
[in] | LDA | The leading dimension of A. |
[out] | INFO | 0 on success, < 0 -INFO means the i-th argument had an illegal value, >0 the leading minor of order INFO is not positive definite, and the factorization could not be completed. |
References mx::math::potrf().
Referenced by mx::math::potrf().