tensor-0.1.0
|
Namespace for Linear Algebra functions based on BLAS, LAPACK, Lanczos and related algorithms. More...
Data Structures | |
class | CArpack |
Finder of a few eigenvalues of eigenvectors via Arnoldi method. More... | |
class | RArpack |
Finder of a few eigenvalues of eigenvectors via Arnoldi method. More... | |
Enumerations | |
enum | EigType { LargestMagnitude = 0, SmallestMagnitude = 1, LargestReal = 2, LargestAlgebraic = 2, SmallestReal = 3, SmallestAlgebraic = 3, LargestImaginary = 4, SmallestImaginary = 5 } |
Type of eigenvalues that eigs and Arpack compute. More... | |
Functions | |
const CTensor | eig (const RTensor &A, CTensor *R=0, CTensor *L=0) |
Eigenvalue decomposition of a real matrix. More... | |
const CTensor | eig (const CTensor &A, CTensor *R=0, CTensor *L=0) |
Eigenvalue decomposition of a complex matrix. More... | |
double | eig_power_left (const RTensor &O, RTensor *vector, size_t iter, double tol) |
Left eigenvalue and eigenvector with the largest absolute value, computed using the power method. | |
tensor::cdouble | eig_power_left (const CTensor &O, CTensor *vector, size_t iter, double tol) |
Left eigenvalue and eigenvector with the largest absolute value, computed using the power method. | |
double | eig_power_right (const RTensor &O, RTensor *vector, size_t iter, double tol) |
Right eigenvalue and eigenvector with the largest absolute value, computed using the power method. | |
tensor::cdouble | eig_power_right (const CTensor &O, CTensor *vector, size_t iter, double tol) |
Right eigenvalue and eigenvector with the largest absolute value, computed using the power method. | |
RTensor | eig_sym (const RTensor &A, RTensor *V) |
Eigenvalue decomposition of a real matrix. More... | |
RTensor | eig_sym (const CTensor &A, CTensor *V) |
Eigenvalue decomposition of a complex matrix. More... | |
CTensor | eigs (const CTensor &A, int eig_type, size_t neig, CTensor *vectors=NULL, const tensor::cdouble *initial_guess=NULL) |
Find out a few eigenvalues and eigenvectors of a complex nonsymmetric matrix. More... | |
CTensor | eigs (const CSparse &A, int eig_type, size_t neig, CTensor *vectors=NULL, const tensor::cdouble *initial_guess=NULL) |
Find out a few eigenvalues and eigenvectors of a nonsymmetric complex sparse matrix. More... | |
RTensor | eigs (const RTensor &A, int eig_type, size_t neig, RTensor *vectors=NULL, const double *initial_guess=NULL) |
Find out a few eigenvalues and eigenvectors of a real nonsymmetric matrix. More... | |
RTensor | eigs (const RSparse &A, int eig_type, size_t neig, RTensor *vectors=NULL, const double *initial_guess=NULL) |
Find out a few eigenvalues and eigenvectors of a nonsymmetric real sparse matrix. More... | |
RTensor | eigs_sym (const RTensor &A, int eig_type, size_t neig, RTensor *vectors=NULL, const double *initial_guess=NULL) |
Find out a few eigenvalues and eigenvectors of a symmetric real matrix. More... | |
RTensor | eigs_sym (const CTensor &A, int eig_type, size_t neig, CTensor *vectors=NULL, const tensor::cdouble *initial_guess=NULL) |
Find out a few eigenvalues and eigenvectors of a symmetric real matrix. More... | |
RTensor | eigs_sym (const RSparse &A, int eig_type, size_t neig, RTensor *vectors=NULL, const double *initial_guess=NULL) |
Find out a few eigenvalues and eigenvectors of a symmetric real sparse matrix. More... | |
RTensor | eigs_sym (const CSparse &A, int eig_type, size_t neig, CTensor *vectors=NULL, const tensor::cdouble *initial_guess=NULL) |
Find out a few eigenvalues and eigenvectors of a hermitian complex sparse matrix. More... | |
const RTensor | expm (const RTensor &Aunorm, unsigned int order) |
Compute the exponential of a real matrix. More... | |
const CTensor | expm (const CTensor &Aunorm, unsigned int order) |
Compute the exponential of a real matrix. More... | |
const RTensor | solve (const RTensor &A, const RTensor &B) |
Solve a real linear system of equations by Gauss-Seidel method. More... | |
const CTensor | solve (const CTensor &A, const CTensor &B) |
Solve a complex linear system of equations by Gauss-Seidel method. | |
const RTensor | solve_with_svd (const RTensor &A, const RTensor &B, double tol) |
Solution of a linear system of equations using Penrose's pseudoinvese. More... | |
const CTensor | solve_with_svd (const CTensor &A, const CTensor &B, double tol) |
Solution of a linear system of equations using Penrose's pseudoinvese. More... | |
RTensor | svd (RTensor A, RTensor *U, RTensor *VT, bool economic) |
Singular value decomposition of a real matrix. More... | |
RTensor | svd (CTensor A, CTensor *U, CTensor *VT, bool economic) |
Singular value decomposition of a complex matrix. More... | |
Namespace for Linear Algebra functions based on BLAS, LAPACK, Lanczos and related algorithms.
enum linalg::EigType |
Type of eigenvalues that eigs and Arpack compute.
CTensor linalg::eigs | ( | const CTensor & | A, |
int | eig_type, | ||
size_t | neig, | ||
CTensor * | vectors = NULL , |
||
const tensor::cdouble * | initial_guess = NULL |
||
) |
Find out a few eigenvalues and eigenvectors of a complex nonsymmetric matrix.
CTensor linalg::eigs | ( | const CSparse & | A, |
int | eig_type, | ||
size_t | neig, | ||
CTensor * | vectors = NULL , |
||
const tensor::cdouble * | initial_guess = NULL |
||
) |
Find out a few eigenvalues and eigenvectors of a nonsymmetric complex sparse matrix.
RTensor linalg::eigs | ( | const RTensor & | A, |
int | eig_type, | ||
size_t | neig, | ||
RTensor * | vectors = NULL , |
||
const double * | initial_guess = NULL |
||
) |
Find out a few eigenvalues and eigenvectors of a real nonsymmetric matrix.
RTensor linalg::eigs | ( | const RSparse & | A, |
int | eig_type, | ||
size_t | neig, | ||
RTensor * | vectors = NULL , |
||
const double * | initial_guess = NULL |
||
) |
Find out a few eigenvalues and eigenvectors of a nonsymmetric real sparse matrix.
RTensor linalg::eigs_sym | ( | const RTensor & | A, |
int | eig_type, | ||
size_t | neig, | ||
RTensor * | vectors = NULL , |
||
const double * | initial_guess = NULL |
||
) |
Find out a few eigenvalues and eigenvectors of a symmetric real matrix.
RTensor linalg::eigs_sym | ( | const CTensor & | A, |
int | eig_type, | ||
size_t | neig, | ||
CTensor * | vectors = NULL , |
||
const tensor::cdouble * | initial_guess = NULL |
||
) |
Find out a few eigenvalues and eigenvectors of a symmetric real matrix.
RTensor linalg::eigs_sym | ( | const RSparse & | A, |
int | eig_type, | ||
size_t | neig, | ||
RTensor * | vectors = NULL , |
||
const double * | initial_guess = NULL |
||
) |
Find out a few eigenvalues and eigenvectors of a symmetric real sparse matrix.
RTensor linalg::eigs_sym | ( | const CSparse & | A, |
int | eig_type, | ||
size_t | neig, | ||
CTensor * | vectors = NULL , |
||
const tensor::cdouble * | initial_guess = NULL |
||
) |
Find out a few eigenvalues and eigenvectors of a hermitian complex sparse matrix.