DSGHIEP#

Dense Generalized Hermitian Indefinite Eigenvalue Problem.

Notes#

The problem is expressed as \(AX = BX\Lambda\), where both \(A\) and \(B\) are real symmetric (or complex Hermitian) and possibly indefinite. \(\Lambda\) is a diagonal matrix whose diagonal elements are the arguments of DSSolve(). After solve, \(A\) is overwritten with \(\Lambda\). Note that in the case of real scalars, \(A\) is overwritten with a real representation of \(\Lambda\), i.e., complex conjugate eigenvalue pairs are stored as a 2x2 block in the quasi-diagonal matrix.

In the intermediate state \(A\) is reduced to tridiagonal form and \(B\) is transformed into a signature matrix. In compact storage format, these matrices are stored in \(T\) and \(D\), respectively. Details of the implemented methods are presented in [Campos and Roman, 2016].

Used DS matrices#

  • DS_MAT_A - first problem matrix

  • DS_MAT_B - second problem matrix

  • DS_MAT_T - symmetric tridiagonal matrix of the reduced pencil

  • DS_MAT_D - diagonal matrix (signature) of the reduced pencil

  • DS_MAT_Q - pseudo-orthogonal transformation that reduces \((A,B)\) to tridiagonal-diagonal form (intermediate step) or a real basis of eigenvectors

Implemented methods#

  • 0 - QR iteration plus inverse iteration for the eigenvectors

  • 1 - HZ iteration

  • 2 - QR iteration plus pseudo-orthogonalization for the eigenvectors

References#

[Cam16c]

C. Campos and J. E. Roman. Restarted Q-Arnoldi-type methods exploiting symmetry in quadratic eigenvalue problems. BIT, 56(4):1213–1236, 2016. doi:10.1007/s10543-016-0601-5.

See Also#

DS: Direct Solver (or Dense System), DSCreate(), DSSetType(), DSType

Level#

beginner

Location#

src/sys/classes/ds/impls/ghiep/dsghiep.c


Index of all DS routines Table of Contents for all manual pages Index of all manual pages