Accord.Tests.Statistics.CauchyDistributionTest.CauchyDistributionConstructorTest2 C# (CSharp) Метод

CauchyDistributionConstructorTest2() приватный Метод

private CauchyDistributionConstructorTest2 ( ) : void
Результат void
        public void CauchyDistributionConstructorTest2()
        {
            double location = 0.42;
            double scale = 1.57;

            CauchyDistribution cauchy = new CauchyDistribution(location, scale);

            double mean = cauchy.Mean;     // NaN - Cauchy's mean is undefined.
            double var = cauchy.Variance;  // NaN - Cauchy's variance is undefined.
            double median = cauchy.Median; // 0.42
            double mode = cauchy.Mode;     // 0.42

            double cdf = cauchy.DistributionFunction(x: 0.27); // 0.46968025841608563
            double pdf = cauchy.ProbabilityDensityFunction(x: 0.27); // 0.2009112009763413
            double lpdf = cauchy.LogProbabilityDensityFunction(x: 0.27); // -1.6048922547266871
            double ccdf = cauchy.ComplementaryDistributionFunction(x: 0.27); // 0.53031974158391437
            double icdf = cauchy.InverseDistributionFunction(p: 0.69358638272337991); // 1.5130304686978195

            double hf = cauchy.HazardFunction(x: 0.27); // 0.3788491832800277
            double chf = cauchy.CumulativeHazardFunction(x: 0.27); // 0.63427516833243092

            string str = cauchy.ToString(System.Globalization.CultureInfo.InvariantCulture); // "Cauchy(x; x0 = 0.42, γ = 1.57)

            Assert.IsTrue(Double.IsNaN(mean));
            Assert.IsTrue(Double.IsNaN(var));
            Assert.AreEqual(0.42, median);
            Assert.AreEqual(0.42, mode, 1e-6);
            Assert.AreEqual(0.63427516833243092, chf);
            Assert.AreEqual(0.46968025841608563, cdf);
            Assert.AreEqual(0.2009112009763413, pdf);
            Assert.AreEqual(-1.6048922547266871, lpdf);
            Assert.AreEqual(0.3788491832800277, hf);
            Assert.AreEqual(0.53031974158391437, ccdf);
            Assert.AreEqual(1.5130304686978195, icdf);
            Assert.AreEqual("Cauchy(x; x0 = 0.42, γ = 1.57)", str);

            var range1 = cauchy.GetRange(0.95);
            var range2 = cauchy.GetRange(0.99);
            var range3 = cauchy.GetRange(0.01);

            Assert.AreEqual(-9.4925897567183526, range1.Min, 1e-10);
            Assert.AreEqual(10.332589895085842, range1.Max, 1e-10);
            Assert.AreEqual(-49.538210069999685, range2.Min, 1e-10);
            Assert.AreEqual(50.378210075966564, range2.Max, 1e-10);
            Assert.AreEqual(-49.538210069999892, range3.Min, 1e-10);
            Assert.AreEqual(50.378210075966564, range3.Max, 1e-10);
        }