[petsc-users] EPS iteration number
Xujun Zhao
xzhao99 at gmail.com
Wed Sep 16 14:09:56 CDT 2015
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);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20150916/3bd887c9/attachment.html>
More information about the petsc-users
mailing list