Hi all, I am solving a max/min eigenvalue problem, and call EPSGetIterationNumber() to get the iteration number for convergence. However, it always returns 1. This is a little confused, because I can see my subroutine of MATOP_MULT operation has been called 6 or 16 times with different configurations.
The ConvergedReason returns 2, so it looks like the eigenvalue is correct. also, it shows 1 EPS nconv=2 first unconverged value (error) 0.0158234 (2.15550644e-03) what does it mean? Thanks. Xujun /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Solve the eigensystem and get the solution - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ ierr = PetscPrintf(PETSC_COMM_WORLD,"EPS solve starts ...\n"); ierr = EPSSolve(eps);CHKERRQ(ierr); ierr = PetscPrintf(PETSC_COMM_WORLD,"\n--->test: EPS solve results:\n"); ierr = EPSGetEigenvalue(eps,0,&value,NULL); CHKERRQ(ierr); ierr = PetscPrintf(PETSC_COMM_WORLD," the eigenvalue: %f\n",value); ierr = EPSGetType(eps,&type);CHKERRQ(ierr); ierr = PetscPrintf(PETSC_COMM_WORLD," Solution method: %s\n",type); ierr = EPSGetIterationNumber(eps,&its);CHKERRQ(ierr); ierr = PetscPrintf(PETSC_COMM_WORLD," Number of iterations of the method: %D\n",its); ierr = EPSGetConvergedReason(eps,&reason); ierr = PetscPrintf(PETSC_COMM_WORLD," EPS converged reason : %D\n\n",reason);
