KSPChebyshevSetKind#

set the kind of Chebyshev polynomial to use

Synopsis#

#include "petscksp.h" 
PetscErrorCode KSPChebyshevSetKind(KSP ksp, KSPChebyshevKind kind)

Logically Collective

Input Parameters#

Options Database Key#

  • -ksp_chebyshev_kind - which kind of Chebyshev polynomial to use

Note#

When using multigrid methods for problems with a poor quality coarse space (e.g., due to anisotropy or aggressive coarsening), it is necessary for the smoother to handle smaller eigenvalues. With first-kind Chebyshev smoothing, this requires using higher degree Chebyhev polynomials and reducing the lower end of the target spectrum, at which point the whole target spectrum experiences about the same damping. Fourth kind Chebyshev polynomials (and the “optimized” fourth kind) avoid the ad-hoc choice of lower bound and extend smoothing to smaller eigenvalues while preferentially smoothing higher modes faster as needed to minimize the energy norm of the error. [PF22], [Lot23]

References#

[Lot23]

James Lottes. Optimal polynomial smoothers for multigrid V-cycles. Numerical Linear Algebra with Applications, 30(6):e2518, 2023.

[PF22]

Malachi Phillips and Paul Fischer. Optimal Chebyshev smoothers and one-sided V-cycles. arXiv preprint arXiv:2210.03179, 2022.

See Also#

KSP: Linear System Solvers, KSPCHEBYSHEV, KSPChebyshevKind, KSPChebyshevGetKind(), KSP_CHEBYSHEV_FIRST, KSP_CHEBYSHEV_FOURTH, KSP_CHEBYSHEV_OPT_FOURTH

Level#

intermediate

Location#

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

Implementations#

KSPChebyshevSetKind_Chebyshev() in src/ksp/ksp/impls/cheby/cheby.c


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