Browse Source

Tests: always seed RNGs

optimization-3
Christoph Ruegg 13 years ago
parent
commit
9c93ef8328
  1. 4
      src/UnitTests/DistributionTests/CommonDistributionTests.cs
  2. 8
      src/UnitTests/DistributionTests/Continuous/BetaTests.cs
  3. 4
      src/UnitTests/DistributionTests/Continuous/ChiSquareTests.cs
  4. 8
      src/UnitTests/DistributionTests/Continuous/ContinuousUniformTests.cs
  5. 8
      src/UnitTests/DistributionTests/Continuous/GammaTests.cs
  6. 8
      src/UnitTests/DistributionTests/Continuous/LogNormalTests.cs
  7. 8
      src/UnitTests/DistributionTests/Continuous/NormalTests.cs
  8. 8
      src/UnitTests/DistributionTests/Continuous/StudentTTests.cs
  9. 8
      src/UnitTests/DistributionTests/Continuous/WeibullTests.cs
  10. 8
      src/UnitTests/DistributionTests/Discrete/BernoulliTests.cs
  11. 8
      src/UnitTests/DistributionTests/Discrete/BinomialTests.cs
  12. 4
      src/UnitTests/DistributionTests/Discrete/CategoricalTests.cs
  13. 8
      src/UnitTests/DistributionTests/Discrete/DiscreteUniformTests.cs
  14. 2
      src/UnitTests/DistributionTests/Multivariate/DirichletTests.cs
  15. 6
      src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs
  16. 6
      src/UnitTests/DistributionTests/Multivariate/MatrixNormalTests.cs
  17. 4
      src/UnitTests/DistributionTests/Multivariate/MultinomialTests.cs
  18. 2
      src/UnitTests/DistributionTests/Multivariate/NormalGammaTests.cs
  19. 6
      src/UnitTests/DistributionTests/Multivariate/WishartTests.cs
  20. 2
      src/UnitTests/LinearAlgebraTests/Complex/SparseMatrixTests.cs
  21. 2
      src/UnitTests/LinearAlgebraTests/Complex32/SparseMatrixTests.cs
  22. 2
      src/UnitTests/LinearAlgebraTests/Double/SparseMatrixTests.cs
  23. 2
      src/UnitTests/LinearAlgebraTests/Single/SparseMatrixTests.cs
  24. 8
      src/UnitTests/Random/SystemRandomExtensionTests.cs
  25. 8
      src/UnitTests/SortingTests.cs
  26. 2
      src/UnitTests/StatisticsTests/MCMCTests/HybridMCTest.cs
  27. 2
      src/UnitTests/StatisticsTests/MCMCTests/MCMCDiagnosticsTest.cs
  28. 15
      src/UnitTests/StatisticsTests/MCMCTests/MetropolisHastingsSamplerTests.cs
  29. 2
      src/UnitTests/StatisticsTests/MCMCTests/MetropolisSamplerTests.cs
  30. 2
      src/UnitTests/StatisticsTests/MCMCTests/UnivariateHybridMCTest.cs
  31. 2
      src/UnitTests/StatisticsTests/MCMCTests/UnivariateSliceSamplerTests.cs

4
src/UnitTests/DistributionTests/CommonDistributionTests.cs

@ -151,12 +151,12 @@ namespace MathNet.Numerics.UnitTests.DistributionTests
{ {
foreach (var dd in _discreteDistributions) foreach (var dd in _discreteDistributions)
{ {
dd.RandomSource = new Random(); dd.RandomSource = MersenneTwister.Default;
} }
foreach (var cd in _continuousDistributions) foreach (var cd in _continuousDistributions)
{ {
cd.RandomSource = new Random(); cd.RandomSource = MersenneTwister.Default;
} }
} }

8
src/UnitTests/DistributionTests/Continuous/BetaTests.cs

