diff --git a/src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs b/src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs
index 9bc60908..8f6ccbf3 100644
--- a/src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs
+++ b/src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs
@@ -24,14 +24,15 @@
// OTHER DEALINGS IN THE SOFTWARE.
//
+using System;
+using MathNet.Numerics.Distributions;
+using MathNet.Numerics.LinearAlgebra;
+using MathNet.Numerics.LinearAlgebra.Double;
+using MathNet.Numerics.Random;
+using NUnit.Framework;
+
namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{
- using System;
- using Distributions;
- using LinearAlgebra.Double;
- using LinearAlgebraTests.Double;
- using NUnit.Framework;
-
///
/// Inverse Wishart tests.
///
@@ -57,7 +58,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void CanCreateInverseWishart(double nu, int order)
{
- var matrix = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order);
+ var matrix = Matrix.Build.RandomPositiveDefinite(order, 1);
var d = new InverseWishart(nu, matrix);
Assert.AreEqual(nu, d.DegreesOfFreedom);
@@ -80,7 +81,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void FailSCreateInverseWishart(double nu, int order)
{
- var matrix = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order);
+ var matrix = Matrix.Build.RandomPositiveDefinite(order, 1);
matrix[0, 0] = 0.0;
Assert.Throws(() => new InverseWishart(nu, matrix));
@@ -95,7 +96,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(Double.NaN, 5)]
public void FailNuCreateInverseWishart(double nu, int order)
{
- var matrix = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order);
+ var matrix = Matrix.Build.RandomPositiveDefinite(order, 1);
Assert.Throws(() => new InverseWishart(nu, matrix));
}
@@ -105,7 +106,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void HasRandomSource()
{
- var d = new InverseWishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new InverseWishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1));
Assert.IsNotNull(d.RandomSource);
}
@@ -115,16 +116,16 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void CanSetRandomSource()
{
- new InverseWishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))
+ new InverseWishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1))
{
- RandomSource = new Random(0)
+ RandomSource = new System.Random(0)
};
}
[Test]
public void HasRandomSourceEvenAfterSetToNull()
{
- var d = new InverseWishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new InverseWishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1));
Assert.DoesNotThrow(() => d.RandomSource = null);
Assert.IsNotNull(d.RandomSource);
}
@@ -135,7 +136,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void ValidateToString()
{
- var d = new InverseWishart(1d, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new InverseWishart(1d, Matrix.Build.RandomPositiveDefinite(2, 1));
Assert.AreEqual("InverseWishart(ν = 1, Rows = 2, Columns = 2)", d.ToString());
}
@@ -148,7 +149,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0)]
public void CanGetNu(double nu)
{
- var d = new InverseWishart(nu, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new InverseWishart(nu, Matrix.Build.RandomPositiveDefinite(2, 1));
Assert.AreEqual(nu, d.DegreesOfFreedom);
}
@@ -161,7 +162,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0)]
public void CanSetNu(double nu)
{
- new InverseWishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))
+ new InverseWishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1))
{
DegreesOfFreedom = nu
};
@@ -174,7 +175,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
public void CanGetS()
{
const int Order = 2;
- var matrix = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(Order);
+ var matrix = Matrix.Build.RandomPositiveDefinite(Order, 1);
var d = new InverseWishart(1.0, matrix);
for (var i = 0; i < Order; i++)
@@ -192,9 +193,9 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void CanSetS()
{
- new InverseWishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))
+ new InverseWishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1))
{
- Scale = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)
+ Scale = Matrix.Build.RandomPositiveDefinite(2, 1)
};
}
@@ -208,7 +209,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void ValidateMean(double nu, int order)
{
- var d = new InverseWishart(nu, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order));
+ var d = new InverseWishart(nu, Matrix.Build.RandomPositiveDefinite(order, 1));
var mean = d.Mean;
for (var i = 0; i < d.Scale.RowCount; i++)
@@ -230,7 +231,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void ValidateMode(double nu, int order)
{
- var d = new InverseWishart(nu, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order));
+ var d = new InverseWishart(nu, Matrix.Build.RandomPositiveDefinite(order, 1));
var mode = d.Mode;
for (var i = 0; i < d.Scale.RowCount; i++)
@@ -252,7 +253,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void ValidateVariance(double nu, int order)
{
- var d = new InverseWishart(nu, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order));
+ var d = new InverseWishart(nu, Matrix.Build.RandomPositiveDefinite(order, 1));
var variance = d.Variance;
for (var i = 0; i < d.Scale.RowCount; i++)
@@ -293,7 +294,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void CanSample()
{
- var d = new InverseWishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new InverseWishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1));
d.Sample();
}
@@ -303,7 +304,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void CanSampleStatic()
{
- InverseWishart.Sample(new Random(0), 1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ InverseWishart.Sample(new System.Random(0), 1.0, Matrix.Build.RandomPositiveDefinite(2, 1));
}
///
@@ -312,7 +313,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void FailSampleStatic()
{
- Assert.Throws(() => InverseWishart.Sample(new Random(0), -1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)));
+ Assert.Throws(() => InverseWishart.Sample(new System.Random(0), -1.0, Matrix.Build.RandomPositiveDefinite(2, 1)));
}
}
}
diff --git a/src/UnitTests/DistributionTests/Multivariate/MatrixNormalTests.cs b/src/UnitTests/DistributionTests/Multivariate/MatrixNormalTests.cs
index 2c835e92..5f217a01 100644
--- a/src/UnitTests/DistributionTests/Multivariate/MatrixNormalTests.cs
+++ b/src/UnitTests/DistributionTests/Multivariate/MatrixNormalTests.cs
@@ -24,14 +24,14 @@
// OTHER DEALINGS IN THE SOFTWARE.
//
+using System;
+using MathNet.Numerics.Distributions;
+using MathNet.Numerics.LinearAlgebra;
+using MathNet.Numerics.LinearAlgebra.Double;
+using NUnit.Framework;
+
namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{
- using System;
- using Distributions;
- using LinearAlgebra.Double;
- using LinearAlgebraTests.Double;
- using NUnit.Framework;
-
///
/// Matrix Normal tests.
///
@@ -48,9 +48,9 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)]
public void CanCreateMatrixNormal(int n, int p)
{
- var matrixM = MatrixLoader.GenerateRandomDenseMatrix(n, p);
- var matrixV = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n);
- var matrixK = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p);
+ var matrixM = Matrix.Build.Random(n, p, 1);
+ var matrixV = Matrix.Build.RandomPositiveDefinite(n, 1);
+ var matrixK = Matrix.Build.RandomPositiveDefinite(p, 1);
var d = new MatrixNormal(matrixM, matrixV, matrixK);
for (var i = 0; i < matrixM.RowCount; i++)
@@ -97,9 +97,9 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5, 2, 5, 5, 2, 3)]
public void FailCreateMatrixNormal(int rowsOfM, int columnsOfM, int rowsOfV, int columnsOfV, int rowsOfK, int columnsOfK)
{
- var matrixM = MatrixLoader.GenerateRandomDenseMatrix(rowsOfM, columnsOfM);
- var matrixV = MatrixLoader.GenerateRandomDenseMatrix(rowsOfV, columnsOfV);
- var matrixK = MatrixLoader.GenerateRandomDenseMatrix(rowsOfK, columnsOfK);
+ var matrixM = Matrix.Build.Random(rowsOfM, columnsOfM, 1);
+ var matrixV = Matrix.Build.Random(rowsOfV, columnsOfV, 1);
+ var matrixK = Matrix.Build.Random(rowsOfK, columnsOfK, 1);
Assert.Throws(() => new MatrixNormal(matrixM, matrixV, matrixK));
}
@@ -112,7 +112,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{
const int N = 2;
const int P = 3;
- var d = new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(N, P), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(N), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(P));
+ var d = new MatrixNormal(Matrix.Build.Random(N, P, 1), Matrix.Build.RandomPositiveDefinite(N, 1), Matrix.Build.RandomPositiveDefinite(P, 1));
Assert.IsNotNull(d.RandomSource);
}
@@ -124,9 +124,9 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{
const int N = 2;
const int P = 3;
- new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(N, P), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(N), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(P))
+ new MatrixNormal(Matrix.Build.Random(N, P, 1), Matrix.Build.RandomPositiveDefinite(N, 1), Matrix.Build.RandomPositiveDefinite(P, 1))
{
- RandomSource = new Random(0)
+ RandomSource = new System.Random(0)
};
}
@@ -135,7 +135,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{
const int N = 2;
const int P = 3;
- var d = new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(N, P), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(N), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(P));
+ var d = new MatrixNormal(Matrix.Build.Random(N, P, 1), Matrix.Build.RandomPositiveDefinite(N, 1), Matrix.Build.RandomPositiveDefinite(P, 1));
Assert.DoesNotThrow(() => d.RandomSource = null);
Assert.IsNotNull(d.RandomSource);
}
@@ -148,7 +148,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{
const int N = 2;
const int P = 5;
- var d = new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(N, P), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(N), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(P));
+ var d = new MatrixNormal(Matrix.Build.Random(N, P, 1), Matrix.Build.RandomPositiveDefinite(N, 1), Matrix.Build.RandomPositiveDefinite(P, 1));
Assert.AreEqual("MatrixNormal(Rows = 2, Columns = 5)", d.ToString());
}
@@ -162,8 +162,8 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)]
public void CanGetM(int n, int p)
{
- var matrixM = MatrixLoader.GenerateRandomDenseMatrix(n, p);
- var d = new MatrixNormal(matrixM, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p));
+ var matrixM = Matrix.Build.Random(n, p, 1);
+ var d = new MatrixNormal(matrixM, Matrix.Build.RandomPositiveDefinite(n, 1), Matrix.Build.RandomPositiveDefinite(p, 1));
for (var i = 0; i < matrixM.RowCount; i++)
{
for (var j = 0; j < matrixM.ColumnCount; j++)
@@ -183,9 +183,9 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)]
public void CanSetM(int n, int p)
{
- new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(n, p), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p))
+ new MatrixNormal(Matrix.Build.Random(n, p, 1), Matrix.Build.RandomPositiveDefinite(n, 1), Matrix.Build.RandomPositiveDefinite(p, 1))
{
- Mean = MatrixLoader.GenerateRandomDenseMatrix(n, p)
+ Mean = Matrix.Build.Random(n, p, 1)
};
}
@@ -199,8 +199,8 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)]
public void CanGetV(int n, int p)
{
- var matrixV = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n);
- var d = new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(n, p), matrixV, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p));
+ var matrixV = Matrix.Build.RandomPositiveDefinite(n, 1);
+ var d = new MatrixNormal(Matrix.Build.Random(n, p, 1), matrixV, Matrix.Build.RandomPositiveDefinite(p, 1));
for (var i = 0; i < matrixV.RowCount; i++)
{
for (var j = 0; j < matrixV.ColumnCount; j++)
@@ -220,9 +220,9 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)]
public void CanSetV(int n, int p)
{
- new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(n, p), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p))
+ new MatrixNormal(Matrix.Build.Random(n, p, 1), Matrix.Build.RandomPositiveDefinite(n, 1), Matrix.Build.RandomPositiveDefinite(p, 1))
{
- RowCovariance = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n)
+ RowCovariance = Matrix.Build.RandomPositiveDefinite(n, 1)
};
}
@@ -236,8 +236,8 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)]
public void CanGetK(int n, int p)
{
- var matrixK = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p);
- var d = new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(n, p), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n), matrixK);
+ var matrixK = Matrix.Build.RandomPositiveDefinite(p, 1);
+ var d = new MatrixNormal(Matrix.Build.Random(n, p, 1), Matrix.Build.RandomPositiveDefinite(n, 1), matrixK);
for (var i = 0; i < matrixK.RowCount; i++)
{
for (var j = 0; j < matrixK.ColumnCount; j++)
@@ -257,9 +257,9 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)]
public void CanSetK(int n, int p)
{
- new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(n, p), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p))
+ new MatrixNormal(Matrix.Build.Random(n, p, 1), Matrix.Build.RandomPositiveDefinite(n, 1), Matrix.Build.RandomPositiveDefinite(p, 1))
{
- ColumnCovariance = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p)
+ ColumnCovariance = Matrix.Build.RandomPositiveDefinite(p, 1)
};
}
@@ -307,7 +307,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)]
public void CanSample(int n, int p)
{
- var d = new MatrixNormal(MatrixLoader.GenerateRandomDenseMatrix(n, p), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p));
+ var d = new MatrixNormal(Matrix.Build.Random(n, p, 1), Matrix.Build.RandomPositiveDefinite(n, 1), Matrix.Build.RandomPositiveDefinite(p, 1));
d.Sample();
}
@@ -321,7 +321,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(10, 10)]
public void CanSampleStatic(int n, int p)
{
- MatrixNormal.Sample(new Random(0), MatrixLoader.GenerateRandomDenseMatrix(n, p), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(n), MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(p));
+ MatrixNormal.Sample(new System.Random(0), Matrix.Build.Random(n, p, 1), Matrix.Build.RandomPositiveDefinite(n, 1), Matrix.Build.RandomPositiveDefinite(p, 1));
}
///
@@ -343,7 +343,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5, 2, 5, 5, 2, 3)]
public void FailSampleStatic(int rowsOfM, int columnsOfM, int rowsOfV, int columnsOfV, int rowsOfK, int columnsOfK)
{
- Assert.Throws(() => MatrixNormal.Sample(new Random(0), MatrixLoader.GenerateRandomDenseMatrix(rowsOfM, columnsOfM), MatrixLoader.GenerateRandomDenseMatrix(rowsOfV, columnsOfV), MatrixLoader.GenerateRandomDenseMatrix(rowsOfK, columnsOfK)));
+ Assert.Throws(() => MatrixNormal.Sample(new System.Random(0), Matrix.Build.Random(rowsOfM, columnsOfM, 1), Matrix.Build.Random(rowsOfV, columnsOfV, 1), Matrix.Build.Random(rowsOfK, columnsOfK, 1)));
}
}
}
diff --git a/src/UnitTests/DistributionTests/Multivariate/WishartTests.cs b/src/UnitTests/DistributionTests/Multivariate/WishartTests.cs
index cf22e27e..8177ba35 100644
--- a/src/UnitTests/DistributionTests/Multivariate/WishartTests.cs
+++ b/src/UnitTests/DistributionTests/Multivariate/WishartTests.cs
@@ -24,14 +24,14 @@
// OTHER DEALINGS IN THE SOFTWARE.
//
+using System;
+using MathNet.Numerics.Distributions;
+using MathNet.Numerics.LinearAlgebra;
+using MathNet.Numerics.LinearAlgebra.Double;
+using NUnit.Framework;
+
namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
{
- using System;
- using Distributions;
- using LinearAlgebra.Double;
- using LinearAlgebraTests.Double;
- using NUnit.Framework;
-
///
/// Wishart distribution tests.
///
@@ -57,7 +57,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void CanCreateWishart(double nu, int order)
{
- var matrix = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order);
+ var matrix = Matrix.Build.RandomPositiveDefinite(order, 1);
var d = new Wishart(nu, matrix);
@@ -82,7 +82,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void FailSCreateWishart(double nu, int order)
{
- var matrix = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order);
+ var matrix = Matrix.Build.RandomPositiveDefinite(order, 1);
matrix[0, 0] = 0.0;
Assert.Throws(() => new Wishart(nu, matrix));
@@ -97,7 +97,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(Double.NaN, 5)]
public void FailNuCreateWishart(double nu, int order)
{
- var matrix = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order);
+ var matrix = Matrix.Build.RandomPositiveDefinite(order, 1);
Assert.Throws(() => new InverseWishart(nu, matrix));
}
@@ -107,7 +107,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void HasRandomSource()
{
- var d = new Wishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new Wishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1));
Assert.IsNotNull(d.RandomSource);
}
@@ -117,9 +117,9 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void CanSetRandomSource()
{
- new Wishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))
+ new Wishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1))
{
- RandomSource = new Random(0)
+ RandomSource = new System.Random(0)
};
}
@@ -129,7 +129,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void FailSetRandomSourceWithNullReference()
{
- var d = new Wishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new Wishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1));
Assert.Throws(() => d.RandomSource = null);
}
@@ -139,7 +139,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void ValidateToString()
{
- var d = new Wishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new Wishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1));
Assert.AreEqual("Wishart(DegreesOfFreedom = 1, Rows = 2, Columns = 2)", d.ToString());
}
@@ -152,7 +152,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0)]
public void CanGetNu(double nu)
{
- var d = new Wishart(nu, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new Wishart(nu, Matrix.Build.RandomPositiveDefinite(2, 1));
Assert.AreEqual(nu, d.DegreesOfFreedom);
}
@@ -165,7 +165,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0)]
public void CanSetNu(double nu)
{
- new Wishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))
+ new Wishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1))
{
DegreesOfFreedom = nu
};
@@ -178,7 +178,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
public void CanGetS()
{
const int Order = 2;
- var matrix = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(Order);
+ var matrix = Matrix.Build.RandomPositiveDefinite(Order, 1);
var d = new Wishart(1.0, matrix);
for (var i = 0; i < Order; i++)
@@ -196,9 +196,9 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void CanSetS()
{
- new Wishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2))
+ new Wishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1))
{
- Scale = MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)
+ Scale = Matrix.Build.RandomPositiveDefinite(2, 1)
};
}
@@ -212,7 +212,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void ValidateMean(double nu, int order)
{
- var d = new Wishart(nu, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order));
+ var d = new Wishart(nu, Matrix.Build.RandomPositiveDefinite(order, 1));
var mean = d.Mean;
for (var i = 0; i < d.Scale.RowCount; i++)
@@ -234,7 +234,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void ValidateMode(double nu, int order)
{
- var d = new Wishart(nu, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order));
+ var d = new Wishart(nu, Matrix.Build.RandomPositiveDefinite(order, 1));
var mode = d.Mode;
for (var i = 0; i < d.Scale.RowCount; i++)
@@ -256,7 +256,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[TestCase(5.0, 5)]
public void ValidateVariance(double nu, int order)
{
- var d = new Wishart(nu, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(order));
+ var d = new Wishart(nu, Matrix.Build.RandomPositiveDefinite(order, 1));
var variance = d.Variance;
for (var i = 0; i < d.Scale.RowCount; i++)
@@ -295,7 +295,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void CanSample()
{
- var d = new Wishart(1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ var d = new Wishart(1.0, Matrix.Build.RandomPositiveDefinite(2, 1));
d.Sample();
}
@@ -305,7 +305,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void CanSampleStatic()
{
- Wishart.Sample(new Random(0), 1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2));
+ Wishart.Sample(new System.Random(0), 1.0, Matrix.Build.RandomPositiveDefinite(2, 1));
}
///
@@ -314,7 +314,7 @@ namespace MathNet.Numerics.UnitTests.DistributionTests.Multivariate
[Test]
public void FailSampleStatic()
{
- Assert.Throws(() => Wishart.Sample(new Random(0), -1.0, MatrixLoader.GenerateRandomPositiveDefiniteDenseMatrix(2)));
+ Assert.Throws(() => Wishart.Sample(new System.Random(0), -1.0, Matrix.Build.RandomPositiveDefinite(2, 1)));
}
}
}
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/DenseMatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/DenseMatrixTests.cs
index 6eae4fe4..3c1c440d 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/DenseMatrixTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/DenseMatrixTests.cs
@@ -68,27 +68,6 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
return DenseMatrix.OfArray(data);
}
- ///
- /// Creates a vector of the given size.
- ///
- /// The size of the vector to create.
- ///
- /// The new vector.
- protected override Vector CreateVector(int size)
- {
- return new DenseVector(size);
- }
-
- ///
- /// Creates a vector from an array.
- ///
- /// The array to create this vector from.
- /// The new vector.
- protected override Vector CreateVector(Complex[] data)
- {
- return new DenseVector(data);
- }
-
///
/// Can create a matrix form array.
///
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/DiagonalMatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/DiagonalMatrixTests.cs
index 928e5195..4c9b547e 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/DiagonalMatrixTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/DiagonalMatrixTests.cs
@@ -68,7 +68,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
TestMatrices = new Dictionary>();
foreach (var name in TestData2D.Keys)
{
- TestMatrices.Add(name, CreateMatrix(TestData2D[name]));
+ TestMatrices.Add(name, DiagonalMatrix.OfArray(TestData2D[name]));
}
}
@@ -93,27 +93,6 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
return DiagonalMatrix.OfArray(data);
}
- ///
- /// Creates a vector of the given size.
- ///
- /// The size of the vector to create.
- ///
- /// The new vector.
- protected override Vector CreateVector(int size)
- {
- return new SparseVector(size);
- }
-
- ///
- /// Creates a vector from an array.
- ///
- /// The array to create this vector from.
- /// The new vector.
- protected override Vector CreateVector(Complex[] data)
- {
- return SparseVector.OfEnumerable(data);
- }
-
///
/// Can create a matrix from a diagonal array.
///
@@ -239,7 +218,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
[Test]
public void PermuteMatrixRowsThrowsInvalidOperationException()
{
- var matrixp = CreateMatrix(TestData2D["Singular3x3"]);
+ var matrixp = DiagonalMatrix.OfArray(TestData2D["Singular3x3"]);
var permutation = new Permutation(new[] {2, 0, 1});
Assert.Throws(() => matrixp.PermuteRows(permutation));
}
@@ -250,7 +229,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
[Test]
public void PermuteMatrixColumnsThrowsInvalidOperationException()
{
- var matrixp = CreateMatrix(TestData2D["Singular3x3"]);
+ var matrixp = DiagonalMatrix.OfArray(TestData2D["Singular3x3"]);
var permutation = new Permutation(new[] {2, 0, 1});
Assert.Throws(() => matrixp.PermuteColumns(permutation));
}
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/CholeskyTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/CholeskyTests.cs
index 06bfde90..d241aaa4 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/CholeskyTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/CholeskyTests.cs
@@ -24,9 +24,10 @@
// OTHER DEALINGS IN THE SOFTWARE.
//
+using System;
+using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Complex;
using NUnit.Framework;
-using System;
namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
{
@@ -113,7 +114,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanFactorizeRandomMatrix(int order)
{
- var matrixX = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(order);
+ var matrixX = Matrix.Build.RandomPositiveDefinite(order, 1);
var chol = matrixX.Cholesky();
var factorC = chol.Factor;
@@ -153,10 +154,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVector(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(order);
+ var matrixA = Matrix.Build.RandomPositiveDefinite(order, 1);
var matrixACopy = matrixA.Clone();
var chol = matrixA.Cholesky();
- var matrixB = MatrixLoader.GenerateRandomDenseVector(order);
+ var matrixB = Vector.Build.Random(order, 1);
var x = chol.Solve(matrixB);
Assert.AreEqual(matrixB.Count, x.Count);
@@ -192,10 +193,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 100)]
public void CanSolveForRandomMatrix(int row, int col)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(row);
+ var matrixA = Matrix.Build.RandomPositiveDefinite(row, 1);
var matrixACopy = matrixA.Clone();
var chol = matrixA.Cholesky();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(row, col);
+ var matrixB = Matrix.Build.Random(row, col, 1);
var matrixX = chol.Solve(matrixB);
Assert.AreEqual(matrixB.RowCount, matrixX.RowCount);
@@ -234,10 +235,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(order);
+ var matrixA = Matrix.Build.RandomPositiveDefinite(order, 1);
var matrixACopy = matrixA.Clone();
var chol = matrixA.Cholesky();
- var matrixB = MatrixLoader.GenerateRandomDenseVector(order);
+ var matrixB = Vector.Build.Random(order, 1);
var matrixBCopy = matrixB.Clone();
var x = new DenseVector(order);
chol.Solve(matrixB, x);
@@ -281,10 +282,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 100)]
public void CanSolveForRandomMatrixWhenResultMatrixGiven(int row, int col)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(row);
+ var matrixA = Matrix.Build.RandomPositiveDefinite(row, 1);
var matrixACopy = matrixA.Clone();
var chol = matrixA.Cholesky();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(row, col);
+ var matrixB = Matrix.Build.Random(row, col, 1);
var matrixBCopy = matrixB.Clone();
var matrixX = new DenseMatrix(row, col);
chol.Solve(matrixB, matrixX);
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/EvdTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/EvdTests.cs
index 92526c37..29691f37 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/EvdTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/EvdTests.cs
@@ -24,6 +24,7 @@
// OTHER DEALINGS IN THE SOFTWARE.
//
+using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Complex;
using NUnit.Framework;
@@ -79,7 +80,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanFactorizeRandomMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var factorEvd = matrixA.Evd();
var eigenVectors = factorEvd.EigenVectors;
@@ -114,7 +115,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanFactorizeRandomSymmetricMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(order);
+ var matrixA = Matrix.Build.RandomPositiveDefinite(order, 1);
MatrixHelpers.ForceConjugateSymmetric(matrixA);
var factorEvd = matrixA.Evd();
var eigenVectors = factorEvd.EigenVectors;
@@ -147,7 +148,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanCheckRankSquare(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var factorEvd = matrixA.Evd();
Assert.AreEqual(factorEvd.Rank, order);
@@ -206,12 +207,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorAndSymmetricMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(order);
+ var matrixA = Matrix.Build.RandomPositiveDefinite(order, 1);
MatrixHelpers.ForceConjugateSymmetric(matrixA);
var matrixACopy = matrixA.Clone();
var factorEvd = matrixA.Evd();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var resultx = factorEvd.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -247,12 +248,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixAndSymmetricMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(order);
+ var matrixA = Matrix.Build.RandomPositiveDefinite(order, 1);
MatrixHelpers.ForceConjugateSymmetric(matrixA);
var matrixACopy = matrixA.Clone();
var factorEvd = matrixA.Evd();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixX = factorEvd.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -295,11 +296,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorAndSymmetricMatrixWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(order);
+ var matrixA = Matrix.Build.RandomPositiveDefinite(order, 1);
MatrixHelpers.ForceConjugateSymmetric(matrixA);
var matrixACopy = matrixA.Clone();
var factorEvd = matrixA.Evd();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var vectorbCopy = vectorb.Clone();
var resultx = new DenseVector(order);
factorEvd.Solve(vectorb, resultx);
@@ -341,12 +342,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixAndSymmetricMatrixWhenResultMatrixGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianDenseMatrix(order);
+ var matrixA = Matrix.Build.RandomPositiveDefinite(order, 1);
MatrixHelpers.ForceConjugateSymmetric(matrixA);
var matrixACopy = matrixA.Clone();
var factorEvd = matrixA.Evd();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixBCopy = matrixB.Clone();
var matrixX = new DenseMatrix(order, order);
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/GramSchmidtTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/GramSchmidtTests.cs
index 70da2c43..cfcdc38e 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/GramSchmidtTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/GramSchmidtTests.cs
@@ -25,6 +25,7 @@
//
using System;
+using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Complex;
using MathNet.Numerics.LinearAlgebra.Complex.Factorization;
using NUnit.Framework;
@@ -126,7 +127,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 98)]
public void CanFactorizeRandomMatrix(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixA = Matrix.Build.Random(row, column, 1);
var factorGramSchmidt = matrixA.GramSchmidt();
var q = factorGramSchmidt.Q;
var r = factorGramSchmidt.R;
@@ -191,11 +192,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVector(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorGramSchmidt = matrixA.GramSchmidt();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var resultx = factorGramSchmidt.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -230,11 +231,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorGramSchmidt = matrixA.GramSchmidt();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixX = factorGramSchmidt.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -276,10 +277,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorGramSchmidt = matrixA.GramSchmidt();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var vectorbCopy = vectorb.Clone();
var resultx = new DenseVector(order);
factorGramSchmidt.Solve(vectorb, resultx);
@@ -322,11 +323,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixWhenResultMatrixGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorGramSchmidt = matrixA.GramSchmidt();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixBCopy = matrixB.Clone();
var matrixX = new DenseMatrix(order, order);
@@ -374,11 +375,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[Test]
public void CanSolveForMatrixWithTallRandomMatrix()
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(20, 10);
+ var matrixA = Matrix.Build.Random(20, 10, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.GramSchmidt();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(20, 5);
+ var matrixB = Matrix.Build.Random(20, 5, 1);
var matrixX = factorQR.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -413,11 +414,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[Test]
public void CanSolveForVectorWithTallRandomMatrix()
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(20, 10);
+ var matrixA = Matrix.Build.Random(20, 10, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.GramSchmidt();
- var vectorB = MatrixLoader.GenerateRandomDenseVector(20);
+ var vectorB = Vector.Build.Random(20, 1);
var vectorX = factorQR.Solve(vectorB);
// The solution x dimension is equal to the column dimension of A
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/LUTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/LUTests.cs
index e4c9bc27..8b46fc1a 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/LUTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/LUTests.cs
@@ -24,9 +24,10 @@
// OTHER DEALINGS IN THE SOFTWARE.
//
+using System;
+using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Complex;
using NUnit.Framework;
-using System;
namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
{
@@ -114,7 +115,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanFactorizeRandomMatrix(int order)
{
- var matrixX = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixX = Matrix.Build.Random(order, order, 1);
var factorLU = matrixX.LU();
var matrixL = factorLU.L;
var matrixU = factorLU.U;
@@ -169,11 +170,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVector(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var resultx = factorLU.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -208,11 +209,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixX = factorLU.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -254,10 +255,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var vectorbCopy = vectorb.Clone();
var resultx = new DenseVector(order);
factorLU.Solve(vectorb, resultx);
@@ -300,11 +301,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixWhenResultMatrixGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixBCopy = matrixB.Clone();
var matrixX = new DenseMatrix(order, order);
@@ -358,7 +359,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanInverse(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/QRTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/QRTests.cs
index 21ac2793..eb8c5e29 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/QRTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/QRTests.cs
@@ -25,6 +25,7 @@
//
using System;
+using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Complex;
using MathNet.Numerics.LinearAlgebra.Complex.Factorization;
using MathNet.Numerics.LinearAlgebra.Factorization;
@@ -143,7 +144,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 98)]
public void CanFactorizeRandomMatrix(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixA = Matrix.Build.Random(row, column, 1);
var factorQR = matrixA.QR(QRMethod.Full);
var q = factorQR.Q;
var r = factorQR.R;
@@ -211,7 +212,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 98)]
public void CanFactorizeRandomMatrixUsingThinQR(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixA = Matrix.Build.Random(row, column, 1);
var factorQR = matrixA.QR(QRMethod.Thin);
var q = factorQR.Q;
var r = factorQR.R;
@@ -278,11 +279,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVector(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var resultx = factorQR.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -317,11 +318,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixX = factorQR.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -363,10 +364,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var vectorbCopy = vectorb.Clone();
var resultx = new DenseVector(order);
factorQR.Solve(vectorb, resultx);
@@ -409,11 +410,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixWhenResultMatrixGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixBCopy = matrixB.Clone();
var matrixX = new DenseMatrix(order, order);
@@ -467,11 +468,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorUsingThinQR(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(QRMethod.Thin);
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var resultx = factorQR.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -506,11 +507,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixUsingThinQR(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(QRMethod.Thin);
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixX = factorQR.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -552,10 +553,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGivenUsingThinQR(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(QRMethod.Thin);
- var vectorb = MatrixLoader.GenerateRandomDenseVector(order);
+ var vectorb = Vector.Build.Random(order, 1);
var vectorbCopy = vectorb.Clone();
var resultx = new DenseVector(order);
factorQR.Solve(vectorb, resultx);
@@ -598,11 +599,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixWhenResultMatrixGivenUsingThinQR(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(QRMethod.Thin);
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixB = Matrix.Build.Random(order, order, 1);
var matrixBCopy = matrixB.Clone();
var matrixX = new DenseMatrix(order, order);
@@ -652,11 +653,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(QRMethod.Thin)]
public void CanSolveForMatrixWithTallRandomMatrix(QRMethod method)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(20, 10);
+ var matrixA = Matrix.Build.Random(20, 10, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(method);
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(20, 5);
+ var matrixB = Matrix.Build.Random(20, 5, 1);
var matrixX = factorQR.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -693,11 +694,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(QRMethod.Thin)]
public void CanSolveForVectorWithTallRandomMatrix(QRMethod method)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(20, 10);
+ var matrixA = Matrix.Build.Random(20, 10, 1);
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(method);
- var vectorB = MatrixLoader.GenerateRandomDenseVector(20);
+ var vectorB = Vector.Build.Random(20, 1);
var vectorX = factorQR.Solve(vectorB);
// The solution x dimension is equal to the column dimension of A
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/SvdTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/SvdTests.cs
index abff8f0f..5c3274ee 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/SvdTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/SvdTests.cs
@@ -25,6 +25,7 @@
//
using System;
+using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Complex;
using NUnit.Framework;
@@ -87,7 +88,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 98)]
public void CanFactorizeRandomMatrix(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixA = Matrix.Build.Random(row, column, 1);
var factorSvd = matrixA.Svd();
var u = factorSvd.U;
var vt = factorSvd.VT;
@@ -126,7 +127,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 93)]
public void CanCheckRankOfNonSquare(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixA = Matrix.Build.Random(row, column, 1);
var factorSvd = matrixA.Svd();
var mn = Math.Min(row, column);
@@ -145,7 +146,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(90)]
public void CanCheckRankSquare(int order)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(order, order);
+ var matrixA = Matrix.Build.Random(order, order, 1);
var factorSvd = matrixA.Svd();
if (factorSvd.Determinant != 0)
@@ -190,10 +191,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[Test]
public void SolveMatrixIfVectorsNotComputedThrowsInvalidOperationException()
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(10, 9);
+ var matrixA = Matrix.Build.Random(10, 9, 1);
var factorSvd = matrixA.Svd(false);
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(10, 9);
+ var matrixB = Matrix.Build.Random(10, 9, 1);
Assert.Throws(() => factorSvd.Solve(matrixB));
}
@@ -203,10 +204,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[Test]
public void SolveVectorIfVectorsNotComputedThrowsInvalidOperationException()
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(10, 9);
+ var matrixA = Matrix.Build.Random(10, 9, 1);
var factorSvd = matrixA.Svd(false);
- var vectorb = MatrixLoader.GenerateRandomDenseVector(9);
+ var vectorb = Vector.Build.Random(9, 1);
Assert.Throws(() => factorSvd.Solve(vectorb));
}
@@ -223,11 +224,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(90, 100)]
public void CanSolveForRandomVector(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixA = Matrix.Build.Random(row, column, 1);
var matrixACopy = matrixA.Clone();
var factorSvd = matrixA.Svd();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(row);
+ var vectorb = Vector.Build.Random(row, 1);
var resultx = factorSvd.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -263,11 +264,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(80, 100)]
public void CanSolveForRandomMatrix(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixA = Matrix.Build.Random(row, column, 1);
var matrixACopy = matrixA.Clone();
var factorSvd = matrixA.Svd();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixB = Matrix.Build.Random(row, column, 1);
var matrixX = factorSvd.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -310,10 +311,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(90, 100)]
public void CanSolveForRandomVectorWhenResultVectorGiven(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixA = Matrix.Build.Random(row, column, 1);
var matrixACopy = matrixA.Clone();
var factorSvd = matrixA.Svd();
- var vectorb = MatrixLoader.GenerateRandomDenseVector(row);
+ var vectorb = Vector.Build.Random(row, 1);
var vectorbCopy = vectorb.Clone();
var resultx = new DenseVector(column);
factorSvd.Solve(vectorb, resultx);
@@ -355,11 +356,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(80, 100)]
public void CanSolveForRandomMatrixWhenResultMatrixGiven(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixA = Matrix.Build.Random(row, column, 1);
var matrixACopy = matrixA.Clone();
var factorSvd = matrixA.Svd();
- var matrixB = MatrixLoader.GenerateRandomDenseMatrix(row, column);
+ var matrixB = Matrix.Build.Random(row, column, 1);
var matrixBCopy = matrixB.Clone();
var matrixX = new DenseMatrix(column, column);
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserCholeskyTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserCholeskyTests.cs
index 4d3286b2..f3c8dde2 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserCholeskyTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserCholeskyTests.cs
@@ -25,6 +25,7 @@
//
using System;
+using MathNet.Numerics.LinearAlgebra;
using NUnit.Framework;
namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
@@ -112,7 +113,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanFactorizeRandomMatrix(int order)
{
- var matrixX = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(order);
+ var matrixX = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(order, 1).ToArray());
var chol = matrixX.Cholesky();
var factorC = chol.Factor;
@@ -152,10 +153,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVector(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var chol = matrixA.Cholesky();
- var b = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var b = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var x = chol.Solve(b);
Assert.AreEqual(b.Count, x.Count);
@@ -191,10 +192,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 100)]
public void CanSolveForRandomMatrix(int row, int col)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(row);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(row, 1).ToArray());
var matrixACopy = matrixA.Clone();
var chol = matrixA.Cholesky();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(row, col);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(row, col, 1).ToArray());
var matrixX = chol.Solve(matrixB);
Assert.AreEqual(matrixB.RowCount, matrixX.RowCount);
@@ -233,10 +234,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var chol = matrixA.Cholesky();
- var b = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var b = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var matrixBCopy = b.Clone();
var x = new UserDefinedVector(order);
chol.Solve(b, x);
@@ -280,10 +281,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 100)]
public void CanSolveForRandomMatrixWhenResultMatrixGiven(int row, int col)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(row);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(row, 1).ToArray());
var matrixACopy = matrixA.Clone();
var chol = matrixA.Cholesky();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(row, col);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(row, col, 1).ToArray());
var matrixBCopy = matrixB.Clone();
var matrixX = new UserDefinedMatrix(row, col);
chol.Solve(matrixB, matrixX);
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserEvdTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserEvdTests.cs
index fbe64015..541c2066 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserEvdTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserEvdTests.cs
@@ -24,6 +24,7 @@
// OTHER DEALINGS IN THE SOFTWARE.
//
+using MathNet.Numerics.LinearAlgebra;
using NUnit.Framework;
namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
@@ -78,7 +79,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanFactorizeRandomMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var factorEvd = matrixA.Evd();
var eigenVectors = factorEvd.EigenVectors;
var d = factorEvd.D;
@@ -114,7 +115,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanFactorizeRandomSymmetricMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(order, 1).ToArray());
var factorEvd = matrixA.Evd();
var eigenVectors = factorEvd.EigenVectors;
var d = factorEvd.D;
@@ -146,7 +147,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanCheckRankSquare(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var factorEvd = matrixA.Evd();
Assert.AreEqual(factorEvd.Rank, order);
@@ -204,11 +205,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorAndSymmetricMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorEvd = matrixA.Evd();
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var resultx = factorEvd.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -243,11 +244,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixAndSymmetricMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorEvd = matrixA.Evd();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixX = factorEvd.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -289,10 +290,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorAndSymmetricMatrixWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorEvd = matrixA.Evd();
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var vectorbCopy = vectorb.Clone();
var resultx = new UserDefinedVector(order);
factorEvd.Solve(vectorb, resultx);
@@ -333,11 +334,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixAndSymmetricMatrixWhenResultMatrixGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomPositiveDefiniteHermitianUserDefinedMatrix(order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.RandomPositiveDefinite(order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorEvd = matrixA.Evd();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixBCopy = matrixB.Clone();
var matrixX = new UserDefinedMatrix(order, order);
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserGramSchmidtTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserGramSchmidtTests.cs
index 6b9bf761..d3b4f508 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserGramSchmidtTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserGramSchmidtTests.cs
@@ -25,6 +25,7 @@
//
using System;
+using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Complex.Factorization;
using NUnit.Framework;
@@ -125,7 +126,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 98)]
public void CanFactorizeRandomMatrix(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(row, column);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(row, column, 1).ToArray());
var factorGramSchmidt = matrixA.GramSchmidt();
var q = factorGramSchmidt.Q;
var r = factorGramSchmidt.R;
@@ -190,11 +191,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVector(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorGramSchmidt = matrixA.GramSchmidt();
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var resultx = factorGramSchmidt.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -229,11 +230,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorGramSchmidt = matrixA.GramSchmidt();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixX = factorGramSchmidt.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -275,10 +276,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorGramSchmidt = matrixA.GramSchmidt();
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var vectorbCopy = vectorb.Clone();
var resultx = new UserDefinedVector(order);
factorGramSchmidt.Solve(vectorb, resultx);
@@ -321,11 +322,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixWhenResultMatrixGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorGramSchmidt = matrixA.GramSchmidt();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixBCopy = matrixB.Clone();
var matrixX = new UserDefinedMatrix(order, order);
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserLUTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserLUTests.cs
index 2d5c2274..fbf7a0f0 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserLUTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserLUTests.cs
@@ -25,6 +25,7 @@
//
using System;
+using MathNet.Numerics.LinearAlgebra;
using NUnit.Framework;
namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
@@ -113,7 +114,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanFactorizeRandomMatrix(int order)
{
- var matrixX = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixX = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var factorLU = matrixX.LU();
var matrixL = factorLU.L;
var matrixU = factorLU.U;
@@ -168,11 +169,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVector(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var resultx = factorLU.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -207,11 +208,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixX = factorLU.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -253,10 +254,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var vectorbCopy = vectorb.Clone();
var resultx = new UserDefinedVector(order);
factorLU.Solve(vectorb, resultx);
@@ -299,11 +300,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixWhenResultMatrixGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixBCopy = matrixB.Clone();
var matrixX = new UserDefinedMatrix(order, order);
@@ -357,7 +358,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanInverse(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorLU = matrixA.LU();
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserQRTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserQRTests.cs
index fedc66c5..4563ef41 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserQRTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserQRTests.cs
@@ -25,6 +25,7 @@
//
using System;
+using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Complex.Factorization;
using MathNet.Numerics.LinearAlgebra.Factorization;
using NUnit.Framework;
@@ -143,7 +144,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 98)]
public void CanFactorizeRandomMatrix(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(row, column);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(row, column, 1).ToArray());
var factorQR = matrixA.QR(QRMethod.Full);
var q = factorQR.Q;
var r = factorQR.R;
@@ -192,7 +193,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 98)]
public void CanFactorizeRandomMatrixUsingThinQR(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(row, column);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(row, column, 1).ToArray());
var factorQR = matrixA.QR(QRMethod.Thin);
var q = factorQR.Q;
var r = factorQR.R;
@@ -240,11 +241,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVector(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR();
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var resultx = factorQR.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -279,11 +280,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrix(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixX = factorQR.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -325,10 +326,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR();
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var vectorbCopy = vectorb.Clone();
var resultx = new UserDefinedVector(order);
factorQR.Solve(vectorb, resultx);
@@ -371,11 +372,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixWhenResultMatrixGiven(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR();
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixBCopy = matrixB.Clone();
var matrixX = new UserDefinedMatrix(order, order);
@@ -429,11 +430,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorUsingThinQR(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(QRMethod.Thin);
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var resultx = factorQR.Solve(vectorb);
Assert.AreEqual(matrixA.ColumnCount, resultx.Count);
@@ -468,11 +469,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixUsingThinQR(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(QRMethod.Thin);
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixX = factorQR.Solve(matrixB);
// The solution X row dimension is equal to the column dimension of A
@@ -514,10 +515,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomVectorWhenResultVectorGivenUsingThinQR(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(QRMethod.Thin);
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(order);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(order, 1).ToArray());
var vectorbCopy = vectorb.Clone();
var resultx = new UserDefinedVector(order);
factorQR.Solve(vectorb, resultx);
@@ -560,11 +561,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100)]
public void CanSolveForRandomMatrixWhenResultMatrixGivenUsingThinQR(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixACopy = matrixA.Clone();
var factorQR = matrixA.QR(QRMethod.Thin);
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var matrixBCopy = matrixB.Clone();
var matrixX = new UserDefinedMatrix(order, order);
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserSvdTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserSvdTests.cs
index 55ed360e..759636d5 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserSvdTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Factorization/UserSvdTests.cs
@@ -25,6 +25,7 @@
//
using System;
+using MathNet.Numerics.LinearAlgebra;
using NUnit.Framework;
namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
@@ -86,7 +87,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 98)]
public void CanFactorizeRandomMatrix(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(row, column);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(row, column, 1).ToArray());
var factorSvd = matrixA.Svd();
var u = factorSvd.U;
var vt = factorSvd.VT;
@@ -125,7 +126,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(100, 93)]
public void CanCheckRankOfNonSquare(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(row, column);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(row, column, 1).ToArray());
var factorSvd = matrixA.Svd();
var mn = Math.Min(row, column);
@@ -144,7 +145,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(90)]
public void CanCheckRankSquare(int order)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(order, order);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(order, order, 1).ToArray());
var factorSvd = matrixA.Svd();
if (factorSvd.Determinant != 0)
@@ -189,10 +190,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[Test]
public void SolveMatrixIfVectorsNotComputedThrowsInvalidOperationException()
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(10, 9);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(10, 9, 1).ToArray());
var factorSvd = matrixA.Svd(false);
- var matrixB = MatrixLoader.GenerateRandomUserDefinedMatrix(10, 9);
+ var matrixB = new UserDefinedMatrix(Matrix.Build.Random(10, 9, 1).ToArray());
Assert.Throws(() => factorSvd.Solve(matrixB));
}
@@ -202,10 +203,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[Test]
public void SolveVectorIfVectorsNotComputedThrowsInvalidOperationException()
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(10, 9);
+ var matrixA = new UserDefinedMatrix(Matrix.Build.Random(10, 9, 1).ToArray());
var factorSvd = matrixA.Svd(false);
- var vectorb = MatrixLoader.GenerateRandomUserDefinedVector(9);
+ var vectorb = new UserDefinedVector(Vector.Build.Random(9, 1).ToArray());
Assert.Throws(() => factorSvd.Solve(vectorb));
}
@@ -222,11 +223,11 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Factorization
[TestCase(90, 100)]
public void CanSolveForRandomVector(int row, int column)
{
- var matrixA = MatrixLoader.GenerateRandomUserDefinedMatrix(row, column);
+ var matrixA = new UserDefinedMatrix(Matrix