Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Mersenne Twister
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Applications == The Mersenne Twister is used as default PRNG by the following software: * Programming languages: Dyalog [[APL (programming language)|APL]],<ref>{{cite web|title=Random link|url=http://help.dyalog.com/latest/#Language/System%20Functions/rl.htm|access-date=2020-06-04|work=Dyalog Language Reference Guide}}</ref> [[IDL (programming language)|IDL]],<ref>{{cite web|title=RANDOMU (IDL Reference)|url=http://www.exelisvis.com/docs/RANDOMU.html|access-date=2013-08-23|work=Exelis VIS Docs Center}}</ref> [[R (programming language)|R]],<ref>{{cite web|title=Random Number Generators|url=https://cran.r-project.org/web/views/Distributions.html|access-date=2012-05-29|work=CRAN Task View: Probability Distributions}}</ref> [[Ruby (programming language)|Ruby]],<ref>{{cite web|title="Random" class documentation|url=https://docs.ruby-lang.org/en/master/Random.html}}</ref> [[Free Pascal]],<ref>{{cite web|title=random|url=http://www.freepascal.org/docs-html/rtl/system/random.html|access-date=2013-11-28|work=free pascal documentation}}</ref> [[PHP (programming language)|PHP]],<ref>{{cite web|title=mt_rand — Generate a better random value|url=http://php.net/manual/en/function.mt-rand.php|access-date=2016-03-02|work=PHP Manual}}</ref> [[Python (programming language)|Python]] (also available in [[NumPy]], however the default was changed to [[Permuted congruential generator|PCG64]] instead as of version 1.17<ref>{{Cite web|title=NumPy 1.17.0 Release Notes — NumPy v1.21 Manual|url=https://numpy.org/doc/stable/release/1.17.0-notes.html?highlight=random|access-date=2021-06-29|website=numpy.org}}</ref>),<ref>{{cite web|title=9.6 random — Generate pseudo-random numbers|url=https://docs.python.org/release/2.6.8/library/random.html|access-date=2012-05-29|work=Python v2.6.8 documentation}}</ref><ref>{{cite web|title=8.6 random — Generate pseudo-random numbers|url=https://docs.python.org/release/3.2/library/random.html|access-date=2012-05-29|work=Python v3.2 documentation}}</ref><ref>{{cite web|title=random — Generate pseudo-random numbers — Python 3.8.3 documentation|url=https://docs.python.org/3/library/random.html|access-date=2020-06-23|work=Python 3.8.3 documentation}}</ref> [[CMU Common Lisp]],<ref>{{cite web|title=Design choices and extensions|url=http://common-lisp.net/project/cmucl/doc/cmu-user/extensions.html|access-date=2014-02-03|work=CMUCL User's Manual}}</ref> [[Embeddable Common Lisp]],<ref>{{cite web|title=Random states|url=https://common-lisp.net/project/ecl/manual/ch12s02.html|access-date=2015-09-20|work=The ECL manual}}</ref> [[Steel Bank Common Lisp]],<ref>{{cite web|title=Random Number Generation|url=http://www.sbcl.org/manual/#Random-Number-Generation|work=SBCL User's Manual}}</ref> [[Julia (programming language)|Julia]] (up to Julia 1.6 LTS, still available in later, but a better/faster RNG used by default as of 1.7)<ref>{{Cite web |title=Random Numbers · The Julia Language |url=https://docs.julialang.org/en/v1/stdlib/Random/ |access-date=2022-06-21 |website=docs.julialang.org}}</ref> * [[Unix-like]]s libraries and software: [[GLib]],<ref>{{cite web|title=Random Numbers: GLib Reference Manual|url=https://developer.gnome.org/glib/stable/glib-Random-Numbers.html}}</ref> [[GNU Multiple Precision Arithmetic Library]],<ref>{{cite web|title=Random Number Algorithms|url=http://gmplib.org/manual/Random-Number-Algorithms.html|access-date=2013-11-21|work=GNU MP}}</ref> [[GNU Octave]],<ref>{{cite web|title=16.3 Special Utility Matrices|url=https://www.gnu.org/software/octave/doc/interpreter/Special-Utility-Matrices.html|work=GNU Octave|quote=Built-in Function: rand}}</ref> [[GNU Scientific Library]]<ref>{{cite web|title=Random number environment variables|url=https://www.gnu.org/software/gsl/manual/html_node/Random-number-environment-variables.html|access-date=2013-11-24|work=GNU Scientific Library}}</ref> * Other: [[Microsoft Excel]],<ref>{{citation|last=Mélard|first=G.|title=On the accuracy of statistical procedures in Microsoft Excel 2010|journal=[[Computational Statistics (journal)|Computational Statistics]]|volume=29|issue=5|pages=1095–1128|year=2014|citeseerx=10.1.1.455.5508|doi=10.1007/s00180-014-0482-5|s2cid=54032450}}.</ref> [[GAUSS (software)|GAUSS]],<ref>{{cite web|title=GAUSS 14 Language Reference|url=http://www.aptech.com/wp-content/uploads/2014/01/GAUSS14_LR.pdf}}</ref> [[gretl]],<ref>"[http://gretl.sourceforge.net/gretl-help/funcref.html#uniform uniform]". ''Gretl Function Reference''.</ref> [[Stata]],<ref>{{cite web|title=New random-number generator—64-bit Mersenne Twister|url=https://www.stata.com/new-in-stata/random-number-generators/}}</ref> [[SageMath]],<ref>{{cite web|title=Probability Distributions — Sage Reference Manual v7.2: Probablity|url=http://doc.sagemath.org/html/en/reference/probability/sage/gsl/probability_distribution.html}}</ref> [[Scilab]],<ref>{{cite web|title=grand - Random numbers|url=https://help.scilab.org/docs/5.5.2/en_US/grand.html|work=Scilab Help}}</ref> [[Maple (software)|Maple]],<ref>{{cite web|title=random number generator|url=http://www.maplesoft.com/support/help/Maple/view.aspx?path=rand|access-date=2013-11-21|work=Maple Online Help}}</ref> [[MATLAB]]<ref>{{cite web|title=Random number generator algorithms|url=http://www.mathworks.co.uk/help/matlab/ref/randstream.list.html|work=Documentation Center, [[MathWorks]]}}</ref> It is also available in [[Apache Commons]],<ref>{{cite web|title=Data Generation|url=http://commons.apache.org/proper/commons-math/userguide/random.html|work=Apache Commons Math User Guide}}</ref> in the standard [[C++]] library (since [[C++11]]),<ref>{{cite web|title=Random Number Generation in C++11|url=https://isocpp.org/files/papers/n3551.pdf|work=Standard C++ Foundation}}</ref><ref>{{cite web|title=std::mersenne_twister_engine|url=http://en.cppreference.com/w/cpp/numeric/random/mersenne_twister_engine|access-date=2012-09-25|work=Pseudo Random Number Generation}}</ref> and in [[Mathematica]].<ref>[http://reference.wolfram.com/language/tutorial/RandomNumberGeneration.html#569959585] Mathematica Documentation</ref> Add-on implementations are provided in many program libraries, including the [[Boost (C++ libraries)|Boost C++ Libraries]],<ref>{{cite web|title=boost/random/mersenne_twister.hpp|url=http://www.boost.org/doc/libs/1_49_0/boost/random/mersenne_twister.hpp|access-date=2012-05-29|work=Boost C++ Libraries}}</ref> the [[CUDA|CUDA Library]],<ref>{{cite web|title=Host API Overview|url=http://docs.nvidia.com/cuda/curand/host-api-overview.html#generator-types|access-date=2016-08-02|work=CUDA Toolkit Documentation}}</ref> and the [[NAG Numerical Library]].<ref>{{cite web|title=G05 – Random Number Generators|url=http://www.nag.co.uk/numeric/fl/nagdoc_fl23/xhtml/G05/g05intro.xml|access-date=2012-05-29|work=NAG Library Chapter Introduction}}</ref> The Mersenne Twister is one of two PRNGs in [[SPSS]]: the other generator is kept only for compatibility with older programs, and the Mersenne Twister is stated to be "more reliable".<ref>{{cite web|title=Random Number Generators|url=http://pic.dhe.ibm.com/infocenter/spssstat/v20r0m0/index.jsp?topic=%2Fcom.ibm.spss.statistics.help%2Fidh_seed.htm|access-date=2013-11-21|work=IBM SPSS Statistics}}</ref> The Mersenne Twister is similarly one of the PRNGs in [[SAS (software)|SAS]]: the other generators are older and deprecated.<ref>{{cite web|title=Using Random-Number Functions|url=http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a001281561.htm|access-date=2013-11-21|work=SAS Language Reference}}</ref> The Mersenne Twister is the default PRNG in [[Stata]], the other one is [[KISS (algorithm)|KISS]], for compatibility with older versions of Stata.<ref>Stata help: [https://www.stata.com/help.cgi?set%20rng set rng -- Set which random-number generator (RNG) to use]</ref>
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Mersenne Twister
(section)
Add topic