public void SampleKnownFloatingPointValues() { var mt = new MersenneTwister(0); Assert.AreEqual(mt.NextDouble(), 0.5488135023042560); Assert.AreEqual(mt.NextDouble(), 0.5928446163889021); Assert.AreEqual(mt.NextDouble(), 0.7151893649715930); Assert.AreEqual(mt.NextDouble(), 0.8442657440900803); }
public void SampleKnownValues() { MersenneTwister mt = new MersenneTwister(0); Assert.AreEqual(mt.NextDouble(), 0.5488135024320365); Assert.AreEqual(mt.NextDouble(), 0.5928446165269344); Assert.AreEqual(mt.NextDouble(), 0.7151893651381110); Assert.AreEqual(mt.NextDouble(), 0.8442657442866512); }
public static IEnumerable<float> TestData() { var g = new Normal(0.0, 1.0); var randy = new MersenneTwister(); g.RandomSource = randy; var dbls = new double[100000]; g.Samples(dbls); return dbls.Select(d => (float) d); }
public void TestProjectTo2D() { var groupSize = 7; var groupCount = 5; var memCount = 9; var randy = new MersenneTwister(); var M = Matrix<float>.Build; var matrixMems = M.Dense(groupSize, memCount, (i, j) => (float) randy.NextDouble()); var matrixStates = M.Dense(groupSize, groupCount, (i, j) => (float) randy.NextDouble()); var projX = new[] {1, 5, 3}; var projY = new[] {1, 3, 5}; var res = MathNetUtils.ProjectTo2D(matrixMems.Transpose(), matrixStates, projX, projY); Debug.WriteLine(MathNetUtils.FormatMatrix("0.0000", matrixMems)); }
public void SampleKnownIntegerValuesSeed42() { var mt = new MersenneTwister(42); Assert.AreEqual(mt.Next(), 804318771); }