PDSLin (Parallel Domain decomposition Schur complement based Linear Solver) is based on a non-overlapping domain decomposition technique called the Schur complement method. In this method, the global system is first partitioned into smaller interior subdomain systems, which are connected only through separators. To compute the solution of the global system, the unknowns associated with the interior subdomain systems are first eliminated to form the Schur complement system, which is defined only on the separators. Since most of the fill occurs in the Schur complement, to obtain the solution on the separators, the Schur complement is solved using a preconditioned iterative method. Then, the solution on the subdomains is computed by using this solution on the separators and solving another set of subdomain systems. These unknowns associated with the mutually-independent interior subdomains are eliminated in parallel using multiple processors per subdomain. PDSLin is implemented in C with Fortran interfaces, and uses message passing interface on distributed memory machines.
Usage and applications: PDSLin is used in the ACE3P code of the ComPASS SciDAC.