Я пытаюсь реализовать кроссплатформенную согласованную генерацию случайных чисел с 32-битным начальным числом. Большинство сообщений указывают мне на Mersenne Twister или написания собственной реализации.
В исходном коде < / a> есть функция void init_by_array ().
Единственная цель этой функции - расширить переданное 32-битное семя?
Из ReadMe
init_by_array (init_key, key_length) инициализирует вектор состояния, используя массив init_key [] беззнаковых 32-битных целых чисел длины key_kength. Если key_length меньше 624, то каждый массив 32-битных целых чисел дает отдельный вектор начального состояния. Это полезно, если вам нужно больше места для начального числа, чем 32-битное слово.
Неспособность понять это просто предположение, основанное на последнем предложении.
Кажется, что код работает нормально только с использованием init_genrand () и, похоже, дает стабильные результаты.