Returns the eigenvalues , , for a real symmetric or complex Hermitian square matrix. (Specification)
Function interface for computing the eigenvalues of a real symmetric or complex hermitian square matrix.
This interface provides functions for returning the eigenvalues of a real symmetric or complex Hermitian
square matrix. Supported data types include real
and complex
. The matrix must be symmetric
(if real
) or Hermitian (if complex
). Only the lower or upper half of the matrix is accessed,
and the user can select which using the optional upper_a
flag (default: use lower half).
An error stop
is thrown in case of failure; otherwise, error information can be returned
as an optional type(linalg_state_type)
output flag.
Note
The solution is based on LAPACK's eigenproblem solvers *SYEV
/*HEEV
.
Note
BLAS/LAPACK backends do not currently support extended precision (xdp
).
Return an array of eigenvalues of real symmetric / complex hermitian A
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=sp), | intent(in), | target | :: | a(:,:) |
Input matrix A[m,n] |
|
logical(kind=lk), | intent(in), | optional | :: | upper_a |
[optional] Should the upper/lower half of A be used? Default: lower |
|
type(linalg_state_type), | intent(out) | :: | err |
[optional] state return flag. On error if not requested, the code will stop |
Array of singular values
Return an array of eigenvalues of real symmetric / complex hermitian A
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in), | target | :: | a(:,:) |
Input matrix A[m,n] |
|
logical(kind=lk), | intent(in), | optional | :: | upper_a |
[optional] Should the upper/lower half of A be used? Default: lower |
|
type(linalg_state_type), | intent(out) | :: | err |
[optional] state return flag. On error if not requested, the code will stop |
Array of singular values
Return an array of eigenvalues of real symmetric / complex hermitian A
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=sp), | intent(in), | target | :: | a(:,:) |
Input matrix A[m,n] |
|
logical(kind=lk), | intent(in), | optional | :: | upper_a |
[optional] Should the upper/lower half of A be used? Default: lower |
Array of singular values
Return an array of eigenvalues of real symmetric / complex hermitian A
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in), | target | :: | a(:,:) |
Input matrix A[m,n] |
|
logical(kind=lk), | intent(in), | optional | :: | upper_a |
[optional] Should the upper/lower half of A be used? Default: lower |
Array of singular values
Return an array of eigenvalues of real symmetric / complex hermitian A
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=sp), | intent(in), | target | :: | a(:,:) |
Input matrix A[m,n] |
|
logical(kind=lk), | intent(in), | optional | :: | upper_a |
[optional] Should the upper/lower half of A be used? Default: lower |
Array of singular values
Return an array of eigenvalues of real symmetric / complex hermitian A
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=dp), | intent(in), | target | :: | a(:,:) |
Input matrix A[m,n] |
|
logical(kind=lk), | intent(in), | optional | :: | upper_a |
[optional] Should the upper/lower half of A be used? Default: lower |
Array of singular values
Return an array of eigenvalues of real symmetric / complex hermitian A
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=sp), | intent(in), | target | :: | a(:,:) |
Input matrix A[m,n] |
|
logical(kind=lk), | intent(in), | optional | :: | upper_a |
[optional] Should the upper/lower half of A be used? Default: lower |
|
type(linalg_state_type), | intent(out) | :: | err |
[optional] state return flag. On error if not requested, the code will stop |
Array of singular values
Return an array of eigenvalues of real symmetric / complex hermitian A
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=dp), | intent(in), | target | :: | a(:,:) |
Input matrix A[m,n] |
|
logical(kind=lk), | intent(in), | optional | :: | upper_a |
[optional] Should the upper/lower half of A be used? Default: lower |
|
type(linalg_state_type), | intent(out) | :: | err |
[optional] state return flag. On error if not requested, the code will stop |
Array of singular values