List of usage examples for org.apache.commons.math3.linear RealVector RealVector
RealVector
From source file:edu.byu.nlp.math.RealVectors.java
/** Incomplete implementation **/ public static RealVector constant(final double value, final int dimension) { return new RealVector() { @Override//from w ww. j av a 2s . co m public int getDimension() { return dimension; } @Override public double getEntry(int index) { return value; } @Override public RealVector append(RealVector arg0) { throw new UnsupportedOperationException(); } @Override public RealVector append(double arg0) { throw new UnsupportedOperationException(); } @Override public RealVector copy() { throw new UnsupportedOperationException(); } @Override public RealVector ebeDivide(RealVector arg0) { throw new UnsupportedOperationException(); } @Override public RealVector ebeMultiply(RealVector arg0) { throw new UnsupportedOperationException(); } @Override public RealVector getSubVector(int arg0, int arg1) { throw new UnsupportedOperationException(); } @Override public boolean isInfinite() { return false; } @Override public boolean isNaN() { return false; } @Override public RealVector projection(RealVector arg0) { throw new UnsupportedOperationException(); } @Override public void setEntry(int arg0, double arg1) { throw new UnsupportedOperationException(); } @Override public void setSubVector(int arg0, RealVector arg1) { throw new UnsupportedOperationException(); } }; }
From source file:org.briljantframework.array.Matrices.java
/** * View the double array as a {@link RealVector}. * * @param array the array//from w w w . ja v a 2s . c o m * @return a real vector view */ public static RealVector asRealVector(DoubleArray array) { Check.argument(array.isVector(), CAN_ONLY_VIEW_1D_ARRAYS); return new RealVector() { @Override public int getDimension() { return array.size(); } @Override public double getEntry(int index) throws OutOfRangeException { return array.get(index); } @Override public void setEntry(int index, double value) throws OutOfRangeException { array.set(index, value); } @Override public RealVector append(RealVector v) { ArrayRealVector vector = new ArrayRealVector(v.getDimension() + array.size()); copyFromArray(vector); for (int i = 0; i < v.getDimension(); i++) { vector.setEntry(i, v.getEntry(i)); } return vector; } private void copyFromArray(ArrayRealVector vector) { for (int i = 0; i < array.size(); i++) { vector.setEntry(i, array.get(i)); } } @Override public RealVector append(double d) { ArrayRealVector vector = new ArrayRealVector(array.size() + 1); copyFromArray(vector); vector.setEntry(array.size(), d); return vector; } @Override public RealVector getSubVector(int index, int n) throws NotPositiveException, OutOfRangeException { return asRealVector(array.get(Range.of(index, index + n))); } @Override public void setSubVector(int index, RealVector v) throws OutOfRangeException { for (int i = 0; i < array.size(); i++) { array.set(i + index, v.getEntry(i)); } } @Override public boolean isNaN() { return Arrays.any(array, Double::isNaN); } @Override public boolean isInfinite() { return Arrays.any(array, Double::isInfinite); } @Override public RealVector copy() { return asRealVector(array.copy()); } @Override @Deprecated public RealVector ebeDivide(RealVector v) throws DimensionMismatchException { if (v.getDimension() != array.size()) { throw new DimensionMismatchException(v.getDimension(), array.size()); } RealVector a = new ArrayRealVector(array.size()); for (int i = 0; i < array.size(); i++) { a.setEntry(i, array.get(i) / v.getEntry(i)); } return a; } @Override @Deprecated public RealVector ebeMultiply(RealVector v) throws DimensionMismatchException { if (v.getDimension() != array.size()) { throw new DimensionMismatchException(v.getDimension(), array.size()); } RealVector a = new ArrayRealVector(array.size()); for (int i = 0; i < array.size(); i++) { a.setEntry(i, array.get(i) * v.getEntry(i)); } return a; } }; }