[petsc-users] Incorrect Eigenvalues when Setting KSP and PC types

Hong hzhang at mcs.anl.gov
Thu Sep 21 16:05:20 CDT 2017


Gregory :
Use '-eps_view' for both runs to check the algorithms being used.
Hong

Hi all,
>
> I'm using shift-invert with EPS to solve for eigenvalues. I find that if I
> do only
>
> ...
>   ierr = EPSGetST(eps,&st);CHKERRQ(ierr);
>   ierr = STSetType(st,STSINVERT);CHKERRQ(ierr);
> ...
>
> in my code I get correct eigenvalues. But if I do
>
> ...
>   ierr = EPSGetST(eps,&st);CHKERRQ(ierr);
>   ierr = STSetType(st,STSINVERT);CHKERRQ(ierr);
>   ierr = STGetKSP(st,&ksp);CHKERRQ(ierr);
>   ierr = KSPGetPC(ksp,&pc);CHKERRQ(ierr);
>   ierr = KSPSetType(ksp,KSPPREONLY);CHKERRQ(ierr);
>   ierr = PCSetType(pc,PCCHOLESKY);CHKERRQ(ierr);
> ...
>
> the eigenvalues found by EPS are completely wrong! Somehow I thought I was
> supposed to do the latter, from the examples etc, but I guess that was not
> correct? I attach the full piece of test code and a test matrix.
>
> Best,
> Greg
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20170921/fd619aa8/attachment.html>


More information about the petsc-users mailing list