HBGVD: computes all the eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite banded eigenproblem, of the form A*x=(lambda)*B*x. Here A and B are assumed to be Hermitian and banded, and B is also positive definite. If eigenvectors are desired, it uses a divide and conquer algorithm. The divide and conquer algorithm makes very mild assumptions about floating point arithmetic. It will work on machines with a guard digit in add/subtract, or on those binary machines without guard digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or Cray-2. It could conceivably fail on hexadecimal or decimal machines without guard digits, but we know of none.
More...
|
pure subroutine | chbgvd (jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info) |
|
| la_chbgvd |
|
| la_whbgvd |
|
pure subroutine | zhbgvd (jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info) |
|
| la_zhbgvd |
|
HBGVD: computes all the eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite banded eigenproblem, of the form A*x=(lambda)*B*x. Here A and B are assumed to be Hermitian and banded, and B is also positive definite. If eigenvectors are desired, it uses a divide and conquer algorithm. The divide and conquer algorithm makes very mild assumptions about floating point arithmetic. It will work on machines with a guard digit in add/subtract, or on those binary machines without guard digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or Cray-2. It could conceivably fail on hexadecimal or decimal machines without guard digits, but we know of none.
◆ chbgvd()
pure subroutine la_lapack::hbgvd::chbgvd |
( |
character, intent(in) |
jobz, |
|
|
character, intent(in) |
uplo, |
|
|
integer(ilp), intent(in) |
n, |
|
|
integer(ilp), intent(in) |
ka, |
|
|
integer(ilp), intent(in) |
kb, |
|
|
complex(sp), dimension(ldab,*), intent(inout) |
ab, |
|
|
integer(ilp), intent(in) |
ldab, |
|
|
complex(sp), dimension(ldbb,*), intent(inout) |
bb, |
|
|
integer(ilp), intent(in) |
ldbb, |
|
|
real(sp), dimension(*), intent(out) |
w, |
|
|
complex(sp), dimension(ldz,*), intent(out) |
z, |
|
|
integer(ilp), intent(in) |
ldz, |
|
|
complex(sp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
real(sp), dimension(*), intent(out) |
rwork, |
|
|
integer(ilp), intent(in) |
lrwork, |
|
|
integer(ilp), dimension(*), intent(out) |
iwork, |
|
|
integer(ilp), intent(in) |
liwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
◆ la_chbgvd()
la_lapack::hbgvd::la_chbgvd |
◆ la_whbgvd()
la_lapack::hbgvd::la_whbgvd |
◆ la_zhbgvd()
la_lapack::hbgvd::la_zhbgvd |
◆ zhbgvd()
pure subroutine la_lapack::hbgvd::zhbgvd |
( |
character, intent(in) |
jobz, |
|
|
character, intent(in) |
uplo, |
|
|
integer(ilp), intent(in) |
n, |
|
|
integer(ilp), intent(in) |
ka, |
|
|
integer(ilp), intent(in) |
kb, |
|
|
complex(dp), dimension(ldab,*), intent(inout) |
ab, |
|
|
integer(ilp), intent(in) |
ldab, |
|
|
complex(dp), dimension(ldbb,*), intent(inout) |
bb, |
|
|
integer(ilp), intent(in) |
ldbb, |
|
|
real(dp), dimension(*), intent(out) |
w, |
|
|
complex(dp), dimension(ldz,*), intent(out) |
z, |
|
|
integer(ilp), intent(in) |
ldz, |
|
|
complex(dp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
real(dp), dimension(*), intent(out) |
rwork, |
|
|
integer(ilp), intent(in) |
lrwork, |
|
|
integer(ilp), dimension(*), intent(out) |
iwork, |
|
|
integer(ilp), intent(in) |
liwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
The documentation for this interface was generated from the following file: