// 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; } }
public PoissonDistribution(GenerateRandom generateRandom, int NT, int mi = 0) { generateRandom = new GenerateRandom(generateRandom.randomIntArray.Length); generatePoisson(generateRandom, mi, NT); }