Accord.Tests.Math.JaggedQrDecompositionTest.QrDecompositionConstructorTest C# (CSharp) Method

QrDecompositionConstructorTest() private method

private QrDecompositionConstructorTest ( ) : void
return void
        public void QrDecompositionConstructorTest()
        {
            double[][] value =
            {
               new double[] {  2, -1,  0 },
               new double[] { -1,  2, -1 },
               new double[] {  0, -1,  2 }
            };


            var target = new JaggedQrDecomposition(value);

            // Decomposition Identity
            var Q = target.OrthogonalFactor;
            var QQt = Matrix.Multiply(Q, Q.Transpose());
            Assert.IsTrue(Matrix.IsEqual(QQt, Matrix.JaggedIdentity(3), 1e-6));
            Assert.IsTrue(Matrix.IsEqual(value, target.Reverse(), 1e-6));

            // Linear system solving
            double[][] B = Matrix.ColumnVector(new double[] { 1, 2, 3 }).ToJagged();
            double[][] expected = Matrix.ColumnVector(new double[] { 2.5, 4.0, 3.5 }).ToJagged();
            double[][] actual = target.Solve(B);

            Assert.IsTrue(Matrix.IsEqual(expected, actual, 0.0000000000001));
        }