/** * {@inheritDoc} * * NOTE: This is inclusive on both end points. * @param minRow {@inheritDoc} * @param maxRow {@inheritDoc} * @param minColumn {@inheritDoc} * @param maxColumn {@inheritDoc} * @return {@inheritDoc} */ @Override final public Matrix getSubMatrix( final int minRow, final int maxRow, final int minColumn, final int maxColumn) { checkSubmatrixRange(minRow, maxRow, minColumn, maxColumn); DenseMatrix result = new DenseMatrix( maxRow - minRow + 1, maxColumn - minColumn + 1); for (int i = minRow; i <= maxRow; ++i) { for (int j = minColumn; j <= maxColumn; ++j) { result.set(i - minRow, j - minColumn, this.rows[i].values[j]); } } return result; }
/** * {@inheritDoc} * * NOTE: This is inclusive on both end points. * @param minRow {@inheritDoc} * @param maxRow {@inheritDoc} * @param minColumn {@inheritDoc} * @param maxColumn {@inheritDoc} * @return {@inheritDoc} */ @Override final public Matrix getSubMatrix( final int minRow, final int maxRow, final int minColumn, final int maxColumn) { checkSubmatrixRange(minRow, maxRow, minColumn, maxColumn); DenseMatrix result = new DenseMatrix( maxRow - minRow + 1, maxColumn - minColumn + 1); for (int i = minRow; i <= maxRow; ++i) { for (int j = minColumn; j <= maxColumn; ++j) { result.set(i - minRow, j - minColumn, this.rows[i].values[j]); } } return result; }
/** * {@inheritDoc} * * NOTE: This is inclusive on both end points. * @param minRow {@inheritDoc} * @param maxRow {@inheritDoc} * @param minColumn {@inheritDoc} * @param maxColumn {@inheritDoc} * @return {@inheritDoc} */ @Override final public Matrix getSubMatrix( final int minRow, final int maxRow, final int minColumn, final int maxColumn) { checkSubmatrixRange(minRow, maxRow, minColumn, maxColumn); DenseMatrix result = new DenseMatrix( maxRow - minRow + 1, maxColumn - minColumn + 1); for (int i = minRow; i <= maxRow; ++i) { for (int j = minColumn; j <= maxColumn; ++j) { result.set(i - minRow, j - minColumn, this.rows[i].values[j]); } } return result; }