Visible to Intel only — GUID: GUID-DC7B193E-76CD-4493-85D4-8B787B755882
Visible to Intel only — GUID: GUID-DC7B193E-76CD-4493-85D4-8B787B755882
?larrk
Computes one eigenvalue of a symmetric tridiagonal matrix T to suitable accuracy.
Syntax
call slarrk( n, iw, gl, gu, d, e2, pivmin, reltol, w, werr, info )
call dlarrk( n, iw, gl, gu, d, e2, pivmin, reltol, w, werr, info )
Include Files
- mkl.fi
Description
The routine computes one eigenvalue of a symmetric tridiagonal matrix T to suitable accuracy. This is an auxiliary code to be called from ?stemr.
To avoid overflow, the matrix must be scaled so that its largest element is no greater than (overflow1/2*underflow1/4) in absolute value, and for greatest accuracy, it should not be much smaller than that. For more details see [Kahan66].
Input Parameters
- n
-
INTEGER. The order of the matrix T. (n≥ 1).
- iw
-
INTEGER.
The index of the eigenvalue to be returned. - gl, gu
-
REAL for slarrk
DOUBLE PRECISION for dlarrk
An upper and a lower bound on the eigenvalue. - d
-
REAL for slarrk
DOUBLE PRECISION for dlarrk
Array, DIMENSION (n).
Contains n diagonal elements of the matrix T.
- e2
-
REAL for slarrk
DOUBLE PRECISION for dlarrk
Array, DIMENSION (n-1).
Contains (n-1) squared off-diagonal elements of the T.
- pivmin
-
REAL for slarrk
DOUBLE PRECISION for dlarrk
The minimum pivot in the Sturm sequence for the matrix T.
- reltol
-
REAL for slarrk
DOUBLE PRECISION for dlarrk
The minimum relative width of an interval. When an interval is narrower than reltol times the larger (in magnitude) endpoint, then it is considered to be sufficiently small, that is converged. Note: this should always be at least radix*machine epsilon.
Output Parameters
- w
-
REAL for slarrk
DOUBLE PRECISION for dlarrk
Contains the eigenvalue approximation.
- werr
-
REAL for slarrk
DOUBLE PRECISION for dlarrk
Contains the error bound on the corresponding eigenvalue approximation in w.
- info
-
INTEGER.
= 0: Eigenvalue converges
= -1: Eigenvalue does not converge