@Test public void testARPACK2() { System.out.println("ARPACK2"); A = new double[500][500]; A[0][0] = A[1][1] = A[2][2] = A[3][3] = 2.0; for (int i = 4; i < 500; i++) A[i][i] = (500 - i) / 500.0; DenseMatrix a = Matrix.of(A); a.setSymmetric(true); EVD result = ARPACK.eigen(a, 6, ARPACK.Ritz.LA); assertEquals(2.0, result.getEigenValues()[0], 1E-4); assertEquals(2.0, result.getEigenValues()[1], 1E-4); assertEquals(2.0, result.getEigenValues()[2], 1E-4); assertEquals(2.0, result.getEigenValues()[3], 1E-4); assertEquals(0.992, result.getEigenValues()[4], 1E-4); assertEquals(0.990, result.getEigenValues()[5], 1E-4); }
public static EVD eigen(Matrix A, int k, Ritz ritz) { return eigen(A, k, ritz, 1E-8, 10 * A.nrows()); }
ARPACK { public static EVD eigen(Matrix A, int k, Ritz ritz) { return eigen(A, k, ritz, 1E-8, 10 * A.nrows()); } }
ARPACK { public static EVD eigen(Matrix A, int k, Ritz ritz) { return eigen(A, k, ritz, 1E-8, 10 * A.nrows()); }  }
ARPACK { public static EVD eigen(Matrix A, int k, Ritz ritz) { return eigen(A, k, ritz, 1E-8, 10 * A.nrows()); }  static EVD eigen(Matrix A, int k, Ritz ritz); static EVD eigen(Matrix A, int k, String which); static EVD eigen(Matrix A, int k, Ritz ritz, double kappa, int maxIter); static EVD eigen(Matrix A, int k, String which, double kappa, int maxIter); }
ARPACK { public static EVD eigen(Matrix A, int k, Ritz ritz) { return eigen(A, k, ritz, 1E-8, 10 * A.nrows()); }  static EVD eigen(Matrix A, int k, Ritz ritz); static EVD eigen(Matrix A, int k, String which); static EVD eigen(Matrix A, int k, Ritz ritz, double kappa, int maxIter); static EVD eigen(Matrix A, int k, String which, double kappa, int maxIter);  }