Versi terbaru dari paket CHOLMOD SuiteSparse (beta 4.4.5) mendukung pengubahan baris / kolom simetris (pembaruan peringkat2) untuk dekomposisi , menggunakan matlab (dan C) API. Saya menggunakannya dengan sukses di salah satu proyek saya.L D LT
Anda dapat menggunakannya untuk membuat pada faktorisasi. Ini didasarkan pada makalah ini .n n z( G )
Oleh karena itu, kompleksitasnya adalah . Di mana dapat dikurangi secara signifikan saat menggunakan permutasi reduksi fill untuk jarangO ( n n z( G ) ∗ n n z( L ) )n n z( L )A
Paket dapat diunduh dari sini
Berikut adalah beberapa catatan yang diberikan pemilik paket (Prof. Tim Davis):
API:
LD = ldlrowmod (LD, k) menghapus baris / kolom k, dengan menetapkan A (:, k) dan A (k, :) ke baris ke-k / kolom identitas.
LD = ldlrowmod (LD, k, C) menggantikan baris k / k dari A (yang harus merupakan baris k / k dari identitas) dengan kolom C.
Kompleksitas:
Baris tambah / hapus paling banyak memakan waktu O(nnz(L)) , jadi jika nnz(L) adalah O(n) , maka waktu paling banyak O(n) .
Isi permutasi yang dikurangi:
LDLTLDLTPAPTL