scipy.linalg.lapack.ssbevx#

scipy.linalg.lapack.ssbevx(ab, vl, vu, il, iu, ldab=ab.shape[0], compute_v=1, range=0, lower=0, abstol=0.0, mmax=..., overwrite_ab=0) = <flapack function ssbevx>#

Selected eigenvalues and eigenvectors of a symmetric band matrix (LAPACK ssbevx).

Parameters:
abndarray

The band of the symmetric/Hermitian matrix, shape (kd + 1, n): the order n and the bandwidth kd are both read off ab itself. It is consumed rather than returned.

vlfloat

Lower bound of the half-open interval; used only when range is 1.

vufloat

Upper bound of the half-open interval; used only when range is 1.

ilint

Index of the smallest eigenvalue to return, 1-based; used only when range is 2. This group keeps Fortran indexing, deliberately.

iuint

Index of the largest eigenvalue to return, 1-based; used only when range is 2.

ldabint, optional

Leading dimension of ab. It must equal ab.shape[0]; the argument exists only because the .pyf exposed it. Default is ab.shape[0].

compute_vint, optional

If nonzero, eigenvectors are computed and z is sized for them; otherwise z comes back as a 1x1 placeholder. Default is 1.

rangeint, optional

Which eigenvalues to compute: 0 for all, 1 for those in (vl, vu], 2 for those with indices il through iu. Default is 0.

lowerint, optional

If nonzero, ab holds the lower band; otherwise the upper. Default is 0.

abstolfloat, optional

Absolute error tolerance. Accuracy is best at twice the underflow threshold, 2 * lamch('S'), rather than at 0. Default is 0.0.

mmaxint, optional

How many eigenvectors z has room for. With range == 1 the count is not known until the call returns, so the default is the whole spectrum; pass a tighter bound to avoid allocating for eigenvectors you will not get.

overwrite_abint, optional

If nonzero, ab may be overwritten in place – and it is consumed either way, never returned. Unlike the rest of this module, the default is 1; pass 0 to keep your array intact.

Returns:
wndarray

Eigenvalues in ascending order, length n. Real for every flavor.

zndarray

Eigenvectors as columns, (n, mmax) when compute_v is set.

mint

Number of eigenvalues actually found.

ifailndarray

Indices of the eigenvectors that failed to converge; meaningful only when info is positive.

infoint

0 on success; if negative, the -info-th argument had an illegal value.