@ -274,7 +274,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
Beta.Sample(new Random(), 2.0, 3.0); Beta.Sample(new Random(0), 2.0, 3.0);
} }
/// <summary> /// <summary>
@ -283,7 +283,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = Beta.Samples(new Random(), 2.0, 3.0); var ied = Beta.Samples(new Random(0), 2.0, 3.0);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -293,7 +293,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Beta.Sample(new Random(), 1.0, -1.0)); Assert.Throws<ArgumentOutOfRangeException>(() => Beta.Sample(new Random(0), 1.0, -1.0));
} }
/// <summary> /// <summary>
@ -302,7 +302,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Beta.Samples(new Random(), 1.0, -1.0).First()); Assert.Throws<ArgumentOutOfRangeException>(() => Beta.Samples(new Random(0), 1.0, -1.0).First());
} }
/// <summary> /// <summary>

4
src/UnitTests/DistributionTests/Continuous/ChiSquareTests.cs

@ -289,7 +289,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
ChiSquared.Sample(new Random(), 2.0); ChiSquared.Sample(new Random(0), 2.0);
} }
/// <summary> /// <summary>
@ -298,7 +298,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => ChiSquared.Sample(new Random(), -1.0)); Assert.Throws<ArgumentOutOfRangeException>(() => ChiSquared.Sample(new Random(0), -1.0));
} }
/// <summary> /// <summary>

8
src/UnitTests/DistributionTests/Continuous/ContinuousUniformTests.cs

@ -322,7 +322,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
ContinuousUniform.Sample(new Random(), 0.0, 1.0); ContinuousUniform.Sample(new Random(0), 0.0, 1.0);
} }
/// <summary> /// <summary>
@ -331,7 +331,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = ContinuousUniform.Samples(new Random(), 0.0, 1.0); var ied = ContinuousUniform.Samples(new Random(0), 0.0, 1.0);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -341,7 +341,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => ContinuousUniform.Sample(new Random(), 0.0, -1.0)); Assert.Throws<ArgumentOutOfRangeException>(() => ContinuousUniform.Sample(new Random(0), 0.0, -1.0));
} }
/// <summary> /// <summary>
@ -350,7 +350,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => ContinuousUniform.Samples(new Random(), 0.0, -1.0).First()); Assert.Throws<ArgumentOutOfRangeException>(() => ContinuousUniform.Samples(new Random(0), 0.0, -1.0).First());
} }
/// <summary> /// <summary>

8
src/UnitTests/DistributionTests/Continuous/GammaTests.cs

@ -419,7 +419,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
Gamma.Sample(new Random(), 1.0, 1.0); Gamma.Sample(new Random(0), 1.0, 1.0);
} }
/// <summary> /// <summary>
@ -428,7 +428,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = Gamma.Samples(new Random(), 1.0, 1.0); var ied = Gamma.Samples(new Random(0), 1.0, 1.0);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -438,7 +438,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Normal.Sample(new Random(), 1.0, -1.0)); Assert.Throws<ArgumentOutOfRangeException>(() => Normal.Sample(new Random(0), 1.0, -1.0));
} }
/// <summary> /// <summary>
@ -447,7 +447,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Normal.Samples(new Random(), 1.0, -1.0).First()); Assert.Throws<ArgumentOutOfRangeException>(() => Normal.Samples(new Random(0), 1.0, -1.0).First());
} }
/// <summary> /// <summary>

8
src/UnitTests/DistributionTests/Continuous/LogNormalTests.cs

@ -429,7 +429,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
LogNormal.Sample(new Random(), 0.0, 1.0); LogNormal.Sample(new Random(0), 0.0, 1.0);
} }
/// <summary> /// <summary>
@ -438,7 +438,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = LogNormal.Samples(new Random(), 0.0, 1.0); var ied = LogNormal.Samples(new Random(0), 0.0, 1.0);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -448,7 +448,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => { var d = LogNormal.Sample(new Random(), 0.0, -1.0); }); Assert.Throws<ArgumentOutOfRangeException>(() => { var d = LogNormal.Sample(new Random(0), 0.0, -1.0); });
} }
/// <summary> /// <summary>
@ -457,7 +457,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => { var ied = LogNormal.Samples(new Random(), 0.0, -1.0).First(); }); Assert.Throws<ArgumentOutOfRangeException>(() => { var ied = LogNormal.Samples(new Random(0), 0.0, -1.0).First(); });
} }
/// <summary> /// <summary>

