petsc-3.14.5 2021-03-03
Report Typos and Errors

# SNESMS

multi-stage smoothers

### Options Database

| -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().

### References

| 1. | - Ketcheson (2010) Runge Kutta methods with minimum storage implementations (https://doi.org/10.1016/j.jcp.2009.11.006).
| 2. | - Jameson (1983) Solution of the Euler equations for two dimensional transonic flow by a multigrid method (https://doi.org/10.1016/0096-3003(83)90019-X).
| 3. | - Pierce and Giles (1997) Preconditioned multigrid methods for compressible flow calculations on stretched meshes (https://doi.org/10.1006/jcph.1997.5772).
| 4. | - Van Leer, Tai, and Powell (1989) Design of optimally smoothing multi-stage schemes for the Euler equations (https://doi.org/10.2514/6.1989-1933).

### See Also

SNESCreate(), SNES, SNESSetType(), SNESMS, SNESFAS, KSPCHEBYSHEV

### Level

beginner

### Location

src/snes/impls/ms/ms.c
Index of all SNES routines
Table of Contents for all manual pages
Index of all manual pages