ZTRSNA(3)
ZTRSNA(3) ๐ โ Library Functions Manual โจ
NAME ๐
Okay bestie, this page is filed under the source path /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/ztrsna.f. Thatโs the name entry, no cap โ itโs literally a path, and yes, itโs iconic in a deeply nerdy way.
SYNOPSIS ๐ฆ
Functions/Subroutines
subroutine ZTRSNA (job, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr,
s, sep, mm, m, work, ldwork, rwork, info)
ZTRSNA
Function/Subroutine Documentation ๐ง
subroutine ZTRSNA (character job, character howmny, logical, dimension( * )
select, integer n, complex*16, dimension( ldt, * ) t, integer ldt,
complex*16, dimension( ldvl, * ) vl, integer ldvl, complex*16,
dimension( ldvr, * ) vr, integer ldvr, double precision, dimension( * )
s, double precision, dimension( * ) sep, integer mm, integer m,
complex*16, dimension( ldwork, * ) work, integer ldwork, double
precision, dimension( * ) rwork, integer info)
ZTRSNA
Purpose ๐ฏ
ZTRSNA estimates reciprocal condition numbers for specified eigenvalues and/or right eigenvectors of a complex upper triangular matrix T (or of any matrix Q*T*Q**H with Q unitary). Thatโs the whole assignment, and it ate.
Parameters ๐
JOBโJOB is CHARACTER*1. Specifies whether condition numbers are required for eigenvalues (S) or eigenvectors (SEP):= 'E': for eigenvalues only (S);= 'V': for eigenvectors only (SEP);= 'B': for both eigenvalues and eigenvectors (SandSEP).
HOWMNYโHOWMNY is CHARACTER*1= 'A': compute condition numbers for all eigenpairs;= 'S': compute condition numbers for selected eigenpairs specified by the arraySELECT.
SELECTโSELECT is LOGICAL array, dimension (N). IfHOWMNY = 'S',SELECTspecifies the eigenpairs for which condition numbers are required. To select condition numbers for the j-th eigenpair,SELECT(j)must be set to.TRUE.. IfHOWMNY = 'A',SELECTis not referenced.NโN is INTEGER. The order of the matrixT.N >= 0.TโT is COMPLEX*16 array, dimension (LDT,N). The upper triangular matrixT.LDTโLDT is INTEGER. The leading dimension of the arrayT.LDT >= max(1,N).VLโVL is COMPLEX*16 array, dimension (LDVL,M). IfJOB = 'E'or'B',VLmust contain left eigenvectors ofT(or of anyQ*T*Q**HwithQunitary), corresponding to the eigenpairs specified byHOWMNYandSELECT. The eigenvectors must be stored in consecutive columns ofVL, as returned byZHSEINorZTREVC. IfJOB = 'V',VLis not referenced.LDVLโLDVL is INTEGER. The leading dimension of the arrayVL.LDVL >= 1; and ifJOB = 'E'or'B',LDVL >= N.VRโVR is COMPLEX*16 array, dimension (LDVR,M). IfJOB = 'E'or'B',VRmust contain right eigenvectors ofT(or of anyQ*T*Q**HwithQunitary), corresponding to the eigenpairs specified byHOWMNYandSELECT. The eigenvectors must be stored in consecutive columns ofVR, as returned byZHSEINorZTREVC. IfJOB = 'V',VRis not referenced.LDVRโLDVR is INTEGER. The leading dimension of the arrayVR.LDVR >= 1; and ifJOB = 'E'or'B',LDVR >= N.SโS is DOUBLE PRECISION array, dimension (MM). IfJOB = 'E'or'B', the reciprocal condition numbers of the selected eigenvalues, stored in consecutive elements of the array. ThusS(j),SEP(j), and the j-th columns ofVLandVRall correspond to the same eigenpair (but not in general the j-th eigenpair, unless all eigenpairs are selected). IfJOB = 'V',Sis not referenced.SEPโSEP is DOUBLE PRECISION array, dimension (MM). IfJOB = 'V'or'B', the estimated reciprocal condition numbers of the selected eigenvectors, stored in consecutive elements of the array. IfJOB = 'E',SEPis not referenced.MMโMM is INTEGER. The number of elements in the arraysS(ifJOB = 'E'or'B') and/orSEP(ifJOB = 'V'or'B').MM >= M.MโM is INTEGER. The number of elements of the arraysSand/orSEPactually used to store the estimated condition numbers. IfHOWMNY = 'A',Mis set toN.WORKโWORK is COMPLEX*16 array, dimension (LDWORK,N+6). IfJOB = 'E',WORKis not referenced.LDWORKโLDWORK is INTEGER. The leading dimension of the arrayWORK.LDWORK >= 1; and ifJOB = 'V'or'B',LDWORK >= N.RWORKโRWORK is DOUBLE PRECISION array, dimension (N). IfJOB = 'E',RWORKis not referenced.INFOโINFO is INTEGER= 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.
Further Details ๐งฎ
The reciprocal of the condition number of an eigenvalue lambda is defined as
S(lambda) = |v**H*u| / (norm(u)*norm(v))
where u and v are the right and left eigenvectors of T corresponding to lambda; v**H denotes the conjugate transpose of v, and norm(u) denotes the Euclidean norm. These reciprocal condition numbers always lie between zero (very badly conditioned) and one (very well conditioned). If n = 1, S(lambda) is defined to be 1.
An approximate error bound for a computed eigenvalue W(i) is given by
EPS * norm(T) / S(i)
where EPS is the machine precision.
The reciprocal of the condition number of the right eigenvector u corresponding to lambda is defined as follows. Suppose
T = ( lambda c )
( 0 T22 )
Then the reciprocal condition number is
SEP( lambda, T22 ) = sigma-min( T22 - lambda*I )
where sigma-min denotes the smallest singular value. We approximate the smallest singular value by the reciprocal of an estimate of the one-norm of the inverse of T22 - lambda*I. If n = 1, SEP(1) is defined to be abs(T(1,1)).
An approximate error bound for a computed right eigenvector VR(i) is given by
EPS * norm(T) / SEP(i)
Definition at line 246 of file ztrsna.f.
Author (auto-generated ๐ )
Generated automatically by Doxygen for LAPACK from the source code.
Signed off with ๐ from the LAPACK source: LAPACK Version 3.12.0, file /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/ztrsna.f. Thatโs the footer vibe, bestie โ periodt.
๐ฆ 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