GitHub - osqp/qdldl-python: Python interface to the QDLDL (https://github.com/osqp/qdldl) free LDL factorization routine for quasi-definite linear systems (original) (raw)
qdldl-python
Python interface to the QDLDLfree LDL factorization routine for quasi-definite linear systems: Ax = b
.
Installation
This package can be directly installed via pip,
Usage
Initialize the factorization with
import qdldl
F = qdldl.Solver(A)
where A
must be a square quasi-definite matrix in scipy sparse CSC format.
The algorithm internally converts the matrix into upper triangular format. If A
is already upper-triangular, you can specify it with the argument upper=True
to the qdldl.Solver
constructor.
To solve the linear system for a right-hand side b
, just write
To update the factorization without changing the sparsity pattern of A
you can run
where A_new
is a sparse matrix in CSR format with the same sparsity pattern as A
.
The algorithm internally converts A_new
into upper triangular format. If A_new
is already upper-triangular, you can specify it with the argument upper=True
to the F.update
function.