eigh Interface

public interface eigh

This interface overloads the eigh interface from stdlib_linalg to compute the eigenvalues and eigenvectors of a real-valued matrix whose type is Hankel.

Syntax

   call eigh(A, lambda [, left] [, right])

Arguments

  • 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.


Subroutines

private module subroutine eigh_rdp(A, lambda, vectors)

Utility function to compute the eigenvalues and eigenvectors of a Hankel matrix.

Arguments

Type IntentOptional Attributes Name
type(Hankel), intent(in) :: A

Input matrix.

real(kind=dp), intent(out) :: lambda(:)

Eigenvalues.

real(kind=dp), intent(out), optional :: vectors(:,:)

Eigenvectors.