Selects which eigenvalues to compute in a spectral-bisection solve.
This is defined in the Eigenvalues module.
#include <Eigen/Eigenvalues>
Passed to TridiagonalEigenSolver::computeEigenvalues(). The Sturm-sequence bisection algorithm can compute an arbitrary contiguous subset of the spectrum, which the implicit-QR algorithm cannot. Three modes are provided:
- all(): every eigenvalue (the default),
- indices(il, iu): the eigenvalues with 0-based ascending indices in the half-open range [il, iu) (i.e. the (iu - il) smallest starting at il),
- values(vl, vu): the eigenvalues lying in the half-open interval [vl, vu) (lower-closed, upper-open, like indices(); an eigenvalue exactly equal to vl is selected, one equal to vu is not). Endpoint membership is resolved against the computed eigenvalue approximations, so an eigenvalue within roughly
n*eps*||T|| of an endpoint – but not exactly on it – may resolve to either side of that endpoint.
In every mode the computed eigenvalues are returned in non-decreasing order.