| 
| template<size_t M2, size_t N2, unsigned int Flags2>  | 
|   | Schur (const Matrix< T, M2, N2, Flags2 > &A, unsigned int max_iterations=100) | 
|   | Constructor.  More...
  | 
|   | 
| template<size_t M2, size_t N2, unsigned int Flags2>  | 
| void  | Compute (const Matrix< T, M2, N2, Flags2 > &A, unsigned int max_iterations=100) | 
|   | Computes the real Schur decomposition.  More...
  | 
|   | 
template<typename T, size_t N, unsigned int Flags = 0>
struct Linear::Schur< T, N, Flags >
Struct for Schur decomposition. 
This struct NxN matrix Q and NxN matrix U such that \(A=QUQ^*\) where Q is unitary and U is block upper triangular with block sizes 1x1 and 2x2. 
- Parameters
 - 
  
    | T | Type to store matrix entries as.  | 
    | N | Number of rows/columns for Q and U (both square). Dynamic is allowed for N.  | 
    | Flags | Flags to pass to the matrices (default = row major).  | 
  
   
 
template<typename T , size_t N, unsigned int Flags = 0> 
template<size_t M2, size_t N2, unsigned int Flags2> 
  
  
      
        
          | void Linear::Schur< T, N, Flags >::Compute  | 
          ( | 
          const Matrix< T, M2, N2, Flags2 > &  | 
          A,  | 
         
        
           | 
           | 
          unsigned int  | 
          max_iterations = 100  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
Computes the real Schur decomposition. 
If A is not square or Q != N, then an exception is thrown. 
- Parameters
 -