ZTREXC(3)

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

πŸ’… ztrexc.f β€” Library Functions Manual 🌸

okay so this is the manpage for ztrexc.f, and it lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/ztrexc.f β€” yes that's a whole entire path, she's long, she's giving "absolute path realness" πŸ’€ but that's literally the name section, no cap.

It's filed under Library Functions Manual and it's from the LAPACK fam 🫢


✨ SYNOPSIS ✨

Functions/Subroutines

subroutine ZTREXC (compq, n, t, ldt, q, ldq, ifst, ilst, info)
ZTREXC

(that's it, that's the whole synopsis, she's minimal and iconic for it πŸ’…)


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

πŸ¦‹ the actual signature, look at her:

subroutine ZTREXC (character compq, integer n, complex*16, dimension( ldt, * ) t, integer ldt, complex*16, dimension( ldq, * ) q, integer ldq, integer ifst, integer ilst, integer info)

ZTREXC β€” say it with me: zee-trex, she reorders stuff, she's the main character 🌟


πŸŽ€ Purpose:

okay so bestie, listen: ZTREXC reorders the Schur factorization of a complex matrix

A = Q*T*Q**H

so that the diagonal element of T with row index IFST is moved to row ILST. literally just a little relocation situation, no biggie ✨

The Schur form T is reordered by a unitary similarity transformation Z**H*T*Z, and optionally the matrix Q of Schur vectors gets updated by postmultiplying it with Z. obsessed with the "optionally" 🫢


🌈 Parameters

  • COMPQ β€” is CHARACTER*1. the vibe check for whether we touch Q or not:
    • = 'V': update the matrix Q of Schur vectors; β€” yes queen, update her πŸ‘‘
    • = 'N': do not update Q. β€” hands off, leave her alone πŸ™ˆ
  • N β€” is INTEGER, the order of the matrix T. it must be N >= 0. also, if N == 0 the arguments ILST and IFST may be any value β€” like, anything, they don't even matter πŸ’€
  • T β€” is COMPLEX*16 array, dimension (LDT,N). On entry: the upper triangular matrix T. On exit: the reordered upper triangular matrix. she goes in triangular, she comes out reordered, that's the whole glow-up ⭐
  • LDT β€” is INTEGER, the leading dimension of the array T. must be LDT >= max(1,N). don't skip this bestie, max(1,N) fr fr πŸŽ€
  • Q β€” is COMPLEX*16 array, dimension (LDQ,N). On entry: if COMPQ = 'V', the matrix Q of Schur vectors. On exit: if COMPQ = 'V', Q has been postmultiplied by the unitary transformation matrix Z which reorders T. If COMPQ = 'N', Q is not referenced β€” she said don't perceive her 😭
  • LDQ β€” is INTEGER, the leading dimension of the array Q. LDQ >= 1, and if COMPQ = 'V', then LDQ >= max(1,N). conditional queen πŸ’…
  • IFST β€” is INTEGER. that's it. that's the whole description. she's mysterious 🌸
  • ILST β€” is INTEGER. alongside her sister, they specify the reordering of the diagonal elements of T:
    • The element with row index IFST is moved to row ILST by a sequence of transpositions between adjacent elements β€” adjacent only!! she's a swapper, not a teleporter πŸ¦‹
    • 1 <= IFST <= N; 1 <= ILST <= N. β€” respect the bounds or she'll be upset πŸ‘‘
  • INFO β€” is INTEGER, the exit-status receipts πŸ“¬
    • = 0: successful exit β€” slay πŸŽ‰
    • < 0: if INFO = -i, the i-th argument had an illegal value β€” somebody misbehaved, and INFO will tell you exactly who πŸ’€

πŸ‘‘ Author

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

(the whole academic + lab squad, we stan a collaborative effort 🫢)

Definition at line 125 of file ztrexc.f. β€” line one-two-five, mark it πŸŽ€


πŸ“š Author (yes, again)

Generated automatically by Doxygen for LAPACK from the source code. β€” not a human, a robot did this, and honestly? she ate πŸ€–βœ¨


and that's the whole page bestie, every flag, every bound, every max(1,N) πŸ’œ

LAPACK β€” Version 3.12.0 β€” signed, sealed, delivered at /home/abui...RC/ztrexc.f(3), xoxo πŸ’…πŸŽ€

πŸ“¦ where this page comes from