The module HSL_MP48 solves sets of unsymmetric linear systems of equations , in parallel using Gaussian elimination. The matrix must have been preordered to singly-bordered block-diagonal form
MPI is used for message passing.
A partial decomposition is performed on each of the submatrices separately. Once all possible eliminations have been performed, for each submatrix there remains a Schur complement matrix . The variables that remain are called interface variables and the interface matrix is formed by summing the matrices . Gaussian elimination is used to factorize , using the HSL sparse direct solver MA48. Block forward elimination and back substitution completes the solution.
The user’s matrix data may optionally be held in unformatted sequential ﬁles. In addition, and factors for the submatrices may optionally be written to sequential ﬁles. This reduces main memory requirements when the number of submatrices is greater than the number of processes used.
The HSL package HSL_MC66 may be used for preordering the matrix to singly-bordered block-diagonal form.