Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 3/22/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

?sterf

Computes all eigenvalues of a real symmetric tridiagonal matrix using QR algorithm.

Syntax

lapack_int LAPACKE_ssterf (lapack_int n, float* d, float* e);

lapack_int LAPACKE_dsterf (lapack_int n, double* d, double* e);

Include Files

  • mkl.h

Description

The routine computes all the eigenvalues of a real symmetric tridiagonal matrix T (which can be obtained by reducing a symmetric or Hermitian matrix to tridiagonal form). The routine uses a square-root-free variant of the QR algorithm.

If you need not only the eigenvalues but also the eigenvectors, call steqr.

Input Parameters

n

The order of the matrix T (n 0).

d, e

Arrays:

d contains the diagonal elements of T.

The dimension of d must be at least max(1, n).

e contains the off-diagonal elements of T.

The dimension of e must be at least max(1, n-1).

Output Parameters

d

The n eigenvalues in ascending order, unless info > 0.

See also info.

e

On exit, the array is overwritten; see info.

Return Values

This function returns a value info.

If info=0, the execution is successful.

If info = i, the algorithm failed to find all the eigenvalues after 30n iterations:

i off-diagonal elements have not converged to zero. On exit, d and e contain, respectively, the diagonal and off-diagonal elements of a tridiagonal matrix orthogonally similar to T.

If info = -i, the i-th parameter had an illegal value.

Application Notes

The computed eigenvalues and eigenvectors are exact for a matrix T+E such that ||E||2 = O(ε)*||T||2, where ε is the machine precision.

If λi is an exact eigenvalue, and mi is the corresponding computed value, then

|μi - λi| c(n)*ε*||T||2

where c(n) is a modestly increasing function of n.

The total number of floating-point operations depends on how rapidly the algorithm converges. Typically, it is about 14n2.