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: