man dlasd5 (Fonctions bibliothèques) - 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)

NAME

DLASD5 - 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)

SYNOPSIS

SUBROUTINE DLASD5(
I, D, Z, DELTA, RHO, DSIGMA, WORK )
INTEGER I
DOUBLE PRECISION DSIGMA, RHO
DOUBLE PRECISION D( 2 ), DELTA( 2 ), WORK( 2 ), Z( 2 )

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) DOUBLE PRECISION array, dimension ( 2 )
The original eigenvalues. We assume 0 <= D(1) < D(2).
Z (input) DOUBLE PRECISION array, dimension ( 2 )
The components of the updating vector.
DELTA (output) DOUBLE PRECISION array, dimension ( 2 )
Contains (D(j) - lambda_I) in its j-th component. The vector DELTA contains the information necessary to construct the eigenvectors.
RHO (input) DOUBLE PRECISION
The scalar in the symmetric updating formula.

DSIGMA (output) DOUBLE PRECISION The computed lambda_I, the I-th updated eigenvalue.

WORK (workspace) DOUBLE PRECISION 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