public SymmetricQRAlgorithmDecomposition_D64(boolean computeVectors) { this(DecompositionFactory.tridiagonal(0),computeVectors); }
public SymmetricQRAlgorithmDecomposition_D64GCFree(boolean computeVectors) { this(DecompositionFactory.tridiagonal(0), computeVectors); }
public SymmetricQRAlgorithmDecomposition_D64GCFree(boolean computeVectors) { this(DecompositionFactory.tridiagonal(0), computeVectors); }
public SymmetricQRAlgorithmDecomposition_D64(boolean computeVectors) { this(DecompositionFactory.tridiagonal(0),computeVectors); }
public SymmetricQRAlgorithmDecomposition_D64(boolean computeVectors) { this(DecompositionFactory.tridiagonal(0),computeVectors); }
/** * <p> * Returns an {@link EigenDecomposition} which is specialized for symmetric matrices or the general problem. * </p> * * @param matrixSize Number of rows and columns that the returned decomposition is optimized for. * @param computeVectors Should it compute the eigenvectors or just eigenvalues. * @param isSymmetric If true then the returned algorithm is specialized only for symmetric matrices, if false * then a general purpose algorithm is returned. * @return EVD for any matrix. */ public static EigenDecomposition<DenseMatrix64F> eig( int matrixSize , boolean computeVectors , boolean isSymmetric ) { if( isSymmetric ) { TridiagonalSimilarDecomposition<DenseMatrix64F> decomp = DecompositionFactory.tridiagonal(matrixSize); return new SymmetricQRAlgorithmDecomposition_D64(decomp,computeVectors); } else return new WatchedDoubleStepQRDecomposition_D64(computeVectors); }
/** * <p> * Returns an {@link EigenDecomposition} which is specialized for symmetric matrices or the general problem. * </p> * * @param matrixSize Number of rows and columns that the returned decomposition is optimized for. * @param computeVectors Should it compute the eigenvectors or just eigenvalues. * @param isSymmetric If true then the returned algorithm is specialized only for symmetric matrices, if false * then a general purpose algorithm is returned. * @return EVD for any matrix. */ public static EigenDecomposition<DenseMatrix64F> eig( int matrixSize , boolean computeVectors , boolean isSymmetric ) { if( isSymmetric ) { TridiagonalSimilarDecomposition<DenseMatrix64F> decomp = DecompositionFactory.tridiagonal(matrixSize); return new SymmetricQRAlgorithmDecomposition_D64(decomp,computeVectors); } else return new WatchedDoubleStepQRDecomposition_D64(computeVectors); }
/** * <p> * Returns an {@link EigenDecomposition} which is specialized for symmetric matrices or the general problem. * </p> * * @param matrixSize Number of rows and columns that the returned decomposition is optimized for. * @param computeVectors Should it compute the eigenvectors or just eigenvalues. * @param isSymmetric If true then the returned algorithm is specialized only for symmetric matrices, if false * then a general purpose algorithm is returned. * @return EVD for any matrix. */ public static EigenDecomposition<DenseMatrix64F> eig( int matrixSize , boolean computeVectors , boolean isSymmetric ) { if( isSymmetric ) { TridiagonalSimilarDecomposition<DenseMatrix64F> decomp = DecompositionFactory.tridiagonal(matrixSize); return new SymmetricQRAlgorithmDecomposition_D64(decomp,computeVectors); } else return new WatchedDoubleStepQRDecomposition_D64(computeVectors); }