DSTranslateRKS#

Computes a modification of the dense system corresponding to an update of the shift in a rational Krylov method.

Synopsis#

#include "slepcds.h" 
PetscErrorCode DSTranslateRKS(DS ds,PetscScalar alpha)

Logically Collective

Input Parameters#

  • ds - the direct solver context

  • alpha - the translation amount

Notes#

This function is intended for use in the context of Krylov methods only. It takes the leading (k+1,k) submatrix of A, containing the truncated Rayleigh quotient of a Krylov-Schur relation computed from a shift sigma1 and transforms it to obtain a Krylov relation as if computed from a different shift sigma2. The new matrix is computed as 1.0/alpha*(eye(k)-Qinv(R)), where [Q,R]=qr(eye(k)-alphaA) and alpha = sigma1-sigma2.

Matrix Q is placed in DS_MAT_Q so that it can be used to update the Krylov basis.

See Also#

DSTranslateHarmonic()

Level#

developer

Location#

src/sys/classes/ds/interface/dsops.c

Implementations#

DSTranslateRKS_HEP() in src/sys/classes/ds/impls/hep/dshep.c


Index of all DS routines Table of Contents for all manual pages Index of all manual pages