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

LAQR4: implements one level of recursion for CLAQR0. It is a complete implementation of the small bulge multi-shift QR algorithm. It may be called by CLAQR0 and, for large enough deflation window size, it may be called by CLAQR3. This subroutine is identical to CLAQR0 except that it calls CLAQR2 instead of CLAQR3. LAQR4 computes the eigenvalues of a Hessenberg matrix H and, optionally, the matrices T and Z from the Schur decomposition H = Z T Z**H, where T is an upper triangular matrix (the Schur form), and Z is the unitary matrix of Schur vectors. Optionally Z may be postmultiplied into an input unitary matrix Q so that this routine can give the Schur factorization of a matrix A which has been reduced to the Hessenberg form H by the unitary matrix Q: A = Q*H*Q**H = (QZ)*H*(QZ)**H. More...

Public Member Functions

pure subroutine claqr4 (wantt, wantz, n, ilo, ihi, h, ldh, w, iloz, ihiz, z, ldz, work, lwork, info)
 
 la_claqr4
 
subroutine dlaqr4 (wantt, wantz, n, ilo, ihi, h, ldh, wr, wi, iloz, ihiz, z, ldz, work, lwork, info)
 
 la_dlaqr4
 
 la_qlaqr4
 
subroutine slaqr4 (wantt, wantz, n, ilo, ihi, h, ldh, wr, wi, iloz, ihiz, z, ldz, work, lwork, info)
 
 la_slaqr4
 
 la_wlaqr4
 
pure subroutine zlaqr4 (wantt, wantz, n, ilo, ihi, h, ldh, w, iloz, ihiz, z, ldz, work, lwork, info)
 
 la_zlaqr4
 

Detailed Description

LAQR4: implements one level of recursion for CLAQR0. It is a complete implementation of the small bulge multi-shift QR algorithm. It may be called by CLAQR0 and, for large enough deflation window size, it may be called by CLAQR3. This subroutine is identical to CLAQR0 except that it calls CLAQR2 instead of CLAQR3. LAQR4 computes the eigenvalues of a Hessenberg matrix H and, optionally, the matrices T and Z from the Schur decomposition H = Z T Z**H, where T is an upper triangular matrix (the Schur form), and Z is the unitary matrix of Schur vectors. Optionally Z may be postmultiplied into an input unitary matrix Q so that this routine can give the Schur factorization of a matrix A which has been reduced to the Hessenberg form H by the unitary matrix Q: A = Q*H*Q**H = (QZ)*H*(QZ)**H.

Member Function/Subroutine Documentation

◆ claqr4()

pure subroutine la_lapack::laqr4::claqr4 ( logical(lk), intent(in)  wantt,
logical(lk), intent(in)  wantz,
integer(ilp), intent(in)  n,
integer(ilp), intent(in)  ilo,
integer(ilp), intent(in)  ihi,
complex(sp), dimension(ldh,*), intent(inout)  h,
integer(ilp), intent(in)  ldh,
complex(sp), dimension(*), intent(out)  w,
integer(ilp), intent(in)  iloz,
integer(ilp), intent(in)  ihiz,
complex(sp), dimension(ldz,*), intent(inout)  z,
integer(ilp), intent(in)  ldz,
complex(sp), dimension(*), intent(out)  work,
integer(ilp), intent(in)  lwork,
integer(ilp), intent(out)  info 
)

◆ dlaqr4()

subroutine la_lapack::laqr4::dlaqr4 ( logical(lk), intent(in)  wantt,
logical(lk), intent(in)  wantz,
integer(ilp), intent(in)  n,
integer(ilp), intent(in)  ilo,
integer(ilp), intent(in)  ihi,
real(dp), dimension(ldh,*), intent(inout)  h,
integer(ilp), intent(in)  ldh,
real(dp), dimension(*), intent(out)  wr,
real(dp), dimension(*), intent(out)  wi,
integer(ilp), intent(in)  iloz,
integer(ilp), intent(in)  ihiz,
real(dp), dimension(ldz,*), intent(inout)  z,
integer(ilp), intent(in)  ldz,
real(dp), dimension(*), intent(out)  work,
integer(ilp), intent(in)  lwork,
integer(ilp), intent(out)  info 
)

◆ la_claqr4()

la_lapack::laqr4::la_claqr4

◆ la_dlaqr4()

la_lapack::laqr4::la_dlaqr4

◆ la_qlaqr4()

la_lapack::laqr4::la_qlaqr4

◆ la_slaqr4()

la_lapack::laqr4::la_slaqr4

◆ la_wlaqr4()

la_lapack::laqr4::la_wlaqr4

◆ la_zlaqr4()

la_lapack::laqr4::la_zlaqr4

◆ slaqr4()

subroutine la_lapack::laqr4::slaqr4 ( logical(lk), intent(in)  wantt,
logical(lk), intent(in)  wantz,
integer(ilp), intent(in)  n,
integer(ilp), intent(in)  ilo,
integer(ilp), intent(in)  ihi,
real(sp), dimension(ldh,*), intent(inout)  h,
integer(ilp), intent(in)  ldh,
real(sp), dimension(*), intent(out)  wr,
real(sp), dimension(*), intent(out)  wi,
integer(ilp), intent(in)  iloz,
integer(ilp), intent(in)  ihiz,
real(sp), dimension(ldz,*), intent(inout)  z,
integer(ilp), intent(in)  ldz,
real(sp), dimension(*), intent(out)  work,
integer(ilp), intent(in)  lwork,
integer(ilp), intent(out)  info 
)

◆ zlaqr4()

pure subroutine la_lapack::laqr4::zlaqr4 ( logical(lk), intent(in)  wantt,
logical(lk), intent(in)  wantz,
integer(ilp), intent(in)  n,
integer(ilp), intent(in)  ilo,
integer(ilp), intent(in)  ihi,
complex(dp), dimension(ldh,*), intent(inout)  h,
integer(ilp), intent(in)  ldh,
complex(dp), dimension(*), intent(out)  w,
integer(ilp), intent(in)  iloz,
integer(ilp), intent(in)  ihiz,
complex(dp), dimension(ldz,*), intent(inout)  z,
integer(ilp), intent(in)  ldz,
complex(dp), dimension(*), intent(out)  work,
integer(ilp), intent(in)  lwork,
integer(ilp), intent(out)  info 
)

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