SRC/zlascl.f(3)
π SRC/zlascl.f
okay so this is a page from the LAPACK manual β Library Functions Manual energy β and honestly? it's a little icon. let's get into it π«Ά
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine zlascl (type, kl, ku, cfrom, cto, m, n, a, lda, info)
ZLASCL multiplies a general rectangular matrix by a real scalar defined as cto/cfrom. that's the whole vibe. π«
πΈ Function/Subroutine Documentation πΈ
subroutine zlascl (character type, integer kl, integer ku, double precision
cfrom, double precision cto, integer m, integer n, complex*16,
dimension( lda, * ) a, integer lda, integer info)
ZLASCL multiplies a general rectangular matrix by a real scalar defined as cto/cfrom. bestie it literally says it twice, they really wanted us to know π
π Purpose π
ZLASCL multiplies the M by N complex matrix A by the real scalar CTO/CFROM. This is done without over/underflow as long as the final result CTO*A(I,J)/CFROM does not over/underflow. TYPE specifies that A may be full, upper triangular, lower triangular, upper Hessenberg, or banded.
so the whole point is: do the scaling safely, no nasty overflow/underflow situations, no cap. β¨ and TYPE is the main character that tells it what kind of storage A is rocking. π
π Parameters π
TYPEβTYPEisCHARACTER*1. it indices the storage type of the input matrix (yes, "indices", that's what it says, we love a quirky verb π¦):= 'G': A is a full matrix.= 'L': A is a lower triangular matrix.= 'U': A is an upper triangular matrix.= 'H': A is an upper Hessenberg matrix.= 'B': A is a symmetric band matrix with lower bandwidthKLand upper bandwidthKUand with the only the lower half stored.= 'Q': A is a symmetric band matrix with lower bandwidthKLand upper bandwidthKUand with the only the upper half stored.= 'Z': A is a band matrix with lower bandwidthKLand upper bandwidthKU. SeeZGBTRFfor storage details.
KLβKLisINTEGER. the lower bandwidth of A. referenced only ifTYPE = 'B','Q'or'Z'. otherwise she's just sitting there, unbothered. πKUβKUisINTEGER. the upper bandwidth of A. also referenced only ifTYPE = 'B','Q'or'Z'. twins fr fr. π«ΆCFROMβCFROMisDOUBLE PRECISION.CTOβCTOisDOUBLE PRECISION. the matrix A is multiplied byCTO/CFROM.A(I,J)is computed without over/underflow if the final resultCTO*A(I,J)/CFROMcan be represented without over/underflow. and β οΈCFROMmust be nonzero β like, genuinely, don't do that. π¨MβMisINTEGER. the number of rows of the matrix A.M >= 0.NβNisINTEGER. the number of columns of the matrix A.N >= 0.AβAisCOMPLEX*16array, dimension(LDA,N). the matrix to be multiplied byCTO/CFROM. seeTYPEfor the storage type. she's the star of the show, obviously. βLDAβLDAisINTEGER. the leading dimension of the array A. the rules, gorgeous:- If
TYPE = 'G','L','U','H',LDA >= max(1,M); TYPE = 'B',LDA >= KL+1;TYPE = 'Q',LDA >= KU+1;TYPE = 'Z',LDA >= 2*KL+KU+1.
- If
INFOβINFOisINTEGER. the vibe check at the end: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.
Definition at line 142 of file zlascl.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code. she was built by the machines, no notes. π€β¨
aaaand that's the whole page, bestie β literally every line accounted for, ate and left no crumbs. π
LAPACK β Version 3.12.0 β SRC/zlascl.f(3) π mwah, go scale some matrices responsibly π¦π
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms