public Vector getSingularValues() { return new DenseVector(svd.getSingularValues()); }
}); SingularValueDecomposition svd = new SingularValueDecomposition(matrix); assertEquals(16.0, svd.getSingularValues()[0], 1.0e-14); assertEquals( 8.0, svd.getSingularValues()[1], 1.0e-14); assertEquals( 4.0, svd.getSingularValues()[2], 1.0e-14); assertEquals( 2.0, svd.getSingularValues()[3], 1.0e-14);
@Test public void testMoreRows() { double[] singularValues = { 123.456, 2.3, 1.001, 0.999 }; int rows = singularValues.length + 2; int columns = singularValues.length; Random r = RandomUtils.getRandom(); SingularValueDecomposition svd = new SingularValueDecomposition(createTestMatrix(r, rows, columns, singularValues)); double[] computedSV = svd.getSingularValues(); assertEquals(singularValues.length, computedSV.length); for (int i = 0; i < singularValues.length; ++i) { assertEquals(singularValues[i], computedSV[i], 1.0e-10); } }
@Test public void testMoreColumns() { double[] singularValues = { 123.456, 2.3, 1.001, 0.999 }; int rows = singularValues.length; int columns = singularValues.length + 2; Random r = RandomUtils.getRandom(); SingularValueDecomposition svd = new SingularValueDecomposition(createTestMatrix(r, rows, columns, singularValues)); double[] computedSV = svd.getSingularValues(); assertEquals(singularValues.length, computedSV.length); for (int i = 0; i < singularValues.length; ++i) { assertEquals(singularValues[i], computedSV[i], 1.0e-10); } }
@Test public void testSingularValues() { Matrix A = lowRankMatrix(); SequentialBigSvd s = new SequentialBigSvd(A, 8); SingularValueDecomposition svd = new SingularValueDecomposition(A); Vector reference = new DenseVector(svd.getSingularValues()).viewPart(0, 8); assertEquals(reference, s.getSingularValues()); assertEquals(A, s.getU().times(new DiagonalMatrix(s.getSingularValues())).times(s.getV().transpose())); }
public Vector getSingularValues() { return new DenseVector(svd.getSingularValues()); }
public Vector getSingularValues() { return new DenseVector(svd.getSingularValues()); } }
public Vector getSingularValues() { return new DenseVector(svd.getSingularValues()); } }
public Vector getSingularValues() { return new DenseVector(svd.getSingularValues()); } }
public Vector getSingularValues() { return new DenseVector(svd.getSingularValues()); }
@Test public void testMoreColumns() { double[] singularValues = { 123.456, 2.3, 1.001, 0.999 }; int rows = singularValues.length; int columns = singularValues.length + 2; Random r = RandomUtils.getRandom(); SingularValueDecomposition svd = new SingularValueDecomposition(createTestMatrix(r, rows, columns, singularValues)); double[] computedSV = svd.getSingularValues(); assertEquals(singularValues.length, computedSV.length); for (int i = 0; i < singularValues.length; ++i) { assertEquals(singularValues[i], computedSV[i], 1.0e-10); } }
@Test public void testMoreRows() { double[] singularValues = { 123.456, 2.3, 1.001, 0.999 }; int rows = singularValues.length + 2; int columns = singularValues.length; Random r = RandomUtils.getRandom(); SingularValueDecomposition svd = new SingularValueDecomposition(createTestMatrix(r, rows, columns, singularValues)); double[] computedSV = svd.getSingularValues(); assertEquals(singularValues.length, computedSV.length); for (int i = 0; i < singularValues.length; ++i) { assertEquals(singularValues[i], computedSV[i], 1.0e-10); } }
}); SingularValueDecomposition svd = new SingularValueDecomposition(matrix); assertEquals(16.0, svd.getSingularValues()[0], 1.0e-14); assertEquals( 8.0, svd.getSingularValues()[1], 1.0e-14); assertEquals( 4.0, svd.getSingularValues()[2], 1.0e-14); assertEquals( 2.0, svd.getSingularValues()[3], 1.0e-14);
new SingularValueDecomposition(a); Vector svalues2 = new DenseVector(svd2.getSingularValues()); dumpSv(svalues2);
new SingularValueDecomposition(a); Vector svalues2 = new DenseVector(svd2.getSingularValues());
@Test public void testSingularValues() { Matrix A = lowRankMatrix(); SequentialBigSvd s = new SequentialBigSvd(A, 8); SingularValueDecomposition svd = new SingularValueDecomposition(A); Vector reference = new DenseVector(svd.getSingularValues()).viewPart(0, 8); assertEquals(reference, s.getSingularValues()); assertEquals(A, s.getU().times(new DiagonalMatrix(s.getSingularValues())).times(s.getV().transpose())); }