Skip to main content
`Ctrl`+`K`

# KSPChebyshevSetKind

set the kind of Chebyshev polynomial to use

## Synopsis

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

Logically Collective

## Input Parameters

- ksp - Linear solver context

- kind - The kind of Chebyshev polynomial to use, see `KSPChebyshevKind`, one of `KSP_CHEBYSHEV_FIRST`, `KSP_CHEBYSHEV_FOURTH`, or `KSP_CHEBYSHEV_OPT_FOURTH`

## Options Database Key

- -ksp_chebyshev_kind <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