public void InverseDiagonalTest3()
{
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 },
};
float[] expected = Matrix.Inverse(value.ToMatrix().ToDouble()).ToSingle().ToJagged().Diagonal();
var chol = new JaggedCholeskyDecompositionF(value, robust: true, inPlace: true);
float[] actual = chol.InverseDiagonal();
for (int i = 0; i < actual.Length; i++)
Assert.AreEqual(expected[i], actual[i], 1e-4f);
}