Info
Version: | 1.0.6 |
Author(s): | Akio Takahashi |
Last Update: | Wednesday, May 22, 2019 |
.NET Fiddle: | Online Example |
Project Url: | https://github.com/akiotakahashi/MersenneTwister |
NuGet Url: | https://www.nuget.org/packages/MersenneTwister |
Install
Install-Package MersenneTwister
dotnet add package MersenneTwister
paket add MersenneTwister
MersenneTwister Download (Unzip the "nupkg" after downloading)
Dependencies
Tags
Mersenne Twister (MT):
- MT19937ar, MT19937ar-cok, MT19937ar-cok-opt
- MT19937-64, MT19937-64-opt
SIMD-oriented Fast MT (SFMT):
- SFMT-19937, SFMT-opt-19937
Double precision SFMT (dSFMT):
- dSFMT-19937, dSFMT-opt-19937
- dSFMT-opt-gen-* (Generics version for many Mersenne Exponents)
-- 521, 1279, 2203, 4253, 11213, 19937, 44497, 86243, 132049, 216091
You can use any PRNG via a corresponding System.Random derived wrapping class:
- MTRandom
- MT64Random
- SfmtRandom
- DsfmtRandom
and also we provide Randoms class for convenience that has;
- Create(RandomType type) to get the suitable implementaiton such as fastest for Random.Next()
- Thread-local default object propreties:
-- WellBalanced for general purpose
-- FastestInt32 for Random.Next()
-- FastestDouble for Random.Next(int) or Next(int,int) or NextDouble()
Further more, AccurateRandom class provides accurate results of Random.Next(int maxValue) and Next(int minValue, int maxValue).