public class Eigen extends Object
Eigenvalue and Eigenvector related functions.
Methods exist for working with symmetric matrices or general eigenvalues. The symmetric versions are usually much faster on symmetric matrices.
Constructor and Description |
---|
Eigen() |
Modifier and Type | Method and Description |
---|---|
static ComplexDoubleMatrix |
eigenvalues(DoubleMatrix A)
Computes the eigenvalues of a general matrix.
|
static ComplexFloatMatrix |
eigenvalues(FloatMatrix A)
Computes the eigenvalues of a general matrix.
|
static ComplexDoubleMatrix[] |
eigenvectors(DoubleMatrix A)
Computes the eigenvalues and eigenvectors of a general matrix.
|
static ComplexFloatMatrix[] |
eigenvectors(FloatMatrix A)
Computes the eigenvalues and eigenvectors of a general matrix.
|
static DoubleMatrix |
symmetricEigenvalues(DoubleMatrix A)
Compute the eigenvalues for a symmetric matrix.
|
static FloatMatrix |
symmetricEigenvalues(FloatMatrix A)
Compute the eigenvalues for a symmetric matrix.
|
static DoubleMatrix[] |
symmetricEigenvectors(DoubleMatrix A)
Computes the eigenvalues and eigenvectors for a symmetric matrix.
|
static FloatMatrix[] |
symmetricEigenvectors(FloatMatrix A)
Computes the eigenvalues and eigenvectors for a symmetric matrix.
|
static DoubleMatrix |
symmetricGeneralizedEigenvalues(DoubleMatrix A,
DoubleMatrix B)
Compute generalized eigenvalues of the problem A x = L B x.
|
static DoubleMatrix |
symmetricGeneralizedEigenvalues(DoubleMatrix A,
DoubleMatrix B,
double vl,
double vu)
Computes selected eigenvalues of the real generalized symmetric-definite eigenproblem of the form A x = L B x
or, equivalently, (A - L B)x = 0.
|
static DoubleMatrix |
symmetricGeneralizedEigenvalues(DoubleMatrix A,
DoubleMatrix B,
int il,
int iu)
Computes selected eigenvalues of the real generalized symmetric-definite eigenproblem of the form A x = L B x
or, equivalently, (A - L B)x = 0.
|
static FloatMatrix |
symmetricGeneralizedEigenvalues(FloatMatrix A,
FloatMatrix B)
Compute generalized eigenvalues of the problem A x = L B x.
|
static FloatMatrix |
symmetricGeneralizedEigenvalues(FloatMatrix A,
FloatMatrix B,
float vl,
float vu)
Computes selected eigenvalues of the real generalized symmetric-definite eigenproblem of the form A x = L B x
or, equivalently, (A - L B)x = 0.
|
static FloatMatrix |
symmetricGeneralizedEigenvalues(FloatMatrix A,
FloatMatrix B,
int il,
int iu)
Computes selected eigenvalues of the real generalized symmetric-definite eigenproblem of the form A x = L B x
or, equivalently, (A - L B)x = 0.
|
static DoubleMatrix[] |
symmetricGeneralizedEigenvectors(DoubleMatrix A,
DoubleMatrix B)
Solve a general problem A x = L B x.
|
static DoubleMatrix[] |
symmetricGeneralizedEigenvectors(DoubleMatrix A,
DoubleMatrix B,
double vl,
double vu)
Computes selected eigenvalues and their corresponding eigenvectors of the real generalized symmetric-definite
eigenproblem of the form A x = L B x or, equivalently, (A - L B)x = 0.
|
static DoubleMatrix[] |
symmetricGeneralizedEigenvectors(DoubleMatrix A,
DoubleMatrix B,
int il,
int iu)
Computes selected eigenvalues and their corresponding
eigenvectors of the real generalized symmetric-definite
eigenproblem of the form A x = L B x or, equivalently,
(A - L B)x = 0.
|
static FloatMatrix[] |
symmetricGeneralizedEigenvectors(FloatMatrix A,
FloatMatrix B)
Solve a general problem A x = L B x.
|
static FloatMatrix[] |
symmetricGeneralizedEigenvectors(FloatMatrix A,
FloatMatrix B,
float vl,
float vu)
Computes selected eigenvalues and their corresponding eigenvectors of the real generalized symmetric-definite
eigenproblem of the form A x = L B x or, equivalently, (A - L B)x = 0.
|
static FloatMatrix[] |
symmetricGeneralizedEigenvectors(FloatMatrix A,
FloatMatrix B,
int il,
int iu)
Computes selected eigenvalues and their corresponding
eigenvectors of the real generalized symmetric-definite
eigenproblem of the form A x = L B x or, equivalently,
(A - L B)x = 0.
|
public static DoubleMatrix symmetricEigenvalues(DoubleMatrix A)
public static DoubleMatrix[] symmetricEigenvectors(DoubleMatrix A)
public static ComplexDoubleMatrix eigenvalues(DoubleMatrix A)
public static ComplexDoubleMatrix[] eigenvectors(DoubleMatrix A)
public static DoubleMatrix symmetricGeneralizedEigenvalues(DoubleMatrix A, DoubleMatrix B)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.public static DoubleMatrix[] symmetricGeneralizedEigenvectors(DoubleMatrix A, DoubleMatrix B)
A
- symmetric matrix AB
- symmetric matrix Bpublic static DoubleMatrix symmetricGeneralizedEigenvalues(DoubleMatrix A, DoubleMatrix B, double vl, double vu)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.vl
- lower bound of the smallest eigenvalue to returnvu
- upper bound of the largest eigenvalue to returnIllegalArgumentException
- if vl > vu
NoEigenResultException
- if no eigevalues are found for the selected range: (vl,vu]public static DoubleMatrix symmetricGeneralizedEigenvalues(DoubleMatrix A, DoubleMatrix B, int il, int iu)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.il
- lower index (in ascending order) of the smallest eigenvalue to return (index is 0-based)iu
- upper index (in ascending order) of the largest eigenvalue to return (index is 0-based)IllegalArgumentException
- if il > iu
or il < 0
or iu > A.rows - 1
public static DoubleMatrix[] symmetricGeneralizedEigenvectors(DoubleMatrix A, DoubleMatrix B, double vl, double vu)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.vl
- lower bound of the smallest eigenvalue to returnvu
- upper bound of the largest eigenvalue to returnIllegalArgumentException
- if vl > vu
NoEigenResultException
- if no eigevalues are found for the selected range: (vl,vu]public static DoubleMatrix[] symmetricGeneralizedEigenvectors(DoubleMatrix A, DoubleMatrix B, int il, int iu)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.il
- lower index (in ascending order) of the smallest eigenvalue to return (index is 0-based)iu
- upper index (in ascending order) of the largest eigenvalue to return (index is 0-based)IllegalArgumentException
- if il > iu
or il < 0
or iu > A.rows - 1
public static FloatMatrix symmetricEigenvalues(FloatMatrix A)
public static FloatMatrix[] symmetricEigenvectors(FloatMatrix A)
public static ComplexFloatMatrix eigenvalues(FloatMatrix A)
public static ComplexFloatMatrix[] eigenvectors(FloatMatrix A)
public static FloatMatrix symmetricGeneralizedEigenvalues(FloatMatrix A, FloatMatrix B)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.public static FloatMatrix[] symmetricGeneralizedEigenvectors(FloatMatrix A, FloatMatrix B)
A
- symmetric matrix AB
- symmetric matrix Bpublic static FloatMatrix symmetricGeneralizedEigenvalues(FloatMatrix A, FloatMatrix B, float vl, float vu)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.vl
- lower bound of the smallest eigenvalue to returnvu
- upper bound of the largest eigenvalue to returnIllegalArgumentException
- if vl > vu
NoEigenResultException
- if no eigevalues are found for the selected range: (vl,vu]public static FloatMatrix symmetricGeneralizedEigenvalues(FloatMatrix A, FloatMatrix B, int il, int iu)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.il
- lower index (in ascending order) of the smallest eigenvalue to return (index is 0-based)iu
- upper index (in ascending order) of the largest eigenvalue to return (index is 0-based)IllegalArgumentException
- if il > iu
or il < 0
or iu > A.rows - 1
public static FloatMatrix[] symmetricGeneralizedEigenvectors(FloatMatrix A, FloatMatrix B, float vl, float vu)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.vl
- lower bound of the smallest eigenvalue to returnvu
- upper bound of the largest eigenvalue to returnIllegalArgumentException
- if vl > vu
NoEigenResultException
- if no eigevalues are found for the selected range: (vl,vu]public static FloatMatrix[] symmetricGeneralizedEigenvectors(FloatMatrix A, FloatMatrix B, int il, int iu)
A
- symmetric Matrix A. Only the upper triangle will be considered.B
- symmetric Matrix B. Only the upper triangle will be considered.il
- lower index (in ascending order) of the smallest eigenvalue to return (index is 0-based)iu
- upper index (in ascending order) of the largest eigenvalue to return (index is 0-based)IllegalArgumentException
- if il > iu
or il < 0
or iu > A.rows - 1
Copyright © 2015. All rights reserved.