Skip to content

Draft: CG reports negative singular values

Jed Brown requested to merge jed/cg-indefinite into main

This is a matrix for which CG does not break down, but it reports a negative singular value.

Iteratively computed extreme singular values: max 17.6485 min -1.38685 max/min -12.7255

It also reports negative eigenvalues when using -ksp_view_eigenvalues. Octave reports that this matrix has exactly one negative eigenvalue.

I thought CG was supposed to break down in this instance. Is there a way to detect and thus provide nice diagnostics during the iteration (short of storing the tridiagonal form and computing new eigenvalues each iteration)? @BarrySmith @prj- have you seen something like this?

Thanks @zatkins for the test case.

Merge request reports