Browse Source

LA: iterative solver stop criterium cosmetics, fix potential race (minor)

optimization-1
Christoph Ruegg 13 years ago
parent
commit
00cf3d197e
  1. 51
      src/Numerics/LinearAlgebra/Complex/Solvers/CompositeSolver.cs
  2. 2
      src/Numerics/LinearAlgebra/Complex/Solvers/StopCriterium/DivergenceStopCriterium.cs
  3. 2
      src/Numerics/LinearAlgebra/Complex/Solvers/StopCriterium/FailureStopCriterium.cs
  4. 2
      src/Numerics/LinearAlgebra/Complex/Solvers/StopCriterium/ResidualStopCriterium.cs
  5. 51
      src/Numerics/LinearAlgebra/Complex32/Solvers/CompositeSolver.cs
  6. 2
      src/Numerics/LinearAlgebra/Complex32/Solvers/StopCriterium/DivergenceStopCriterium.cs
  7. 2
      src/Numerics/LinearAlgebra/Complex32/Solvers/StopCriterium/FailureStopCriterium.cs
  8. 2
      src/Numerics/LinearAlgebra/Complex32/Solvers/StopCriterium/ResidualStopCriterium.cs
  9. 51
      src/Numerics/LinearAlgebra/Double/Solvers/CompositeSolver.cs
  10. 2
      src/Numerics/LinearAlgebra/Double/Solvers/StopCriterium/DivergenceStopCriterium.cs
  11. 2
      src/Numerics/LinearAlgebra/Double/Solvers/StopCriterium/FailureStopCriterium.cs
  12. 2
      src/Numerics/LinearAlgebra/Double/Solvers/StopCriterium/ResidualStopCriterium.cs
  13. 51
      src/Numerics/LinearAlgebra/Single/Solvers/CompositeSolver.cs
  14. 2
      src/Numerics/LinearAlgebra/Single/Solvers/StopCriterium/DivergenceStopCriterium.cs
  15. 2
      src/Numerics/LinearAlgebra/Single/Solvers/StopCriterium/FailureStopCriterium.cs
  16. 2
      src/Numerics/LinearAlgebra/Single/Solvers/StopCriterium/ResidualStopCriterium.cs
  17. 2
      src/Numerics/LinearAlgebra/Solvers/IIterationStopCriterium.cs
  18. 2
      src/Numerics/LinearAlgebra/Solvers/IterationCountStopCriterium.cs
  19. 2
      src/Numerics/LinearAlgebra/Solvers/Iterator.cs
  20. 2
      src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
  21. 2
      src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/FailureStopCriteriumTest.cs
  22. 2
      src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
  23. 2
      src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/ResidualStopCriteriumTest.cs
  24. 2
      src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
  25. 2
      src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/FailureStopCriteriumTest.cs
  26. 2
      src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
  27. 2
      src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/ResidualStopCriteriumTest.cs
  28. 2
      src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
  29. 2
      src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/FailureStopCriteriumTest.cs
  30. 2
      src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
  31. 2
      src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/ResidualStopCriteriumTest.cs
  32. 2
      src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs
  33. 2
      src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/FailureStopCriteriumTest.cs
  34. 2
      src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs
  35. 2
      src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/ResidualStopCriteriumTest.cs

51
src/Numerics/LinearAlgebra/Complex/Solvers/CompositeSolver.cs

