Draft: CG reports negative singular values
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.