Skip to content

Pivoted sparse Cholesky for QuadtoSOCBridge.#2965

Open
samuelsonric wants to merge 1 commit intojump-dev:masterfrom
samuelsonric:master
Open

Pivoted sparse Cholesky for QuadtoSOCBridge.#2965
samuelsonric wants to merge 1 commit intojump-dev:masterfrom
samuelsonric:master

Conversation

@samuelsonric
Copy link

@samuelsonric samuelsonric commented Mar 6, 2026

This PR adds the pivoted sparse Cholesky factorization algorithm in CliqueTrees.jl as a fallback in QuadtoSOCBridge. This algorithm can handle singular matrices, and it is MIT licensed.

Example

julia> using CliqueTrees.Multifrontal, LinearAlgebra, LDLFactorizations

julia> A = [1 1 0; 1 1 0; 0 0 1]
3×3 Matrix{Int64}:
 1  1  0
 1  1  0
 0  0  1

The CliqueTrees factorization correctly reconstructs the matrix.

julia> F = cholesky!(ChordalCholesky(A), RowMaximum());

julia> F.L * F.D * F.L'
3×3 Matrix{Float64}:
 1.0  1.0  0.0
 1.0  1.0  0.0
 0.0  0.0  1.0

The LDLFactorizations factorization does not.

julia> G = ldl(A);

julia> UnitLowerTriangular(G.L) * G.D * UnitLowerTriangular(G.L)'
3×3 SparseArrays.SparseMatrixCSC{Int64, Int64} with 5 stored entries:
 1  1           ⋅
 1  1           ⋅
 ⋅  ⋅  5873643920

Related Pull Requests

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant