@Test public void testDoubleRange() { final MultiplyWithCarryGenerateRandom rnd = new MultiplyWithCarryGenerateRandom(1); for (final double aDOUBLE_RANGE_TEST : DOUBLE_RANGE_TEST) { final double g = rnd.nextDouble(-1, 1); assertEquals(g, aDOUBLE_RANGE_TEST, AIFH.DEFAULT_PRECISION); } }
@Override public double nextDouble() { return (((long) next(26) << 27) + next(27)) / (double) (1L << 53); }
MultiplyWithCarryGenerateRandom extends AbstractBoxMuller { @Override public double nextDouble() { return (((long) next(26) << 27) + next(27)) / (double) (1L << 53); } }
MultiplyWithCarryGenerateRandom extends AbstractBoxMuller { @Override public double nextDouble() { return (((long) next(26) << 27) + next(27)) / (double) (1L << 53); } MultiplyWithCarryGenerateRandom(final long seed);  MultiplyWithCarryGenerateRandom();  MultiplyWithCarryGenerateRandom(long[] seeds, final long carry, final int r, final long multiplier); }
MultiplyWithCarryGenerateRandom extends AbstractBoxMuller { @Override public double nextDouble() { return (((long) next(26) << 27) + next(27)) / (double) (1L << 53); } MultiplyWithCarryGenerateRandom(final long seed);  MultiplyWithCarryGenerateRandom();  MultiplyWithCarryGenerateRandom(long[] seeds, final long carry, final int r, final long multiplier); @Override double nextDouble(); @Override long nextLong(); @Override boolean nextBoolean(); @Override float nextFloat(); @Override int nextInt(); }
MultiplyWithCarryGenerateRandom extends AbstractBoxMuller { @Override public double nextDouble() { return (((long) next(26) << 27) + next(27)) / (double) (1L << 53); } MultiplyWithCarryGenerateRandom(final long seed);  MultiplyWithCarryGenerateRandom();  MultiplyWithCarryGenerateRandom(long[] seeds, final long carry, final int r, final long multiplier); @Override double nextDouble(); @Override long nextLong(); @Override boolean nextBoolean(); @Override float nextFloat(); @Override int nextInt();  }