@Test public void diagonalMatrixConstruction() { Vector v = Vectors.dense(1.0, 0.0, 2.0); Vector sv = Vectors.sparse(3, new int[]{0, 2}, new double[]{1.0, 2.0}); Matrix m = Matrices.diag(v); Matrix sm = Matrices.diag(sv); DenseMatrix d = DenseMatrix.diag(v); DenseMatrix sd = DenseMatrix.diag(sv); SparseMatrix s = SparseMatrix.spdiag(v); SparseMatrix ss = SparseMatrix.spdiag(sv); assertArrayEquals(m.toArray(), sm.toArray(), 0.0); assertArrayEquals(d.toArray(), sm.toArray(), 0.0); assertArrayEquals(d.toArray(), sd.toArray(), 0.0); assertArrayEquals(sd.toArray(), s.toArray(), 0.0); assertArrayEquals(s.toArray(), ss.toArray(), 0.0); assertArrayEquals(s.values(), ss.values(), 0.0); assertEquals(2, s.values().length); assertEquals(2, ss.values().length); assertEquals(4, s.colPtrs().length); assertEquals(4, ss.colPtrs().length); }
@Test public void diagonalMatrixConstruction() { Vector v = Vectors.dense(1.0, 0.0, 2.0); Vector sv = Vectors.sparse(3, new int[]{0, 2}, new double[]{1.0, 2.0}); Matrix m = Matrices.diag(v); Matrix sm = Matrices.diag(sv); DenseMatrix d = DenseMatrix.diag(v); DenseMatrix sd = DenseMatrix.diag(sv); SparseMatrix s = SparseMatrix.spdiag(v); SparseMatrix ss = SparseMatrix.spdiag(sv); assertArrayEquals(m.toArray(), sm.toArray(), 0.0); assertArrayEquals(d.toArray(), sm.toArray(), 0.0); assertArrayEquals(d.toArray(), sd.toArray(), 0.0); assertArrayEquals(sd.toArray(), s.toArray(), 0.0); assertArrayEquals(s.toArray(), ss.toArray(), 0.0); assertArrayEquals(s.values(), ss.values(), 0.0); assertEquals(2, s.values().length); assertEquals(2, ss.values().length); assertEquals(4, s.colPtrs().length); assertEquals(4, ss.colPtrs().length); }
@Test public void diagonalMatrixConstruction() { Vector v = Vectors.dense(1.0, 0.0, 2.0); Vector sv = Vectors.sparse(3, new int[]{0, 2}, new double[]{1.0, 2.0}); Matrix m = Matrices.diag(v); Matrix sm = Matrices.diag(sv); DenseMatrix d = DenseMatrix.diag(v); DenseMatrix sd = DenseMatrix.diag(sv); SparseMatrix s = SparseMatrix.spdiag(v); SparseMatrix ss = SparseMatrix.spdiag(sv); assertArrayEquals(m.toArray(), sm.toArray(), 0.0); assertArrayEquals(d.toArray(), sm.toArray(), 0.0); assertArrayEquals(d.toArray(), sd.toArray(), 0.0); assertArrayEquals(sd.toArray(), s.toArray(), 0.0); assertArrayEquals(s.toArray(), ss.toArray(), 0.0); assertArrayEquals(s.values(), ss.values(), 0.0); assertEquals(2, s.values().length); assertEquals(2, ss.values().length); assertEquals(4, s.colPtrs().length); assertEquals(4, ss.colPtrs().length); }