MIXMAX Generator
   HOME

TheInfoList



OR:

The MIXMAX generator is a family of
pseudorandom number generator A pseudorandom number generator (PRNG), also known as a deterministic random bit generator (DRBG), is an algorithm for generating a sequence of numbers whose properties approximate the properties of sequences of random numbers. The PRNG-generate ...
s (PRNG) and is based on Anosov C-systems ( Anosov diffeomorphism) and Kolmogorov K-systems (
Kolmogorov automorphism In mathematics, a Kolmogorov automorphism, ''K''-automorphism, ''K''-shift or ''K''-system is an invertible, measure-preserving automorphism defined on a standard probability space that obeys Kolmogorov's zero–one law.Peter Walters, ''An Introduct ...
). It was introduced in a 1986 preprint by G. Savvidy and N. Ter-Arutyunyan-Savvidy and published in 1991. A fast implementation in C/
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
of the generator was developed by Konstantin Savvidy. The period of the generator is 10^ and the Kolmogorov entropy is 8679.2 for the matrix size N = 240. That generator occupies less than 2 kb, and if a smaller generator state is required, a ''N'' = 17 version with less than 200 bytes memory requirement also exists. The generator works on most 64-bit systems, including 64-bit Linux flavors and Intel Mac. It has also been tested on
PPC PPC may refer to: Computing * Personal programmable calculator, programmable calculators for personal use * Pay-per-click, an internet advertising model * PearPC, a PowerPC platform emulator * Peercoin, a peer-to-peer cryptocurrency * Periphera ...
and
ARM In human anatomy, the arm refers to the upper limb in common usage, although academically the term specifically means the upper arm between the glenohumeral joint (shoulder joint) and the elbow joint. The distal part of the upper limb between th ...
architectures. The latest version also runs on 32-bit systems and on Windows. The generator is equally usable with
C++ programs C, or c, is the third letter in the Latin alphabet, used in the modern English alphabet, the alphabets of other western European languages and others worldwide. Its name in English is ''cee'' (pronounced ), plural ''cees''. History "C" ...
, has been chosen as the default generator in
CLHEP CLHEP (short for ''A Class Library for High Energy Physics'') is a C++ library that provides utility classes for general numerical programming, vector arithmetic, geometry, pseudorandom number generation, and linear algebra, specifically targeted ...
for use in
Geant4 Geant4 (for GEometry ANd Tracking) is a platform for "the simulation of the passage of particles through matter" using Monte Carlo methods. It is the successor of the GEANT series of software toolkits developed bThe Geant4 Collaboration and t ...
and there exists a
ROOT In vascular plants, the roots are the organs of a plant that are modified to provide anchorage for the plant and take in water and nutrients into the plant body, which allows plants to grow taller and faster. They are most often below the su ...
interface and a
PYTHIA Pythia (; grc, Πυθία ) was the name of the high priestess of the Temple of Apollo at Delphi. She specifically served as its oracle and was known as the Oracle of Delphi. Her title was also historically glossed in English as the Pythoness ...
interface. It has been recently tested extensively on very wide variety of platforms, as part of the CLHEP/Geant4 release. An analysis by L’Ecuyer, Wambergue and Bourceret, see also, showed that MIXMAX generators has a lattice structure when the produced random numbers are considered in ''n'' - dimensional space larger than the dimension ''N'' of the matrix generator, and only in that high dimensions ''n'' > ''N'' they lie on a set of parallel hyperplanes and determined the maximum distance between the covering hyperplanes.


References


External links


The open source MIXMAX C/C++ source code on hepforge.org
* William L. Dunn, J. Kenneth Shultis, (2022). ''Exploring Monte Carlo Methods'', 2nd edition, Elsevier Science, . * K. Anagnostopoulos, (2014). ''Computational Physics'', Lulu.com, {{ISBN, 978-1312464414. Random number generation Pseudorandom number generators