Sparse matrices in matlab: design and implementation
SIAM Journal on Matrix Analysis and Applications
An Approximate Minimum Degree Ordering Algorithm
SIAM Journal on Matrix Analysis and Applications
Matrix computations (3rd ed.)
A combined unifrontal/multifrontal method for unsymmetric sparse matrices
ACM Transactions on Mathematical Software (TOMS)
LAPACK Users' guide (third ed.)
LAPACK Users' guide (third ed.)
A Block Algorithm for Matrix 1-Norm Estimation, with an Application to 1-Norm Pseudospectra
SIAM Journal on Matrix Analysis and Applications
MA57---a code for the solution of sparse symmetric definite and indefinite systems
ACM Transactions on Mathematical Software (TOMS)
A column pre-ordering strategy for the unsymmetric-pattern multifrontal method
ACM Transactions on Mathematical Software (TOMS)
Algorithm 832: UMFPACK V4.3---an unsymmetric-pattern multifrontal method
ACM Transactions on Mathematical Software (TOMS)
A column approximate minimum degree ordering algorithm
ACM Transactions on Mathematical Software (TOMS)
Algorithm 836: COLAMD, a column approximate minimum degree ordering algorithm
ACM Transactions on Mathematical Software (TOMS)
Algorithm 837: AMD, an approximate minimum degree ordering algorithm
ACM Transactions on Mathematical Software (TOMS)
Direct Methods for Sparse Linear Systems (Fundamentals of Algorithms 2)
Direct Methods for Sparse Linear Systems (Fundamentals of Algorithms 2)
Algorithm 887: CHOLMOD, Supernodal Sparse Cholesky Factorization and Update/Downdate
ACM Transactions on Mathematical Software (TOMS)
Algorithm 907: KLU, A Direct Sparse Solver for Circuit Simulation Problems
ACM Transactions on Mathematical Software (TOMS)
The university of Florida sparse matrix collection
ACM Transactions on Mathematical Software (TOMS)
Algorithm 915, SuiteSparseQR: Multifrontal multithreaded rank-revealing sparse QR factorization
ACM Transactions on Mathematical Software (TOMS)
Hi-index | 0.00 |
The MATLAB™ backslash (x=A\b) is an elegant and powerful interface to a suite of high-performance factorization methods for the direct solution of the linear system Ax = b and the least-squares problem minx ‖b - Ax‖. It is a meta-algorithm that selects the best factorization method for a particular matrix, whether sparse or dense. However, the simplicity and elegance of its single-character interface prohibits the reuse of its factorization for subsequent systems. Requiring MATLAB users to find the best factorization method on their own can lead to suboptimal choices; even MATLAB experts can make the wrong choice. Furthermore, naive MATLAB users have a tendency to translate mathematical expressions from linear algebra directly into MATLAB, so that x = A-1b becomes the inferior yet all-to-prevalent x=inv(A)*b. To address these issues, an object-oriented FACTORIZE method is presented. Via simple-to-use operator overloading, solving two linear systems can be written as F=factorize(A); x=F\b; y=F\c, where A is factorized only once. The selection of the best factorization method (LU, Cholesky, LDLT, QR, or a complete orthogonal decomposition for rank-deficient matrices) is hidden from the user. The mathematical expression x = A-1b directly translates into the MATLAB expression x=inverse(A)*b, which does not compute the inverse at all, but does the right thing by factorizing A and solving the corresponding triangular systems.