| 
| static void  | svd (const Eigen::Matrix< double, -1, -1 > &M, Eigen::Matrix< double, -1, -1 > &U, Eigen::Matrix< double, -1, 1 > &sigma, Eigen::Matrix< double, -1, -1 > &V) | 
|   | Performs a singular value decomposition (SVD)  More...
  | 
|   | 
| static Eigen::Matrix< double, -1, -1 >  | pseudoInverse (const Eigen::Matrix< double, -1, -1 > &am, double precision=1e-6) | 
|   | Calculates the moore-penrose (pseudo) inverse of a matrix \( \mathbf{M}^+\).  More...
  | 
|   | 
| static bool  | checkPenroseConditions (const Eigen::Matrix< double, -1, -1 > &A, const Eigen::Matrix< double, -1, -1 > &X, double prec) | 
|   | Checks the penrose conditions.  More...
  | 
|   | 
| template<class R >  | 
| static double  | det (const Eigen::MatrixBase< R > &m) | 
|   | Calculates matrix determinant.  More...
  | 
|   | 
| template<class T >  | 
| static T  | inverse (const Eigen::MatrixBase< T > &M) | 
|   | Calculates matrix inverse.  More...
  | 
|   | 
| template<class R >  | 
| static bool  | isSO (const Eigen::MatrixBase< R > &M) | 
|   | Checks if a given matrix is in SO(n) (special orthogonal)  More...
  | 
|   | 
| template<class R >  | 
| static bool  | isSO (const Eigen::MatrixBase< R > &M, typename R::Scalar precision) | 
|   | Checks if a given matrix is in SO(n) (special orthogonal)  More...
  | 
|   | 
| template<class R >  | 
| static bool  | isSkewSymmetric (const Eigen::MatrixBase< R > &M) | 
|   | Checks if a given matrix is skew-symmetrical.  More...
  | 
|   | 
| template<class R >  | 
| static bool  | isProperOrthonormal (const Eigen::MatrixBase< R > &r, typename R::Scalar precision=std::numeric_limits< typename R::Scalar >::epsilon()) | 
|   | Checks if a given matrix is proper orthonormal.  More...
  | 
|   | 
| template<class R >  | 
| static bool  | isOrthonormal (const Eigen::MatrixBase< R > &r, typename R::Scalar precision=std::numeric_limits< typename R::Scalar >::epsilon()) | 
|   | Checks if a given matrix is orthonormal.  More...
  | 
|   | 
| template<class T >  | 
| static std::pair< typename EigenMatrix< T >::type, typename EigenVector< T >::type >  | eigenDecompositionSymmetric (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &Am1) | 
|   | Decomposition for a symmetric matrix.  More...
  | 
|   | 
| template<class T >  | 
| static std::pair< typename EigenMatrix< std::complex< T > >::type, typename EigenVector< std::complex< T > >::type >  | eigenDecomposition (const typename Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &Am1) | 
|   | Eigen decomposition of a matrix.  More...
  | 
|   | 
| 
template<>  | 
| std::pair< typename LinearAlgebra::EigenMatrix< double >::type, typename LinearAlgebra::EigenVector< double >::type >  | eigenDecompositionSymmetric (const Eigen::MatrixXd &Am1) | 
|   | 
| 
template<>  | 
| std::pair< typename LinearAlgebra::EigenMatrix< std::complex< double > >::type, typename LinearAlgebra::EigenVector< std::complex< double > >::type >  | eigenDecomposition (const Eigen::MatrixXd &Am1) | 
|   | 
Collection of Linear Algebra functions. 
 
  
  
      
        
          | static bool isOrthonormal  | 
          ( | 
          const Eigen::MatrixBase< R > &  | 
          r,  | 
         
        
           | 
           | 
          typename R::Scalar  | 
          precision = std::numeric_limits<typename R::Scalar>::epsilon()  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Checks if a given matrix is orthonormal. 
- Returns
 - true if the matrix is orthonormal, false otherwise
 
A matrix is orthonormal if all of it's column's are mutually orthogonal and all of it's column's has unit length.
that is for any \( i, j \) the following holds \( col_i . col_j = 0 \) and \( ||col_i|| = 1 \)
Another nessesary and sufficient condition of orthonormal matrices is that \( \mathbf{M}\mathbf{M}^T=I \)