Neumann–Neumann methods
In mathematics, Neumann–Neumann methods are domain decomposition preconditioners named so because they solve a Neumann problem on each subdomain on both sides of the interface between the subdomains.[1] Just like all domain decomposition methods, so that the number of iterations does not grow with the number of subdomains, Neumann–Neumann methods require the solution of a coarse problem to provide global communication. The balancing domain decomposition is a Neumann–Neumann method with a special kind of coarse problem.
More specifically, consider a domain Template:Math, on which we wish to solve the Poisson equation
for some function f. Split the domain into two non-overlapping subdomains Template:Math and Template:Math with common boundary Template:Math and let Template:Math and Template:Math be the values of Template:Math in each subdomain. At the interface between the two subdomains, the two solutions must satisfy the matching conditions
where is the unit normal vector to Γ in each subdomain.
An iterative method with iterations Template:Math for the approximation of each Template:Math (Template:Math) that satisfies the matching conditions is to first solve the Dirichlet problems
for some function Template:Math on Template:Math, where Template:Math is any inexpensive initial guess. We then solve the two Neumann problems
We then obtain the next iterate by setting
for some parameters Template:Math, Template:Math and Template:Math.
This procedure can be viewed as a Richardson iteration for the iterative solution of the equations arising from the Schur complement method.[2]
This continuous iteration can be discretized by the finite element method and then solved—in parallel—on a computer. The extension to more subdomains is straightforward, but using this method as stated as a preconditioner for the Schur complement system is not scalable with the number of subdomains; hence the need for a global coarse solve.