@Override final public Vector convertToVector() { final int numColumns = this.getNumColumns(); SparseVector result = new SparseVector(numColumns * numColumns); for (int i = 0; i < diagonal.length; ++i) { result.setElement(i * numColumns + i, diagonal[i]); } return result; }
@Override final public Vector convertToVector() { final int numColumns = this.getNumColumns(); SparseVector result = new SparseVector(numColumns * numColumns); for (int i = 0; i < diagonal.length; ++i) { result.setElement(i * numColumns + i, diagonal[i]); } return result; }
@Override final public Vector convertToVector() { final int numColumns = this.getNumColumns(); SparseVector result = new SparseVector(numColumns * numColumns); for (int i = 0; i < diagonal.length; ++i) { result.setElement(i * numColumns + i, diagonal[i]); } return result; }
final Vector parameters) parameters.assertDimensionalityEquals(this.getNumRows() * getNumColumns()); final int numColumns = this.getNumColumns(); for (int i = 0; i < numRows; ++i)
@Override public final Vector times( final DenseVector vector) { vector.assertDimensionalityEquals(this.getNumColumns()); DenseVector result = new DenseVector(diagonal.length); for (int i = 0; i < diagonal.length; ++i) { result.setElement(i, vector.get(i) * diagonal[i]); } return result; }
final Vector parameters) parameters.assertDimensionalityEquals(this.getNumRows() * getNumColumns()); final int numColumns = this.getNumColumns(); for (int i = 0; i < numRows; ++i)
final Vector parameters) parameters.assertDimensionalityEquals(this.getNumRows() * getNumColumns()); final int numColumns = this.getNumColumns(); for (int i = 0; i < numRows; ++i)
@Override public final Vector times( final DenseVector vector) { vector.assertDimensionalityEquals(this.getNumColumns()); DenseVector result = new DenseVector(diagonal.length); for (int i = 0; i < diagonal.length; ++i) { result.setElement(i, vector.get(i) * diagonal[i]); } return result; }
@Override public final Vector times( final DenseVector vector) { vector.assertDimensionalityEquals(this.getNumColumns()); DenseVector result = new DenseVector(diagonal.length); for (int i = 0; i < diagonal.length; ++i) { result.setElement(i, vector.get(i) * diagonal[i]); } return result; }
@Override public final Vector times( final SparseVector vector) { vector.assertDimensionalityEquals(this.getNumColumns()); SparseVector result = new SparseVector(diagonal.length); vector.compress(); int[] locs = vector.getIndices(); for (int i = 0; i < locs.length; ++i) { result.setElement(locs[i], vector.getValues()[i] * diagonal[locs[i]]); } return result; }
final int numColumns = this.getNumColumns(); for (int i = 0; i < numRows; ++i)
final DiagonalMatrix d) this.numCols = d.getNumColumns(); this.numRows = d.getNumRows(); int nnz = 0;
final DiagonalMatrix d) this.numCols = d.getNumColumns(); this.numRows = d.getNumRows(); int nnz = 0;
@Override public final Vector times( final SparseVector vector) { vector.assertDimensionalityEquals(this.getNumColumns()); SparseVector result = new SparseVector(diagonal.length); vector.compress(); int[] locs = vector.getIndices(); for (int i = 0; i < locs.length; ++i) { result.setElement(locs[i], vector.getValues()[i] * diagonal[locs[i]]); } return result; }
@Override public final Vector times( final SparseVector vector) { vector.assertDimensionalityEquals(this.getNumColumns()); SparseVector result = new SparseVector(diagonal.length); vector.compress(); int[] locs = vector.getIndices(); for (int i = 0; i < locs.length; ++i) { result.setElement(locs[i], vector.getValues()[i] * diagonal[locs[i]]); } return result; }
final int numColumns = this.getNumColumns(); for (int i = 0; i < numRows; ++i)
final int numColumns = this.getNumColumns(); for (int i = 0; i < numRows; ++i)
final DiagonalMatrix d) this.numCols = d.getNumColumns(); this.numRows = d.getNumRows(); int nnz = 0;