Linear Systems
Solvers for systems of linear equations: Ax = b or AX = B
LAPACK++ provides direct methods for solving linear systems through factorization approaches. All routines are templated on scalar type and support both real and complex arithmetic.
General (Non-Symmetric) Systems
gesv - General linear system solve (simple driver)
Computes LU factorization with partial pivoting then solves Ax = b
gesvx - General linear system solve (expert driver)
Extended version with equilibration, condition estimates, and error bounds
getrf - LU factorization with partial pivoting
Computes \(A = PLU\) where P is permutation, L is unit lower triangular, U is upper triangular
getrs - Solve using LU factorization
Solves \(A x = b\), \(A^T x = b\), or \(A^H x = b\) using factorization from getrf
getri - Matrix inverse using LU factorization
Computes \(A^{-1}\) using factorization from getrf
gecon - Condition number estimate
Estimates reciprocal condition number in 1-norm or infinity-norm
geequ - Row/column equilibration
Computes row and column scalings to equilibrate the matrix
Symmetric/Hermitian Positive Definite
posv - Positive definite solve (simple driver)
Cholesky factorization then solve
posvx - Positive definite solve (expert driver)
With equilibration and condition estimates
potrf - Cholesky factorization
Computes \(A = U^H U\) (upper) or \(A = L L^H\) (lower)
potrs - Solve using Cholesky factorization
Solves \(A x = b\) using factorization from potrf
potri - Inverse using Cholesky factorization
Computes \(A^{-1}\) using factorization from potrf
pocon - Condition number estimate for positive definite
poequ - Equilibration for positive definite
pbtrf - Band Cholesky factorization
For positive definite band matrices
pbtrs - Band triangular solve
pbcon - Band condition estimate
Symmetric/Hermitian Indefinite
sysv / hesv - Symmetric/Hermitian solve (simple driver)
Bunch-Kaufman factorization (\(A = U D U^T\) or \(A = L D L^T\)) then solve
sysvx / hesvx - Expert driver with condition estimates
sytrf / hetrf - Bunch-Kaufman factorization
Computes \(A = U D U^T\) or \(A = L D L^T\) with D block diagonal
sytrs / hetrs - Solve using symmetric factorization
sytri / hetri - Inverse using symmetric factorization
sycon / hecon - Condition estimate for symmetric/Hermitian
syrfs / herfs - Iterative refinement
sytrs2 / hetrs2 - Solve with rook pivoting
Triangular Systems
trtrs - Triangular solve
Solves \(op(A) x = b\) where A is triangular
trtri - Triangular inverse
Computes \(A^{-1}\) where A is triangular
trcon - Triangular condition estimate
Band Matrices
gbtrf - Band LU factorization
gbtrs - Band triangular solve
gbcon - Band condition estimate
Tridiagonal Systems
gtsv - Tridiagonal solve (simple driver)
gtsvx - Tridiagonal solve (expert driver)
gttrf - Tridiagonal LU factorization
gttrs - Tridiagonal solve using factorization
gtcon - Tridiagonal condition estimate
Symmetric Positive Definite Tridiagonal
ptsv - SPD tridiagonal solve
ptsvx - SPD tridiagonal expert driver
pttrf - SPD tridiagonal factorization
pttrs - SPD tridiagonal solve
ptcon - SPD tridiagonal condition estimate
See Also
Least Squares and Linear Regression - Overdetermined/underdetermined systems
Utilities and Enumerations - Enumerations and error handling