Accord.Tests.Math.JaggedCholeskyDecompositionTest.JaggedCholeskyDecompositionConstructorTest C# (CSharp) Method

JaggedCholeskyDecompositionConstructorTest() private method

private JaggedCholeskyDecompositionConstructorTest ( ) : void
return void
        public void JaggedCholeskyDecompositionConstructorTest()
        {
            // Based on tests by Ken Johnson

            double[,] value = // positive-definite
            {
               {  2, -1,  0 },
               { -1,  2, -1 },
               {  0, -1,  2 }
            };

            double[,] expected =
            {
                {  1.4142,  0.0000, 0.0000 },
                { -0.7071,  1.2247, 0.0000 },
                {  0.0000, -0.8165, 1.1547 }
            };


            var chol = new JaggedCholeskyDecomposition(value.ToJagged());
            double[][] L = chol.LeftTriangularFactor;

            Assert.IsTrue(Matrix.IsEqual(L, expected, 0.0001));

            // Decomposition Identity
            Assert.IsTrue(Matrix.IsEqual(Matrix.Multiply(L, L.Transpose()), value, 1e-3));
            Assert.IsTrue(Matrix.IsEqual(chol.Reverse(), value, 1e-3));

            Assert.AreEqual(new LuDecomposition(value).Determinant, chol.Determinant, 1e-10);
            Assert.IsTrue(chol.IsPositiveDefinite);
            //Assert.AreEqual(true, chol.Symmetric);
        }