Overlapping multiplicative Schwarz preconditioning for linear and nonlinear systems

Lulu Liu*, Weiguo Gao, Han Yu, David E. Keyes

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review


For linear and nonlinear systems arising from the discretization of PDEs, multiplicative Schwarz preconditioners can be defined based on subsets of the unknowns that derive from domain decomposition, field splitting, or other collections of conveniently solved subproblems, and are well established theoretically for nonoverlapping subsets. For overlapping subsets, establishing the equivalence of the preconditioned and original iterations is less trivial. We derive herein an explicit formulation for a variety of multiplicative Schwarz preconditioners including overlaps representative of interfacial and bulk coupling in multiphysics systems, thus extending theoretical support for the nonlinear multiplicative Schwarz preconditioned inexact Newton (MSPIN) algorithm to these classes. For nonlinear multiplicative Schwarz preconditioners with overlaps, we illustrate the performance through numerical experiments involving applications such as a shocked duct flow and a natural convection cavity flow. We begin with a broad introduction to nonlinear preconditioning to set the context for those new to the technique.

Original languageEnglish (US)
Article number112548
JournalJournal of Computational Physics
StatePublished - Jan 1 2024

Bibliographical note

Publisher Copyright:
© 2023 The Authors


  • Newton methods for nonlinear algebraic systems
  • Nonlinear preconditioning
  • Schwarz methods

ASJC Scopus subject areas

  • Numerical Analysis
  • Modeling and Simulation
  • Physics and Astronomy (miscellaneous)
  • General Physics and Astronomy
  • Computer Science Applications
  • Computational Mathematics
  • Applied Mathematics


Dive into the research topics of 'Overlapping multiplicative Schwarz preconditioning for linear and nonlinear systems'. Together they form a unique fingerprint.

Cite this