KSPCHEBYSHEV#

The preconditioned Chebyshev iterative method

Options Database Keys#

  • -ksp_chebyshev_eigenvalues <emin,emax> - set approximations to the smallest and largest eigenvalues of the preconditioned operator. If these are accurate you will get much faster convergence.

  • -ksp_chebyshev_esteig <a,b,c,d> - estimate eigenvalues using a Krylov method, then use this transform for Chebyshev eigenvalue bounds (KSPChebyshevEstEigSet())

  • -ksp_chebyshev_esteig_steps - number of estimation steps

  • -ksp_chebyshev_esteig_noisy - use noisy number generator to create right hand side for eigenvalue estimator

Notes#

The Chebyshev method requires both the matrix and preconditioner to be symmetric positive (semi) definite, but it can work as a smoother in other situations

Only support for left preconditioning.

Chebyshev is configured as a smoother by default, targeting the “upper” part of the spectrum.

The user should call KSPChebyshevSetEigenvalues() to get eigenvalue estimates.

See Also#

KSP: Linear System Solvers, KSPCreate(), KSPSetType(), KSPType, KSP, KSPChebyshevSetEigenvalues(), KSPChebyshevEstEigSet(), KSPChebyshevEstEigSetUseNoisy() KSPRICHARDSON, KSPCG, PCMG

Level#

beginner

Location#

src/ksp/ksp/impls/cheby/cheby.c


Edit on GitLab

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