LAPACK  3.4.2
LAPACK: Linear Algebra PACKage
 All Files Functions Groups
dlaed4.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine dlaed4 (N, I, D, Z, DELTA, RHO, DLAM, INFO)
 DLAED4 used by sstedc. Finds a single root of the secular equation.

Function/Subroutine Documentation

subroutine dlaed4 ( integer  N,
integer  I,
double precision, dimension( * )  D,
double precision, dimension( * )  Z,
double precision, dimension( * )  DELTA,
double precision  RHO,
double precision  DLAM,
integer  INFO 
)

DLAED4 used by sstedc. Finds a single root of the secular equation.

Download DLAED4 + dependencies [TGZ] [ZIP] [TXT]
Purpose:
 This subroutine computes the I-th updated eigenvalue of a symmetric
 rank-one modification to a diagonal matrix whose elements are
 given in the array d, and that

            D(i) < D(j)  for  i < j

 and that RHO > 0.  This is arranged by the calling routine, and is
 no loss in generality.  The rank-one modified system is thus

            diag( D )  +  RHO * Z * Z_transpose.

 where we assume the Euclidean norm of Z is 1.

 The method consists of approximating the rational functions in the
 secular equation by simpler interpolating rational functions.
Parameters:
[in]N
          N is INTEGER
         The length of all arrays.
[in]I
          I is INTEGER
         The index of the eigenvalue to be computed.  1 <= I <= N.
[in]D
          D is DOUBLE PRECISION array, dimension (N)
         The original eigenvalues.  It is assumed that they are in
         order, D(I) < D(J)  for I < J.
[in]Z
          Z is DOUBLE PRECISION array, dimension (N)
         The components of the updating vector.
[out]DELTA
          DELTA is DOUBLE PRECISION array, dimension (N)
         If N .GT. 2, DELTA contains (D(j) - lambda_I) in its  j-th
         component.  If N = 1, then DELTA(1) = 1. If N = 2, see DLAED5
         for detail. The vector DELTA contains the information necessary
         to construct the eigenvectors by DLAED3 and DLAED9.
[in]RHO
          RHO is DOUBLE PRECISION
         The scalar in the symmetric updating formula.
[out]DLAM
          DLAM is DOUBLE PRECISION
         The computed lambda_I, the I-th updated eigenvalue.
[out]INFO
          INFO is INTEGER
         = 0:  successful exit
         > 0:  if INFO = 1, the updating process failed.
Internal Parameters:
  Logical variable ORGATI (origin-at-i?) is used for distinguishing
  whether D(i) or D(i+1) is treated as the origin.

            ORGATI = .true.    origin at i
            ORGATI = .false.   origin at i+1

   Logical variable SWTCH3 (switch-for-3-poles?) is for noting
   if we are working with THREE poles!

   MAXIT is the maximum number of iterations allowed for each
   eigenvalue.
Author:
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date:
September 2012
Contributors:
Ren-Cang Li, Computer Science Division, University of California at Berkeley, USA

Definition at line 146 of file dlaed4.f.

Here is the call graph for this function:

Here is the caller graph for this function: