pub fn symmetric_eigen(
n: usize,
a: &mut [f64],
eigvecs: &mut [f64],
) -> Result<(), SolversError>Expand description
Eigendecomposition of a symmetric n×n matrix by cyclic Jacobi rotations.
On entry a (row-major, length n*n) holds the symmetric matrix; it is
overwritten — on return its diagonal a[i*n+i] holds the eigenvalues (in
Jacobi’s natural order, not sorted). eigvecs (length n*n) receives the
orthonormal eigenvectors as columns: column j is the unit eigenvector for
the eigenvalue at a[j*n+j]. Zero allocation — both buffers are caller-owned.
Returns SolversError::InvalidDimension on a shape mismatch, or
SolversError::InvalidParameters if a is not (within tolerance) symmetric.