CLAQZ3(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

πŸ’… CLAQZ3(3) β€” the LAPACK library functions manual ✨

okay bestie, so this page is literally from /home/abui...RC/claqz3.f(3) β€” yes that's the file path, it's giving "the filesystem ate the middle of the path" but we move 🫢. It's a LAPACK library function page and it lives in the Library Functions Manual section. Buckle up.


🌸 NAME 🌸

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/claqz3.f

like, that's the whole name section. that's it. iconic of Fortran honestly πŸ’€


✨ SYNOPSIS ✨

Functions/Subroutines

subroutine CLAQZ3 (ilschur, ilq, ilz, n, ilo, ihi, nshifts,
    nblock_desired, alpha, beta, a, lda, b, ldb, q, ldq, z, ldz, qc,
    ldqc, zc, ldzc, work, lwork, info)

CLAQZ3 β€” that's her. that's the whole synopsis, she said "no notes" πŸ’…


πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

here's the full signature with all the intent declarations, and yes every single one matters, do not skip, I'm watching πŸ‘€

subroutine CLAQZ3 (logical, intent(in) ilschur, logical, intent(in) ilq,
    logical, intent(in) ilz, integer, intent(in) n, integer, intent(in) ilo,
    integer, intent(in) ihi, integer, intent(in) nshifts, integer,
    intent(in) nblock_desired, complex, dimension( * ), intent(inout) alpha,
    complex, dimension( * ), intent(inout) beta, complex, dimension( lda, *
    ), intent(inout) a, integer, intent(in) lda, complex, dimension( ldb, *
    ), intent(inout) b, integer, intent(in) ldb, complex, dimension( ldq, *
    ), intent(inout) q, integer, intent(in) ldq, complex, dimension( ldz, *
    ), intent(inout) z, integer, intent(in) ldz, complex, dimension( ldqc, *
    ), intent(inout) qc, integer, intent(in) ldqc, complex, dimension( ldzc,
    * ), intent(inout) zc, integer, intent(in) ldzc, complex, dimension( *
    ), intent(inout) work, integer, intent(in) lwork, integer, intent(out)
    info)

CLAQZ3

πŸŽ€ Purpose πŸŽ€

!> !> CLAQZ3 Executes a single multishift QZ sweep !>

one (1) multishift QZ sweep. that's her job. she does it. slay πŸ‘‘

⭐ Parameters ⭐

okay the moment you've all been waiting for, the parameter list, in order, no skipping, we're doing all of them πŸ’–

  • ILSCHUR β€” ILSCHUR is LOGICAL. decides whether or not to update the full Schur form. yes/no. the people need to know.
  • ILQ β€” ILQ is LOGICAL. decides whether or not to update the matrix Q.
  • ILZ β€” ILZ is LOGICAL. decides whether or not to update the matrix Z.
  • N β€” N is INTEGER. the order of the matrices A, B, Q, and Z. and listen: N >= 0. non-negotiable bestie.
  • ILO β€” ILO is INTEGER. (that's the whole description, don't shoot the messenger πŸ™ˆ)
  • IHI β€” IHI is INTEGER. (also the whole description. she's mysterious. main character energy.)
  • NSHIFTS β€” NSHIFTS is INTEGER. the desired number of shifts to use.
  • NBLOCK_DESIRED β€” NBLOCK_DESIRED is INTEGER. the desired size of the computational windows. manifesting that window size fr fr.
  • ALPHA β€” ALPHA is COMPLEX array. SR contains the alpha parts of the shifts to use.
  • BETA β€” BETA is COMPLEX array. SS contains the scale of the shifts to use.
  • A β€” A is COMPLEX array, dimension (LDA, N).
  • LDA β€” LDA is INTEGER. the leading dimension of the array A. and it must satisfy LDA >= max( 1, N ). rules are rules ✨
  • B β€” B is COMPLEX array, dimension (LDB, N).
  • LDB β€” LDB is INTEGER. the leading dimension of the array B. LDB >= max( 1, N ). same energy, no cap.
  • Q β€” Q is COMPLEX array, dimension (LDQ, N).
  • LDQ β€” LDQ is INTEGER. (short and sweet, we respect it)
  • Z β€” Z is COMPLEX array, dimension (LDZ, N).
  • LDZ β€” LDZ is INTEGER. (again β€” brevity is a lifestyle πŸ’…)
  • QC β€” QC is COMPLEX array, dimension (LDQC, NBLOCK_DESIRED).
  • LDQC β€” LDQC is INTEGER. (yup)
  • ZC β€” ZC is COMPLEX array, dimension (LDZC, NBLOCK_DESIRED).
  • LDZC β€” LDZ is INTEGER. 😭 and yes, the doc literally says LDZ here even though this is the LDZC entry. I'm not making the rules, I'm just reporting them, we love a typo that's been in production since forever.
  • WORK β€” WORK is COMPLEX array, dimension (MAX(1,LWORK)). on exit, if INFO >= 0, then WORK(1) returns the optimal LWORK.
  • LWORK β€” LWORK is INTEGER. the dimension of the array WORK, and it must satisfy LWORK >= max(1,N).
heads up bestie: if LWORK = -1, then a workspace query is assumed. the routine only calculates the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA. so like, -1 is not a bug, it's a vibe 🧚
  • INFO β€” INFO is INTEGER. here's the tea:
    • = 0: successful exit πŸŽ‰
    • < 0: if INFO = -i, the i-th argument had an illegal value πŸ’€

🌈 Author 🌈

Thijs Steel, KU Leuven. we stan 🫢

πŸ“ Date πŸ“

May 2020. vintage. retro. a classic.

🧚 Definition 🧚

Definition at line 203 of file claqz3.f.


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for LAPACK from the source code.

(no human wrote this bit, a robot did it, and honestly? it ate πŸ€–βœ¨)


and that's the page!! πŸŽ€ LAPACK, Version 3.12.0, footer timestamped /home/abui...RC/claqz3.f(3) β€” mwah, go update your Schur form bestie πŸ’œπŸ”₯

πŸ“¦ where this page comes from