Делал генератор согласно этой формуле для преобразования брал случайные числа из равномерного распределения на интервале (0;1] (array1), но распределение действует наоборот (больше значений в районе СКО +1 и -1, а в математическом ожидании 0 наоборот - минимум)
array2[ij]=cos(2*PI*array1[ij+1])*pow((-2)*log(array1[ij]),(1/2));
array2[ij+1]=sin(2*PI*array1[ij+1])*pow((-2)*log(array1[ij]),(1/2));