CXML

SLAIC1 (3lapack)


SYNOPSIS

  SUBROUTINE SLAIC1( JOB, J, X, SEST, W, GAMMA, SESTPR, S, C )

      INTEGER        J, JOB

      REAL           C, GAMMA, S, SEST, SESTPR

      REAL           W( J ), X( J )

PURPOSE

  SLAIC1 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 that
           twonorm(L*x) = sest
  Then SLAIC1 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) REAL array, dimension (J)
          The j-vector x.

  SEST    (input) REAL
          Estimated singular value of j by j matrix L

  W       (input) REAL array, dimension (J)
          The j-vector w.

  GAMMA   (input) REAL
          The diagonal element gamma.

  SESTPR  (output) REAL
          Estimated singular value of (j+1) by (j+1) matrix Lhat.

  S       (output) REAL
          Sine needed in forming xhat.

  C       (output) REAL
          Cosine needed in forming xhat.

CXML Home Page

Index of CXML Routines