8
src/UnitTests/DistributionTests/Continuous/NormalTests.cs

@ -402,7 +402,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
Normal.Sample(new Random(), 0.0, 1.0); Normal.Sample(new Random(0), 0.0, 1.0);
} }
/// <summary> /// <summary>
@ -411,7 +411,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = Normal.Samples(new Random(), 0.0, 1.0); var ied = Normal.Samples(new Random(0), 0.0, 1.0);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -421,7 +421,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => { var d = Normal.Sample(new Random(), 0.0, -1.0); }); Assert.Throws<ArgumentOutOfRangeException>(() => { var d = Normal.Sample(new Random(0), 0.0, -1.0); });
} }
/// <summary> /// <summary>
@ -430,7 +430,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => { var ied = Normal.Samples(new Random(), 0.0, -1.0).First(); }); Assert.Throws<ArgumentOutOfRangeException>(() => { var ied = Normal.Samples(new Random(0), 0.0, -1.0).First(); });
} }
/// <summary> /// <summary>

8
src/UnitTests/DistributionTests/Continuous/StudentTTests.cs

@ -377,7 +377,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
StudentT.Sample(new Random(), 0.0, 1.0, 3.0); StudentT.Sample(new Random(0), 0.0, 1.0, 3.0);
} }
/// <summary> /// <summary>
@ -386,7 +386,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = StudentT.Samples(new Random(), 0.0, 1.0, 3.0); var ied = StudentT.Samples(new Random(0), 0.0, 1.0, 3.0);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -396,7 +396,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => StudentT.Sample(new Random(), Double.NaN, 1.0, Double.NaN)); Assert.Throws<ArgumentOutOfRangeException>(() => StudentT.Sample(new Random(0), Double.NaN, 1.0, Double.NaN));
} }
/// <summary> /// <summary>
@ -405,7 +405,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
var ied = StudentT.Samples(new Random(), 0.0, 1.0, Double.NaN); var ied = StudentT.Samples(new Random(0), 0.0, 1.0, Double.NaN);
Assert.Throws<ArgumentOutOfRangeException>(() => ied.Take(5).ToArray()); Assert.Throws<ArgumentOutOfRangeException>(() => ied.Take(5).ToArray());
} }

8
src/UnitTests/DistributionTests/Continuous/WeibullTests.cs

@ -323,7 +323,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
Weibull.Sample(new Random(), 1.0, 1.0); Weibull.Sample(new Random(0), 1.0, 1.0);
} }
/// <summary> /// <summary>
@ -332,7 +332,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = Weibull.Samples(new Random(), 1.0, 1.0); var ied = Weibull.Samples(new Random(0), 1.0, 1.0);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -342,7 +342,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Normal.Sample(new Random(), 1.0, -1.0)); Assert.Throws<ArgumentOutOfRangeException>(() => Normal.Sample(new Random(0), 1.0, -1.0));
} }
/// <summary> /// <summary>
@ -351,7 +351,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Continuous
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Normal.Samples(new Random(), 1.0, -1.0).First()); Assert.Throws<ArgumentOutOfRangeException>(() => Normal.Samples(new Random(0), 1.0, -1.0).First());
} }
/// <summary> /// <summary>

8
src/UnitTests/DistributionTests/Discrete/BernoulliTests.cs

