fortran-lapack
Loading...
Searching...
No Matches
la_lapack::lasda Interface Reference

Using a divide and conquer approach, LASDA: computes the singular value decomposition (SVD) of a real upper bidiagonal N-by-M matrix B with diagonal D and offdiagonal E, where M = N + SQRE. The algorithm computes the singular values in the SVD B = U * S * VT. The orthogonal matrices U and VT are optionally computed in compact form. A related subroutine, DLASD0, computes the singular values and the singular vectors in explicit form. More...

Public Member Functions

pure subroutine dlasda (icompq, smlsiz, n, sqre, d, e, u, ldu, vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum, c, s, work, iwork, info)
 
 la_dlasda
 
 la_qlasda
 
pure subroutine slasda (icompq, smlsiz, n, sqre, d, e, u, ldu, vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum, c, s, work, iwork, info)
 
 la_slasda
 

Detailed Description

Using a divide and conquer approach, LASDA: computes the singular value decomposition (SVD) of a real upper bidiagonal N-by-M matrix B with diagonal D and offdiagonal E, where M = N + SQRE. The algorithm computes the singular values in the SVD B = U * S * VT. The orthogonal matrices U and VT are optionally computed in compact form. A related subroutine, DLASD0, computes the singular values and the singular vectors in explicit form.

Member Function/Subroutine Documentation

◆ dlasda()

pure subroutine la_lapack::lasda::dlasda ( integer(ilp), intent(in)  icompq,
integer(ilp), intent(in)  smlsiz,
integer(ilp), intent(in)  n,
integer(ilp), intent(in)  sqre,
real(dp), dimension(*), intent(inout)  d,
real(dp), dimension(*), intent(inout)  e,
real(dp), dimension(ldu,*), intent(out)  u,
integer(ilp), intent(in)  ldu,
real(dp), dimension(ldu,*), intent(out)  vt,
integer(ilp), dimension(*), intent(out)  k,
real(dp), dimension(ldu,*), intent(out)  difl,
real(dp), dimension(ldu,*), intent(out)  difr,
real(dp), dimension(ldu,*), intent(out)  z,
real(dp), dimension(ldu, *), intent(out)  poles,
integer(ilp), dimension(*), intent(out)  givptr,
integer(ilp), dimension(ldgcol,*), intent(out)  givcol,
integer(ilp), intent(in)  ldgcol,
integer(ilp), dimension(ldgcol,*), intent(out)  perm,
real(dp), dimension(ldu,*), intent(out)  givnum,
real(dp), dimension(*), intent(out)  c,
real(dp), dimension(*), intent(out)  s,
real(dp), dimension(*), intent(out)  work,
integer(ilp), dimension(*), intent(out)  iwork,
integer(ilp), intent(out)  info 
)

◆ la_dlasda()

la_lapack::lasda::la_dlasda

◆ la_qlasda()

la_lapack::lasda::la_qlasda

◆ la_slasda()

la_lapack::lasda::la_slasda

◆ slasda()

pure subroutine la_lapack::lasda::slasda ( integer(ilp), intent(in)  icompq,
integer(ilp), intent(in)  smlsiz,
integer(ilp), intent(in)  n,
integer(ilp), intent(in)  sqre,
real(sp), dimension(*), intent(inout)  d,
real(sp), dimension(*), intent(inout)  e,
real(sp), dimension(ldu,*), intent(out)  u,
integer(ilp), intent(in)  ldu,
real(sp), dimension(ldu,*), intent(out)  vt,
integer(ilp), dimension(*), intent(out)  k,
real(sp), dimension(ldu,*), intent(out)  difl,
real(sp), dimension(ldu,*), intent(out)  difr,
real(sp), dimension(ldu,*), intent(out)  z,
real(sp), dimension(ldu, *), intent(out)  poles,
integer(ilp), dimension(*), intent(out)  givptr,
integer(ilp), dimension(ldgcol,*), intent(out)  givcol,
integer(ilp), intent(in)  ldgcol,
integer(ilp), dimension(ldgcol,*), intent(out)  perm,
real(sp), dimension(ldu,*), intent(out)  givnum,
real(sp), dimension(*), intent(out)  c,
real(sp), dimension(*), intent(out)  s,
real(sp), dimension(*), intent(out)  work,
integer(ilp), dimension(*), intent(out)  iwork,
integer(ilp), intent(out)  info 
)

The documentation for this interface was generated from the following file: