NAME
ssteqr - compute all eigenvalues and, optionally, eigenvec-
tors of a symmetric tridiagonal matrix using the implicit QL
or QR method
SYNOPSIS
SUBROUTINE SSTEQR( COMPZ, N, D, E, Z, LDZ, WORK, INFO )
CHARACTER COMPZ
INTEGER INFO, LDZ, N
REAL D( * ), E( * ), WORK( * ), Z( LDZ, * )
#include <sunperf.h>
void ssteqr(char compz, int n, float *d, float *e, float
*sz, int ldz, int *info) ;
PURPOSE
SSTEQR computes all eigenvalues and, optionally, eigenvec-
tors of a symmetric tridiagonal matrix using the implicit QL
or QR method. The eigenvectors of a full or band symmetric
matrix can also be found if SSYTRD or SSPTRD or SSBTRD has
been used to reduce this matrix to tridiagonal form.
ARGUMENTS
COMPZ (input) CHARACTER*1
= 'N': Compute eigenvalues only.
= 'V': Compute eigenvalues and eigenvectors of
the original symmetric matrix. On entry, Z must
contain the orthogonal matrix used to reduce the
original matrix to tridiagonal form. = 'I': Com-
pute eigenvalues and eigenvectors of the tridiago-
nal matrix. Z is initialized to the identity
matrix.
N (input) INTEGER
The order of the matrix. N >= 0.
D (input/output) REAL array, dimension (N)
On entry, the diagonal elements of the tridiagonal
matrix. On exit, if INFO = 0, the eigenvalues in
ascending order.
E (input/output) REAL array, dimension (N-1)
On entry, the (n-1) subdiagonal elements of the
tridiagonal matrix. On exit, E has been des-
troyed.
Z (input/output) REAL array, dimension (LDZ, N)
On entry, if COMPZ = 'V', then Z contains the
orthogonal matrix used in the reduction to tridi-
agonal form. On exit, if INFO = 0, then if COMPZ
= 'V', Z contains the orthonormal eigenvectors of
the original symmetric matrix, and if COMPZ = 'I',
Z contains the orthonormal eigenvectors of the
symmetric tridiagonal matrix. If COMPZ = 'N',
then Z is not referenced.
LDZ (input) INTEGER
The leading dimension of the array Z. LDZ >= 1,
and if eigenvectors are desired, then LDZ >=
max(1,N).
WORK (workspace) REAL array, dimension (max(1,2*N-2))
If COMPZ = 'N', then WORK is not referenced.
INFO (output) INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an ille-
gal value
> 0: the algorithm has failed to find all the
eigenvalues in a total of 30*N iterations; if INFO
= i, then i elements of E have not converged to
zero; on exit, D and E contain the elements of a
symmetric tridiagonal matrix which is orthogonally
similar to the original matrix.
|
Закладки на сайте Проследить за страницей |
Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |