Algorithm 1021: SPEX Left LU, Exactly Solving Sparse Linear Systems via a Sparse Left-looking Integer-preserving LU Factorization
Algorithm 1021: SPEX Left LU, Exactly Solving Sparse Linear Systems via a Sparse Left-looking Integer-preserving LU Factorization
复制标题
算法 1021:SPEX 左 LU,通过稀疏左视整数保留 LU 分解精确求解稀疏线性系统
DOI:
10.1145/3519024
复制
发表时间:
2022
影响因子:
2.7
通讯作者:
Davis, Timothy A.
中科院分区:
文献类型:
--
作者:
Lourenco, Christopher;Chen, Jinhao;Moreno-Centeno, Erick;Davis, Timothy A.
SPEX Left LU is a software package for exactly solving unsymmetric sparse linear systems. As a component of the sparse exact (SPEX) software package, SPEX Left LU can be applied to any input matrix,A, whose entries are integral, rational, or decimal, and provides a solution to the system, which is either exact or accurate to user-specified precision. SPEX Left LU preorders the matrixAwith a user-specified fill-reducing ordering and computes a left-looking LU factorization with the special property that each operation used to compute theLandUmatrices is integral. Notable additional applications of this package include benchmarking the stability and accuracy of state-of-the-art linear solvers and determining whether singular-to-double-precision matrices are indeed singular. Computationally, this article evaluates the impact of several novel pivoting schemes in exact arithmetic, benchmarks the exact iterative solvers within Linbox, and benchmarks the accuracy of MATLAB sparse backslash. Most importantly, it is shown that SPEX Left LU outperforms the exact iterative solvers in run time oneasyinstances and in stability as the iterative solver fails on a sizeable subset of the tested (both easy and hard) instances. The SPEX Left LU package is written in ANSI C, comes with a MATLAB interface, and is distributed via GitHub, as a component of the SPEX software package, and as a component of SuiteSparse.