.. Copyright 1998-2019 Lawrence Livermore National Security, LLC and other
HYPRE Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
SplitSolve
==============================================================================
SplitSolve is a parallel block Gauss-Seidel solver for semi-structured problems
with multiple parts. For problems with only one variable, it can be viewed as a
domain-decomposition solver with no grid overlapping.
Consider a multiple part problem given by the linear system :math:`Ax=b`. Matrix
:math:`A` can be decomposed into a structured intra-variable block diagonal
component :math:`M` and a component :math:`N` consisting of the inter-variable
blocks and any unstructured connections between the parts. SplitSolve performs
the iteration
.. math::
x_{k+1} = \tilde{M}^{-1} (b + N x_k),
where :math:`\tilde{M}^{-1}` is a decoupled block-diagonal V(1,1) cycle, a
separate cycle for each part and variable type. There are two V-cycle options,
SMG and PFMG.