SRC/slaqz2.f(3)

πŸ’– SRC/slaqz2.f πŸ’–

okay bestie, welcome to the Library Functions Manual page for SRC/slaqz2.f β€” yes we're doing LAPACK subroutine lore today and it is lowkey iconic. πŸ¦‹βœ¨


🌸 NAME 🌸

SRC/slaqz2.f β€” that's the name, bestie. Periodt. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

✨ Functions/Subroutines ✨

subroutine slaqz2 (ilq, ilz, k, istartm, istopm, ihi, a, lda, b, ldb,
    nq, qstart, q, ldq, nz, zstart, z, ldz)
    SLAQZ2

πŸ’– Function/Subroutine Documentation πŸ’–

subroutine slaqz2 (logical, intent(in) ilq, logical, intent(in) ilz,
    integer, intent(in) k, integer, intent(in) istartm, integer, intent(in)
    istopm, integer, intent(in) ihi, real, dimension( lda, * ) a, integer,
    intent(in) lda, real, dimension( ldb, * ) b, integer, intent(in) ldb,
    integer, intent(in) nq, integer, intent(in) qstart, real, dimension(
    ldq, * ) q, integer, intent(in) ldq, integer, intent(in) nz, integer,
    intent(in) zstart, real, dimension( ldz, * ) z, integer, intent(in) ldz)

SLAQZ2 β€” the subroutine name, front and center, bestie. ✨

πŸŽ€ Purpose πŸŽ€

SLAQZ2 chases a 2x2 shift bulge in a matrix pencil down a single position. Yes that's the official purpose, and it's giving "main character moves exactly one position at a time" energy. πŸ’…πŸ”₯

πŸ’… Parameters πŸ’…

  • ILQ β€” ILQ is LOGICAL. It determines whether or not to update the matrix Q. 🫢
  • ILZ β€” ILZ is LOGICAL. It determines whether or not to update the matrix Z. 🫢
  • K β€” K is INTEGER. Index indicating the position of the bulge. On entry, the bulge is located in (A(k+1:k+2,k:k+1),B(k+1:k+2,k:k+1)). On exit, the bulge is located in (A(k+2:k+3,k+1:k+2),B(k+2:k+3,k+1:k+2)). πŸ”₯
  • ISTARTM β€” ISTARTM is INTEGER. That's all the source gives us, bestie. πŸ’œ
  • ISTOPM β€” ISTOPM is INTEGER. Updates to (A,B) are restricted to (istartm:k+3,k:istopm). It is assumed without checking that istartm <= k+1 and k+2 <= istopm. ⚠️
  • IHI β€” IHI is INTEGER. Again, no extra description in the source. πŸŽ€
  • A β€” A is REAL array, dimension (LDA,N). 🌸
  • LDA β€” LDA is INTEGER. The leading dimension of A as declared in the calling procedure. πŸ’–
  • B β€” B is REAL array, dimension (LDB,N). 🌸
  • LDB β€” LDB is INTEGER. The leading dimension of B as declared in the calling procedure. πŸ’–
  • NQ β€” NQ is INTEGER. The order of the matrix Q. πŸ‘‘
  • QSTART β€” QSTART is INTEGER. Start index of the matrix Q. Rotations are applied to columns k+2-qStart:k+4-qStart of Q. πŸŒ€
  • Q β€” Q is REAL array, dimension (LDQ,NQ). 🌸
  • LDQ β€” LDQ is INTEGER. The leading dimension of Q as declared in the calling procedure. πŸ’–
  • NZ β€” NZ is INTEGER. The order of the matrix Z. πŸ‘‘
  • ZSTART β€” ZSTART is INTEGER. Start index of the matrix Z. Rotations are applied to columns k+1-qStart:k+3-qStart of Z. πŸŒ€
  • Z β€” Z is REAL array, dimension (LDZ,NZ). 🌸
  • LDZ β€” LDZ is INTEGER. The leading dimension of Q as declared in the calling procedure. (Yes, the source literally says Q here for LDZ; I'm keeping it exactly as written, bestie. πŸ™ˆ) πŸ’–

πŸ‘‘ Author πŸ‘‘

Thijs Steel, KU Leuven. πŸ’œ

🌈 Date 🌈

May 2020. πŸŽ€

⭐ Definition ⭐

Definition at line 171 of file slaqz2.f. ✨


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for LAPACK from the source code. πŸ€–πŸ’–


πŸ’– That's the whole page, bestie! Cute sign-off: LAPACK Version 3.12.0, source page SRC/slaqz2.f(3), dated May 2020 β€” mwah! πŸŽ€βœ¨

πŸ“¦ where this page comes from