Scroll to navigation

slasd4.f(3) LAPACK slasd4.f(3)

NAME

slasd4.f -

SYNOPSIS

Functions/Subroutines


subroutine slasd4 (N, I, D, Z, DELTA, RHO, SIGMA, WORK, INFO)
 
SLASD4 computes the square root of the i-th updated eigenvalue of a positive symmetric rank-one modification to a positive diagonal matrix. Used by sbdsdc.

Function/Subroutine Documentation

subroutine slasd4 (integerN, integerI, real, dimension( * )D, real, dimension( * )Z, real, dimension( * )DELTA, realRHO, realSIGMA, real, dimension( * )WORK, integerINFO)

SLASD4 computes the square root of the i-th updated eigenvalue of a positive symmetric rank-one modification to a positive diagonal matrix. Used by sbdsdc.
Purpose:
 This subroutine computes the square root of the I-th updated
 eigenvalue of a positive symmetric rank-one modification to
 a positive diagonal matrix whose entries are given as the squares
 of the corresponding entries in the array d, and that
0 <= 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 ) * 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:
N
          N is INTEGER
         The length of all arrays.
I
          I is INTEGER
         The index of the eigenvalue to be computed.  1 <= I <= N.
D
          D is REAL array, dimension ( N )
         The original eigenvalues.  It is assumed that they are in
         order, 0 <= D(I) < D(J)  for I < J.
Z
          Z is REAL array, dimension ( N )
         The components of the updating vector.
DELTA
          DELTA is REAL array, dimension ( N )
         If N .ne. 1, DELTA contains (D(j) - sigma_I) in its  j-th
         component.  If N = 1, then DELTA(1) = 1.  The vector DELTA
         contains the information necessary to construct the
         (singular) eigenvectors.
RHO
          RHO is REAL
         The scalar in the symmetric updating formula.
SIGMA
          SIGMA is REAL
         The computed sigma_I, the I-th updated eigenvalue.
WORK
          WORK is REAL array, dimension ( N )
         If N .ne. 1, WORK contains (D(j) + sigma_I) in its  j-th
         component.  If N = 1, then WORK( 1 ) = 1.
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:
November 2013
Contributors:
Ren-Cang Li, Computer Science Division, University of California at Berkeley, USA
Definition at line 154 of file slasd4.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.
Wed Oct 15 2014 Version 3.4.2