SRC/zgbbrd.f(3)

πŸ’– SRC/zgbbrd.f(3) πŸ’–

okay bestie, welcome to the Library Functions Manual page for SRC/zgbbrd.f β€” yes, it's giving old-school Unix manual but make it cute ✨


🌈 NAME 🌈

SRC/zgbbrd.f


✨ SYNOPSIS ✨

🌸 Functions/Subroutines 🌸

subroutine zgbbrd (vect, m, n, ncc, kl, ku, ab, ldab, d, e, q, ldq, pt,
     ldpt, c, ldc, work, rwork, info)
     ZGBBRD

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

subroutine zgbbrd (character vect, integer m, integer n, integer ncc,
     integer kl, integer ku, complex*16, dimension( ldab, * ) ab, integer
     ldab, double precision, dimension( * ) d, double precision, dimension( *
     ) e, complex*16, dimension( ldq, * ) q, integer ldq, complex*16,
     dimension( ldpt, * ) pt, integer ldpt, complex*16, dimension( ldc, * )
     c, integer ldc, complex*16, dimension( * ) work, double precision,
     dimension( * ) rwork, integer info)
     ZGBBRD

πŸŽ€ Purpose πŸŽ€

okay so ZGBBRD reduces a complex general m-by-n band matrix A to real upper bidiagonal form B by a unitary transformation: Q**H * A * P = B. iconic behavior, no cap πŸ’…

The routine computes B, and optionally forms Q or P**H, or computes Q**H*C for a given matrix C. that's the whole vibe 🫢

🌸 Parameters 🌸

  • VECT β€” bestie, VECT is CHARACTER*1. It specifies whether or not the matrices Q and P**H are to be formed:
    • = 'N': do not form Q or P**H;
    • = 'Q': form Q only;
    • = 'P': form P**H only;
    • = 'B': form both.
  • M β€” M is INTEGER. The number of rows of the matrix A. M >= 0.
  • N β€” N is INTEGER. The number of columns of the matrix A. N >= 0.
  • NCC β€” NCC is INTEGER. The number of columns of the matrix C. NCC >= 0.
  • KL β€” KL is INTEGER. The number of subdiagonals of the matrix A. KL >= 0.
  • KU β€” KU is INTEGER. The number of superdiagonals of the matrix A. KU >= 0.
  • AB β€” AB is COMPLEX*16 array, dimension (LDAB,N). On entry, the m-by-n band matrix A, stored in rows 1 to KL+KU+1. The j-th column of A is stored in the j-th column of the array AB as follows: AB(ku+1+i-j,j) = A(i,j) for max(1,j-ku)<=i<=min(m,j+kl). On exit, A is overwritten by values generated during the reduction. πŸ’€
  • LDAB β€” LDAB is INTEGER. The leading dimension of the array A. LDAB >= KL+KU+1.
  • D β€” D is DOUBLE PRECISION array, dimension (min(M,N)). The diagonal elements of the bidiagonal matrix B. πŸ’–
  • E β€” E is DOUBLE PRECISION array, dimension (min(M,N)-1). The superdiagonal elements of the bidiagonal matrix B.
  • Q β€” Q is COMPLEX*16 array, dimension (LDQ,M). If VECT = 'Q' or 'B', the m-by-m unitary matrix Q. If VECT = 'N' or 'P', the array Q is not referenced.
  • LDQ β€” LDQ is INTEGER. The leading dimension of the array Q. LDQ >= max(1,M) if VECT = 'Q' or 'B'; LDQ >= 1 otherwise.
  • PT β€” PT is COMPLEX*16 array, dimension (LDPT,N). If VECT = 'P' or 'B', the n-by-n unitary matrix P'. If VECT = 'N' or 'Q', the array PT is not referenced.
  • LDPT β€” LDPT is INTEGER. The leading dimension of the array PT. LDPT >= max(1,N) if VECT = 'P' or 'B'; LDPT >= 1 otherwise.
  • C β€” C is COMPLEX*16 array, dimension (LDC,NCC). On entry, an m-by-ncc matrix C. On exit, C is overwritten by Q**H*C. C is not referenced if NCC = 0.
  • LDC β€” LDC is INTEGER. The leading dimension of the array C. LDC >= max(1,M) if NCC > 0; LDC >= 1 if NCC = 0.
  • WORK β€” WORK is COMPLEX*16 array, dimension (max(M,N)).
  • RWORK β€” RWORK is DOUBLE PRECISION array, dimension (max(M,N)).
  • INFO β€” INFO is INTEGER. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value.

πŸ‘‘ Author πŸ‘‘

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

Definition at line 191 of file zgbbrd.f.


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for LAPACK from the source code.


later bestie! this page is from LAPACK Version 3.12.0 and the source file SRC/zgbbrd.f(3) β€” the footer has no date, so no invented date, periodt πŸ’…βœ¨

πŸ“¦ where this page comes from