SLAQZ2(3)

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

πŸ’… SLAQZ2(3) πŸ’…

okay bestie, welcome to the Library Functions Manual entry for SLAQZ2(3) β€” yes, the Fortran subroutine, and yes, we're gonna get through every single detail together. 🫢


🌸 NAME 🌸

The name is literally this file path, no cap:

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


✨ SYNOPSIS ✨

πŸ’« Functions/Subroutines πŸ’«

   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 πŸ¦‹

Here's the full signature with all the intent info, exactly as written:

   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)

Then it just says SLAQZ2 again. Iconic.

πŸ’– Purpose πŸ’–

Purpose, literally: SLAQZ2 chases a 2x2 shift bulge in a matrix pencil down a single position ✨

πŸŽ€ Parameters πŸŽ€

ILQ

ILQ is LOGICAL. Determines whether or not to update the matrix Q. πŸ’…

ILZ

ILZ is LOGICAL. 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 the whole description, bestie. πŸŽ€

ISTOPM

ISTOPM is INTEGER.

Updates to (A,B) are restricted to (istartm:k+3,k:istopm).

No cap: it is assumed without checking that istartm <= k+1 and k+2 <= istopm. So yeah, the manual is trusting you. πŸ‘€

IHI

IHI is INTEGER. That's it. No extra lore here. πŸ¦‹

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.

Yes, it says qStart right there in the ZSTART section β€” I'm not editing the manual, bestie. πŸ™ˆ

Z

Z is REAL array, dimension (LDZ,NZ).

LDZ

LDZ is INTEGER. The leading dimension of Q as declared in the calling procedure.

And yes, the manual literally says Q there for LDZ. I'm just the messenger. πŸ’€

πŸ‘‘ Author πŸ‘‘

Thijs Steel, KU Leuven

πŸ“… Date πŸ“…

May 2020

🧡 Definition at line 171 of file slaqz2.f 🧡

Definition at line 171 of file slaqz2.f.

πŸ€– Author (Doxygen's version) πŸ€–

Generated automatically by Doxygen for LAPACK from the source code.


okay that's the whole page, bestie β€” signing off with the footer energy: LAPACK Version 3.12.0 + /home/abui...RC/slaqz2.f(3), date May 2020. Mwah πŸ’‹

πŸ“¦ where this page comes from