Developer Reference for Intel® oneAPI Math Kernel Library for C
?lasd5
Computes the square root of the i -th eigenvalue of a positive symmetric rank-one modification of a 2-by-2 diagonal matrix.Used by ?bdsdc .
Syntax
call slasd5(i, d, z, delta, rho, dsigma, work)
call dlasd5(i, d, z, delta, rho, dsigma, work)
void slasd5(lapack_int *i, float *d, float *z, float *delta, float *rho, float *dsigma,
float *work);
void dlasd5(lapack_int *i, double *d, double *z, double *delta, double *rho,
double *dsigma, double *work);
Include Files
mkl.h
Description
The routine 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*Z^{T}
The diagonal entries in the array d must satisfy 0 ≤ d(i) < d(j) for i<i , rho mustbe greater than 0, and that the Euclidean norm of the vector Z is equal to 1.
Input Parameters
i
The index of the eigenvalue to be computed. i = 1 or i = 2 .
- d
-
REAL for slasd5 DOUBLE PRECISION for dlasd5 Array, dimension (2 ). The original eigenvalues, 0 ≤ d(1) < d(2) .
- z
-
REAL for slasd5 DOUBLE PRECISION for dlasd5 Array, dimension ( 2 ). The components of the updating vector.
- rho
-
REAL for slasd5 DOUBLE PRECISION for dlasd5 The scalar in the symmetric updating formula.
- work
-
REAL for slasd5 DOUBLE PRECISION for dlasd5 Workspace array, dimension ( 2 ). Contains ( d(j) + sigma_i ) in its j -th component.
Output Parameters
- delta
-
REAL for slasd5 DOUBLE PRECISION for dlasd5 Array, dimension ( 2 ). Contains ( d(j) - sigma_i ) in its j -th component. The vector delta contains the information necessary to construct the eigenvectors.
- dsigma
-
REAL for slasd5 DOUBLE PRECISION for dlasd5 The computed sigma_i , the i -th updated eigenvalue.