@ -233,7 +233,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
Bernoulli.Sample(new Random(), 0.3); Bernoulli.Sample(new Random(0), 0.3);
} }
/// <summary> /// <summary>
@ -242,7 +242,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = Bernoulli.Samples(new Random(), 0.3); var ied = Bernoulli.Samples(new Random(0), 0.3);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -252,7 +252,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Bernoulli.Sample(new Random(), -1.0)); Assert.Throws<ArgumentOutOfRangeException>(() => Bernoulli.Sample(new Random(0), -1.0));
} }
/// <summary> /// <summary>
@ -261,7 +261,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Bernoulli.Samples(new Random(), -1.0).First()); Assert.Throws<ArgumentOutOfRangeException>(() => Bernoulli.Samples(new Random(0), -1.0).First());
} }
/// <summary> /// <summary>

8
src/UnitTests/DistributionTests/Discrete/BinomialTests.cs

@ -257,7 +257,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
Binomial.Sample(new Random(), 0.3, 5); Binomial.Sample(new Random(0), 0.3, 5);
} }
/// <summary> /// <summary>
@ -266,7 +266,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = Binomial.Samples(new Random(), 0.3, 5); var ied = Binomial.Samples(new Random(0), 0.3, 5);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -276,7 +276,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Binomial.Sample(new Random(), -1.0, 5)); Assert.Throws<ArgumentOutOfRangeException>(() => Binomial.Sample(new Random(0), -1.0, 5));
} }
/// <summary> /// <summary>
@ -285,7 +285,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Binomial.Samples(new Random(), -1.0, 5).First()); Assert.Throws<ArgumentOutOfRangeException>(() => Binomial.Samples(new Random(0), -1.0, 5).First());
} }
/// <summary> /// <summary>

4
src/UnitTests/DistributionTests/Discrete/CategoricalTests.cs

@ -161,7 +161,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
Categorical.SampleWithProbabilityMass(new Random(), _largeP); Categorical.SampleWithProbabilityMass(new Random(0), _largeP);
} }
/// <summary> /// <summary>
@ -170,7 +170,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Categorical.SampleWithProbabilityMass(new Random(), _badP)); Assert.Throws<ArgumentOutOfRangeException>(() => Categorical.SampleWithProbabilityMass(new Random(0), _badP));
} }
/// <summary> /// <summary>

8
src/UnitTests/DistributionTests/Discrete/DiscreteUniformTests.cs

@ -279,7 +279,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
DiscreteUniform.Sample(new Random(), 0, 10); DiscreteUniform.Sample(new Random(0), 0, 10);
} }
/// <summary> /// <summary>
@ -288,7 +288,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void CanSampleSequenceStatic() public void CanSampleSequenceStatic()
{ {
var ied = DiscreteUniform.Samples(new Random(), 0, 10); var ied = DiscreteUniform.Samples(new Random(0), 0, 10);
ied.Take(5).ToArray(); ied.Take(5).ToArray();
} }
@ -298,7 +298,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => DiscreteUniform.Sample(new Random(), 20, 10)); Assert.Throws<ArgumentOutOfRangeException>(() => DiscreteUniform.Sample(new Random(0), 20, 10));
} }
/// <summary> /// <summary>
@ -307,7 +307,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Discrete
[Test] [Test]
public void FailSampleSequenceStatic() public void FailSampleSequenceStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => DiscreteUniform.Samples(new Random(), 20, 10).First()); Assert.Throws<ArgumentOutOfRangeException>(() => DiscreteUniform.Samples(new Random(0), 20, 10).First());
} }
/// <summary> /// <summary>

2
src/UnitTests/DistributionTests/Multivariate/DirichletTests.cs

@ -110,7 +110,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{ {
new Dirichlet(0.3, 5) new Dirichlet(0.3, 5)
{ {
RandomSource = new Random() RandomSource = new Random(0)
}; };
} }

6
src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs

@ -117,7 +117,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{ {
new InverseWishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)) new InverseWishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))
{ {
RandomSource = new Random() RandomSource = new Random(0)
}; };
} }
@ -303,7 +303,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
InverseWishart.Sample(new Random(), 1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)); InverseWishart.Sample(new Random(0), 1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
} }
/// <summary> /// <summary>
@ -312,7 +312,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => InverseWishart.Sample(new Random(), -1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))); Assert.Throws<ArgumentOutOfRangeException>(() => InverseWishart.Sample(new Random(0), -1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)));
} }
} }
} }

