public void DetermineStatusWithNonMatchingVectorsThrowsArgumentException() { var criterion = new FailureStopCriterion<double>(); Assert.IsNotNull(criterion, "There should be a criterion"); Assert.That(() => criterion.DetermineStatus(1, Vector<double>.Build.Dense(3, 4), Vector<double>.Build.Dense(3, 6), Vector<double>.Build.Dense(4, 4)), Throws.ArgumentException); }
public void Clone() { var criterion = new FailureStopCriterion<Complex>(); Assert.IsNotNull(criterion, "There should be a criterion"); var clone = criterion.Clone(); Assert.IsInstanceOf(typeof (FailureStopCriterion<Complex>), clone, "Wrong criterion type"); }
public void DetermineStatusWithIllegalIterationNumberThrowsArgumentOutOfRangeException() { var criterion = new FailureStopCriterion<double>(); Assert.IsNotNull(criterion, "There should be a criterion"); Assert.That(() => criterion.DetermineStatus(-1, Vector<double>.Build.Dense(3, 4), Vector<double>.Build.Dense(3, 5), Vector<double>.Build.Dense(3, 6)), Throws.TypeOf<ArgumentOutOfRangeException>()); }
public void DetermineStatusWithIllegalIterationNumberThrowsArgumentOutOfRangeException() { var criterion = new FailureStopCriterion <float>(); Assert.IsNotNull(criterion, "There should be a criterion"); Assert.That(() => criterion.DetermineStatus(-1, Vector <float> .Build.Dense(3, 4), Vector <float> .Build.Dense(3, 5), Vector <float> .Build.Dense(3, 6)), Throws.TypeOf <ArgumentOutOfRangeException>()); }
public void DetermineStatusWithNonMatchingVectorsThrowsArgumentException() { var criterion = new FailureStopCriterion <float>(); Assert.IsNotNull(criterion, "There should be a criterion"); Assert.That(() => criterion.DetermineStatus(1, Vector <float> .Build.Dense(3, 4), Vector <float> .Build.Dense(3, 6), Vector <float> .Build.Dense(4, 4)), Throws.ArgumentException); }
public void Clone() { var criterion = new FailureStopCriterion <double>(); Assert.IsNotNull(criterion, "There should be a criterion"); var clone = criterion.Clone(); Assert.IsInstanceOf(typeof(FailureStopCriterion <double>), clone, "Wrong criterion type"); }
public void DetermineStatusWithResidualNaN() { var criterion = new FailureStopCriterion<float>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { 1.0f, 1.0f, 2.0f }); var source = new DenseVector(new[] { 1001.0f, 0, 2003.0f }); var residual = new DenseVector(new[] { 1000, float.NaN, 2001 }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Failure, status, "Should be failed"); }
public void DetermineStatus() { var criterion = new FailureStopCriterion<float>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { 3.0f, 2.0f, 1.0f }); var source = new DenseVector(new[] { 1001.0f, 0.0f, 2003.0f }); var residual = new DenseVector(new[] { 1.0f, 2.0f, 3.0f }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Continue, status, "Should be running"); }
public void DetermineStatusWithResidualNaN() { var criterion = new FailureStopCriterion<Complex32>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { new Complex32(1.0f, 0), new Complex32(1.0f, 0), new Complex32(2.0f, 0) }); var source = new DenseVector(new[] { new Complex32(1001.0f, 0), Complex32.Zero, new Complex32(2003.0f, 0) }); var residual = new DenseVector(new[] { new Complex32(1000, 0), new Complex32(float.NaN, 0), new Complex32(2001, 0) }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Failure, status, "Should be failed"); }
public void DetermineStatus() { var criterion = new FailureStopCriterion<Complex32>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { new Complex32(3.0f, 0), new Complex32(2.0f, 0), new Complex32(1, 0) }); var source = new DenseVector(new[] { new Complex32(1001.0f, 0), Complex32.Zero, new Complex32(2003.0f, 0) }); var residual = new DenseVector(new[] { new Complex32(1.0f, 0), new Complex32(2.0f, 0), new Complex32(3, 0) }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Continue, status, "Should be running"); }
public void DetermineStatusWithResidualNaN() { var criterion = new FailureStopCriterion<double>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = Vector<double>.Build.Dense(new[] { 1.0, 1.0, 2.0 }); var source = Vector<double>.Build.Dense(new[] { 1001.0, 0, 2003.0 }); var residual = Vector<double>.Build.Dense(new[] { 1000, double.NaN, 2001 }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Failure, status, "Should be failed"); }
public void DetermineStatus() { var criterion = new FailureStopCriterion <Complex>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { new Complex(3.0, 0), new Complex(2.0, 0), new Complex(1, 0) }); var source = new DenseVector(new[] { new Complex(1001.0, 0), Complex.Zero, new Complex(2003.0, 0) }); var residual = new DenseVector(new[] { new Complex(1.0, 0), new Complex(2.0, 0), new Complex(3, 0) }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Continue, status, "Should be running"); }
public void DetermineStatusWithResidualNaN() { var criterion = new FailureStopCriterion <float>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { 1.0f, 1.0f, 2.0f }); var source = new DenseVector(new[] { 1001.0f, 0, 2003.0f }); var residual = new DenseVector(new[] { 1000, float.NaN, 2001 }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Failure, status, "Should be failed"); }
public void DetermineStatus() { var criterion = new FailureStopCriterion <float>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { 3.0f, 2.0f, 1.0f }); var source = new DenseVector(new[] { 1001.0f, 0.0f, 2003.0f }); var residual = new DenseVector(new[] { 1.0f, 2.0f, 3.0f }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Continue, status, "Should be running"); }
public void DetermineStatusWithResidualNaN() { var criterion = new FailureStopCriterion <Complex>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { new Complex(1.0, 0), new Complex(1.0, 0), new Complex(2.0, 0) }); var source = new DenseVector(new[] { new Complex(1001.0, 0), Complex.Zero, new Complex(2003.0, 0) }); var residual = new DenseVector(new[] { new Complex(1000, 0), new Complex(double.NaN, 0), new Complex(2001, 0) }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Failure, status, "Should be failed"); }
public void DetermineStatusWithSolutionNaN() { var criterion = new FailureStopCriterion <double>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { 1.0, 1.0, double.NaN }); var source = new DenseVector(new[] { 1001.0, 0.0, 2003.0 }); var residual = new DenseVector(new[] { 1000.0, 1000.0, 2001.0 }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Failure, status, "Should be failed"); }
public void ResetCalculationState() { var criterion = new FailureStopCriterion <double>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { 1.0, 1.0, 2.0 }); var source = new DenseVector(new[] { 1001.0, 0.0, 2003.0 }); var residual = new DenseVector(new[] { 1000.0, 1000.0, 2001.0 }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Continue, status, "Should be running"); criterion.Reset(); Assert.AreEqual(IterationStatus.Continue, criterion.Status, "Should not have started"); }
public void ResetCalculationState() { var criterion = new FailureStopCriterion <Complex32>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { new Complex32(1.0f, 0), new Complex32(1.0f, 0), new Complex32(2, 0) }); var source = new DenseVector(new[] { new Complex32(1001.0f, 0), Complex32.Zero, new Complex32(2003.0f, 0) }); var residual = new DenseVector(new[] { new Complex32(1000, 0), new Complex32(1000, 0), new Complex32(2001, 0) }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Continue, status, "Should be running"); criterion.Reset(); Assert.AreEqual(IterationStatus.Continue, criterion.Status, "Should not have started"); }
public void Create() { var criterion = new FailureStopCriterion<float>(); Assert.IsNotNull(criterion, "Should have a criterion now"); }
public void Create() { var criterion = new FailureStopCriterion <float>(); Assert.IsNotNull(criterion, "Should have a criterion now"); }
public void ResetCalculationState() { var criterion = new FailureStopCriterion<Complex>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = new DenseVector(new[] { new Complex(1.0, 0), new Complex(1.0, 0), new Complex(2, 0) }); var source = new DenseVector(new[] { new Complex(1001.0, 0), Complex.Zero, new Complex(2003.0, 0) }); var residual = new DenseVector(new[] { new Complex(1000, 0), new Complex(1000, 0), new Complex(2001, 0) }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Continue, status, "Should be running"); criterion.Reset(); Assert.AreEqual(IterationStatus.Continue, criterion.Status, "Should not have started"); }
public void ResetCalculationState() { var criterion = new FailureStopCriterion<double>(); Assert.IsNotNull(criterion, "There should be a criterion"); var solution = Vector<double>.Build.Dense(new[] { 1.0, 1.0, 2.0 }); var source = Vector<double>.Build.Dense(new[] { 1001.0, 0.0, 2003.0 }); var residual = Vector<double>.Build.Dense(new[] { 1000.0, 1000.0, 2001.0 }); var status = criterion.DetermineStatus(5, solution, source, residual); Assert.AreEqual(IterationStatus.Continue, status, "Should be running"); criterion.Reset(); Assert.AreEqual(IterationStatus.Continue, criterion.Status, "Should not have started"); }