SNESMS#

multi-stage smoothers

Options Database Keys#

  • -snes_ms_type - type of multi-stage smoother

  • -snes_ms_damping - damping for multi-stage method

Notes#

These multistage methods are explicit Runge-Kutta methods that are often used as smoothers for FAS multigrid for transport problems. In the linear case, these are equivalent to polynomial smoothers (such as Chebyshev).

Multi-stage smoothers should usually be preconditioned by point-block Jacobi to ensure proper scaling and to normalize the wave speeds.

The methods are specified in low storage form (Ketcheson 2010). New methods can be registered with SNESMSRegister().

See [Ket10], [Jam83], [PG97], and [VLTP81]

References#

[Jam83]

Antony Jameson. Solution of the euler equations for two dimensional transonic flow by a multigrid method. Applied mathematics and computation, 13(3-4):327–355, 1983.

[Ket10]

David I Ketcheson. Runge–Kutta methods with minimum storage implementations. Journal of Computational Physics, 229(5):1763–1773, 2010.

[PG97]

Niles A Pierce and Michael B Giles. Preconditioned multigrid methods for compressible flow calculations on stretched meshes. Journal of Computational Physics, 136(2):425–445, 1997.

[VLTP81]

Bram Van Leer, Chang-Hsien Tai, and Kenneth Powell. Design of optimally smoothing multi-stage schemes for the Euler equations. In 9th Computational Fluid Dynamics Conference, 1933. 1981.

See Also#

SNES: Nonlinear Solvers, SNESCreate(), SNES, SNESSetType(), SNESMS, SNESFAS, KSPCHEBYSHEV, SNESMSSetDamping(), SNESMSGetDamping(), SNESMSSetType(), SNESMSGetType()

Level#

advanced

Location#

src/snes/impls/ms/ms.c


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