6
src/UnitTests/DistributionTests/Multivariate/MatrixNormalTests.cs

@ -126,7 +126,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
const int P = 3; const int P = 3;
new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(N, P), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(N), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(P)) new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(N, P), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(N), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(P))
{ {
RandomSource = new Random() RandomSource = new Random(0)
}; };
} }
@ -321,7 +321,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)] [TestCase(10, 10)]
public void CanSampleStatic(int n, int p) public void CanSampleStatic(int n, int p)
{ {
MatrixNormal.Sample(new Random(), MatrixLoader.GenerateRandomDenseMatrix(n, p), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p)); MatrixNormal.Sample(new Random(0), MatrixLoader.GenerateRandomDenseMatrix(n, p), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p));
} }
/// <summary> /// <summary>
@ -343,7 +343,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5, 2, 5, 5, 2, 3)] [TestCase(5, 2, 5, 5, 2, 3)]
public void FailSampleStatic(int rowsOfM, int columnsOfM, int rowsOfV, int columnsOfV, int rowsOfK, int columnsOfK) public void FailSampleStatic(int rowsOfM, int columnsOfM, int rowsOfV, int columnsOfV, int rowsOfK, int columnsOfK)
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => MatrixNormal.Sample(new Random(), MatrixLoader.GenerateRandomDenseMatrix(rowsOfM, columnsOfM), MatrixLoader.GenerateRandomDenseMatrix(rowsOfV, columnsOfV), MatrixLoader.GenerateRandomDenseMatrix(rowsOfK, columnsOfK))); Assert.Throws<ArgumentOutOfRangeException>(() => MatrixNormal.Sample(new Random(0), MatrixLoader.GenerateRandomDenseMatrix(rowsOfM, columnsOfM), MatrixLoader.GenerateRandomDenseMatrix(rowsOfV, columnsOfV), MatrixLoader.GenerateRandomDenseMatrix(rowsOfK, columnsOfK)));
} }
} }
} }

4
src/UnitTests/DistributionTests/Multivariate/MultinomialTests.cs

@ -245,7 +245,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
Multinomial.Sample(new Random(), _largeP, 4); Multinomial.Sample(new Random(0), _largeP, 4);
} }
/// <summary> /// <summary>
@ -254,7 +254,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Multinomial.Sample(new Random(), _badP, 4)); Assert.Throws<ArgumentOutOfRangeException>(() => Multinomial.Sample(new Random(0), _badP, 4));
} }
/// <summary> /// <summary>

2
src/UnitTests/DistributionTests/Multivariate/NormalGammaTests.cs

@ -304,7 +304,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{ {
new NormalGamma(0.0, 1.0, 1.0, 1.0) new NormalGamma(0.0, 1.0, 1.0, 1.0)
{ {
RandomSource = new Random() RandomSource = new Random(0)
}; };
} }

6
src/UnitTests/DistributionTests/Multivariate/WishartTests.cs

@ -119,7 +119,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{ {
new Wishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)) new Wishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))
{ {
RandomSource = new Random() RandomSource = new Random(0)
}; };
} }
@ -305,7 +305,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test] [Test]
public void CanSampleStatic() public void CanSampleStatic()
{ {
Wishart.Sample(new Random(), 1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)); Wishart.Sample(new Random(0), 1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
} }
/// <summary> /// <summary>
@ -314,7 +314,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test] [Test]
public void FailSampleStatic() public void FailSampleStatic()
{ {
Assert.Throws<ArgumentOutOfRangeException>(() => Wishart.Sample(new Random(), -1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))); Assert.Throws<ArgumentOutOfRangeException>(() => Wishart.Sample(new Random(0), -1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)));
} }
} }
} }

2
src/UnitTests/LinearAlgebraTests/Complex/SparseMatrixTests.cs

