DSYT22(3)
π DSYT22(3) β Library Functions Manual
okay bestie, welcome to the manual page for DSYT22(3). It lives in the Library Functions Manual, and the NAME section is literally this file path:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/EIG/dsyt22.f
π¦ SYNOPSIS
β¨ Functions/Subroutines
subroutine DSYT22 (itype, uplo, n, m, kband, a, lda, d, e, u, ldu, v,
ldv, tau, work, result)
DSYT22
πΈ Function/Subroutine Documentation
Here's the full signature, copied exactly because we do not play with source code around here π :
subroutine DSYT22 (integer itype, character uplo, integer n, integer m,
integer kband, double precision, dimension( lda, * ) a, integer lda,
double precision, dimension( * ) d, double precision, dimension( * ) e,
double precision, dimension( ldu, * ) u, integer ldu, double precision,
dimension( ldv, * ) v, integer ldv, double precision, dimension( * )
tau, double precision, dimension( * ) work, double precision, dimension(
2 ) result)
DSYT22
β¨ Purpose
So, the vibe is that DSYT22 generally checks a decomposition of this form:
A U = U S
where A is symmetric, the columns of U are orthonormal, and S is diagonal (if KBAND=0) or symmetric tridiagonal (if KBAND=1). If ITYPE=1, then U is represented as a dense matrix; otherwise the U is expressed as a product of Householder transformations, whose vectors are stored in the array and whose scaling constants are in β then the source text has a lil glitch and literally says we shall use the letter β and then to refer to the product of Householder transformations (which should be equal to U). π« I'm not inventing the missing bits, bestie, that's genuinely what the page says.
Specifically, if ITYPE=1, then the page gives:
RESULT(1) = | U**T A U - S | / ( |A| m ulp ) and
RESULT(2) = | I - U**T U | / ( m ulp )
Then the ITYPE argument description hits us with these formulas for 1: U expressed as a dense orthogonal matrix: π
RESULT(1) = | A - U S U**T | / ( |A| n ulp ) and
RESULT(2) = | I - U U**T | / ( n ulp )
Now the arguments, one by one, no skips, no cap:
ITYPEβINTEGER. Specifies the type of tests to be performed.1: U expressed as a dense orthogonal matrix:RESULT(1) = | A - U S U**T | / ( |A| n ulp )andRESULT(2) = | I - U U**T | / ( n ulp ).UPLOβCHARACTER. IfUPLO='U', the upper triangle ofAwill be used and the (strictly) lower triangle will not be referenced. IfUPLO='L', the lower triangle ofAwill be used and the (strictly) upper triangle will not be referenced. Not modified.NβINTEGER. The size of the matrix. If it is zero,DSYT22does nothing. It must be at least zero. Not modified.MβINTEGER. The number of columns ofU. If it is zero,DSYT22does nothing. It must be at least zero. Not modified.KBANDβINTEGER. The bandwidth of the matrix. It may only be zero or one. If zero, thenSis diagonal, andEis not referenced. If one, thenSis symmetric tri-diagonal. Not modified.AβDOUBLE PRECISION array, dimension (LDA , N). The original (unfactored) matrix. It is assumed to be symmetric, and only the upper (UPLO='U') or only the lower (UPLO='L') will be referenced. Not modified.LDAβINTEGER. The leading dimension ofA. It must be at least1and at leastN. Not modified.DβDOUBLE PRECISION array, dimension (N). The diagonal of the (symmetric tri-) diagonal matrix. Not modified.EβDOUBLE PRECISION array, dimension (N). The off-diagonal of the (symmetric tri-) diagonal matrix.E(1)is ignored,E(2)is the(1,2)and(2,1)element, etc. Not referenced ifKBAND=0. Not modified.UβDOUBLE PRECISION array, dimension (LDU, N). IfITYPE=1or3, this contains the orthogonal matrix in the decomposition, expressed as a dense matrix. IfITYPE=2, then it is not referenced. Not modified.LDUβINTEGER. The leading dimension ofU.LDUmust be at leastNand at least1. Not modified.VβDOUBLE PRECISION array, dimension (LDV, N). IfITYPE=2or3, the lower triangle of this array contains the Householder vectors used to describe the orthogonal matrix in the decomposition. IfITYPE=1, then it is not referenced. Not modified.LDVβINTEGER. The leading dimension ofV.LDVmust be at leastNand at least1. Not modified.TAUβDOUBLE PRECISION array, dimension (N). IfITYPE >= 2, thenTAU(j)is the scalar factor ofv(j) v(j)**Tin the Householder transformationH(j)of the productU = H(1)...H(n-2). IfITYPE < 2, thenTAUis not referenced. Not modified.WORKβDOUBLE PRECISION array, dimension (2*N**2). Workspace. Modified.RESULTβDOUBLE PRECISION array, dimension (2). The values computed by the two tests described above. The values are currently limited to1/ulp, to avoid overflow.RESULT(1)is always modified.RESULT(2)is modified only ifLDUis at leastN. Modified.
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 155 of file dsyt22.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code.
okay that's the whole page, bestie π«Ά β it's LAPACK, Version 3.12.0, from the page file /home/abui...IG/dsyt22.f(3). mwah π
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms