Rust, Design Patterns, Matrix Factorization, Numerical Methods, Software Engineering.
https://www.astro.umd.edu/~ricotti/NEWWEB/teaching/ASTR415/InClassExamples/NR3/code/eigen_sym.h fn decompose(&self, m: &Matrix<T>) -> Result<(Vec<f64>, Matrix<f64>), EigenDecompositionError> { // Return error if not symmetric! if !m.is_symmetric() { return Err(EigenDecompositionError) } /* Jacobi