public void SolveTest4()
{
float[][] value = // not positive-definite
{
new float[] { 6, -1, 2, 6 },
new float[] { -1, 3, -3, -2 },
new float[] { 2, -3, 2, 0 },
new float[] { 6, -2, 0, 0 },
};
JaggedCholeskyDecompositionF chol = new JaggedCholeskyDecompositionF(value, robust: true);
float[][] L = chol.LeftTriangularFactor;
float[] B = new float[] { 1, 2, 3, 4 };
float[] expected = { 5, 13, 16, -8 };
float[] actual = chol.Solve(B);
for (int i = 0; i < actual.Length; i++)
Assert.AreEqual(expected[i], actual[i], 1e-3);
}