doubleGBauxiliary(3)
π doubleGBauxiliary(3) π
okay bestie, welcome to the LAPACK manual, and specifically to doubleGBauxiliary β yeah the name is giving "internal group page" energy, but she's important, I promise. π
β¨ NAME β¨
doubleGBauxiliary β double. that's it, that's the name. she's the double-precision auxiliary squad. π
πΈ SYNOPSIS πΈ
Functions π¦
double precision function dlangb (NORM, N, KL, KU, AB, LDAB, WORK)β DLANGB returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value of any element of general band matrix. she does all four, no cap. β¨subroutine dlaqgb (M, N, KL, KU, AB, LDAB, R, C, ROWCND, COLCND, AMAX, EQUED)β DLAQGB scales a general band matrix, using row and column scaling factors computed by sgbequ. glow-up service, basically. π
π Detailed Description π
This is the group of double auxiliary functions for GB matrices. that's the whole vibe. if you have a general band matrix and you need double precision help, this is the group chat you join. π«Ά
π₯ Function Documentation π₯
π dlangb
double precision function dlangb (character NORM, integer N, integer KL,
integer KU, double precision, dimension( ldab, * ) AB, integer LDAB,
double precision, dimension( * ) WORK)
DLANGB returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value of any element of general band matrix.
β Purpose
DLANGB returns the value of the one norm, or the Frobenius norm, or
the infinity norm, or the element of largest absolute value of an
n by n band matrix A, with kl sub-diagonals and ku super-diagonals.
π« Returns
DLANGB returns:
DLANGB = ( max(abs(A(i,j))), NORM = 'M' or 'm'
(
( norm1(A), NORM = '1', 'O' or 'o'
(
( normI(A), NORM = 'I' or 'i'
(
( normF(A), NORM = 'F', 'f', 'E' or 'e'
where norm1 denotes the one norm of a matrix (maximum column sum), normI denotes the infinity norm of a matrix (maximum row sum) and normF denotes the Frobenius norm of a matrix (square root of sum of squares). and heads up bestie β max(abs(A(i,j))) is not a consistent matrix norm. it's giving "technically not a norm but we still ship it." π
π Parameters
NORMβNORMisCHARACTER*1. Specifies the value to be returned in DLANGB as described above. pick your fighter. πNβNisINTEGER. The order of the matrix A.N >= 0. WhenN = 0, DLANGB is set to zero. empty matrix? zero, periodt.KLβKLisINTEGER. The number of sub-diagonals of the matrix A.KL >= 0.KUβKUisINTEGER. The number of super-diagonals of the matrix A.KU >= 0.ABβABisDOUBLE PRECISIONarray, dimension(LDAB,N). The band matrix A, stored in rows1toKL+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(n,j+kl).
yes the index math is a lot. stare at it, breathe, it'll click. π§
LDABβLDABisINTEGER. The leading dimension of the array AB.LDAB >= KL+KU+1. do not skip this, the compiler will not warn you and your results will be cursed. πWORKβWORKisDOUBLE PRECISIONarray, dimension(MAX(1,LWORK)), whereLWORK >= NwhenNORM = 'I'; otherwise, WORK is not referenced. so if you're not asking for the infinity norm, she doesn't even look at it. iconic behaviour honestly. π
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π dlaqgb
subroutine dlaqgb (integer M, integer N, integer KL, integer KU, double
precision, dimension( ldab, * ) AB, integer LDAB, double precision,
dimension( * ) R, double precision, dimension( * ) C, double precision
ROWCND, double precision COLCND, double precision AMAX, character EQUED)
DLAQGB scales a general band matrix, using row and column scaling factors computed by sgbequ.
β¨ Purpose
DLAQGB equilibrates a general M by N band matrix A with KL
subdiagonals and KU superdiagonals using the row and scaling factors
in the vectors R and C.
equilibrate = make the numbers behave. she's the responsible friend. π
π¦ Parameters
MβMisINTEGER. The number of rows of the matrix A.M >= 0.NβNisINTEGER. The number of columns of the matrix A.N >= 0.KLβKLisINTEGER. The number of subdiagonals within the band of A.KL >= 0.KUβKUisINTEGER. The number of superdiagonals within the band of A.KU >= 0.ABβABisDOUBLE PRECISIONarray, dimension(LDAB,N).
On entry, the matrix A in band storage, 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, the equilibrated matrix, in the same storage format as A. See EQUED for the form of the equilibrated matrix.
same array, different girl. she walked in as A and left as the equilibrated version. π«
LDABβLDABisINTEGER. The leading dimension of the array AB.LDA >= KL+KU+1.
(yes it says LDA, not LDAB. that's what the page says, so that's what I'm telling you. copying the lore faithfully fr fr. π)
RβRisDOUBLE PRECISIONarray, dimension(M). The row scale factors for A.CβCisDOUBLE PRECISIONarray, dimension(N). The column scale factors for A.ROWCNDβROWCNDisDOUBLE PRECISION. Ratio of the smallestR(i)to the largestR(i).COLCNDβCOLCNDisDOUBLE PRECISION. Ratio of the smallestC(i)to the largestC(i).AMAXβAMAXisDOUBLE PRECISION. Absolute value of largest matrix entry.EQUEDβEQUEDisCHARACTER*1. Specifies the form of equilibration that was done.= 'N': No equilibration= 'R': Row equilibration, i.e., A has been premultiplied bydiag(R).= 'C': Column equilibration, i.e., A has been postmultiplied bydiag(C).= 'B': Both row and column equilibration, i.e., A has been replaced bydiag(R) * A * diag(C).
four options, pick your destiny. π
πΈ Internal Parameters
THRESHis a threshold value used to decide if row or column scaling should be done based on the ratio of the row or column scaling factors. IfROWCND < THRESH, row scaling is done, and ifCOLCND < THRESH, column scaling is done.LARGEandSMALLare threshold values used to decide if row scaling should be done based on the absolute size of the largest matrix element. IfAMAX > LARGEorAMAX < SMALL, row scaling is done.
internal means internal, bestie β these are the vibes-check thresholds behind the curtain. π§
π 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. so yes, a robot wrote the original and I just gave it a personality. slay. π€π
and that's the whole page, bestie!! π this was LAPACK Version 3.11.0, dated Sun Nov 27 2022 β so if you're reading this from a future release, pls check the current docs too, because manpages do get glow-ups. mwah, bye!! πβ¨π¦
π¦ 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