Eigen
3.3.71

class Bidiagonal Divide and Conquer SVD
_MatrixType  the type of the matrix of which we are computing the SVD decomposition 
This class first reduces the input matrix to bidiagonal form using class UpperBidiagonalization, and then performs a divideandconquer diagonalization. Small blocks are diagonalized using class JacobiSVD. You can control the switching size with the setSwitchSize() method, default is 16. For small matrice (<16), it is thus preferable to directly use JacobiSVD. For larger ones, BDCSVD is highly recommended and can several order of magnitude faster.
fpmodel
precise
option. Likewise, the ffastmath
option of GCC or clang will significantly degrade the accuracy.Public Member Functions  
BDCSVD ()  
Default Constructor. More...  
BDCSVD (const MatrixType &matrix, unsigned int computationOptions=0)  
Constructor performing the decomposition of given matrix. More...  
BDCSVD (Index rows, Index cols, unsigned int computationOptions=0)  
Default Constructor with memory preallocation. More...  
BDCSVD &  compute (const MatrixType &matrix) 
Method performing the decomposition of given matrix using current options. More...  
BDCSVD &  compute (const MatrixType &matrix, unsigned int computationOptions) 
Method performing the decomposition of given matrix using custom options. More...  
bool  computeU () const 
bool  computeV () const 

inline 
Default Constructor.
The default constructor is useful in cases in which the user intends to perform decompositions via BDCSVD::compute(const MatrixType&).
Default Constructor with memory preallocation.
Like the default constructor but with preallocation of the internal data according to the specified problem size.

inline 
Constructor performing the decomposition of given matrix.
matrix  the matrix to decompose 
computationOptions  optional parameter allowing to specify if you want full or thin U or V unitaries to be computed. By default, none is computed. This is a bit  field, the possible bits are ComputeFullU, ComputeThinU, ComputeFullV, ComputeThinV. 
Thin unitaries are only available if your matrix type has a Dynamic number of columns (for example MatrixXf). They also are not available with the (non  default) FullPivHouseholderQR preconditioner.

inline 
Method performing the decomposition of given matrix using current options.
matrix  the matrix to decompose 
This method uses the current computationOptions, as already passed to the constructor or to compute(const MatrixType&, unsigned int).
BDCSVD< MatrixType > & Eigen::BDCSVD::compute  (  const MatrixType &  matrix, 
unsigned int  computationOptions  
) 
Method performing the decomposition of given matrix using custom options.
matrix  the matrix to decompose 
computationOptions  optional parameter allowing to specify if you want full or thin U or V unitaries to be computed. By default, none is computed. This is a bit  field, the possible bits are ComputeFullU, ComputeThinU, ComputeFullV, ComputeThinV. 
Thin unitaries are only available if your matrix type has a Dynamic number of columns (for example MatrixXf). They also are not available with the (non  default) FullPivHouseholderQR preconditioner.

inline 

inline 