# 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 $$Ax=b$$. Matrix $$A$$ can be decomposed into a structured intra-variable block diagonal component $$M$$ and a component $$N$$ consisting of the inter-variable blocks and any unstructured connections between the parts. SplitSolve performs the iteration

$x_{k+1} = \tilde{M}^{-1} (b + N x_k),$

where $$\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.