SRC/slatrz.f(3)
NAME π
SRC/slatrz.f
okay so bestie, this page is from the Library Functions Manual and it's all about SRC/slatrz.f(3) β yes, that's the header vibe, folded in cute. no cap. π
SYNOPSIS β¨
Functions/Subroutines
subroutine slatrz (m, n, l, a, lda, tau, work)β SLATRZ factors an upper trapezoidal matrix by means of orthogonal transformations.
Function/Subroutine Documentation π
subroutine slatrz (integer m, integer n, integer l, real, dimension( lda, * ) a, integer lda, real, dimension( * ) tau, real, dimension( * ) work)
SLATRZ factors an upper trapezoidal matrix by means of orthogonal transformations.
Purpose πΈ
okay so here's the purpose, literally: SLATRZ factors the M-by-(M+L) real upper trapezoidal matrix [ A1 A2 ] = [ A(1:M,1:M) A(1:M,N-L+1:N) ] as ( R 0 ) * Z, by means of orthogonal transformations. Z is an (M+L)-by-(M+L) orthogonal matrix and, R and A1 are M-by-M upper triangular matrices. periodt. π
Parameters π¦
vibe check, one by one:
MβMisINTEGER. The number of rows of the matrixA.M >= 0.NβNisINTEGER. The number of columns of the matrixA.N >= 0.LβLisINTEGER. The number of columns of the matrixAcontaining the meaningful part of the Householder vectors.N-M >= L >= 0.AβAisREAL array, dimension (LDA,N). On entry, the leadingM-by-Nupper trapezoidal part of the arrayAmust contain the matrix to be factorized. On exit, the leadingM-by-Mupper triangular part ofAcontains the upper triangular matrixR, and elementsN-L+1toNof the firstMrows ofA, with the arrayTAU, represent the orthogonal matrixZas a product ofMelementary reflectors.LDAβLDAisINTEGER. The leading dimension of the arrayA.LDA >= max(1,M).TAUβTAUisREAL array, dimension (M). The scalar factors of the elementary reflectors.WORKβWORKisREAL array, dimension (M).
Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Contributors π
- A. Petitet, Computer Science Dept., Univ. of Tenn., Knoxville, USA
Further Details π₯
okay this part is lowkey iconic: the factorization is obtained by Householder's method. The kth transformation matrix, Z( k ), which is used to introduce zeros into the ( m - k + 1 )th row of A, is given in the form
Z( k ) = ( I 0 ),
( 0 T( k ) )
where
T( k ) = I - tau*u( k )*u( k )**T, u( k ) = ( 1 ),
( 0 )
( z( k ) )
tau is a scalar and z( k ) is an l element vector. tau and z( k ) are chosen to annihilate the elements of the kth row of A2.
The scalar tau is returned in the kth element of TAU and the vector u( k ) in the kth row of A2, such that the elements of z( k ) are in a( k, l + 1 ), ..., a( k, n ). The elements of R are returned in the upper triangular part of A1.
Z is given by
Z = Z( 1 ) * Z( 2 ) * ... * Z( m ).
Definition at line 139 of file slatrz.f.
Author π«Ά
Generated automatically by Doxygen for LAPACK from the source code.
okay that's the whole page, mwah π β this was LAPACK, Version 3.12.0, SRC/slatrz.f(3). byeee πβ¨
π¦ 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