naginterfaces.library.lapackeig.zhbgv

naginterfaces.library.lapackeig.zhbgv(jobz, uplo, n, ka, kb, ab, bb)[source]

zhbgv computes all the eigenvalues and, optionally, the eigenvectors of a complex generalized Hermitian-definite banded eigenproblem, of the form

where and are Hermitian and banded, and is also positive definite.

For full information please refer to the NAG Library document for f08un

https://www.nag.com/numeric/nl/nagdoc_29.3/flhtml/f08/f08unf.html

Parameters
jobzstr, length 1

Indicates whether eigenvectors are computed.

Only eigenvalues are computed.

Eigenvalues and eigenvectors are computed.

uplostr, length 1

If , the upper triangles of and are stored.

If , the lower triangles of and are stored.

nint

, the order of the matrices and .

kaint

If , the number of superdiagonals, , of the matrix .

If , the number of subdiagonals, , of the matrix .

kbint

If , the number of superdiagonals, , of the matrix .

If , the number of subdiagonals, , of the matrix .

abcomplex, array-like, shape

The upper or lower triangle of the Hermitian band matrix .

bbcomplex, array-like, shape

The upper or lower triangle of the Hermitian band matrix .

Returns
abcomplex, ndarray, shape

The contents of are overwritten.

bbcomplex, ndarray, shape

The factor from the split Cholesky factorization , as returned by zpbstf().

wfloat, ndarray, shape

The eigenvalues in ascending order.

zcomplex, ndarray, shape

If , contains the matrix of eigenvectors, with the th column of holding the eigenvector associated with . The eigenvectors are normalized so that .

If , is not referenced.

Raises
NagValueError
(errno )

On entry, error in parameter .

Constraint: or .

(errno )

On entry, error in parameter .

Constraint: or .

(errno )

On entry, error in parameter .

Constraint: .

(errno )

On entry, error in parameter .

Constraint: .

(errno )

On entry, error in parameter .

Constraint: .

(errno )

The algorithm failed to converge; off-diagonal elements of an intermediate tridiagonal form did not converge to zero.

(errno )

If , for , zpbstf() returned : is not positive definite. The factorization of could not be completed and no eigenvalues or eigenvectors were computed.

Notes

The generalized Hermitian-definite band problem

is first reduced to a standard band Hermitian problem

where is a Hermitian band matrix, using Wilkinson’s modification to Crawford’s algorithm (see Crawford (1973) and Wilkinson (1977)). The Hermitian eigenvalue problem is then solved for the eigenvalues and the eigenvectors, if required, which are then backtransformed to the eigenvectors of the original problem.

The eigenvectors are normalized so that the matrix of eigenvectors, , satisfies

where is the diagonal matrix whose diagonal elements are the eigenvalues.

References

Anderson, E, Bai, Z, Bischof, C, Blackford, S, Demmel, J, Dongarra, J J, Du Croz, J J, Greenbaum, A, Hammarling, S, McKenney, A and Sorensen, D, 1999, LAPACK Users’ Guide, (3rd Edition), SIAM, Philadelphia, https://www.netlib.org/lapack/lug

Crawford, C R, 1973, Reduction of a band-symmetric generalized eigenvalue problem, Comm. ACM (16), 41–44

Golub, G H and Van Loan, C F, 1996, Matrix Computations, (3rd Edition), Johns Hopkins University Press, Baltimore

Wilkinson, J H, 1977, Some recent advances in numerical linear algebra, The State of the Art in Numerical Analysis, (ed D A H Jacobs), Academic Press