GESVD: computes the singular value decomposition (SVD) of a complex M-by-N matrix A, optionally computing the left and/or right singular vectors. The SVD is written A = U * SIGMA * conjugate-transpose(V) where SIGMA is an M-by-N matrix which is zero except for its min(m,n) diagonal elements, U is an M-by-M unitary matrix, and V is an N-by-N unitary matrix. The diagonal elements of SIGMA are the singular values of A; they are real and non-negative, and are returned in descending order. The first min(m,n) columns of U and V are the left and right singular vectors of A. Note that the routine returns V**H, not V.
More...
|
subroutine | cgesvd (jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info) |
|
| la_cgesvd |
|
subroutine | dgesvd (jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, info) |
|
| la_dgesvd |
|
| la_qgesvd |
|
subroutine | sgesvd (jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, info) |
|
| la_sgesvd |
|
| la_wgesvd |
|
subroutine | zgesvd (jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info) |
|
| la_zgesvd |
|
GESVD: computes the singular value decomposition (SVD) of a complex M-by-N matrix A, optionally computing the left and/or right singular vectors. The SVD is written A = U * SIGMA * conjugate-transpose(V) where SIGMA is an M-by-N matrix which is zero except for its min(m,n) diagonal elements, U is an M-by-M unitary matrix, and V is an N-by-N unitary matrix. The diagonal elements of SIGMA are the singular values of A; they are real and non-negative, and are returned in descending order. The first min(m,n) columns of U and V are the left and right singular vectors of A. Note that the routine returns V**H, not V.
◆ cgesvd()
subroutine la_lapack::gesvd::cgesvd |
( |
character, intent(in) |
jobu, |
|
|
character, intent(in) |
jobvt, |
|
|
integer(ilp), intent(in) |
m, |
|
|
integer(ilp), intent(in) |
n, |
|
|
complex(sp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
real(sp), dimension(*), intent(out) |
s, |
|
|
complex(sp), dimension(ldu,*), intent(out) |
u, |
|
|
integer(ilp), intent(in) |
ldu, |
|
|
complex(sp), dimension(ldvt,*), intent(out) |
vt, |
|
|
integer(ilp), intent(in) |
ldvt, |
|
|
complex(sp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
real(sp), dimension(*), intent(out) |
rwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
◆ dgesvd()
subroutine la_lapack::gesvd::dgesvd |
( |
character, intent(in) |
jobu, |
|
|
character, intent(in) |
jobvt, |
|
|
integer(ilp), intent(in) |
m, |
|
|
integer(ilp), intent(in) |
n, |
|
|
real(dp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
real(dp), dimension(*), intent(out) |
s, |
|
|
real(dp), dimension(ldu,*), intent(out) |
u, |
|
|
integer(ilp), intent(in) |
ldu, |
|
|
real(dp), dimension(ldvt,*), intent(out) |
vt, |
|
|
integer(ilp), intent(in) |
ldvt, |
|
|
real(dp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
◆ la_cgesvd()
la_lapack::gesvd::la_cgesvd |
◆ la_dgesvd()
la_lapack::gesvd::la_dgesvd |
◆ la_qgesvd()
la_lapack::gesvd::la_qgesvd |
◆ la_sgesvd()
la_lapack::gesvd::la_sgesvd |
◆ la_wgesvd()
la_lapack::gesvd::la_wgesvd |
◆ la_zgesvd()
la_lapack::gesvd::la_zgesvd |
◆ sgesvd()
subroutine la_lapack::gesvd::sgesvd |
( |
character, intent(in) |
jobu, |
|
|
character, intent(in) |
jobvt, |
|
|
integer(ilp), intent(in) |
m, |
|
|
integer(ilp), intent(in) |
n, |
|
|
real(sp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
real(sp), dimension(*), intent(out) |
s, |
|
|
real(sp), dimension(ldu,*), intent(out) |
u, |
|
|
integer(ilp), intent(in) |
ldu, |
|
|
real(sp), dimension(ldvt,*), intent(out) |
vt, |
|
|
integer(ilp), intent(in) |
ldvt, |
|
|
real(sp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
◆ zgesvd()
subroutine la_lapack::gesvd::zgesvd |
( |
character, intent(in) |
jobu, |
|
|
character, intent(in) |
jobvt, |
|
|
integer(ilp), intent(in) |
m, |
|
|
integer(ilp), intent(in) |
n, |
|
|
complex(dp), dimension(lda,*), intent(inout) |
a, |
|
|
integer(ilp), intent(in) |
lda, |
|
|
real(dp), dimension(*), intent(out) |
s, |
|
|
complex(dp), dimension(ldu,*), intent(out) |
u, |
|
|
integer(ilp), intent(in) |
ldu, |
|
|
complex(dp), dimension(ldvt,*), intent(out) |
vt, |
|
|
integer(ilp), intent(in) |
ldvt, |
|
|
complex(dp), dimension(*), intent(out) |
work, |
|
|
integer(ilp), intent(in) |
lwork, |
|
|
real(dp), dimension(*), intent(out) |
rwork, |
|
|
integer(ilp), intent(out) |
info |
|
) |
| |
The documentation for this interface was generated from the following file: