Skip to main content

Module eigen

Module eigen 

Source
Expand description

Symmetric eigendecomposition — closed-form 3×3 + general Jacobi (caller-owned). Symmetric eigendecomposition — the engine’s single home for eigenvalues of a symmetric matrix.

Before this, the same math lived in two silos: specialized_libs/linear_algebra had a cyclic-Jacobi eigen_symmetric, and specialized_libs/engineering_analysis had a closed-form 3×3 principal-stress solver — two implementations of one operation. Both now route here.

Two entry points, same modality:

  • [symmetric_eigen_3x3] — closed-form (Smith’s algorithm) for the symmetric 3×3 case; zero-heap, no iteration, eigenvalues sorted descending.
  • [symmetric_eigen] — cyclic-Jacobi for general n×n; in-place on a caller-owned buffer, also yields eigenvectors. Zero-heap.

Functions§

symmetric_eigen
Eigendecomposition of a symmetric n×n matrix by cyclic Jacobi rotations.
symmetric_eigen_3x3
Eigenvalues of a symmetric 3×3 matrix a (row-major, length 9) by Smith’s closed-form algorithm — no iteration, no allocation. Returns the three eigenvalues sorted descending (e[0] ≥ e[1] ≥ e[2]), the convention used for principal stresses/strains.