SYGVD: computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem, of the form A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A and B are assumed to be symmetric 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...
|
subroutine | dsygvd (itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, iwork, liwork, info) |
|
| la_dsygvd |
|
| la_qsygvd |
|
subroutine | ssygvd (itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, iwork, liwork, info) |
|
| la_ssygvd |
|
SYGVD: computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem, of the form A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A and B are assumed to be symmetric 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.
◆ dsygvd()
subroutine la_lapack::sygvd::dsygvd |
( |
integer(ilp), intent(in) |
itype, |
|
|
character, intent(in) |
jobz, |
|
|
character, intent(in) |
uplo, |
|
|
integer(ilp), intent(in) |
n, |
|
|
real(dp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
real(dp), dimension(ldb,*), intent(inout) |
b, |
|
|
integer(ilp), intent(in) |
ldb, |
|
|
real(dp), dimension(*), intent(out) |
w, |
|
|
real(dp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
integer(ilp), dimension(*), intent(out) |
iwork, |
|
|
integer(ilp), intent(in) |
liwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
◆ la_dsygvd()
la_lapack::sygvd::la_dsygvd |
◆ la_qsygvd()
la_lapack::sygvd::la_qsygvd |
◆ la_ssygvd()
la_lapack::sygvd::la_ssygvd |
◆ ssygvd()
subroutine la_lapack::sygvd::ssygvd |
( |
integer(ilp), intent(in) |
itype, |
|
|
character, intent(in) |
jobz, |
|
|
character, intent(in) |
uplo, |
|
|
integer(ilp), intent(in) |
n, |
|
|
real(sp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
real(sp), dimension(ldb,*), intent(inout) |
b, |
|
|
integer(ilp), intent(in) |
ldb, |
|
|
real(sp), dimension(*), intent(out) |
w, |
|
|
real(sp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
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: