pub fn symmetric_eigen3(
a: &Matrix<3, 3>,
) -> GeopResult<([Scalar; 3], [Vector<3>; 3])>Expand description
The eigenvalues of the symmetric a, ascending — each enclosed — and a
unit eigenvector of each.
Cyclic Jacobi rotations diagonalize a’s midpoint in f64; which
rotations to take is a free choice, so that is not where the enclosure
comes from. It comes from two bounds every computed pair (ρ, v)
satisfies: a symmetric matrix has an eigenvalue within |M v - ρ v| of
the Rayleigh quotient ρ of a unit v (evaluated here in interval arithmetic), and
moving M to any matrix a holds moves each eigenvalue, in order, by
at most the Frobenius norm of the difference (Weyl) — bounded by a’s
half-widths. Where two enclosures overlap their eigenvalues cannot be
told apart, so each gets their hull. The vectors are the midpoint’s:
where eigenvalues coincide, as for a cylinder’s two transverse moments,
any vector of their plane is one, and these are a free choice of it.