[petsc-dev] What is the difference between shift and target in SLEPc ?

Jose E. Roman jroman at dsic.upv.es
Mon Sep 25 07:50:48 CDT 2017


> El 25 sept 2017, a las 13:21, Franck Houssen <franck.houssen at inria.fr> escribió:
> 
> What is the difference between shift and target in SLEPc ? Shift (STSetShift) is clear to me, but, target (EPSSetTarget) is not.
> Can somebody give an example where one want/need to have a target which would be different from the shift ?
> 
> Franck

In shift-and-invert the shift is equal to the target by default. The target is what you use to indicate where you want the eigenvalues to be sought (it can be used without shift-and-invert). Normal usage is having both values equal. If the target is exactly equal to an eigenvalue, then you may want to perturb the shift (change it to a slightly different value) in order to avoid a singular matrix A-sigma*I in the linear solves. (Some solvers such as MUMPS do not have problems with singular matrices, so this is not necessary in that case).

Jose



More information about the petsc-dev mailing list