@Test public void testEigen2() { System.out.println("eigen2"); 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; Matrix a = new Matrix(A); a.uplo(UPLO.LOWER); Matrix.EVD result = Lanczos.eigen(a, 6); assertEquals(2.0, result.wr[0], 1E-4); assertEquals(2.0, result.wr[1], 1E-4); assertEquals(2.0, result.wr[2], 1E-4); assertEquals(2.0, result.wr[3], 1E-4); assertEquals(0.992, result.wr[4], 1E-4); assertEquals(0.990, result.wr[5], 1E-4); }
public static Matrix.EVD eigen(DMatrix A, int k) { return eigen(A, k, 1.0E-8, 10 * A.nrows()); }
Lanczos { public static Matrix.EVD eigen(DMatrix A, int k) { return eigen(A, k, 1.0E-8, 10 * A.nrows()); } }
Lanczos { public static Matrix.EVD eigen(DMatrix A, int k) { return eigen(A, k, 1.0E-8, 10 * A.nrows()); }  }
Lanczos { public static Matrix.EVD eigen(DMatrix A, int k) { return eigen(A, k, 1.0E-8, 10 * A.nrows()); }  static Matrix.EVD eigen(DMatrix A, int k); static Matrix.EVD eigen(DMatrix A, int k, double kappa, int maxIter); }
Lanczos { public static Matrix.EVD eigen(DMatrix A, int k) { return eigen(A, k, 1.0E-8, 10 * A.nrows()); }  static Matrix.EVD eigen(DMatrix A, int k); static Matrix.EVD eigen(DMatrix A, int k, double kappa, int maxIter);  }