public void InverseGaussianSummation() { // X_i ~ IG(\mu,\lambda) \rightarrow \sum_{i=0}^{n} X_i ~ IG(n \mu, n^2 \lambda) Random rng = new Random(1); WaldDistribution d0 = new WaldDistribution(1.0, 2.0); List <double> s = new List <double>(); for (int i = 0; i < 64; i++) { s.Add(d0.GetRandomValue(rng) + d0.GetRandomValue(rng) + d0.GetRandomValue(rng)); } WaldDistribution d1 = new WaldDistribution(3.0 * 1.0, 9.0 * 2.0); TestResult r = s.KolmogorovSmirnovTest(d1); Assert.IsTrue(r.Probability > 0.05); }
public void InverseGaussianSummation() { // X_i ~ IG(\mu,\lambda) \rightarrow \sum_{i=0}^{n} X_i ~ IG(n \mu, n^2 \lambda) Random rng = new Random(0); WaldDistribution d0 = new WaldDistribution(1.0, 2.0); Sample s = new Sample(); for (int i = 0; i < 64; i++) { s.Add(d0.GetRandomValue(rng) + d0.GetRandomValue(rng) + d0.GetRandomValue(rng)); } WaldDistribution d1 = new WaldDistribution(3.0 * 1.0, 9.0 * 2.0); TestResult r = s.KolmogorovSmirnovTest(d1); Console.WriteLine(r.LeftProbability); }