Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
?laed4
Used by sstedc / dstedc . Finds a single root of the secular equation.
Syntax
call slaed4(n, i, d, z, delta, rho, dlam, info)
call dlaed4(n, i, d, z, delta, rho, dlam, info)
Include Files
mkl.fi
Description
This routine 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 * transpose(Z) .
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.
Input Parameters
- n
-
INTEGER . The length of all arrays.
- i
-
INTEGER . The index of the eigenvalue to be computed; 1 ≤ i ≤ n .
- d , z
-
REAL for slaed4 DOUBLE PRECISION for dlaed4 Arrays, dimension ( n ) each. The array d contains the original eigenvalues. It is assumed that they are in order, d(i) < d(j) for i < j . The array z contains the components of the updating vector Z .
- rho
-
REAL for slaed4 DOUBLE PRECISION for dlaed4 The scalar in the symmetric updating formula.
Output Parameters
- delta
-
REAL for slaed4 DOUBLE PRECISION for dlaed4 Array, dimension ( n ). If n≠ 1 , delta contains ( d(j) - lambda_i ) in its j -th component. If n = 1 , then delta(1) = 1 . The vector delta contains the information necessary to construct the eigenvectors.
- dlam
-
REAL for slaed4 DOUBLE PRECISION for dlaed4 The computed lambda_i , the i -th updated eigenvalue.
info
INTEGER .
If info = 0 , the execution is successful.
If info = 1 , the updating process failed.