@ -400,9 +400,10 @@ namespace MathNet.Numerics.LinearAlgebra.Complex.Solvers
public void StopSolve()
{
_hasBeenStopped = true;
if (_currentSolver != null)
var currentSolver = _currentSolver;
if (currentSolver != null)
{
_currentSolver.StopSolve();
currentSolver.StopSolve();
}
}
@ -415,11 +416,6 @@ namespace MathNet.Numerics.LinearAlgebra.Complex.Solvers
/// <returns>The result vector, <c>x</c>.</returns>
public Vector<Complex> Solve(Matrix<Complex> matrix, Vector<Complex> vector)
{
if (vector == null)
{
throw new ArgumentNullException();
}
var result = new DenseVector(matrix.RowCount);
Solve(matrix, vector, result);
return result;
@ -440,27 +436,11 @@ namespace MathNet.Numerics.LinearAlgebra.Complex.Solvers
_hasBeenStopped = false;
_currentSolver = null;
// Error checks
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (matrix.RowCount != matrix.ColumnCount)
{
throw new ArgumentException(Resources.ArgumentMatrixSquare, "matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
if (result == null)
{
throw new ArgumentNullException("result");
}
if (result.Count != input.Count)
{
throw new ArgumentException(Resources.ArgumentVectorsSameLength);
@ -576,16 +556,6 @@ namespace MathNet.Numerics.LinearAlgebra.Complex.Solvers
/// <returns>The result matrix, <c>X</c>.</returns>
public Matrix<Complex> Solve(Matrix<Complex> matrix, Matrix<Complex> input)
{
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
var result = matrix.CreateMatrix(input.RowCount, input.ColumnCount);
Solve(matrix, input, result);
return result;
@ -600,21 +570,6 @@ namespace MathNet.Numerics.LinearAlgebra.Complex.Solvers
/// <param name="result">The result matrix, <c>X</c></param>
public void Solve(Matrix<Complex> matrix, Matrix<Complex> input, Matrix<Complex> result)
{
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
if (result == null)
{
throw new ArgumentNullException("result");
}
if (matrix.RowCount != input.RowCount || input.RowCount != result.RowCount || input.ColumnCount != result.ColumnCount)
{
throw Matrix.DimensionsDontMatch<ArgumentException>(matrix, input, result);

2
src/Numerics/LinearAlgebra/Complex/Solvers/StopCriterium/DivergenceStopCriterium.cs

@ -316,7 +316,7 @@ namespace MathNet.Numerics.LinearAlgebra.Complex.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_lastIteration = DefaultLastIterationNumber;

2
src/Numerics/LinearAlgebra/Complex/Solvers/StopCriterium/FailureStopCriterium.cs

@ -120,7 +120,7 @@ namespace MathNet.Numerics.LinearAlgebra.Complex.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_lastIteration = DefaultLastIterationNumber;

2
src/Numerics/LinearAlgebra/Complex/Solvers/StopCriterium/ResidualStopCriterium.cs

@ -311,7 +311,7 @@ namespace MathNet.Numerics.LinearAlgebra.Complex.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_iterationCount = 0;

51
src/Numerics/LinearAlgebra/Complex32/Solvers/CompositeSolver.cs

@ -392,9 +392,10 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32.Solvers
public void StopSolve()
{
_hasBeenStopped = true;
if (_currentSolver != null)
var currentSolver = _currentSolver;
if (currentSolver != null)
{
_currentSolver.StopSolve();
currentSolver.StopSolve();
}
}
@ -407,11 +408,6 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32.Solvers
/// <returns>The result vector, <c>x</c>.</returns>
public Vector<Numerics.Complex32> Solve(Matrix<Numerics.Complex32> matrix, Vector<Numerics.Complex32> vector)
{
if (vector == null)
{
throw new ArgumentNullException();
}
var result = new DenseVector(matrix.RowCount);
Solve(matrix, vector, result);
return result;
@ -432,27 +428,11 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32.Solvers
_hasBeenStopped = false;
_currentSolver = null;
// Error checks
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (matrix.RowCount != matrix.ColumnCount)
{
throw new ArgumentException(Resources.ArgumentMatrixSquare, "matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
if (result == null)
{
throw new ArgumentNullException("result");
}
if (result.Count != input.Count)
{
throw new ArgumentException(Resources.ArgumentVectorsSameLength);
@ -568,16 +548,6 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32.Solvers
/// <returns>The result matrix, <c>X</c>.</returns>
public Matrix<Numerics.Complex32> Solve(Matrix<Numerics.Complex32> matrix, Matrix<Numerics.Complex32> input)
{
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
var result = matrix.CreateMatrix(input.RowCount, input.ColumnCount);
Solve(matrix, input, result);
return result;
@ -592,21 +562,6 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32.Solvers
/// <param name="result">The result matrix, <c>X</c></param>
public void Solve(Matrix<Numerics.Complex32> matrix, Matrix<Numerics.Complex32> input, Matrix<Numerics.Complex32> result)
{
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
if (result == null)
{
throw new ArgumentNullException("result");
}
if (matrix.RowCount != input.RowCount || input.RowCount != result.RowCount || input.ColumnCount != result.ColumnCount)
{
throw Matrix.DimensionsDontMatch<ArgumentException>(matrix, input, result);

2
src/Numerics/LinearAlgebra/Complex32/Solvers/StopCriterium/DivergenceStopCriterium.cs

@ -311,7 +311,7 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_lastIteration = DefaultLastIterationNumber;

2
src/Numerics/LinearAlgebra/Complex32/Solvers/StopCriterium/FailureStopCriterium.cs

@ -115,7 +115,7 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_lastIteration = DefaultLastIterationNumber;

2
src/Numerics/LinearAlgebra/Complex32/Solvers/StopCriterium/ResidualStopCriterium.cs

@ -306,7 +306,7 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_iterationCount = 0;

51
src/Numerics/LinearAlgebra/Double/Solvers/CompositeSolver.cs

@ -389,9 +389,10 @@ namespace MathNet.Numerics.LinearAlgebra.Double.Solvers
public void StopSolve()
{
_hasBeenStopped = true;
if (_currentSolver != null)
var currentSolver = _currentSolver;
if (currentSolver != null)
{
_currentSolver.StopSolve();
currentSolver.StopSolve();
}
}
@ -404,11 +405,6 @@ namespace MathNet.Numerics.LinearAlgebra.Double.Solvers
/// <returns>The result vector, <c>x</c>.</returns>
public Vector<double> Solve(Matrix<double> matrix, Vector<double> vector)
{
if (vector == null)
{
throw new ArgumentNullException();
}
var result = new DenseVector(matrix.RowCount);
Solve(matrix, vector, result);
return result;
@ -429,27 +425,11 @@ namespace MathNet.Numerics.LinearAlgebra.Double.Solvers
_hasBeenStopped = false;
_currentSolver = null;
// Error checks
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (matrix.RowCount != matrix.ColumnCount)
{
throw new ArgumentException(Resources.ArgumentMatrixSquare, "matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
if (result == null)
{
throw new ArgumentNullException("result");
}
if (result.Count != input.Count)
{
throw new ArgumentException(Resources.ArgumentVectorsSameLength);
@ -565,16 +545,6 @@ namespace MathNet.Numerics.LinearAlgebra.Double.Solvers
/// <returns>The result matrix, <c>X</c>.</returns>
public Matrix<double> Solve(Matrix<double> matrix, Matrix<double> input)
{
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
var result = matrix.CreateMatrix(input.RowCount, input.ColumnCount);
Solve(matrix, input, result);
return result;
@ -589,21 +559,6 @@ namespace MathNet.Numerics.LinearAlgebra.Double.Solvers
/// <param name="result">The result matrix, <c>X</c></param>
public void Solve(Matrix<double> matrix, Matrix<double> input, Matrix<double> result)
{
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
if (result == null)
{
throw new ArgumentNullException("result");
}
if (matrix.RowCount != input.RowCount || input.RowCount != result.RowCount || input.ColumnCount != result.ColumnCount)
{
throw Matrix.DimensionsDontMatch<ArgumentException>(matrix, input, result);

2
src/Numerics/LinearAlgebra/Double/Solvers/StopCriterium/DivergenceStopCriterium.cs

@ -309,7 +309,7 @@ namespace MathNet.Numerics.LinearAlgebra.Double.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_lastIteration = DefaultLastIterationNumber;

2
src/Numerics/LinearAlgebra/Double/Solvers/StopCriterium/FailureStopCriterium.cs

@ -113,7 +113,7 @@ namespace MathNet.Numerics.LinearAlgebra.Double.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_lastIteration = DefaultLastIterationNumber;

2
src/Numerics/LinearAlgebra/Double/Solvers/StopCriterium/ResidualStopCriterium.cs

@ -304,7 +304,7 @@ namespace MathNet.Numerics.LinearAlgebra.Double.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_iterationCount = 0;

51
src/Numerics/LinearAlgebra/Single/Solvers/CompositeSolver.cs

@ -392,9 +392,10 @@ namespace MathNet.Numerics.LinearAlgebra.Single.Solvers
public void StopSolve()
{
_hasBeenStopped = true;
if (_currentSolver != null)
var currentSolver = _currentSolver;
if (currentSolver != null)
{
_currentSolver.StopSolve();
currentSolver.StopSolve();
}
}
@ -407,11 +408,6 @@ namespace MathNet.Numerics.LinearAlgebra.Single.Solvers
/// <returns>The result vector, <c>x</c>.</returns>
public Vector<float> Solve(Matrix<float> matrix, Vector<float> vector)
{
if (vector == null)
{
throw new ArgumentNullException();
}
var result = new DenseVector(matrix.RowCount);
Solve(matrix, vector, result);
return result;
@ -432,27 +428,11 @@ namespace MathNet.Numerics.LinearAlgebra.Single.Solvers
_hasBeenStopped = false;
_currentSolver = null;
// Error checks
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (matrix.RowCount != matrix.ColumnCount)
{
throw new ArgumentException(Resources.ArgumentMatrixSquare, "matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
if (result == null)
{
throw new ArgumentNullException("result");
}
if (result.Count != input.Count)
{
throw new ArgumentException(Resources.ArgumentVectorsSameLength);
@ -568,16 +548,6 @@ namespace MathNet.Numerics.LinearAlgebra.Single.Solvers
/// <returns>The result matrix, <c>X</c>.</returns>
public Matrix<float> Solve(Matrix<float> matrix, Matrix<float> input)
{
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
var result = matrix.CreateMatrix(input.RowCount, input.ColumnCount);
Solve(matrix, input, result);
return result;
@ -592,21 +562,6 @@ namespace MathNet.Numerics.LinearAlgebra.Single.Solvers
/// <param name="result">The result matrix, <c>X</c></param>
public void Solve(Matrix<float> matrix, Matrix<float> input, Matrix<float> result)
{
if (matrix == null)
{
throw new ArgumentNullException("matrix");
}
if (input == null)
{
throw new ArgumentNullException("input");
}
if (result == null)
{
throw new ArgumentNullException("result");
}
if (matrix.RowCount != input.RowCount || input.RowCount != result.RowCount || input.ColumnCount != result.ColumnCount)
{
throw Matrix.DimensionsDontMatch<ArgumentException>(matrix, input, result);

2
src/Numerics/LinearAlgebra/Single/Solvers/StopCriterium/DivergenceStopCriterium.cs

@ -309,7 +309,7 @@ namespace MathNet.Numerics.LinearAlgebra.Single.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_lastIteration = DefaultLastIterationNumber;

2
src/Numerics/LinearAlgebra/Single/Solvers/StopCriterium/FailureStopCriterium.cs

@ -113,7 +113,7 @@ namespace MathNet.Numerics.LinearAlgebra.Single.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_lastIteration = DefaultLastIterationNumber;

2
src/Numerics/LinearAlgebra/Single/Solvers/StopCriterium/ResidualStopCriterium.cs

@ -304,7 +304,7 @@ namespace MathNet.Numerics.LinearAlgebra.Single.Solvers.StopCriterium
/// <summary>
/// Resets the <see cref="IIterationStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
_iterationCount = 0;

2
src/Numerics/LinearAlgebra/Solvers/IIterationStopCriterium.cs

@ -64,7 +64,7 @@ namespace MathNet.Numerics.LinearAlgebra.Solvers
/// <remarks>To implementers: Invoking this method should not clear the user defined
/// property values, only the state that is used to track the progress of the
/// calculation.</remarks>
void ResetToPrecalculationState();
void Reset();
IIterationStopCriterium<T> Clone();
}

2
src/Numerics/LinearAlgebra/Solvers/IterationCountStopCriterium.cs

@ -150,7 +150,7 @@ namespace MathNet.Numerics.LinearAlgebra.Solvers
/// <summary>
/// Resets the <see cref="IterationCountStopCriterium{T}"/> to the pre-calculation state.
/// </summary>
public void ResetToPrecalculationState()
public void Reset()
{
_status = IterationStatus.Indetermined;
}

2
src/Numerics/LinearAlgebra/Solvers/Iterator.cs

@ -175,7 +175,7 @@ namespace MathNet.Numerics.LinearAlgebra.Solvers
foreach (var stopCriterium in _stopCriteria)
{
stopCriterium.ResetToPrecalculationState();
stopCriterium.Reset();
}
}

2
src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs

@ -257,7 +257,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Solvers.StopCrit
Assert.AreEqual(IterationStatus.Diverged, status, "Status check fail.");
// Reset the state
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(Increase, criterium.MaximumRelativeIncrease, "Incorrect maximum");
Assert.AreEqual(Iterations, criterium.MinimumNumberOfIterations, "Incorrect iteration count");

2
src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/FailureStopCriteriumTest.cs

@ -145,7 +145,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Solvers.StopCrit
var status = criterium.DetermineStatus(5, solution, source, residual);
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs

@ -117,7 +117,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Solvers.StopCrit
var status = criterium.DetermineStatus(5, DenseVector.Create(3, i => 1), DenseVector.Create(3, i => 2), DenseVector.Create(3, i => 3));
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Complex/Solvers/StopCriterium/ResidualStopCriteriumTest.cs

@ -261,7 +261,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex.Solvers.StopCrit
var status = criterium.DetermineStatus(5, solution, source, residual);
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs

@ -256,7 +256,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32.Solvers.StopCr
Assert.AreEqual(IterationStatus.Diverged, status, "Status check fail.");
// Reset the state
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(Increase, criterium.MaximumRelativeIncrease, "Incorrect maximum");
Assert.AreEqual(Iterations, criterium.MinimumNumberOfIterations, "Incorrect iteration count");

2
src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/FailureStopCriteriumTest.cs

@ -145,7 +145,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32.Solvers.StopCr
var status = criterium.DetermineStatus(5, solution, source, residual);
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs

@ -117,7 +117,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32.Solvers.StopCr
var status = criterium.DetermineStatus(5, DenseVector.Create(3, i => 1), DenseVector.Create(3, i => 2), DenseVector.Create(3, i => 3));
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Complex32/Solvers/StopCriterium/ResidualStopCriteriumTest.cs

@ -261,7 +261,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32.Solvers.StopCr
var status = criterium.DetermineStatus(5, solution, source, residual);
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs

@ -255,7 +255,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Solvers.StopCrite
Assert.AreEqual(IterationStatus.Diverged, status, "Status check fail.");
// Reset the state
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(Increase, criterium.MaximumRelativeIncrease, "Incorrect maximum");
Assert.AreEqual(Iterations, criterium.MinimumNumberOfIterations, "Incorrect iteration count");

2
src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/FailureStopCriteriumTest.cs

@ -143,7 +143,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Solvers.StopCrite
var status = criterium.DetermineStatus(5, solution, source, residual);
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs

@ -115,7 +115,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Solvers.StopCrite
var status = criterium.DetermineStatus(5, DenseVector.Create(3, i => 1), DenseVector.Create(3, i => 2), DenseVector.Create(3, i => 3));
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Double/Solvers/StopCriterium/ResidualStopCriteriumTest.cs

@ -255,7 +255,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double.Solvers.StopCrite
var status = criterium.DetermineStatus(5, solution, source, residual);
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/DivergenceStopCriteriumTest.cs

@ -255,7 +255,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Solvers.StopCrite
Assert.AreEqual(IterationStatus.Diverged, status, "Status check fail.");
// Reset the state
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(Increase, criterium.MaximumRelativeIncrease, "Incorrect maximum");
Assert.AreEqual(Iterations, criterium.MinimumNumberOfIterations, "Incorrect iteration count");

2
src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/FailureStopCriteriumTest.cs

@ -143,7 +143,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Solvers.StopCrite
var status = criterium.DetermineStatus(5, solution, source, residual);
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/IterationCountStopCriteriumTest.cs

@ -115,7 +115,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Solvers.StopCrite
var status = criterium.DetermineStatus(5, DenseVector.Create(3, i => 1), DenseVector.Create(3, i => 2), DenseVector.Create(3, i => 3));
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

2
src/UnitTests/LinearAlgebraTests/Single/Solvers/StopCriterium/ResidualStopCriteriumTest.cs

@ -255,7 +255,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single.Solvers.StopCrite
var status = criterium.DetermineStatus(5, solution, source, residual);
Assert.AreEqual(IterationStatus.Running, status, "Should be running");
criterium.ResetToPrecalculationState();
criterium.Reset();
Assert.AreEqual(IterationStatus.Indetermined, criterium.Status, "Should not have started");
}

Loading…
Cancel
Save