public void NextDoubleTest() { for (int i = 0; i < N; i++) { var v = _rng.NextDouble(); Assert.That(v >= 0.0); Assert.That(v <= 1.0); } }
public void NextDoubleBoundsTest() { var pcg = new PcgExtended(42); for (int i = 0; i < N; i++) { var aVal = pcg.NextDouble(); Assert.That(aVal <= 1.0); Assert.That(aVal >= 0.0); } }
public void NextDoubleUpperBoundTest() { var maxV = 2.5; var pcg = new PcgExtended(42); for (int i = 0; i < N; i++) { var aVal = pcg.NextDouble(maxV); Assert.That(aVal <= maxV); Assert.That(aVal >= 0.0f); } }
public void NextDoubleIntervalTest() { var minV = -10; var maxV = 2.5; var pcg = new PcgExtended(42); for (int i = 0; i < N; i++) { var aVal = pcg.NextDouble(minV, maxV); Assert.That(aVal <= maxV); Assert.That(aVal >= minV); } }
public void NextDoubleMeanTest(float val) { var minV = -val; var maxV = val; var pcg = new PcgExtended(10); var rsum = 0.0; var lTol = 0.1 * (maxV - minV); for (int i = 0; i < N; i++) { rsum += pcg.NextDouble(minV, maxV); } var mean = rsum / N; Assert.That(mean, Is.EqualTo(0.0f).Within(lTol)); }