-snes_ngmres_select_type<difference,none,linesearch> | - choose the select between candidate and combined solution + -snes_ngmres_restart_type<difference,none,periodic> - choose the restart conditions | |

-snes_ngmres_anderson | - Use Anderson mixing NGMRES variant which combines candidate solutions instead of actual solutions | |

-snes_ngmres_m | - Number of stored previous solutions and residuals | |

-snes_ngmres_restart_it | - Number of iterations the restart conditions hold before restart | |

-snes_ngmres_gammaA | - Residual tolerance for solution select between the candidate and combination | |

-snes_ngmres_gammaC | - Residual tolerance for restart | |

-snes_ngmres_epsilonB | - Difference tolerance between subsequent solutions triggering restart | |

-snes_ngmres_deltaB | - Difference tolerance between residuals triggering restart | |

-snes_ngmres_monitor | - Prints relevant information about the ngmres iteration | |

-snes_linesearch_type <basic,basicnonorms,quadratic,critical> | - Line search type used for the default smoother | |

-additive_snes_linesearch_type | - linesearch type used to select between the candidate and combined solution with additive select type |

The N-GMRES method combines m previous solutions into a minimum-residual solution by solving a small linearized optimization problem at each iteration.

"Krylov Subspace Acceleration of Nonlinear Multigrid with Application to Recirculating Flows", C. W. Oosterlee and T. Washio, SIAM Journal on Scientific Computing, 21(5), 2000.

This is also the same as the algorithm called Anderson acceleration introduced in "D. G. Anderson. Iterative procedures for nonlinear integral equations. J. Assoc. Comput. Mach., 12:547–560, 1965."

** Level:beginner
Location:**src/snes/impls/ngmres/snesngmres.c

Index of all SNES routines

Table of Contents for all manual pages

Index of all manual pages