public void BetaPERTTest()
        {
            // Create a Beta from a minimum, maximum and most likely value
            var b = GeneralizedBetaDistribution.Pert(min: 1, max: 3, mode: 2);

            double mean   = b.Mean;     // 2
            double median = b.Median;   // 2
            double mode   = b.Mode;     // 2
            double var    = b.Variance; // 0.071428571428571425

            double min   = b.Min;
            double max   = b.Max;
            double alpha = b.Alpha;
            double beta  = b.Beta;

            Assert.AreEqual(mean, median);
            Assert.AreEqual(mean, mode);

            Assert.AreEqual(2, mean);
            Assert.AreEqual(2, median);
            Assert.AreEqual(2.0, mode);

            Assert.AreEqual(0.071428571428571425, var);
            Assert.AreEqual(1.0, min);
            Assert.AreEqual(3, max);
            Assert.AreEqual(3, alpha);
            Assert.AreEqual(3, beta);
        }
        public void BetaPERTTest2()
        {
            // Create a Beta from a minimum, maximum and most likely value
            var b = GeneralizedBetaDistribution.Pert(min: 1, max: 3, mode: 1.5);

            double mean   = b.Mean;     // 1.6666666666666667
            double median = b.Median;   // 1.6276203409113952
            double var    = b.Variance; // 0.063492063492063516
            double mode   = b.Mode;     // 1.5

            double min   = b.Min;       // 1.0
            double max   = b.Max;       // 3.0
            double alpha = b.Alpha;     // 1.9999999999999993
            double beta  = b.Beta;      // 3.9999999999999982

            Assert.AreEqual(1.6666666666666667, mean);
            Assert.AreEqual(1.6276203409113952, median);
            Assert.AreEqual(0.063492063492063516, var);
            Assert.AreEqual(1.5, mode);
            Assert.AreEqual(1.0, min);
            Assert.AreEqual(3.0, max);
            Assert.AreEqual(1.9999999999999993, alpha);
            Assert.AreEqual(3.9999999999999982, beta);
        }