diff --git a/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Complex.cs b/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Complex.cs
index 44226a5f..7a4b8e71 100644
--- a/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Complex.cs
+++ b/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Complex.cs
@@ -774,7 +774,7 @@ namespace MathNet.Numerics.Providers.LinearAlgebra.Mkl
throw new ArgumentNullException("q");
}
- if (q.Length != rowsA * columnsA)
+ if (q.Length != rowsA*columnsA)
{
throw new ArgumentException(string.Format(Resources.ArgumentArrayWrongLength, "rowsR * columnsR"), "q");
}
@@ -784,15 +784,15 @@ namespace MathNet.Numerics.Providers.LinearAlgebra.Mkl
throw new ArgumentException(string.Format(Resources.ArrayTooSmall, "min(m,n)"), "tau");
}
- if (r.Length != columnsA * columnsA)
+ if (r.Length != columnsA*columnsA)
{
throw new ArgumentException(
string.Format(Resources.ArgumentArrayWrongLength, "columnsA * columnsA"), "r");
}
- if (work.Length < columnsA * Control.BlockSize)
+ if (work.Length < columnsA*Control.BlockSize)
{
- work[0] = columnsA * Control.BlockSize;
+ work[0] = columnsA*Control.BlockSize;
throw new ArgumentException(Resources.WorkArrayTooSmall, "work");
}
diff --git a/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Complex32.cs b/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Complex32.cs
index fea0881e..01322ae4 100644
--- a/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Complex32.cs
+++ b/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Complex32.cs
@@ -773,7 +773,7 @@ namespace MathNet.Numerics.Providers.LinearAlgebra.Mkl
throw new ArgumentNullException("q");
}
- if (q.Length != rowsA * columnsA)
+ if (q.Length != rowsA*columnsA)
{
throw new ArgumentException(string.Format(Resources.ArgumentArrayWrongLength, "rowsR * columnsR"), "q");
}
@@ -783,15 +783,15 @@ namespace MathNet.Numerics.Providers.LinearAlgebra.Mkl
throw new ArgumentException(string.Format(Resources.ArrayTooSmall, "min(m,n)"), "tau");
}
- if (r.Length != columnsA * columnsA)
+ if (r.Length != columnsA*columnsA)
{
throw new ArgumentException(
string.Format(Resources.ArgumentArrayWrongLength, "columnsA * columnsA"), "r");
}
- if (work.Length < columnsA * Control.BlockSize)
+ if (work.Length < columnsA*Control.BlockSize)
{
- work[0] = columnsA * Control.BlockSize;
+ work[0] = columnsA*Control.BlockSize;
throw new ArgumentException(Resources.WorkArrayTooSmall, "work");
}
diff --git a/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Single.cs b/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Single.cs
index 7a9cd46c..0297d638 100644
--- a/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Single.cs
+++ b/src/Numerics/Providers/LinearAlgebra/Mkl/MklLinearAlgebraProvider.Single.cs
@@ -774,7 +774,7 @@ namespace MathNet.Numerics.Providers.LinearAlgebra.Mkl
throw new ArgumentNullException("q");
}
- if (q.Length != rowsA * columnsA)
+ if (q.Length != rowsA*columnsA)
{
throw new ArgumentException(string.Format(Resources.ArgumentArrayWrongLength, "rowsR * columnsR"), "q");
}
@@ -784,15 +784,15 @@ namespace MathNet.Numerics.Providers.LinearAlgebra.Mkl
throw new ArgumentException(string.Format(Resources.ArrayTooSmall, "min(m,n)"), "tau");
}
- if (r.Length != columnsA * columnsA)
+ if (r.Length != columnsA*columnsA)
{
throw new ArgumentException(
string.Format(Resources.ArgumentArrayWrongLength, "columnsA * columnsA"), "r");
}
- if (work.Length < columnsA * Control.BlockSize)
+ if (work.Length < columnsA*Control.BlockSize)
{
- work[0] = columnsA * Control.BlockSize;
+ work[0] = columnsA*Control.BlockSize;
throw new ArgumentException(Resources.WorkArrayTooSmall, "work");
}
diff --git a/src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs b/src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs
index 8c325c28..432b7295 100644
--- a/src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs
+++ b/src/UnitTests/DistributionTests/Multivariate/InverseWishartTests.cs
@@ -28,7 +28,6 @@ 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
diff --git a/src/UnitTests/LinearAlgebraProviderTests/Complex/LinearAlgebraProviderTests.cs b/src/UnitTests/LinearAlgebraProviderTests/Complex/LinearAlgebraProviderTests.cs
index c8763dd2..7508a520 100644
--- a/src/UnitTests/LinearAlgebraProviderTests/Complex/LinearAlgebraProviderTests.cs
+++ b/src/UnitTests/LinearAlgebraProviderTests/Complex/LinearAlgebraProviderTests.cs
@@ -54,12 +54,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
///
/// The Y Complex test vector.
///
- readonly Complex[] _y = new[] {new Complex(1.1, 0), 2.2, 3.3, 4.4, 5.5};
+ readonly Complex[] _y = {new Complex(1.1, 0), 2.2, 3.3, 4.4, 5.5};
///
/// The X Complex test vector.
///
- readonly Complex[] _x = new[] {new Complex(6.6, 0), 7.7, 8.8, 9.9, 10.1};
+ readonly Complex[] _x = {new Complex(6.6, 0), 7.7, 8.8, 9.9, 10.1};
static readonly IContinuousDistribution Dist = new Normal();
@@ -245,7 +245,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
{
for (var j = 0; j < c.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(x.Row(i)*y.Column(j), c[i, j], 15);
+ AssertHelpers.AlmostEqualRelative(x.Row(i)*y.Column(j), c[i, j], 14);
}
}
}
@@ -266,7 +266,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
{
for (var j = 0; j < c.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(x.Row(i)*y.Column(j), c[i, j], 15);
+ AssertHelpers.AlmostEqualRelative(x.Row(i)*y.Column(j), c[i, j], 14);
}
}
}
@@ -287,7 +287,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
{
for (var j = 0; j < c.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(x.Row(i)*y.Column(j), c[i, j], 15);
+ AssertHelpers.AlmostEqualRelative(x.Row(i)*y.Column(j), c[i, j], 14);
}
}
}
@@ -308,7 +308,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
{
for (var j = 0; j < c.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(2.2*x.Row(i)*y.Column(j), c[i, j], 15);
+ AssertHelpers.AlmostEqualRelative(2.2*x.Row(i)*y.Column(j), c[i, j], 14);
}
}
}
@@ -329,7 +329,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
{
for (var j = 0; j < c.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(2.2*x.Row(i)*y.Column(j), c[i, j], 15);
+ AssertHelpers.AlmostEqualRelative(2.2*x.Row(i)*y.Column(j), c[i, j], 14);
}
}
}
@@ -350,7 +350,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
{
for (var j = 0; j < c.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(2.2*x.Row(i)*y.Column(j), c[i, j], 15);
+ AssertHelpers.AlmostEqualRelative(2.2*x.Row(i)*y.Column(j), c[i, j], 14);
}
}
}
@@ -500,12 +500,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
var b = new[] {new Complex(1.0, 0), 2.0, 3.0, 4.0, 5.0, 6.0};
Control.LinearAlgebraProvider.LUSolve(2, a, matrix.RowCount, b);
- AssertHelpers.AlmostEqualRelative(b[0], -1.477272727272726, 14);
- AssertHelpers.AlmostEqualRelative(b[1], -4.318181818181815, 14);
- AssertHelpers.AlmostEqualRelative(b[2], 3.068181818181816, 14);
- AssertHelpers.AlmostEqualRelative(b[3], -4.204545454545451, 14);
- AssertHelpers.AlmostEqualRelative(b[4], -12.499999999999989, 14);
- AssertHelpers.AlmostEqualRelative(b[5], 8.522727272727266, 14);
+ AssertHelpers.AlmostEqualRelative(b[0], -1.477272727272726, 13);
+ AssertHelpers.AlmostEqualRelative(b[1], -4.318181818181815, 13);
+ AssertHelpers.AlmostEqualRelative(b[2], 3.068181818181816, 13);
+ AssertHelpers.AlmostEqualRelative(b[3], -4.204545454545451, 13);
+ AssertHelpers.AlmostEqualRelative(b[4], -12.499999999999989, 13);
+ AssertHelpers.AlmostEqualRelative(b[5], 8.522727272727266, 13);
NotModified(matrix.RowCount, matrix.ColumnCount, a, matrix);
}
@@ -526,12 +526,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
var b = new[] {new Complex(1.0, 0), 2.0, 3.0, 4.0, 5.0, 6.0};
Control.LinearAlgebraProvider.LUSolveFactored(2, a, matrix.RowCount, ipiv, b);
- AssertHelpers.AlmostEqualRelative(b[0], -1.477272727272726, 14);
- AssertHelpers.AlmostEqualRelative(b[1], -4.318181818181815, 14);
- AssertHelpers.AlmostEqualRelative(b[2], 3.068181818181816, 14);
- AssertHelpers.AlmostEqualRelative(b[3], -4.204545454545451, 14);
- AssertHelpers.AlmostEqualRelative(b[4], -12.499999999999989, 14);
- AssertHelpers.AlmostEqualRelative(b[5], 8.522727272727266, 14);
+ AssertHelpers.AlmostEqualRelative(b[0], -1.477272727272726, 13);
+ AssertHelpers.AlmostEqualRelative(b[1], -4.318181818181815, 13);
+ AssertHelpers.AlmostEqualRelative(b[2], 3.068181818181816, 13);
+ AssertHelpers.AlmostEqualRelative(b[3], -4.204545454545451, 13);
+ AssertHelpers.AlmostEqualRelative(b[4], -12.499999999999989, 13);
+ AssertHelpers.AlmostEqualRelative(b[5], 8.522727272727266, 13);
}
///
@@ -834,7 +834,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
var q = new Complex[matrix.RowCount*matrix.ColumnCount];
Array.Copy(matrix.Values, q, q.Length);
- var work = new Complex[matrix.RowCount*matrix.ColumnCount];
+ var work = new Complex[matrix.ColumnCount*Control.BlockSize];
Control.LinearAlgebraProvider.ThinQRFactor(q, matrix.RowCount, matrix.ColumnCount, r, tau, work);
var mq = new DenseMatrix(matrix.RowCount, matrix.ColumnCount, q);
@@ -862,7 +862,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
var q = new Complex[matrix.RowCount*matrix.ColumnCount];
Array.Copy(matrix.Values, q, q.Length);
- var work = new Complex[matrix.RowCount*matrix.ColumnCount];
+ var work = new Complex[matrix.ColumnCount*Control.BlockSize];
Control.LinearAlgebraProvider.ThinQRFactor(q, matrix.RowCount, matrix.ColumnCount, r, tau, work);
var mq = new DenseMatrix(matrix.RowCount, matrix.ColumnCount, q);
@@ -1563,12 +1563,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
var mx = new DenseMatrix(matrix.ColumnCount, 2, x);
var mb = matrix*mx;
- AssertHelpers.AlmostEqualRelative(mb[0, 0], b[0], 13);
- AssertHelpers.AlmostEqualRelative(mb[1, 0], b[1], 13);
- AssertHelpers.AlmostEqualRelative(mb[2, 0], b[2], 13);
- AssertHelpers.AlmostEqualRelative(mb[0, 1], b[3], 13);
- AssertHelpers.AlmostEqualRelative(mb[1, 1], b[4], 13);
- AssertHelpers.AlmostEqualRelative(mb[2, 1], b[5], 13);
+ AssertHelpers.AlmostEqual(mb[0, 0], b[0], 13);
+ AssertHelpers.AlmostEqual(mb[1, 0], b[1], 13);
+ AssertHelpers.AlmostEqual(mb[2, 0], b[2], 13);
+ AssertHelpers.AlmostEqual(mb[0, 1], b[3], 13);
+ AssertHelpers.AlmostEqual(mb[1, 1], b[4], 13);
+ AssertHelpers.AlmostEqual(mb[2, 1], b[5], 13);
}
///
@@ -1590,10 +1590,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
+ AssertHelpers.AlmostEqual(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqual(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqual(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqual(test[1, 1], x[3], 13);
}
///
@@ -1620,12 +1620,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
var mx = new DenseMatrix(matrix.ColumnCount, 2, x);
var mb = matrix*mx;
- AssertHelpers.AlmostEqualRelative(mb[0, 0], b[0], 13);
- AssertHelpers.AlmostEqualRelative(mb[1, 0], b[1], 13);
- AssertHelpers.AlmostEqualRelative(mb[2, 0], b[2], 13);
- AssertHelpers.AlmostEqualRelative(mb[0, 1], b[3], 13);
- AssertHelpers.AlmostEqualRelative(mb[1, 1], b[4], 13);
- AssertHelpers.AlmostEqualRelative(mb[2, 1], b[5], 13);
+ AssertHelpers.AlmostEqual(mb[0, 0], b[0], 13);
+ AssertHelpers.AlmostEqual(mb[1, 0], b[1], 13);
+ AssertHelpers.AlmostEqual(mb[2, 0], b[2], 13);
+ AssertHelpers.AlmostEqual(mb[0, 1], b[3], 13);
+ AssertHelpers.AlmostEqual(mb[1, 1], b[4], 13);
+ AssertHelpers.AlmostEqual(mb[2, 1], b[5], 13);
}
///
@@ -1652,10 +1652,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
+ AssertHelpers.AlmostEqual(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqual(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqual(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqual(test[1, 1], x[3], 13);
}
[TestCase("Wide10x50000", "Tall50000x10")]
diff --git a/src/UnitTests/LinearAlgebraProviderTests/Complex32/LinearAlgebraProviderTests.cs b/src/UnitTests/LinearAlgebraProviderTests/Complex32/LinearAlgebraProviderTests.cs
index ee6d3102..d13ea874 100644
--- a/src/UnitTests/LinearAlgebraProviderTests/Complex32/LinearAlgebraProviderTests.cs
+++ b/src/UnitTests/LinearAlgebraProviderTests/Complex32/LinearAlgebraProviderTests.cs
@@ -50,12 +50,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex32
///
/// The Y Complex32 test vector.
///
- readonly Complex32[] _y = new[] {new Complex32(1.1f, 0f), 2.2f, 3.3f, 4.4f, 5.5f};
+ readonly Complex32[] _y = {new Complex32(1.1f, 0f), 2.2f, 3.3f, 4.4f, 5.5f};
///
/// The X Complex32 test vector.
///
- readonly Complex32[] _x = new[] {new Complex32(6.6f, 0f), 7.7f, 8.8f, 9.9f, 10.1f};
+ readonly Complex32[] _x = {new Complex32(6.6f, 0f), 7.7f, 8.8f, 9.9f, 10.1f};
static readonly IContinuousDistribution Dist = new Normal();
@@ -696,10 +696,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex32
{
var matrix = _matrices["Square3x3"];
var r = new Complex32[matrix.RowCount*matrix.ColumnCount];
- Array.Copy(matrix.Values, r, r.Length);
-
var tau = new Complex32[3];
var q = new Complex32[matrix.RowCount*matrix.RowCount];
+ Array.Copy(matrix.Values, r, r.Length);
+
var work = new Complex32[matrix.ColumnCount*Control.BlockSize];
Control.LinearAlgebraProvider.QRFactor(r, matrix.RowCount, matrix.ColumnCount, q, tau, work);
@@ -838,7 +838,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex32
var q = new Complex32[matrix.RowCount*matrix.ColumnCount];
Array.Copy(matrix.Values, q, q.Length);
- var work = new Complex32[matrix.RowCount*matrix.ColumnCount];
+ var work = new Complex32[matrix.ColumnCount*Control.BlockSize];
Control.LinearAlgebraProvider.ThinQRFactor(q, matrix.RowCount, matrix.ColumnCount, r, tau, work);
var mq = new DenseMatrix(matrix.RowCount, matrix.ColumnCount, q);
@@ -866,7 +866,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex32
var q = new Complex32[matrix.RowCount*matrix.ColumnCount];
Array.Copy(matrix.Values, q, q.Length);
- var work = new Complex32[matrix.RowCount*matrix.ColumnCount];
+ var work = new Complex32[matrix.ColumnCount*Control.BlockSize];
Control.LinearAlgebraProvider.ThinQRFactor(q, matrix.RowCount, matrix.ColumnCount, r, tau, work);
var mq = new DenseMatrix(matrix.RowCount, matrix.ColumnCount, q);
@@ -1568,12 +1568,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex32
var mx = new DenseMatrix(matrix.ColumnCount, 2, x);
var mb = matrix*mx;
- AssertHelpers.AlmostEqualRelative(mb[0, 0], b[0], 5);
- AssertHelpers.AlmostEqualRelative(mb[1, 0], b[1], 5);
- AssertHelpers.AlmostEqualRelative(mb[2, 0], b[2], 4);
- AssertHelpers.AlmostEqualRelative(mb[0, 1], b[3], 4);
- AssertHelpers.AlmostEqualRelative(mb[1, 1], b[4], 4);
- AssertHelpers.AlmostEqualRelative(mb[2, 1], b[5], 4);
+ AssertHelpers.AlmostEqual(mb[0, 0], b[0], 5);
+ AssertHelpers.AlmostEqual(mb[1, 0], b[1], 5);
+ AssertHelpers.AlmostEqual(mb[2, 0], b[2], 4);
+ AssertHelpers.AlmostEqual(mb[0, 1], b[3], 4);
+ AssertHelpers.AlmostEqual(mb[1, 1], b[4], 4);
+ AssertHelpers.AlmostEqual(mb[2, 1], b[5], 4);
}
///
@@ -1595,10 +1595,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex32
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 5);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 5);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 5);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 5);
+ AssertHelpers.AlmostEqual(test[0, 0], x[0], 5);
+ AssertHelpers.AlmostEqual(test[1, 0], x[1], 5);
+ AssertHelpers.AlmostEqual(test[0, 1], x[2], 5);
+ AssertHelpers.AlmostEqual(test[1, 1], x[3], 5);
}
///
@@ -1625,12 +1625,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex32
var mx = new DenseMatrix(matrix.ColumnCount, 2, x);
var mb = matrix*mx;
- AssertHelpers.AlmostEqualRelative(mb[0, 0], b[0], 5);
- AssertHelpers.AlmostEqualRelative(mb[1, 0], b[1], 5);
- AssertHelpers.AlmostEqualRelative(mb[2, 0], b[2], 4);
- AssertHelpers.AlmostEqualRelative(mb[0, 1], b[3], 4);
- AssertHelpers.AlmostEqualRelative(mb[1, 1], b[4], 4);
- AssertHelpers.AlmostEqualRelative(mb[2, 1], b[5], 4);
+ AssertHelpers.AlmostEqual(mb[0, 0], b[0], 5);
+ AssertHelpers.AlmostEqual(mb[1, 0], b[1], 5);
+ AssertHelpers.AlmostEqual(mb[2, 0], b[2], 4);
+ AssertHelpers.AlmostEqual(mb[0, 1], b[3], 4);
+ AssertHelpers.AlmostEqual(mb[1, 1], b[4], 4);
+ AssertHelpers.AlmostEqual(mb[2, 1], b[5], 4);
}
///
@@ -1657,10 +1657,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Complex32
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 5);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 5);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 5);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 5);
+ AssertHelpers.AlmostEqual(test[0, 0], x[0], 5);
+ AssertHelpers.AlmostEqual(test[1, 0], x[1], 5);
+ AssertHelpers.AlmostEqual(test[0, 1], x[2], 5);
+ AssertHelpers.AlmostEqual(test[1, 1], x[3], 5);
}
[TestCase("Wide10x50000", "Tall50000x10")]
diff --git a/src/UnitTests/LinearAlgebraProviderTests/Double/LinearAlgebraProviderTests.cs b/src/UnitTests/LinearAlgebraProviderTests/Double/LinearAlgebraProviderTests.cs
index 56045c62..c6a9039a 100644
--- a/src/UnitTests/LinearAlgebraProviderTests/Double/LinearAlgebraProviderTests.cs
+++ b/src/UnitTests/LinearAlgebraProviderTests/Double/LinearAlgebraProviderTests.cs
@@ -494,12 +494,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var b = new[] {1.0, 2.0, 3.0, 4.0, 5.0, 6.0};
Control.LinearAlgebraProvider.LUSolve(2, a, matrix.RowCount, b);
- AssertHelpers.AlmostEqualRelative(b[0], -1.477272727272726, 14);
- AssertHelpers.AlmostEqualRelative(b[1], -4.318181818181815, 14);
- AssertHelpers.AlmostEqualRelative(b[2], 3.068181818181816, 14);
- AssertHelpers.AlmostEqualRelative(b[3], -4.204545454545451, 14);
- AssertHelpers.AlmostEqualRelative(b[4], -12.499999999999989, 14);
- AssertHelpers.AlmostEqualRelative(b[5], 8.522727272727266, 14);
+ AssertHelpers.AlmostEqualRelative(b[0], -1.477272727272726, 13);
+ AssertHelpers.AlmostEqualRelative(b[1], -4.318181818181815, 13);
+ AssertHelpers.AlmostEqualRelative(b[2], 3.068181818181816, 13);
+ AssertHelpers.AlmostEqualRelative(b[3], -4.204545454545451, 13);
+ AssertHelpers.AlmostEqualRelative(b[4], -12.499999999999989, 13);
+ AssertHelpers.AlmostEqualRelative(b[5], 8.522727272727266, 13);
NotModified(matrix.RowCount, matrix.ColumnCount, a, matrix);
}
@@ -520,12 +520,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var b = new[] {1.0, 2.0, 3.0, 4.0, 5.0, 6.0};
Control.LinearAlgebraProvider.LUSolveFactored(2, a, matrix.RowCount, ipiv, b);
- AssertHelpers.AlmostEqualRelative(b[0], -1.477272727272726, 14);
- AssertHelpers.AlmostEqualRelative(b[1], -4.318181818181815, 14);
- AssertHelpers.AlmostEqualRelative(b[2], 3.068181818181816, 14);
- AssertHelpers.AlmostEqualRelative(b[3], -4.204545454545451, 14);
- AssertHelpers.AlmostEqualRelative(b[4], -12.499999999999989, 14);
- AssertHelpers.AlmostEqualRelative(b[5], 8.522727272727266, 14);
+ AssertHelpers.AlmostEqualRelative(b[0], -1.477272727272726, 13);
+ AssertHelpers.AlmostEqualRelative(b[1], -4.318181818181815, 13);
+ AssertHelpers.AlmostEqualRelative(b[2], 3.068181818181816, 13);
+ AssertHelpers.AlmostEqualRelative(b[3], -4.204545454545451, 13);
+ AssertHelpers.AlmostEqualRelative(b[4], -12.499999999999989, 13);
+ AssertHelpers.AlmostEqualRelative(b[5], 8.522727272727266, 13);
}
///
@@ -833,7 +833,6 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mq = new DenseMatrix(matrix.RowCount, matrix.ColumnCount, q);
var mr = new DenseMatrix(matrix.ColumnCount, matrix.ColumnCount, r);
-
var a = mq*mr;
for (var row = 0; row < matrix.RowCount; row++)
@@ -918,10 +917,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
}
///
@@ -974,10 +973,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
}
///
@@ -1032,10 +1031,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
}
///
@@ -1092,10 +1091,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
}
///
@@ -1144,10 +1143,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
}
///
@@ -1200,10 +1199,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
}
///
@@ -1258,10 +1257,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
}
///
@@ -1318,10 +1317,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 13);
+ AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 13);
+ AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 13);
}
///
@@ -1559,12 +1558,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mx = new DenseMatrix(matrix.ColumnCount, 2, x);
var mb = matrix*mx;
- AssertHelpers.AlmostEqualRelative(mb[0, 0], b[0], 13);
- AssertHelpers.AlmostEqualRelative(mb[1, 0], b[1], 13);
- AssertHelpers.AlmostEqualRelative(mb[2, 0], b[2], 13);
- AssertHelpers.AlmostEqualRelative(mb[0, 1], b[3], 13);
- AssertHelpers.AlmostEqualRelative(mb[1, 1], b[4], 13);
- AssertHelpers.AlmostEqualRelative(mb[2, 1], b[5], 13);
+ AssertHelpers.AlmostEqual(mb[0, 0], b[0], 13);
+ AssertHelpers.AlmostEqual(mb[1, 0], b[1], 13);
+ AssertHelpers.AlmostEqual(mb[2, 0], b[2], 13);
+ AssertHelpers.AlmostEqual(mb[0, 1], b[3], 13);
+ AssertHelpers.AlmostEqual(mb[1, 1], b[4], 13);
+ AssertHelpers.AlmostEqual(mb[2, 1], b[5], 13);
}
///
@@ -1586,10 +1585,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqual(test[0, 0], x[0], 14);
+ AssertHelpers.AlmostEqual(test[1, 0], x[1], 14);
+ AssertHelpers.AlmostEqual(test[0, 1], x[2], 14);
+ AssertHelpers.AlmostEqual(test[1, 1], x[3], 14);
}
///
@@ -1616,12 +1615,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mx = new DenseMatrix(matrix.ColumnCount, 2, x);
var mb = matrix*mx;
- AssertHelpers.AlmostEqualRelative(mb[0, 0], b[0], 13);
- AssertHelpers.AlmostEqualRelative(mb[1, 0], b[1], 13);
- AssertHelpers.AlmostEqualRelative(mb[2, 0], b[2], 13);
- AssertHelpers.AlmostEqualRelative(mb[0, 1], b[3], 13);
- AssertHelpers.AlmostEqualRelative(mb[1, 1], b[4], 13);
- AssertHelpers.AlmostEqualRelative(mb[2, 1], b[5], 13);
+ AssertHelpers.AlmostEqual(mb[0, 0], b[0], 13);
+ AssertHelpers.AlmostEqual(mb[1, 0], b[1], 13);
+ AssertHelpers.AlmostEqual(mb[2, 0], b[2], 13);
+ AssertHelpers.AlmostEqual(mb[0, 1], b[3], 13);
+ AssertHelpers.AlmostEqual(mb[1, 1], b[4], 13);
+ AssertHelpers.AlmostEqual(mb[2, 1], b[5], 13);
}
///
@@ -1648,10 +1647,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Double
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 14);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 14);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 14);
+ AssertHelpers.AlmostEqual(test[0, 0], x[0], 14);
+ AssertHelpers.AlmostEqual(test[1, 0], x[1], 14);
+ AssertHelpers.AlmostEqual(test[0, 1], x[2], 14);
+ AssertHelpers.AlmostEqual(test[1, 1], x[3], 14);
}
[TestCase("Wide10x50000", "Tall50000x10")]
diff --git a/src/UnitTests/LinearAlgebraProviderTests/Single/LinearAlgebraProviderTests.cs b/src/UnitTests/LinearAlgebraProviderTests/Single/LinearAlgebraProviderTests.cs
index f1376f6b..3a52ff78 100644
--- a/src/UnitTests/LinearAlgebraProviderTests/Single/LinearAlgebraProviderTests.cs
+++ b/src/UnitTests/LinearAlgebraProviderTests/Single/LinearAlgebraProviderTests.cs
@@ -836,7 +836,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Single
var q = new float[matrix.RowCount*matrix.ColumnCount];
Array.Copy(matrix.Values, q, q.Length);
- var work = new float[matrix.RowCount*matrix.ColumnCount];
+ var work = new float[matrix.ColumnCount*Control.BlockSize];
Control.LinearAlgebraProvider.ThinQRFactor(q, matrix.RowCount, matrix.ColumnCount, r, tau, work);
var mq = new DenseMatrix(matrix.RowCount, matrix.ColumnCount, q);
@@ -864,7 +864,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Single
var q = new float[matrix.RowCount*matrix.ColumnCount];
Array.Copy(matrix.Values, q, q.Length);
- var work = new float[matrix.RowCount*matrix.ColumnCount];
+ var work = new float[matrix.ColumnCount*Control.BlockSize];
Control.LinearAlgebraProvider.ThinQRFactor(q, matrix.RowCount, matrix.ColumnCount, r, tau, work);
var mq = new DenseMatrix(matrix.RowCount, matrix.ColumnCount, q);
@@ -1566,12 +1566,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Single
var mx = new DenseMatrix(matrix.ColumnCount, 2, x);
var mb = matrix*mx;
- AssertHelpers.AlmostEqualRelative(mb[0, 0], b[0], 5);
- AssertHelpers.AlmostEqualRelative(mb[1, 0], b[1], 5);
- AssertHelpers.AlmostEqualRelative(mb[2, 0], b[2], 4);
- AssertHelpers.AlmostEqualRelative(mb[0, 1], b[3], 4);
- AssertHelpers.AlmostEqualRelative(mb[1, 1], b[4], 5);
- AssertHelpers.AlmostEqualRelative(mb[2, 1], b[5], 5);
+ AssertHelpers.AlmostEqual(mb[0, 0], b[0], 5);
+ AssertHelpers.AlmostEqual(mb[1, 0], b[1], 5);
+ AssertHelpers.AlmostEqual(mb[2, 0], b[2], 4);
+ AssertHelpers.AlmostEqual(mb[0, 1], b[3], 4);
+ AssertHelpers.AlmostEqual(mb[1, 1], b[4], 4);
+ AssertHelpers.AlmostEqual(mb[2, 1], b[5], 4);
}
///
@@ -1593,10 +1593,10 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Single
var mb = new DenseMatrix(matrix.RowCount, 2, b);
var test = (matrix.Transpose()*matrix).Inverse()*matrix.Transpose()*mb;
- AssertHelpers.AlmostEqualRelative(test[0, 0], x[0], 5);
- AssertHelpers.AlmostEqualRelative(test[1, 0], x[1], 5);
- AssertHelpers.AlmostEqualRelative(test[0, 1], x[2], 5);
- AssertHelpers.AlmostEqualRelative(test[1, 1], x[3], 5);
+ AssertHelpers.AlmostEqual(test[0, 0], x[0], 5);
+ AssertHelpers.AlmostEqual(test[1, 0], x[1], 5);
+ AssertHelpers.AlmostEqual(test[0, 1], x[2], 5);
+ AssertHelpers.AlmostEqual(test[1, 1], x[3], 5);
}
///
@@ -1623,12 +1623,12 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraProviderTests.Single
var mx = new DenseMatrix(matrix.ColumnCount, 2, x);
var mb = matrix*mx;
- AssertHelpers.AlmostEqualRelative(mb[0, 0], b[0], 5);
- AssertHelpers.AlmostEqualRelative(mb[1, 0], b[1], 5);
- AssertHelpers.AlmostEqualRelative(mb[2, 0], b[2], 4);
- AssertHelpers.AlmostEqualRelative(mb[0, 1], b[3], 4);
- AssertHelpers.AlmostEqualRelative(mb[1, 1], b[4], 5);
- AssertHelpers.AlmostEqualRelative(mb[2, 1], b[5], 5);
+ AssertHelpers.AlmostEqual(mb[0, 0], b[0], 5);
+ AssertHelpers.AlmostEqual(mb[1, 0], b[1], 5);
+ AssertHelpers.AlmostEqual(mb[2, 0], b[2], 4);
+ AssertHelpers.AlmostEqual(mb[0, 1], b[3], 4);
+ AssertHelpers.AlmostEqual(mb[1, 1], b[4], 4);
+ AssertHelpers.AlmostEqual(mb[2, 1], b[5], 4);
}
///
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.Arithmetic.cs b/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.Arithmetic.cs
index 2d450e16..7c371dee 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.Arithmetic.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.Arithmetic.cs
@@ -429,7 +429,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 12);
}
}
}
@@ -455,7 +455,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 12);
}
}
}
@@ -489,7 +489,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 14);
}
}
}
@@ -527,7 +527,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 12);
}
}
}
@@ -567,7 +567,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 12);
}
}
}
@@ -666,7 +666,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 12);
}
}
}
@@ -704,7 +704,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 12);
}
}
}
@@ -843,7 +843,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
for (var j = 0; j < result.ColumnCount; j++)
{
var col = result.Column(j);
- AssertHelpers.AlmostEqualRelative(Complex.One, col.Norm(p), 12);
+ AssertHelpers.AlmostEqual(Complex.One, col.Norm(p), 12);
}
}
@@ -868,7 +868,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
for (var i = 0; i < matrix.RowCount; i++)
{
var row = matrix.Row(i);
- AssertHelpers.AlmostEqualRelative(Complex.One, row.Norm(p), 12);
+ AssertHelpers.AlmostEqual(Complex.One, row.Norm(p), 12);
}
}
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.cs
index 0e8d70fa..1161c4a1 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.cs
@@ -140,12 +140,13 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex
public virtual void CanComputeL2Norm()
{
var matrix = TestMatrices["Square3x3"];
- AssertHelpers.AlmostEqualRelative(10.638175225153, matrix.L2Norm(), 14);
+ AssertHelpers.AlmostEqualRelative(10.638175225153, matrix.L2Norm(), 12);
matrix = TestMatrices["Wide2x3"];
- AssertHelpers.AlmostEqualRelative(5.2058554445283, matrix.L2Norm(), 14);
+ AssertHelpers.AlmostEqualRelative(5.2058554445283, matrix.L2Norm(), 12);
+
matrix = TestMatrices["Tall3x2"];
- AssertHelpers.AlmostEqualRelative(7.35826643761172, matrix.L2Norm(), 14);
+ AssertHelpers.AlmostEqualRelative(7.35826643761172, matrix.L2Norm(), 12);
}
///
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Solvers/Iterative/TFQMRTest.cs b/src/UnitTests/LinearAlgebraTests/Complex/Solvers/Iterative/TFQMRTest.cs
index 701f6882..753ac4a8 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Solvers/Iterative/TFQMRTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Solvers/Iterative/TFQMRTest.cs
@@ -120,10 +120,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Solvers.Iterativ
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, (y[i] - z[i]).Magnitude, "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
@@ -164,10 +161,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Solvers.Iterativ
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, (y[i] - z[i]).Magnitude, "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
@@ -241,10 +235,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Solvers.Iterativ
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, (y[i] - z[i]).Magnitude, "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Solvers/IteratorTest.cs b/src/UnitTests/LinearAlgebraTests/Complex/Solvers/IteratorTest.cs
index 290f0c44..0398f145 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Solvers/IteratorTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Solvers/IteratorTest.cs
@@ -31,7 +31,6 @@
using System;
using System.Collections.Generic;
using MathNet.Numerics.LinearAlgebra;
-using MathNet.Numerics.LinearAlgebra.Complex;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs b/src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
index c8dcde6f..2228f52e 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
@@ -30,7 +30,6 @@
using System;
using MathNet.Numerics.LinearAlgebra;
-using MathNet.Numerics.LinearAlgebra.Complex;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/ResidualStopCriteriumTest.cs b/src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/ResidualStopCriteriumTest.cs
index 3a867af8..26c0aeb1 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/ResidualStopCriteriumTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/ResidualStopCriteriumTest.cs
@@ -31,7 +31,6 @@
using System;
using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Complex;
-using MathNet.Numerics.LinearAlgebra.Complex.Solvers;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/Factorization/GramSchmidtTests.cs b/src/UnitTests/LinearAlgebraTests/Complex32/Factorization/GramSchmidtTests.cs
index 47a710c1..7341b9b8 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex32/Factorization/GramSchmidtTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex32/Factorization/GramSchmidtTests.cs
@@ -398,7 +398,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32.Factorization
{
for (var j = 0; j < matrixX.ColumnCount; j++)
{
- AssertHelpers.AlmostEqual(test[i, j], matrixX[i, j], 6);
+ AssertHelpers.AlmostEqual(test[i, j], matrixX[i, j], 5);
}
}
@@ -432,7 +432,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32.Factorization
for (var i = 0; i < vectorX.Count; i++)
{
- AssertHelpers.AlmostEqual(test[i], vectorX[i], 6);
+ AssertHelpers.AlmostEqual(test[i], vectorX[i], 5);
}
// Make sure A didn't change.
diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.Arithmetic.cs b/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.Arithmetic.cs
index 98aecf1e..71688d77 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.Arithmetic.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.Arithmetic.cs
@@ -425,7 +425,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 5);
}
}
}
@@ -451,7 +451,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 5);
}
}
}
@@ -485,7 +485,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 5);
}
}
}
@@ -523,7 +523,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 5);
}
}
}
@@ -563,7 +563,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 5);
}
}
}
@@ -584,7 +584,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
var ar = matrix.Column(j);
var dot = ar * x;
- AssertHelpers.AlmostEqualRelative(dot, y[j], 6);
+ AssertHelpers.AlmostEqual(dot, y[j], 5);
}
}
@@ -603,7 +603,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
var ar = matrix.Column(j);
var dot = ar * x;
- AssertHelpers.AlmostEqualRelative(dot, y[j], 6);
+ AssertHelpers.AlmostEqual(dot, y[j], 5);
}
}
@@ -625,7 +625,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
var ar = matrix.Column(j);
var dot = ar * y;
- AssertHelpers.AlmostEqualRelative(dot, x[j], 6);
+ AssertHelpers.AlmostEqual(dot, x[j], 5);
}
}
@@ -662,7 +662,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 5);
}
}
}
@@ -700,7 +700,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 5);
}
}
}
@@ -839,7 +839,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
for (var j = 0; j < result.ColumnCount; j++)
{
var col = result.Column(j);
- AssertHelpers.AlmostEqualRelative(1d, col.Norm(p), 6);
+ AssertHelpers.AlmostEqual(1d, col.Norm(p), 5);
}
}
@@ -864,7 +864,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
for (var i = 0; i < matrix.RowCount; i++)
{
var row = matrix.Row(i);
- AssertHelpers.AlmostEqualRelative(1d, row.Norm(p), 6);
+ AssertHelpers.AlmostEqual(1d, row.Norm(p), 5);
}
}
diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.cs
index 313c7217..936977a0 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.cs
@@ -92,13 +92,13 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32
public virtual void CanComputeFrobeniusNorm()
{
var matrix = TestMatrices["Square3x3"];
- AssertHelpers.AlmostEqual(11.1427106217473f, matrix.FrobeniusNorm(), 6);
+ AssertHelpers.AlmostEqual(11.1427106217473f, matrix.FrobeniusNorm(), 5);
matrix = TestMatrices["Wide2x3"];
- AssertHelpers.AlmostEqual(5.29055762656452f, matrix.FrobeniusNorm(), 6);
+ AssertHelpers.AlmostEqual(5.29055762656452f, matrix.FrobeniusNorm(), 5);
matrix = TestMatrices["Tall3x2"];
- AssertHelpers.AlmostEqual(7.86574853399217, matrix.FrobeniusNorm(), 6);
+ AssertHelpers.AlmostEqual(7.86574853399217, matrix.FrobeniusNorm(), 5);
}
///
diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/Iterative/TFQMRTest.cs b/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/Iterative/TFQMRTest.cs
index 929d1529..6421f5a6 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/Iterative/TFQMRTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/Iterative/TFQMRTest.cs
@@ -116,10 +116,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32.Solvers.Iterat
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, (y[i] - z[i]).Magnitude, "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
@@ -160,10 +157,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32.Solvers.Iterat
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, (y[i] - z[i]).Magnitude, "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
@@ -237,10 +231,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32.Solvers.Iterat
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, (y[i] - z[i]).Magnitude, "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/IteratorTest.cs b/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/IteratorTest.cs
index 19aa3309..e7f8855d 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/IteratorTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/IteratorTest.cs
@@ -31,7 +31,6 @@
using System;
using System.Collections.Generic;
using MathNet.Numerics.LinearAlgebra;
-using MathNet.Numerics.LinearAlgebra.Complex32;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs b/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
index a65e97f3..efb4bb41 100644
--- a/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
@@ -30,7 +30,6 @@
using System;
using MathNet.Numerics.LinearAlgebra;
-using MathNet.Numerics.LinearAlgebra.Complex32;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Double/Factorization/QRTests.cs b/src/UnitTests/LinearAlgebraTests/Double/Factorization/QRTests.cs
index 8b95d7a7..e1bb6e93 100644
--- a/src/UnitTests/LinearAlgebraTests/Double/Factorization/QRTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Double/Factorization/QRTests.cs
@@ -473,7 +473,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Factorization
// Check the reconstruction.
for (var i = 0; i < order; i++)
{
- AssertHelpers.AlmostEqualRelative(vectorb[i], matrixBReconstruct[i], 9);
+ AssertHelpers.AlmostEqual(vectorb[i], matrixBReconstruct[i], 9);
}
// Make sure A didn't change.
@@ -518,7 +518,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Factorization
{
for (var j = 0; j < matrixB.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixB[i, j], matrixBReconstruct[i, j], 9);
+ AssertHelpers.AlmostEqual(matrixB[i, j], matrixBReconstruct[i, j], 9);
}
}
@@ -559,7 +559,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Factorization
// Check the reconstruction.
for (var i = 0; i < vectorb.Count; i++)
{
- AssertHelpers.AlmostEqualRelative(vectorb[i], matrixBReconstruct[i], 9);
+ AssertHelpers.AlmostEqual(vectorb[i], matrixBReconstruct[i], 9);
}
// Make sure A didn't change.
@@ -613,7 +613,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Factorization
{
for (var j = 0; j < matrixB.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixB[i, j], matrixBReconstruct[i, j], 9);
+ AssertHelpers.AlmostEqual(matrixB[i, j], matrixBReconstruct[i, j], 9);
}
}
@@ -699,7 +699,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Factorization
for (var i = 0; i < vectorX.Count; i++)
{
- AssertHelpers.AlmostEqualRelative(test[i], vectorX[i], 9);
+ AssertHelpers.AlmostEqual(test[i], vectorX[i], 9);
}
// Make sure A didn't change.
diff --git a/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.Arithmetic.cs b/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.Arithmetic.cs
index 3937de25..80fb7e8c 100644
--- a/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.Arithmetic.cs
+++ b/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.Arithmetic.cs
@@ -419,7 +419,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 15);
}
}
}
@@ -445,7 +445,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 15);
}
}
}
@@ -479,7 +479,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 15);
}
}
}
@@ -517,7 +517,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 15);
}
}
}
@@ -557,7 +557,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 15);
}
}
}
@@ -656,7 +656,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 15);
}
}
}
@@ -694,7 +694,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 15);
+ AssertHelpers.AlmostEqual(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 15);
}
}
}
@@ -1021,7 +1021,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var column = 0; column < matrix.ColumnCount; column++)
{
- AssertHelpers.AlmostEqualRelative(matrix[row, column] % 3.2, mod[row, column], 14);
+ AssertHelpers.AlmostEqual(matrix[row, column] % 3.2, mod[row, column], 14);
}
}
}
@@ -1040,7 +1040,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var column = 0; column < matrix.ColumnCount; column++)
{
- AssertHelpers.AlmostEqualRelative(matrix[row, column] % 3.2, mod[row, column], 14);
+ AssertHelpers.AlmostEqual(matrix[row, column] % 3.2, mod[row, column], 14);
}
}
}
@@ -1059,7 +1059,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var column = 0; column < matrix.ColumnCount; column++)
{
- AssertHelpers.AlmostEqualRelative(data[row, column] % 3.2, matrix[row, column], 14);
+ AssertHelpers.AlmostEqual(data[row, column] % 3.2, matrix[row, column], 14);
}
}
}
@@ -1076,7 +1076,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double
{
for (var column = 0; column < matrix.ColumnCount; column++)
{
- AssertHelpers.AlmostEqualRelative(matrix[row, column] % 3.2, mod[row, column], 14);
+ AssertHelpers.AlmostEqual(matrix[row, column] % 3.2, mod[row, column], 14);
}
}
}
diff --git a/src/UnitTests/LinearAlgebraTests/Double/Solvers/Iterative/TFQMRTest.cs b/src/UnitTests/LinearAlgebraTests/Double/Solvers/Iterative/TFQMRTest.cs
index 46f26cf2..10ed3716 100644
--- a/src/UnitTests/LinearAlgebraTests/Double/Solvers/Iterative/TFQMRTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Double/Solvers/Iterative/TFQMRTest.cs
@@ -114,10 +114,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Solvers.Iterative
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, Math.Abs(y[i] - z[i]), "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
@@ -158,10 +155,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Solvers.Iterative
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, Math.Abs(y[i] - z[i]), "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
@@ -235,10 +229,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Solvers.Iterative
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, Math.Abs(y[i] - z[i]), "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
diff --git a/src/UnitTests/LinearAlgebraTests/Double/Solvers/IteratorTest.cs b/src/UnitTests/LinearAlgebraTests/Double/Solvers/IteratorTest.cs
index 7b37abf8..a9b66d01 100644
--- a/src/UnitTests/LinearAlgebraTests/Double/Solvers/IteratorTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Double/Solvers/IteratorTest.cs
@@ -31,7 +31,6 @@
using System;
using System.Collections.Generic;
using MathNet.Numerics.LinearAlgebra;
-using MathNet.Numerics.LinearAlgebra.Double;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs b/src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
index 517ab1ea..79f04b72 100644
--- a/src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
@@ -31,7 +31,6 @@
using System;
using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Double;
-using MathNet.Numerics.LinearAlgebra.Double.Solvers;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs b/src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
index c17af6a9..a4f54af1 100644
--- a/src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
@@ -30,7 +30,6 @@
using System;
using MathNet.Numerics.LinearAlgebra;
-using MathNet.Numerics.LinearAlgebra.Double;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Single/Factorization/EvdTests.cs b/src/UnitTests/LinearAlgebraTests/Single/Factorization/EvdTests.cs
index c49cc43a..8d03f4d7 100644
--- a/src/UnitTests/LinearAlgebraTests/Single/Factorization/EvdTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Single/Factorization/EvdTests.cs
@@ -213,7 +213,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Factorization
// Check the reconstruction.
for (var i = 0; i < vectorb.Count; i++)
{
- Assert.AreEqual(vectorb[i], matrixBReconstruct[i], 1e-3);
+ Assert.AreEqual(vectorb[i], matrixBReconstruct[i], 1e-2);
}
// Make sure A didn't change.
@@ -301,7 +301,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Factorization
// Check the reconstruction.
for (var i = 0; i < vectorb.Count; i++)
{
- Assert.AreEqual(vectorb[i], matrixBReconstruct[i], 1e-3);
+ Assert.AreEqual(vectorb[i], matrixBReconstruct[i], 1e-2);
}
// Make sure A didn't change.
diff --git a/src/UnitTests/LinearAlgebraTests/Single/Factorization/GramSchmidtTests.cs b/src/UnitTests/LinearAlgebraTests/Single/Factorization/GramSchmidtTests.cs
index 1ff4ce2e..6a339911 100644
--- a/src/UnitTests/LinearAlgebraTests/Single/Factorization/GramSchmidtTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Single/Factorization/GramSchmidtTests.cs
@@ -372,7 +372,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Factorization
{
for (var j = 0; j < matrixX.ColumnCount; j++)
{
- AssertHelpers.AlmostEqual(test[i, j], matrixX[i, j], 6);
+ AssertHelpers.AlmostEqual(test[i, j], matrixX[i, j], 5);
}
}
@@ -406,7 +406,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Factorization
for (var i = 0; i < vectorX.Count; i++)
{
- AssertHelpers.AlmostEqual(test[i], vectorX[i], 6);
+ AssertHelpers.AlmostEqual(test[i], vectorX[i], 5);
}
// Make sure A didn't change.
diff --git a/src/UnitTests/LinearAlgebraTests/Single/Factorization/QRTests.cs b/src/UnitTests/LinearAlgebraTests/Single/Factorization/QRTests.cs
index d24dc5a1..f533847f 100644
--- a/src/UnitTests/LinearAlgebraTests/Single/Factorization/QRTests.cs
+++ b/src/UnitTests/LinearAlgebraTests/Single/Factorization/QRTests.cs
@@ -474,7 +474,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Factorization
// Check the reconstruction.
for (var i = 0; i < order; i++)
{
- AssertHelpers.AlmostEqualRelative(vectorb[i], matrixBReconstruct[i], 3);
+ AssertHelpers.AlmostEqual(vectorb[i], matrixBReconstruct[i], 3);
}
// Make sure A didn't change.
@@ -560,7 +560,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Factorization
// Check the reconstruction.
for (var i = 0; i < vectorb.Count; i++)
{
- AssertHelpers.AlmostEqualRelative(vectorb[i], matrixBReconstruct[i], 3);
+ AssertHelpers.AlmostEqual(vectorb[i], matrixBReconstruct[i], 3);
}
// Make sure A didn't change.
@@ -664,7 +664,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Factorization
{
for (var j = 0; j < matrixX.ColumnCount; j++)
{
- AssertHelpers.AlmostEqual(test[i, j], matrixX[i, j], 6);
+ AssertHelpers.AlmostEqual(test[i, j], matrixX[i, j], 5);
}
}
@@ -700,7 +700,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Factorization
for (var i = 0; i < vectorX.Count; i++)
{
- AssertHelpers.AlmostEqual(test[i], vectorX[i], 6);
+ AssertHelpers.AlmostEqual(test[i], vectorX[i], 5);
}
// Make sure A didn't change.
diff --git a/src/UnitTests/LinearAlgebraTests/Single/MatrixTests.Arithmetic.cs b/src/UnitTests/LinearAlgebraTests/Single/MatrixTests.Arithmetic.cs
index bb4e35e8..00ba92b8 100644
--- a/src/UnitTests/LinearAlgebraTests/Single/MatrixTests.Arithmetic.cs
+++ b/src/UnitTests/LinearAlgebraTests/Single/MatrixTests.Arithmetic.cs
@@ -419,7 +419,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 5);
}
}
}
@@ -445,7 +445,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 5);
}
}
}
@@ -479,7 +479,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 6);
}
}
}
@@ -517,7 +517,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Row(j), matrixC[i, j], 5);
}
}
}
@@ -557,7 +557,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Row(i) * matrixB.Column(j), matrixC[i, j], 5);
}
}
}
@@ -576,7 +576,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
for (var j = 0; j < matrix.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrix.Column(j) * x, y[j], 6);
+ AssertHelpers.AlmostEqual(matrix.Column(j) * x, y[j], 6);
}
}
@@ -593,7 +593,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
for (var j = 0; j < matrix.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrix.Column(j) * x, y[j], 6);
+ AssertHelpers.AlmostEqual(matrix.Column(j) * x, y[j], 6);
}
}
@@ -613,7 +613,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
y = new DenseVector(new[] { 1.0f, 2.0f, 3.0f });
for (var j = 0; j < matrix.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrix.Column(j) * y, x[j], 6);
+ AssertHelpers.AlmostEqual(matrix.Column(j) * y, x[j], 6);
}
}
@@ -650,7 +650,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 5);
}
}
}
@@ -688,7 +688,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var j = 0; j < matrixC.ColumnCount; j++)
{
- AssertHelpers.AlmostEqualRelative(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 6);
+ AssertHelpers.AlmostEqual(matrixA.Column(i) * matrixB.Column(j), matrixC[i, j], 5);
}
}
}
@@ -1015,7 +1015,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var column = 0; column < matrix.ColumnCount; column++)
{
- AssertHelpers.AlmostEqualRelative(matrix[row, column] % 3.2f, mod[row, column], 6);
+ AssertHelpers.AlmostEqual(matrix[row, column] % 3.2f, mod[row, column], 6);
}
}
}
@@ -1034,7 +1034,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var column = 0; column < matrix.ColumnCount; column++)
{
- AssertHelpers.AlmostEqualRelative(matrix[row, column] % 3.2f, mod[row, column], 6);
+ AssertHelpers.AlmostEqual(matrix[row, column] % 3.2f, mod[row, column], 6);
}
}
}
@@ -1053,7 +1053,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var column = 0; column < matrix.ColumnCount; column++)
{
- AssertHelpers.AlmostEqualRelative(data[row, column] % 3.2f, matrix[row, column], 6);
+ AssertHelpers.AlmostEqual(data[row, column] % 3.2f, matrix[row, column], 6);
}
}
}
@@ -1070,7 +1070,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single
{
for (var column = 0; column < matrix.ColumnCount; column++)
{
- AssertHelpers.AlmostEqualRelative(matrix[row, column] % 3.2f, mod[row, column], 6);
+ AssertHelpers.AlmostEqual(matrix[row, column] % 3.2f, mod[row, column], 6);
}
}
}
diff --git a/src/UnitTests/LinearAlgebraTests/Single/Solvers/Iterative/TFQMRTest.cs b/src/UnitTests/LinearAlgebraTests/Single/Solvers/Iterative/TFQMRTest.cs
index 59046b3b..51eaaff3 100644
--- a/src/UnitTests/LinearAlgebraTests/Single/Solvers/Iterative/TFQMRTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Single/Solvers/Iterative/TFQMRTest.cs
@@ -114,10 +114,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Solvers.Iterative
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, Math.Abs(y[i] - z[i]), "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
@@ -158,10 +155,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Solvers.Iterative
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, Math.Abs(y[i] - z[i]), "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
@@ -235,10 +229,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Solvers.Iterative
Assert.IsTrue(monitor.Status == IterationStatus.Converged, "#04");
// Now compare the vectors
- for (var i = 0; i < y.Count; i++)
- {
- Assert.GreaterOrEqual(ConvergenceBoundary, Math.Abs(y[i] - z[i]), "#05-" + i);
- }
+ Assert.LessOrEqual(Distance.Chebyshev(y, z), 2*ConvergenceBoundary);
}
///
diff --git a/src/UnitTests/LinearAlgebraTests/Single/Solvers/IteratorTest.cs b/src/UnitTests/LinearAlgebraTests/Single/Solvers/IteratorTest.cs
index eb481d94..0aa5ffe5 100644
--- a/src/UnitTests/LinearAlgebraTests/Single/Solvers/IteratorTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Single/Solvers/IteratorTest.cs
@@ -31,7 +31,6 @@
using System;
using System.Collections.Generic;
using MathNet.Numerics.LinearAlgebra;
-using MathNet.Numerics.LinearAlgebra.Single;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs b/src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
index c91c6476..3a8a2b57 100644
--- a/src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
@@ -31,7 +31,6 @@
using System;
using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Single;
-using MathNet.Numerics.LinearAlgebra.Single.Solvers;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;
diff --git a/src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs b/src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
index 147003be..e5a4c403 100644
--- a/src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
+++ b/src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
@@ -30,7 +30,6 @@
using System;
using MathNet.Numerics.LinearAlgebra;
-using MathNet.Numerics.LinearAlgebra.Single;
using MathNet.Numerics.LinearAlgebra.Solvers;
using NUnit.Framework;