SLASD5

   November 2006

Purpose

This subroutine computes the square root of the I-th eigenvalue
of a positive symmetric rank-one modification of a 2-by-2 diagonal
matrix

           diag( D ) * diag( D ) +  RHO *  Z * transpose(Z) .

The diagonal entries in the array D are assumed to satisfy

           0 <= D(i) < D(j)  for  i < j .

We also assume RHO > 0 and that the Euclidean norm of the vector
Z is one.

Arguments

I
(input) INTEGER
The index of the eigenvalue to be computed.  I = 1 or I = 2.
D
(input) REAL array, dimension (2)
The original eigenvalues.  We assume 0 <= D(1) < D(2).
Z
(input) REAL array, dimension (2)
The components of the updating vector.
DELTA
(output) REAL array, dimension (2)
Contains (D(j) - sigma_I) in its  j-th component.
The vector DELTA contains the information necessary
to construct the eigenvectors.
RHO
(input) REAL
The scalar in the symmetric updating formula.
DSIGMA
(output) REAL
The computed sigma_I, the I-th updated eigenvalue.
WORK
(workspace) REAL array, dimension (2)
WORK contains (D(j) + sigma_I) in its  j-th component.

Further Details

Based on contributions by
   Ren-Cang Li, Computer Science Division, University of California
   at Berkeley, USA

Call Graph

Caller Graph