ZTBT03(3)

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

πŸ’… NAME πŸ’…

ok so this is /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/LIN/ztbt03.f β€” yes that whole entire path is the name, bestie, it's a LAPACK test routine living its best life in the TESTING/LIN folder πŸŽ€ and this page is from the Library Functions Manual, so you already know it's giving serious function-documentation energy ✨


🌸 SYNOPSIS 🌸

Functions/Subroutines

subroutine ZTBT03 (uplo, trans, diag, n, kd, nrhs, ab, ldab, scale,
    cnorm, tscal, x, ldx, b, ldb, work, resid)
    ZTBT03

ok so it's literally just called ZTBT03, no cap 🫢


πŸ”₯ Function/Subroutine Documentation πŸ”₯

subroutine ZTBT03 (character uplo, character trans, character diag, integer
    n, integer kd, integer nrhs, complex*16, dimension( ldab, * ) ab,
    integer ldab, double precision scale, double precision, dimension( * )
    cnorm, double precision tscal, complex*16, dimension( ldx, * ) x,
    integer ldx, complex*16, dimension( ldb, * ) b, integer ldb, complex*16,
    dimension( * ) work, double precision resid)

ZTBT03

✨ Purpose ✨

!>
!> ZTBT03 computes the residual for the solution to a scaled triangular
!> system of equations  A*x = s*b,  A**T *x = s*b,  or  A**H *x = s*b
!> when A is a triangular band matrix.  Here A**T  denotes the transpose
!> of A, A**H denotes the conjugate transpose of A, s is a scalar, and
!> x and b are N by NRHS matrices.  The test ratio is the maximum over
!> the number of right hand sides of
!>    norm(s*b - op(A)*x) / ( norm(op(A)) * norm(x) * EPS ),
!> where op(A) denotes A, A**T, or A**H, and EPS is the machine epsilon.
!>

so basically πŸ‘‘ ZTBT03 is the vibe-check enforcer for a scaled triangular system β€” the equations A*x = s*b, or A**T *x = s*b, or A**H *x = s*b β€” where A is a triangular band matrix. A**T means transpose of A, A**H means conjugate transpose of A, s is a scalar, and x and b are N by NRHS matrices, fr fr.

the test ratio? it's the maximum over all the right hand sides of:

norm(s*b - op(A)*x) / ( norm(op(A)) * norm(x) * EPS ),

where op(A) means A, A**T, or A**H depending on the mood, and EPS is the machine epsilon. math is mathing πŸ’…


πŸ’– Parameters πŸ’–

  • UPLO β€” CHARACTER*1 β€” tells you if A is upper or lower triangular. = 'U': upper triangular πŸ¦‹ = 'L': lower triangular 🌸
  • TRANS β€” CHARACTER*1 β€” which operation is being applied to A. = 'N': A *x = s*b (no transpose) πŸ’€ = 'T': A**T *x = s*b (transpose) πŸ”₯ = 'C': A**H *x = s*b (conjugate transpose) πŸ‘‘
  • DIAG β€” CHARACTER*1 β€” is A a unit triangular matrix or not. = 'N': non-unit triangular ⭐ = 'U': unit triangular 🌈
  • N β€” INTEGER β€” the order of the matrix A. N >= 0 πŸ’œ
  • KD β€” INTEGER β€” the number of superdiagonals or subdiagonals of the triangular band matrix A. KD >= 0 πŸŽ€
  • NRHS β€” INTEGER β€” the number of right hand sides, i.e. the number of columns of the matrices X and B. NRHS >= 0 ✨
  • AB β€” COMPLEX*16 array, dimension (LDAB,N) β€” the upper or lower triangular band matrix A, stored in the first kd+1 rows of the array. the j-th column of A is stored in the j-th column of the array AB like this: if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j; if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd). the indexing is a whole journey but she's iconic πŸ™ˆ
  • LDAB β€” INTEGER β€” the leading dimension of the array AB. LDAB >= KD+1 🫢
  • SCALE β€” DOUBLE PRECISION β€” the scaling factor s used in solving the triangular system 🧚
  • CNORM β€” DOUBLE PRECISION array, dimension (N) β€” the 1-norms of the columns of A, not counting the diagonal πŸ’… (important!)
  • TSCAL β€” DOUBLE PRECISION β€” the scaling factor used in computing those 1-norms in CNORM. so CNORM actually contains the column norms of TSCAL*A β€” yeah, plot twist 😭
  • X β€” COMPLEX*16 array, dimension (LDX,NRHS) β€” the computed solution vectors for the system of linear equations πŸ¦‹
  • LDX β€” INTEGER β€” the leading dimension of the array X. LDX >= max(1,N) ⭐
  • B β€” COMPLEX*16 array, dimension (LDB,NRHS) β€” the right hand side vectors for the system of linear equations πŸ’œ
  • LDB β€” INTEGER β€” the leading dimension of the array B. LDB >= max(1,N) 🌸
  • WORK β€” COMPLEX*16 array, dimension (N) β€” that's it. that's the whole description. a workspace. little guy just doing his job πŸŽ€
  • RESID β€” DOUBLE PRECISION β€” the maximum over the number of right hand sides of norm(op(A)*x - s*b) / ( norm(op(A)) * norm(x) * EPS ) πŸ”₯

πŸ‘‘ Author πŸ‘‘

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

🌟 Definition 🌟

Definition at line 174 of file ztbt03.f.


🌈 Author (again, yes really) 🌈

Generated automatically by Doxygen for LAPACK from the source code.


hey bestie you made it to the very end, so here's the sign-off πŸ’– this whole page is from LAPACK, Version 3.12.0, and it came out of /home/abui...IN/ztbt03.f(3) β€” stan the build system for me, ok bye πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from