public DoubleStream doubles( int dimension, double minValue, double maxValue ) { return random.doubles( dimension, minValue, maxValue ); }
double[] array = new Random().doubles() .distinct() .limit(500) // How many you want. .toArray();
new ReferencedEnvelope(-20, 20, -30, 30, DefaultGeographicCRS.WGS84); PrimitiveIterator.OfDouble rand = new Random().doubles(bounds.getMinX(), bounds.getMaxX()).iterator(); SimpleFeatureBuilder fb = new SimpleFeatureBuilder(type); for (int i = 0; i < featureNumber; i++) {
public static SubsetSum of(final int n, final int k, final Random random) { return new SubsetSum( random.doubles() .limit(n) .mapToObj(d -> (int)((d - 0.5)*n)) .collect(ISeq.toISeq()), k ); }
@Test public void comparator() { final double[] d1 = new Random().doubles(10).toArray(); final double[] d2 = new Random().doubles(10).toArray(); final Vec<double[]> v1 = Vec.of(d1); final Vec<double[]> v2 = Vec.of(d2); for (int i = 0; i < d1.length; ++i) { Assert.assertEquals(Double.compare(d1[i], d2[i]), v1.compare(v2, i)); } }
static ISeq<Vec<double[]>> circle(final int count, final Random random) { return random.doubles(count) .mapToObj(r -> { final double a = random.nextDouble()*2*PI; return Vec.of(r*sin(a), r*cos(a)); }) .collect(ISeq.toISeq()); }
@Test(dataProvider = "sorters") public void sortAscSortedValues(final IndexSorter sorter, final Integer size) { final double[] values = new Random().doubles(size).toArray(); Arrays.sort(values); final double[] actual = indexSort(sorter, values); final double[] expected = arraySort(values); Assert.assertEquals(actual, expected); }
@Test(dataProvider = "sorters") public void sortRandomValues(final IndexSorter sorter, final Integer size) { final double[] values = new Random().doubles(size).toArray(); final double[] actual = indexSort(sorter, values); final double[] expected = arraySort(values); Assert.assertEquals(actual, expected); }
@Test public void distance() { final double[] d1 = new Random().doubles(10).toArray(); final double[] d2 = new Random().doubles(10).toArray(); final Vec<double[]> v1 = Vec.of(d1); final Vec<double[]> v2 = Vec.of(d2); for (int i = 0; i < d1.length; ++i) { Assert.assertEquals(d1[i] - d2[i], v1.distance(v2, i)); } }
static ISeq<Point2> front(final int count, final Random random) { return random.doubles(count) .mapToObj(x -> Point2.of(x, sqrt(1 - x*x))) .collect(ISeq.toISeq()); }
@Test(dataProvider = "sorters") public void sortDescSortedValues(final IndexSorter sorter, final Integer size) { final double[] values = new Random().doubles(size).toArray(); Arrays.sort(values); revert(values); final double[] actual = indexSort(sorter, values); final double[] expected = arraySort(values); Assert.assertEquals(actual, expected); }
static ISeq<Vec<double[]>> frontMax( final double r, final int count, final Random random ) { return random.doubles(count) .map(a -> a*PI*0.5) .mapToObj(a -> Vec.of(r*sin(a), r*cos(a))) .collect(ISeq.toISeq()); }
static ISeq<Vec<double[]>> frontMin( final double r, final int count, final Random random ) { return random.doubles(count) .map(a -> a*PI*0.5 + PI) .mapToObj(a -> Vec.of(r*sin(a), r*cos(a))) .collect(ISeq.toISeq()); }
@Test public void acceptReverseMinMax() { final Random random = RandomRegistry.getRandom(); final double[] numbers = random.doubles().limit(1000).toArray(); final MinMax<Double> minMax = MinMax.of((a, b) -> b.compareTo(a)); Arrays.stream(numbers) .mapToObj(Double::valueOf) .forEach(minMax); Assert.assertEquals(minMax.getMin(), StatUtils.max(numbers)); Assert.assertEquals(minMax.getMax(), StatUtils.min(numbers)); }
@Test public void toMinMaxReverse() { final Random random = RandomRegistry.getRandom(); final double[] numbers = random.doubles().limit(1000).toArray(); final MinMax<Double> minMax = Arrays.stream(numbers) .mapToObj(Double::valueOf) .collect(MinMax.toMinMax((a, b) -> b.compareTo(a))); Assert.assertEquals(minMax.getMin(), StatUtils.max(numbers)); Assert.assertEquals(minMax.getMax(), StatUtils.min(numbers)); }
static ISeq<Point2> circle(final int count, final Random random) { return random.doubles() .mapToObj(x -> Point2.of(x, random.nextDouble())) .filter(p -> p.x()*p.x() + p.y()*p.y() < 0.9) .limit(count) .collect(ISeq.toISeq()); } }
@Test public void acceptNormalMinMax() { final Random random = RandomRegistry.getRandom(); final double[] numbers = random.doubles().limit(1000).toArray(); final MinMax<Double> minMax = MinMax.of(); Arrays.stream(numbers) .mapToObj(Double::valueOf) .forEach(minMax); Assert.assertEquals(minMax.getMin(), StatUtils.min(numbers)); Assert.assertEquals(minMax.getMax(), StatUtils.max(numbers)); }
@Test public void toMinMaxNormal() { final Random random = RandomRegistry.getRandom(); final double[] numbers = random.doubles().limit(1000).toArray(); final MinMax<Double> minMax = Arrays.stream(numbers) .mapToObj(Double::valueOf) .collect(MinMax.toMinMax()); Assert.assertEquals(minMax.getMin(), StatUtils.min(numbers)); Assert.assertEquals(minMax.getMax(), StatUtils.max(numbers)); }