scipy.linalg.lapack.sstevd#
- scipy.linalg.lapack.sstevd(d, e, compute_v=1, lwork=1 + 4 * n + n * n, liwork=3 + 5 * n, overwrite_d=0, overwrite_e=0) = <flapack function sstevd>#
Compute the eigenvalues and optionally the eigenvectors of a symmetric tridiagonal matrix by divide-and-conquer (LAPACK
sstevd).- Parameters:
- dndarray
Diagonal elements of the symmetric tridiagonal matrix, length
n.- endarray
Off-diagonal elements, length
max(n - 1, 1).- compute_vint, optional
If nonzero, eigenvectors are computed. Default is 1.
- lworkint, optional
Size of the workspace. Default is
1 + 4 * n + n ** 2when compute_v is nonzero and1otherwise, which are the exact requirements.- liworkint, optional
Size of the integer workspace. Default is
3 + 5 * nwhen compute_v is nonzero and1otherwise.- overwrite_dint, optional
If nonzero, d may be overwritten in place. Default is 0.
- overwrite_eint, optional
If nonzero, e may be overwritten in place. Default is 0.
- Returns:
- valsndarray
Eigenvalues in ascending order, written over d.
- zndarray
Orthonormal eigenvectors as columns, shape
(n, n), or a(1, 1)placeholder when compute_v is 0.- infoint
0 on success; if negative, the
-info-th argument had an illegal value; if positive, the algorithm failed to converge.