complexGTcomputational(3)
πΈ NAME πΈ
complexGTcomputational β and the one-liner? complex. that's the whole thing bestie, no elaboration, the name ate and left no crumbs. it's the group of complex computational functions for GT matrices, and honestly the naming department was feeling efficient that day. π
β¨ SYNOPSIS β¨
π«Ά Functions
subroutine cgtcon (NORM, N, DL, D, DU, DU2, IPIV, ANORM, RCOND, WORK, INFO)βCGTCONsubroutine cgtrfs (TRANS, N, NRHS, DL, D, DU, DLF, DF, DUF, DU2, IPIV, B, LDB, X, LDX, FERR, BERR, WORK, RWORK, INFO)βCGTRFSsubroutine cgttrf (N, DL, D, DU, DU2, IPIV, INFO)βCGTTRFsubroutine cgttrs (TRANS, N, NRHS, DL, D, DU, DU2, IPIV, B, LDB, INFO)βCGTTRSsubroutine cgtts2 (ITRANS, N, NRHS, DL, D, DU, DU2, IPIV, B, LDB)βCGTTS2solves a system of linear equations with a tridiagonal matrix using the LU factorization computed bysgttrf.
π DETAILED DESCRIPTION π
This is the group of complex computational functions for GT matrices. that's it, that's the whole vibe check, lowkey iconic. π¦
π FUNCTION DOCUMENTATION π
π subroutine cgtcon
subroutine cgtcon (character NORM, integer N, complex, dimension( * ) DL,
complex, dimension( * ) D, complex, dimension( * ) DU, complex,
dimension( * ) DU2, integer, dimension( * ) IPIV, real ANORM, real
RCOND, complex, dimension( * ) WORK, integer INFO)
CGTCON
π Purpose
CGTCON estimates the reciprocal of the condition number of a complex tridiagonal matrix A using the LU factorization as computed by CGTTRF.
An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))). math is mathing, we love to see it. β¨
π Parameters
NORMβNORMisCHARACTER*1. it tells us whether you want the 1-norm condition number or the infinity-norm condition number:= '1'or'O': 1-norm;= 'I': Infinity-norm.
NβNisINTEGER. the order of the matrix A.N >= 0.DLβDLisCOMPLEX array, dimension (N-1). the (n-1) multipliers that define the matrix L from the LU factorization of A as computed byCGTTRF.DβDisCOMPLEX array, dimension (N). the n diagonal elements of the upper triangular matrix U from the LU factorization of A.DUβDUisCOMPLEX array, dimension (N-1). the (n-1) elements of the first superdiagonal of U.DU2βDU2isCOMPLEX array, dimension (N-2). the (n-2) elements of the second superdiagonal of U.IPIVβIPIVisINTEGER array, dimension (N). the pivot indices; for1 <= i <= n, row i of the matrix was interchanged with rowIPIV(i).IPIV(i)will always be either i or i+1;IPIV(i) = iindicates a row interchange was not required. so chill of it honestly.ANORMβANORMisREAL. ifNORM = '1'or'O', the 1-norm of the original matrix A. ifNORM = 'I', the infinity-norm of the original matrix A.RCONDβRCONDisREAL. the reciprocal of the condition number of the matrix A, computed asRCOND = 1/(ANORM * AINVNM), whereAINVNMis an estimate of the 1-norm ofinv(A)computed in this routine.WORKβWORKisCOMPLEX array, dimension (2*N).INFOβINFOisINTEGER:= 0: successful exit< 0: ifINFO = -i, the i-th argument had an illegal value
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π subroutine cgtrfs
subroutine cgtrfs (character TRANS, integer N, integer NRHS, complex,
dimension( * ) DL, complex, dimension( * ) D, complex, dimension( * )
DU, complex, dimension( * ) DLF, complex, dimension( * ) DF, complex,
dimension( * ) DUF, complex, dimension( * ) DU2, integer, dimension( * )
IPIV, complex, dimension( ldb, * ) B, integer LDB, complex, dimension(
ldx, * ) X, integer LDX, real, dimension( * ) FERR, real, dimension( * )
BERR, complex, dimension( * ) WORK, real, dimension( * ) RWORK, integer
INFO)
CGTRFS
π Purpose
CGTRFS improves the computed solution to a system of linear equations when the coefficient matrix is tridiagonal, and provides error bounds and backward error estimates for the solution. glow-up for your answer, bestie. π₯
π Parameters
TRANSβTRANSisCHARACTER*1. specifies the form of the system of equations:= 'N': A * X = B (No transpose)= 'T': A**T * X = B (Transpose)= 'C': A**H * X = B (Conjugate transpose)
NβNisINTEGER. the order of the matrix A.N >= 0.NRHSβNRHSisINTEGER. the number of right hand sides, i.e., the number of columns of the matrix B.NRHS >= 0.DLβDLisCOMPLEX array, dimension (N-1). the (n-1) subdiagonal elements of A.DβDisCOMPLEX array, dimension (N). the diagonal elements of A.DUβDUisCOMPLEX array, dimension (N-1). the (n-1) superdiagonal elements of A.DLFβDLFisCOMPLEX array, dimension (N-1). the (n-1) multipliers that define the matrix L from the LU factorization of A as computed byCGTTRF.DFβDFisCOMPLEX array, dimension (N). the n diagonal elements of the upper triangular matrix U from the LU factorization of A.DUFβDUFisCOMPLEX array, dimension (N-1). the (n-1) elements of the first superdiagonal of U.DU2βDU2isCOMPLEX array, dimension (N-2). the (n-2) elements of the second superdiagonal of U.IPIVβIPIVisINTEGER array, dimension (N). the pivot indices; for1 <= i <= n, row i of the matrix was interchanged with rowIPIV(i).IPIV(i)will always be either i or i+1;IPIV(i) = iindicates a row interchange was not required.BβBisCOMPLEX array, dimension (LDB,NRHS). the right hand side matrix B.LDBβLDBisINTEGER. the leading dimension of the array B.LDB >= max(1,N).XβXisCOMPLEX array, dimension (LDX,NRHS). on entry, the solution matrix X, as computed byCGTTRS. on exit, the improved solution matrix X. β¨ glow-up complete.LDXβLDXisINTEGER. the leading dimension of the array X.LDX >= max(1,N).FERRβFERRisREAL array, dimension (NRHS). the estimated forward error bound for each solution vectorX(j)(the j-th column of the solution matrix X). ifXTRUEis the true solution corresponding toX(j),FERR(j)is an estimated upper bound for the magnitude of the largest element in(X(j) - XTRUE)divided by the magnitude of the largest element inX(j). the estimate is as reliable as the estimate forRCOND, and is almost always a slight overestimate of the true error.BERRβBERRisREAL array, dimension (NRHS). the componentwise relative backward error of each solution vectorX(j)(i.e., the smallest relative change in any element of A or B that makesX(j)an exact solution).WORKβWORKisCOMPLEX array, dimension (2*N).RWORKβRWORKisREAL array, dimension (N).INFOβINFOisINTEGER:= 0: successful exit< 0: ifINFO = -i, the i-th argument had an illegal value
π Internal Parameters
ITMAX is the maximum number of steps of iterative refinement.
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π subroutine cgttrf
subroutine cgttrf (integer N, complex, dimension( * ) DL, complex,
dimension( * ) D, complex, dimension( * ) DU, complex, dimension( * )
DU2, integer, dimension( * ) IPIV, integer INFO)
CGTTRF
π Purpose
CGTTRF computes an LU factorization of a complex tridiagonal matrix A using elimination with partial pivoting and row interchanges.
The factorization has the form
A = L * U
where L is a product of permutation and unit lower bidiagonal matrices and U is upper triangular with nonzeros in only the main diagonal and first two superdiagonals.
π Parameters
NβNisINTEGER. the order of the matrix A.DLβDLisCOMPLEX array, dimension (N-1).- on entry,
DLmust contain the (n-1) sub-diagonal elements of A. - on exit,
DLis overwritten by the (n-1) multipliers that define the matrix L from the LU factorization of A.
- on entry,
DβDisCOMPLEX array, dimension (N).- on entry,
Dmust contain the diagonal elements of A. - on exit,
Dis overwritten by the n diagonal elements of the upper triangular matrix U from the LU factorization of A.
- on entry,
DUβDUisCOMPLEX array, dimension (N-1).- on entry,
DUmust contain the (n-1) super-diagonal elements of A. - on exit,
DUis overwritten by the (n-1) elements of the first super-diagonal of U.
- on entry,
DU2βDU2isCOMPLEX array, dimension (N-2). on exit,DU2is overwritten by the (n-2) elements of the second super-diagonal of U.IPIVβIPIVisINTEGER array, dimension (N). the pivot indices; for1 <= i <= n, row i of the matrix was interchanged with rowIPIV(i).IPIV(i)will always be either i or i+1;IPIV(i) = iindicates a row interchange was not required.INFOβINFOisINTEGER:= 0: successful exit< 0: ifINFO = -k, the k-th argument had an illegal value> 0: ifINFO = k,U(k,k)is exactly zero. The factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations.
π¨ bestie this is the one to watch out for.INFO > 0means the factorization went through but U is exactly singular, and if you try to solve a system with it you get division by zero. not a vibe. check yourINFObefore you use the result, no cap.
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
cgttrs π
subroutine cgttrs (character TRANS, integer N, integer NRHS, complex,
dimension( * ) DL, complex, dimension( * ) D, complex, dimension( * )
DU, complex, dimension( * ) DU2, integer, dimension( * ) IPIV, complex,
dimension( ldb, * ) B, integer LDB, integer INFO)
CGTTRS β okay bestie, this one solves one of these systems:
Purpose
CGTTRS solves one of the systems of equations
A * X = B, A**T * X = B, or A**H * X = B,
with a tridiagonal matrix A using the LU factorization computed by CGTTRF. Like, it's the solve after factor moment. π
Parameters
TRANSβCHARACTER*1. Tells us which form of the system we're solving, no cap:= 'N': A * X = B (No transpose)= 'T': A**T * X = B (Transpose)= 'C': A**H * X = B (Conjugate transpose)
NβINTEGER. The order of the matrix A. The main character size, basically.NRHSβINTEGER. The number of right hand sides, i.e., the number of columns of the matrix B.NRHS >= 0.DLβCOMPLEX array, dimension (N-1). The(n-1)multipliers that define the matrix L from the LU factorization of A. The little lower-diagonal besties.DβCOMPLEX array, dimension (N). Thendiagonal elements of the upper triangular matrix U from the LU factorization of A. Diag energy β¨DUβCOMPLEX array, dimension (N-1). The(n-1)elements of the first super-diagonal of U.DU2βCOMPLEX array, dimension (N-2). The(n-2)elements of the second super-diagonal of U.IPIVβINTEGER array, dimension (N). The pivot indices; for1 <= i <= n, rowiof the matrix was interchanged with rowIPIV(i).IPIV(i)will always be eitheriori+1;IPIV(i) = iindicates a row interchange was not required. So basically the row-swap receipts. π§ΎBβCOMPLEX array, dimension (LDB,NRHS). On entry, the matrix of right hand side vectors B. On exit, B is overwritten by the solution vectors X. It's giving glow-up: RHS in, solution out. πLDBβINTEGER. The leading dimension of the array B.LDB >= max(1,N).INFOβINTEGER.= 0: successful exit< 0: if INFO = -k, the k-th argument had an illegal value
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
cgtts2 π¦
subroutine cgtts2 (integer ITRANS, integer N, integer NRHS, complex,
dimension( * ) DL, complex, dimension( * ) D, complex, dimension( * )
DU, complex, dimension( * ) DU2, integer, dimension( * ) IPIV, complex,
dimension( ldb, * ) B, integer LDB)
CGTTS2 solves a system of linear equations with a tridiagonal matrix using the LU factorization computed by sgttrf. (Yes, the original says sgttrf β we're not fixing it, bestie, we're just reading it fr fr.)
Purpose
CGTTS2 solves one of the systems of equations
A * X = B, A**T * X = B, or A**H * X = B,
with a tridiagonal matrix A using the LU factorization computed by CGTTRF.
Parameters
ITRANSβINTEGER. Specifies the form of the system of equations. The integer-coded version of the vibe check:= 0: A * X = B (No transpose)= 1: A**T * X = B (Transpose)= 2: A**H * X = B (Conjugate transpose)
NβINTEGER. The order of the matrix A.NRHSβINTEGER. The number of right hand sides, i.e., the number of columns of the matrix B.NRHS >= 0.DLβCOMPLEX array, dimension (N-1). The(n-1)multipliers that define the matrix L from the LU factorization of A.DβCOMPLEX array, dimension (N). Thendiagonal elements of the upper triangular matrix U from the LU factorization of A.DUβCOMPLEX array, dimension (N-1). The(n-1)elements of the first super-diagonal of U.DU2βCOMPLEX array, dimension (N-2). The(n-2)elements of the second super-diagonal of U.IPIVβINTEGER array, dimension (N). The pivot indices; for1 <= i <= n, rowiof the matrix was interchanged with rowIPIV(i).IPIV(i)will always be eitheriori+1;IPIV(i) = iindicates a row interchange was not required.BβCOMPLEX array, dimension (LDB,NRHS). On entry, the matrix of right hand side vectors B. On exit, B is overwritten by the solution vectors X.LDBβINTEGER. The leading dimension of the array B.LDB >= max(1,N).
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Author
Generated automatically by Doxygen for LAPACK from the source code.
This page is from LAPACK version 3.11.0, dated Sun Nov 27 2022, complexGTcomputational(3). Auto-generated by Doxygen, but the slay is manual. π
β¨ Byeee!
π¦ where this page comes from
- debian bookworm: liblapack-doc 3.11.0-2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms