This interface overloads the eigh interface from stdlib_linalg to
compute the eigenvalues and eigenvectors of a real-valued matrix
whose type is Hankel.
call eigh(A, lambda [, left] [, right])
A : real-valued matrix of Hankel.
It is an intent(in) argument.
lambda : Rank-1 real array returning the eigenvalues of A
in increasing order.
It is an intent(out) argument.
vectors (optional) : real rank-2 array of the same kind as A
returning the left eigenvectors of A.
It is an intent(out) argument.
Note
No analytic expression exist for the eigendecomposition of a general
hankel matrix. Under the hood, the matrix A is converted to
its dense representation and the function eigh from
stdlib_linalg is used.
Utility function to compute the eigenvalues and eigenvectors of a
Hankel matrix.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(Hankel), | intent(in) | :: | A |
Input matrix. |
||
| real(kind=dp), | intent(out) | :: | lambda(:) |
Eigenvalues. |
||
| real(kind=dp), | intent(out), | optional | :: | vectors(:,:) |
Eigenvectors. |