eigen.Hermitian(x, vectors=T, lower=T, value.range=<see below>,
index.range=<see below>, tol=<see below>,
tune=<see below>, workspace=<see below>)
x should
be used for the computations. The default is to select the lower triangle.
(min(value.range), max(value.range)] will be found.
The default is to find all eigenvalues.
[a,b] of
width less than or equal to
tol + .Machine$double.eps * max(abs(a),abs(b)) .
If
tol is non-positive, then the value
tol * .Machine$double.eps * T1 ,
where
T1 is the one norm of the tridiagonal reduction of
x , is used.
The default is to use the latter definition of
tol .
NB ,
NBMIN , and
NX as described under
.laenv .
"values" and
"vectors"
.
If the entire eigenvalue decomposition is requested,
then the result is an object of class
c("eigen.Hermitian","decomp") .
Workspace information and a copy of the call to
eigen.Hermitian are included
as attributes.
Based on the functions dsyevx and zheevx from LAPACK (Anderson et al. 1994).
At most one of the parameters
value.range and
index.range may be specified
in any call.
Parameters in
tune may affect performance and workspace requirements,
but the optimal settings are both machine and problem dependent.
Users may want to experiment with
tune (see Anderson et al., p. 72-74) to
obtain improved performance.
The optimal workspace is sometimes computed incorrectly. A bug report has been sent to the Lapack maintainers. Anderson, E., et al. (1994). LAPACK User's Guide, 2nd edition, SIAM, Philadelphia.
n <- 5 x <- Matrix( rnorm(n*n), nrow = n, ncol = n) x[row(x) < col(x)] <- t(x)[row(x) < col(x)] # x is a real symmetric matrix class(x) <- Matrix.class(x) eigen(x) # eigenvalue decomposition of x