コード例 #1
0
            // https://brain.fuw.edu.pl/edu/index.php/WnioskowanieStatystyczne/Zmienne_losowe_i_generatory_liczb_pseudolosowych#Rozk.C5.82ad_Poissona
            private void generatePoisson(GenerateRandom generateRandom, int lambda, int NT) // lambda - średnia ilość zdarzeń
            {                                                                               // NT - liczba losowanych liczb z rozkładu jednostajnego
                int probability = lambda / NT;                                              // NT < N, lambda <= NT

                for (int i = 0; i < generateRandom.randomIntArray.Length; i++)
                {
                    generateRandom.generateRandom();
                    int poissonValue = 0;

                    for (int j = 0; j < NT; j++)
                    {
                        if (generateRandom.randomIntArray[i] <= probability)
                        {
                            poissonValue++;
                        }
                    }
                    poissonArray[i] = poissonValue;
                }
            }
コード例 #2
0
 public PoissonDistribution(GenerateRandom generateRandom, int NT, int mi = 0)
 {
     generateRandom = new GenerateRandom(generateRandom.randomIntArray.Length);
     generatePoisson(generateRandom, mi, NT);
 }