Accord.Tests.Math.RelativeParameterConvergenceTest.RelativeParameterConstructorTest C# (CSharp) Method

RelativeParameterConstructorTest() private method

private RelativeParameterConstructorTest ( ) : void
return void
        public void RelativeParameterConstructorTest()
        {
            var criteria = new RelativeParameterConvergence(iterations: 0, tolerance: 0.1);

            int progress = 1;
            double[] parameters = { 12345.6, 952.12, 1925.1 };

            do
            {
                // Do some processing...


                // Update current iteration information:
                criteria.NewValues = parameters.Divide(progress++);

            } while (!criteria.HasConverged);


            // The method will converge after reaching the 
            // maximum of 11 iterations with a final value
            // of { 1234.56, 95.212, 192.51 }:

            int iterations = criteria.CurrentIteration; // 11
            var v = criteria.OldValues; // { 1234.56, 95.212, 192.51 }


            Assert.AreEqual(11, criteria.CurrentIteration);
            Assert.AreEqual(1234.56, criteria.OldValues[0]);
            Assert.AreEqual(95.212, criteria.OldValues[1]);
            Assert.AreEqual(192.51, criteria.OldValues[2]);
        }
    }
RelativeParameterConvergenceTest