@Override public int size() { return getDimensionality(); }
@Override public int size() { return getDimensionality(); }
@Override public void assertDimensionalityEquals( final int otherDimensionality) { if (this.getDimensionality() != otherDimensionality) { throw new DimensionalityMismatchException( this.getDimensionality(), otherDimensionality); } }
@Override public void assertDimensionalityEquals( final int otherDimensionality) { if (this.getDimensionality() != otherDimensionality) { throw new DimensionalityMismatchException( this.getDimensionality(), otherDimensionality); } }
@Override public double[] toArray() { final int dimensionality = this.getDimensionality(); final double[] result = new double[dimensionality]; for (int i = 0; i < dimensionality; i++) { result[i] = this.getElement(i); } return result; }
@Override public boolean checkSameDimensionality( final Vector other ) { return (this.getDimensionality() == other.getDimensionality()); }
@Override public double[] toArray() { final int dimensionality = this.getDimensionality(); final double[] result = new double[dimensionality]; for (int i = 0; i < dimensionality; i++) { result[i] = this.getElement(i); } return result; }
@Override public boolean checkSameDimensionality( final Vector other ) { return (this.getDimensionality() == other.getDimensionality()); }
@Override public void forEachElement( final IndexValueConsumer consumer) { // This is by definition a dense iteration. final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { consumer.consume(i, this.get(i)); } }
@Override public void forEachElement( final IndexValueConsumer consumer) { // This is by definition a dense iteration. final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { consumer.consume(i, this.get(i)); } }
@Override public void forEachElement( final IndexValueConsumer consumer) { // This is by definition a dense iteration. final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { consumer.consume(i, this.get(i)); } }
@Override public void transformEquals( final UnivariateScalarFunction function) { final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { final double value = function.evaluate(this.get(i)); this.set(i, value); } }
@Override public void transformEquals( final UnivariateScalarFunction function) { final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { final double value = function.evaluate(this.get(i)); this.set(i, value); } }
@Override public void transformEquals( final IndexValueTransform function) { final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { final double value = function.transform(i, this.get(i)); this.set(i, value); } }
@Override public void transformEquals( final UnivariateScalarFunction function) { final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { final double value = function.evaluate(this.get(i)); this.set(i, value); } }
@Override public void transformEquals( final IndexValueTransform function) { final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { final double value = function.transform(i, this.get(i)); this.set(i, value); } }
@Override public void transformEquals( final IndexValueTransform function) { final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { final double value = function.transform(i, this.get(i)); this.set(i, value); } }
@Override public void dotDivideEquals( final Vector other) { this.assertSameDimensionality(other); // This is a dense loop since there is no sparsity in division. final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { this.setElement(i, this.getElement(i) / other.getElement(i)); } }
@Override public void dotDivideEquals( final Vector other) { this.assertSameDimensionality(other); // This is a dense loop since there is no sparsity in division. final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { this.setElement(i, this.getElement(i) / other.getElement(i)); } }
@Override public void dotDivideEquals( final Vector other) { this.assertSameDimensionality(other); // This is a dense loop since there is no sparsity in division. final int dimensionality = this.getDimensionality(); for (int i = 0; i < dimensionality; i++) { this.setElement(i, this.getElement(i) / other.getElement(i)); } }