/** * Test of getVariance method, of class * gov.sandia.cognition.learning.util.statistics.UniformDistribution. */ public void testGetVariance() { System.out.println("PDF.getVariance"); UniformDistribution.PDF instance = this.createInstance().getProbabilityFunction(); double d = instance.getMaxSupport() - instance.getMinSupport(); assertEquals(d * d / 12.0, instance.getVariance(), TOLERANCE); }
@Override public void testPDFKnownValues() { System.out.println("PDF.knownValues"); for (int i = 0; i < 100; i++) { UniformDistribution.PDF instance = this.createInstance().getProbabilityFunction(); double a = instance.getMinSupport(); double b = instance.getMaxSupport(); double x = (RANDOM.nextDouble() * (b - a + 2)) + a - 1; double h = 1 / (b - a); double y; if (x < a) { y = 0; } else if (x > b) { y = 0; } else { y = h; } double yhat = instance.evaluate(x); assertEquals(y, yhat); assertEquals(h, instance.evaluate(a)); assertEquals(h, instance.evaluate(b)); } }
/** * Test of getMean method, of class * gov.sandia.cognition.learning.util.statistics.UniformDistribution. */ public void testGetMean() { System.out.println("PDF.getMean"); UniformDistribution.PDF instance = this.createInstance().getProbabilityFunction(); assertEquals( 0.5 * (instance.getMinSupport() + instance.getMaxSupport()), instance.getMean(), TOLERANCE); }
@Override public void testPDFConstructors() { System.out.println("PDF Constructor"); UniformDistribution.PDF u = new UniformDistribution.PDF(); assertEquals(UniformDistribution.DEFAULT_MIN, u.getMinSupport()); assertEquals(UniformDistribution.DEFAULT_MAX, u.getMaxSupport()); double a = RANDOM.nextGaussian(); double b = RANDOM.nextDouble() + a; u = new UniformDistribution.PDF(a, b); assertEquals(a, u.getMinSupport()); assertEquals(b, u.getMaxSupport()); UniformDistribution.PDF u2 = new UniformDistribution.PDF(u); assertEquals(u.getMinSupport(), u2.getMinSupport()); assertEquals(u.getMaxSupport(), u2.getMaxSupport()); }