SYNOPSIS
- SUBROUTINE DLAIC1(
- JOB, J, X, SEST, W, GAMMA, SESTPR, S, C )
- INTEGER J, JOB
- DOUBLE PRECISION C, GAMMA, S, SEST, SESTPR
- DOUBLE PRECISION W( J ), X( J )
PURPOSE
DLAIC1 applies one step of incremental condition estimation in its simplest version: Let x, twonorm(x) = 1, be an approximate singular vector of an j-by-j lower triangular matrix L, such thattwonorm(L*x) = sest
Then DLAIC1 computes sestpr, s, c such that
the vector
[ s*x ]
xhat = [ c ]
is an approximate singular vector of
[ L 0 ]
Lhat = [ w' gamma ]
in the sense that
twonorm(Lhat*xhat) = sestpr.
Depending on JOB, an estimate for the largest or smallest singular value is computed.
Note that [s c]' and sestpr**2 is an eigenpair of the system
diag(sest*sest, 0) + [alpha gamma] * [ alpha ]
[ gamma ]
where alpha = x'*w.
ARGUMENTS
- JOB (input) INTEGER
-
= 1: an estimate for the largest singular value is computed.
= 2: an estimate for the smallest singular value is computed. - J (input) INTEGER
- Length of X and W
- X (input) DOUBLE PRECISION array, dimension (J)
- The j-vector x.
- SEST (input) DOUBLE PRECISION
- Estimated singular value of j by j matrix L
- W (input) DOUBLE PRECISION array, dimension (J)
- The j-vector w.
- GAMMA (input) DOUBLE PRECISION
- The diagonal element gamma.
- SESTPR (output) DOUBLE PRECISION
- Estimated singular value of (j+1) by (j+1) matrix Lhat.
- S (output) DOUBLE PRECISION
- Sine needed in forming xhat.
- C (output) DOUBLE PRECISION
-
Cosine needed in forming xhat.