Accord.Tests.Statistics.DiscreteDistributionTest.UniformTest C# (CSharp) Method

UniformTest() private method

private UniformTest ( ) : void
return void
        public void UniformTest()
        {
            int a = 2;
            int b = 5;
            int n = b - a + 1;

            // Wikipedia definitions
            double expectedMean = (a + b) / 2.0;
            double expectedVar = (System.Math.Pow(b - a + 1, 2) - 1) / 12.0;
            double p = 1.0 / n;


            GeneralDiscreteDistribution dist = GeneralDiscreteDistribution.Uniform(a, b);

            Assert.AreEqual(expectedMean, dist.Mean); ;
            Assert.AreEqual(expectedVar, dist.Variance);
            Assert.AreEqual(n, dist.Frequencies.Length);


            Assert.AreEqual(0, dist.ProbabilityMassFunction(0));
            Assert.AreEqual(0, dist.ProbabilityMassFunction(1));
            Assert.AreEqual(p, dist.ProbabilityMassFunction(2));
            Assert.AreEqual(p, dist.ProbabilityMassFunction(3));
            Assert.AreEqual(p, dist.ProbabilityMassFunction(4));
            Assert.AreEqual(p, dist.ProbabilityMassFunction(5));
            Assert.AreEqual(0, dist.ProbabilityMassFunction(6));
            Assert.AreEqual(0, dist.ProbabilityMassFunction(7));
        }