@ -191,7 +191,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
{ {
var matrix = new SparseMatrix(500, 1000); var matrix = new SparseMatrix(500, 1000);
var nonzero = 0; var nonzero = 0;
var rnd = new System.Random(); var rnd = new System.Random(0);
for (var i = 0; i < matrix.RowCount; i++) for (var i = 0; i < matrix.RowCount; i++)
{ {

2
src/UnitTests/LinearAlgebraTests/Complex32/SparseMatrixTests.cs

@ -187,7 +187,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{ {
var matrix = new SparseMatrix(500, 1000); var matrix = new SparseMatrix(500, 1000);
var nonzero = 0; var nonzero = 0;
var rnd = new System.Random(); var rnd = new System.Random(0);
for (var i = 0; i < matrix.RowCount; i++) for (var i = 0; i < matrix.RowCount; i++)
{ {

2
src/UnitTests/LinearAlgebraTests/Double/SparseMatrixTests.cs

@ -185,7 +185,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{ {
var matrix = new SparseMatrix(500, 1000); var matrix = new SparseMatrix(500, 1000);
var nonzero = 0; var nonzero = 0;
var rnd = new System.Random(); var rnd = new System.Random(0);
for (var i = 0; i < matrix.RowCount; i++) for (var i = 0; i < matrix.RowCount; i++)
{ {

2
src/UnitTests/LinearAlgebraTests/Single/SparseMatrixTests.cs

@ -185,7 +185,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{ {
var matrix = new SparseMatrix(500, 1000); var matrix = new SparseMatrix(500, 1000);
var nonzero = 0; var nonzero = 0;
var rnd = new System.Random(); var rnd = new System.Random(0);
for (var i = 0; i < matrix.RowCount; i++) for (var i = 0; i < matrix.RowCount; i++)
{ {

8
src/UnitTests/Random/SystemRandomExtensionTests.cs

@ -42,7 +42,7 @@ namespace MathNet.Numerics.UnitTests.Random
[Test] [Test]
public void CanSampleInt64() public void CanSampleInt64()
{ {
var rnd = new Random(); var rnd = new Random(0);
rnd.NextInt64(); rnd.NextInt64();
} }
@ -52,7 +52,7 @@ namespace MathNet.Numerics.UnitTests.Random
[Test] [Test]
public void CanSampleFullRangeInt32() public void CanSampleFullRangeInt32()
{ {
var rnd = new Random(); var rnd = new Random(0);
rnd.NextFullRangeInt32(); rnd.NextFullRangeInt32();
} }
@ -62,7 +62,7 @@ namespace MathNet.Numerics.UnitTests.Random
[Test] [Test]
public void CanSampleFullRangeInt64() public void CanSampleFullRangeInt64()
{ {
var rnd = new Random(); var rnd = new Random(0);
rnd.NextFullRangeInt64(); rnd.NextFullRangeInt64();
} }
@ -72,7 +72,7 @@ namespace MathNet.Numerics.UnitTests.Random
[Test] [Test]
public void CanSampleDecimal() public void CanSampleDecimal()
{ {
var rnd = new Random(); var rnd = new Random(0);
rnd.NextDecimal(); rnd.NextDecimal();
} }
} }

8
src/UnitTests/SortingTests.cs

@ -43,7 +43,7 @@ namespace MathNet.Numerics.UnitTests
public void TestRandomTupleArraySorting() public void TestRandomTupleArraySorting()
{ {
const int Len = 0x1 << 10; const int Len = 0x1 << 10;
var random = new System.Random(); var random = new System.Random(0);
var keys = new int[Len]; var keys = new int[Len];
var items = new int[Len]; var items = new int[Len];
@ -77,7 +77,7 @@ namespace MathNet.Numerics.UnitTests
public void TestRandomTupleListSorting() public void TestRandomTupleListSorting()
{ {
const int Len = 0x1 << 10; const int Len = 0x1 << 10;
var random = new System.Random(); var random = new System.Random(0);
var keys = new List<int>(Len); var keys = new List<int>(Len);
var items = new List<int>(Len); var items = new List<int>(Len);
@ -112,7 +112,7 @@ namespace MathNet.Numerics.UnitTests
public void TestRandomTripleArraySorting() public void TestRandomTripleArraySorting()
{ {
const int Len = 0x1 << 10; const int Len = 0x1 << 10;
var random = new System.Random(); var random = new System.Random(0);
var keys = new int[Len]; var keys = new int[Len];
var items1 = new int[Len]; var items1 = new int[Len];
@ -149,7 +149,7 @@ namespace MathNet.Numerics.UnitTests
public void TestAppliedListSorting() public void TestAppliedListSorting()
{ {
const int Len = 0x1 << 10; const int Len = 0x1 << 10;
var random = new System.Random(); var random = new System.Random(0);
var list = new List<int>(); var list = new List<int>();

2
src/UnitTests/StatisticsTests/MCMCTests/HybridMCTest.cs

@ -55,7 +55,7 @@ namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
var hybrid = new HybridMC(new double[] { 0 }, x => _normal.DensityLn(x[0]), 10, 0.1); var hybrid = new HybridMC(new double[] { 0 }, x => _normal.DensityLn(x[0]), 10, 0.1);
Assert.IsNotNull(hybrid.RandomSource); Assert.IsNotNull(hybrid.RandomSource);
hybrid.RandomSource = new System.Random(); hybrid.RandomSource = new System.Random(0);
Assert.IsNotNull(hybrid.RandomSource); Assert.IsNotNull(hybrid.RandomSource);
} }

2
src/UnitTests/StatisticsTests/MCMCTests/MCMCDiagnosticsTest.cs

@ -45,7 +45,7 @@ namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
/// <summary> /// <summary>
/// For generation of a random series to test the methods. /// For generation of a random series to test the methods.
/// </summary> /// </summary>
private readonly System.Random _rnd = new System.Random(); private readonly System.Random _rnd = new System.Random(0);
/// <summary> /// <summary>
/// Distribution to sample the entries of the random series from. /// Distribution to sample the entries of the random series from.
/// </summary> /// </summary>

15
src/UnitTests/StatisticsTests/MCMCTests/MetropolisHastingsSamplerTests.cs

@ -36,8 +36,6 @@ using NUnit.Framework;
namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
{ {
using Random = System.Random;
/// <summary> /// <summary>
/// Metropolis hastings sampler tests. /// Metropolis hastings sampler tests.
/// </summary> /// </summary>
@ -53,13 +51,13 @@ namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
var normal = new Normal(0.0, 1.0); var normal = new Normal(0.0, 1.0);
var rnd = new MersenneTwister(); var rnd = new MersenneTwister();
var ms = new MetropolisHastingsSampler<double>(0.2, normal.Density, (x, y) => (new Normal(x, 0.1)).Density(y), x => Normal.Sample(rnd, x, 0.1), 10) var ms = new MetropolisHastingsSampler<double>(0.2, normal.Density, (x, y) => Normal.PDF(x, 0.1, y), x => Normal.Sample(rnd, x, 0.1), 10)
{ {
RandomSource = rnd RandomSource = rnd
}; };
Assert.IsNotNull(ms.RandomSource); Assert.IsNotNull(ms.RandomSource);
ms.RandomSource = new System.Random(); ms.RandomSource = new System.Random(0);
Assert.IsNotNull(ms.RandomSource); Assert.IsNotNull(ms.RandomSource);
} }
@ -72,7 +70,7 @@ namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
var normal = new Normal(0.0, 1.0); var normal = new Normal(0.0, 1.0);
var rnd = new MersenneTwister(); var rnd = new MersenneTwister();
var ms = new MetropolisHastingsSampler<double>(0.2, normal.Density, (x, y) => (new Normal(x, 0.1)).Density(y), x => Normal.Sample(rnd, x, 0.1), 10) var ms = new MetropolisHastingsSampler<double>(0.2, normal.Density, (x, y) => Normal.PDF(x, 0.1, y), x => Normal.Sample(rnd, x, 0.1), 10)
{ {
RandomSource = rnd RandomSource = rnd
}; };
@ -89,7 +87,7 @@ namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
var normal = new Normal(0.0, 1.0); var normal = new Normal(0.0, 1.0);
var rnd = new MersenneTwister(); var rnd = new MersenneTwister();
var ms = new MetropolisHastingsSampler<double>(0.2, normal.Density, (x, y) => (new Normal(x, 0.1)).Density(y), x => Normal.Sample(rnd, x, 0.1), 10) var ms = new MetropolisHastingsSampler<double>(0.2, normal.Density, (x, y) => Normal.PDF(x, 0.1, y), x => Normal.Sample(rnd, x, 0.1), 10)
{ {
RandomSource = rnd RandomSource = rnd
}; };
@ -103,8 +101,9 @@ namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
[Test] [Test]
public void NullRandomNumberGenerator() public void NullRandomNumberGenerator()
{ {
var normal = new Normal(0.0, 1.0); var random = MersenneTwister.Default;
var ms = new MetropolisHastingsSampler<double>(0.2, normal.Density, (x, y) => (new Normal(x, 0.1)).Density(y), x => Normal.Sample(new Random(), x, 0.1), 10); var normal = new Normal(0.0, 1.0, random);
var ms = new MetropolisHastingsSampler<double>(0.2, normal.Density, (x, y) => Normal.PDF(x, 0.1, y), x => Normal.Sample(random, x, 0.1), 10);
Assert.Throws<ArgumentNullException>(() => ms.RandomSource = null); Assert.Throws<ArgumentNullException>(() => ms.RandomSource = null);
} }
} }

2
src/UnitTests/StatisticsTests/MCMCTests/MetropolisSamplerTests.cs

@ -101,7 +101,7 @@ namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
public void NullRandomNumberGenerator() public void NullRandomNumberGenerator()
{ {
var normal = new Normal(0.0, 1.0); var normal = new Normal(0.0, 1.0);
var ms = new MetropolisSampler<double>(0.2, normal.Density, x => Normal.Sample(new Random(), x, 0.1), 10); var ms = new MetropolisSampler<double>(0.2, normal.Density, x => Normal.Sample(new Random(0), x, 0.1), 10);
Assert.Throws<ArgumentNullException>(() => ms.RandomSource = null); Assert.Throws<ArgumentNullException>(() => ms.RandomSource = null);
} }
} }

2
src/UnitTests/StatisticsTests/MCMCTests/UnivariateHybridMCTest.cs

@ -58,7 +58,7 @@ namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
var hybrid = new UnivariateHybridMC(0, _normal.DensityLn, 10, 0.1); var hybrid = new UnivariateHybridMC(0, _normal.DensityLn, 10, 0.1);
Assert.IsNotNull(hybrid.RandomSource); Assert.IsNotNull(hybrid.RandomSource);
hybrid.RandomSource = new System.Random(); hybrid.RandomSource = new System.Random(0);
Assert.IsNotNull(hybrid.RandomSource); Assert.IsNotNull(hybrid.RandomSource);
} }

2
src/UnitTests/StatisticsTests/MCMCTests/UnivariateSliceSamplerTests.cs

@ -78,7 +78,7 @@ namespace MathNet.Numerics.UnitTests.StatisticsTests.McmcTests
var ss = new UnivariateSliceSampler(0.1, x => -0.5*x*x, 5, 1.0); var ss = new UnivariateSliceSampler(0.1, x => -0.5*x*x, 5, 1.0);
Assert.IsNotNull(ss.RandomSource); Assert.IsNotNull(ss.RandomSource);
ss.RandomSource = new Random(); ss.RandomSource = new Random(0);
Assert.IsNotNull(ss.RandomSource); Assert.IsNotNull(ss.RandomSource);
} }

Loading…
Cancel
Save