/** {@inheritDoc} * @exception NullArgumentException if value is null */ public void setEntry(int index, T value) throws NullArgumentException, OutOfRangeException { MathUtils.checkNotNull(value); checkIndex(index); entries.put(index, value); }
/** * Create from a Field array. * Only non-zero entries will be stored. * * @param field Field to which the elements belong. * @param values Set of values to create from. * @exception NullArgumentException if values is null */ public SparseFieldVector(Field<T> field, T[] values) throws NullArgumentException { MathUtils.checkNotNull(values); this.field = field; virtualSize = values.length; entries = new OpenIntToFieldHashMap<T>(field); for (int key = 0; key < values.length; key++) { T value = values[key]; entries.put(key, value); } }
/** {@inheritDoc} */ @Override public void setEntry(int row, int column, T value) { checkRowIndex(row); checkColumnIndex(column); if (getField().getZero().equals(value)) { entries.remove(computeKey(row, column)); } else { entries.put(computeKey(row, column), value); } }
/** {@inheritDoc} */ @Override public void multiplyEntry(int row, int column, T factor) { checkRowIndex(row); checkColumnIndex(column); final int key = computeKey(row, column); final T value = entries.get(key).multiply(factor); if (getField().getZero().equals(value)) { entries.remove(key); } else { entries.put(key, value); } }
/** {@inheritDoc} */ public FieldVector<T> mapDivideToSelf(T d) throws NullArgumentException, MathArithmeticException { OpenIntToFieldHashMap<T>.Iterator iter = entries.iterator(); while (iter.hasNext()) { iter.advance(); entries.put(iter.key(), iter.value().divide(d)); } return this; }
/** {@inheritDoc} */ @Override public void addToEntry(int row, int column, T increment) { checkRowIndex(row); checkColumnIndex(column); final int key = computeKey(row, column); final T value = entries.get(key).add(increment); if (getField().getZero().equals(value)) { entries.remove(key); } else { entries.put(key, value); } }
/** {@inheritDoc} */ public FieldVector<T> mapMultiplyToSelf(T d) throws NullArgumentException { OpenIntToFieldHashMap<T>.Iterator iter = entries.iterator(); while (iter.hasNext()) { iter.advance(); entries.put(iter.key(), iter.value().multiply(d)); } return this; }
/** {@inheritDoc} * @exception NullArgumentException if value is null */ public void setEntry(int index, T value) throws NullArgumentException, OutOfRangeException { MathUtils.checkNotNull(value); checkIndex(index); entries.put(index, value); }
/** * Create from a Field array. * Only non-zero entries will be stored. * * @param field Field to which the elements belong. * @param values Set of values to create from. * @exception NullArgumentException if values is null */ public SparseFieldVector(Field<T> field, T[] values) throws NullArgumentException { MathUtils.checkNotNull(values); this.field = field; virtualSize = values.length; entries = new OpenIntToFieldHashMap<T>(field); for (int key = 0; key < values.length; key++) { T value = values[key]; entries.put(key, value); } }
/** {@inheritDoc} */ @Override public void setEntry(int row, int column, T value) { checkRowIndex(row); checkColumnIndex(column); if (getField().getZero().equals(value)) { entries.remove(computeKey(row, column)); } else { entries.put(computeKey(row, column), value); } }
/** {@inheritDoc} */ @Override public void multiplyEntry(int row, int column, T factor) { checkRowIndex(row); checkColumnIndex(column); final int key = computeKey(row, column); final T value = entries.get(key).multiply(factor); if (getField().getZero().equals(value)) { entries.remove(key); } else { entries.put(key, value); } }
/** {@inheritDoc} */ @Override public void addToEntry(int row, int column, T increment) { checkRowIndex(row); checkColumnIndex(column); final int key = computeKey(row, column); final T value = entries.get(key).add(increment); if (getField().getZero().equals(value)) { entries.remove(key); } else { entries.put(key, value); } }
/** {@inheritDoc} */ public FieldVector<T> mapDivideToSelf(T d) throws NullArgumentException, MathArithmeticException { OpenIntToFieldHashMap<T>.Iterator iter = entries.iterator(); while (iter.hasNext()) { iter.advance(); entries.put(iter.key(), iter.value().divide(d)); } return this; }
/** {@inheritDoc} */ public FieldVector<T> mapMultiplyToSelf(T d) throws NullArgumentException { OpenIntToFieldHashMap<T>.Iterator iter = entries.iterator(); while (iter.hasNext()) { iter.advance(); entries.put(iter.key(), iter.value().multiply(d)); } return this; }