Accord.Tests.Math.JaggedCholeskyDecompositionFTest.JaggedCholeskyDecompositionFConstructorTest C# (CSharp) Method

JaggedCholeskyDecompositionFConstructorTest() private method

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

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

            float[][] expected =
            {
               new float[]  {  1.4142f,  0.0000f, 0.0000f },
               new float[]  { -0.7071f,  1.2247f, 0.0000f },
               new float[]  {  0.0000f, -0.8165f, 1.1547f }
            };


            var chol = new JaggedCholeskyDecompositionF(value);
            float[][] L = chol.LeftTriangularFactor;

            Assert.IsTrue(Matrix.IsEqual(L, expected, 1e-4f));

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

            Assert.AreEqual(new JaggedLuDecompositionF(value).Determinant, chol.Determinant, 1e-5);
            Assert.IsTrue(chol.IsPositiveDefinite);
        }