public void TestContinuousDistributions_Gaussian() { TestContinuousDistributionShapeMatchesCumulativeDensity( new StandardDistribution(), -2.0, 2.0, 10, 100000, 0.01, "StandardDistribution()"); TestContinuousDistributionShapeMatchesCumulativeDensity( new NormalDistribution(-5.0, 2.0), -9.0, -1.0, 10, 100000, 0.01, "NormalDistribution(-5.0,2.0)"); TestContinuousDistributionShapeMatchesCumulativeDensity( new LognormalDistribution(1.0, 0.5), 0.0, 8.0, 10, 100000, 0.01, "LognormalDistribution(1.0,0.5)"); // Test Parameter Estimation NormalDistribution source = new NormalDistribution(4.0, 2.0); NormalDistribution target = new NormalDistribution(); target.EstimateDistributionParameters(source.EnumerateDoubles(1000)); Assert.That(target.Mu, NumericIs.AlmostEqualTo(4.0, 0.1), "Normal Parameter Estimation: Mu"); Assert.That(target.Sigma, NumericIs.AlmostEqualTo(2.0, 0.1), "Normal Parameter Estimation: Sigma"); }