Coloring for symmetric banded matrices
@amontoison ci sta già lavorando.
Dal 30/1/2026.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
The code is quite short but it took me a long a time to understand how we can do the decompression directly from the peridic coloring.
We only need to solve bidiagonal systems for the decompression of each 2-colored tree.
It also allows to not require a buffer like in the acyclic coloring.
using BandedMatrices
T = Float64
n = 10
kd = 3
k = 2 * kd + 1
A = brand(T,n,n,kd,kd)
A = A + A'
color = Int[mod(j,kd+1)+1 for j=1:n]
B = zeros(T, n, kd+1)
for j = 1:n
cj = color[j]
B[:,cj] .+= A[:,j]
end
C = copy(A)
fill!(C, 0)
for i = 1:n
ci = color[i]
C[i,i] = B[i, ci]
end
for j = 1:kd
for i = j+1:kd+1
posi = i
posj = j
c = color[posi]
C[posi,posj] = B[posj,c]
C[posj,posi] = C[posi,posj]
flag = true
while flag
if posi > posj
posi, posj = posj, posi
end
if posi + kd + 1 <= n
c = color[posi + kd + 1]
C[posi+kd+1,posj] = B[posj,c] - C[posj,posi]
C[posj,posi+kd+1] = C[posi+kd+1,posj]
posi = posi + kd + 1
else
flag = false
end
end
end
end
- Lingua principale
- Julia
- Stelle
- 46
- Fork
- 14
- Merge medio
- 6h 30m
- PR unite (30g)
- 2
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di JuliaDiff/SparseMatrixColorings.jl
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
JuliaDiff/SparseMatrixColorings.jl#342 · 1 commento ·
-
ContributorsApertawontfix
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
JuliaDiff/SparseMatrixColorings.jl#331 · 4 commenti ·
-
Compiled (trimmed) binariesForse già presa @amontoison l’ha presa 39 giorni fa. Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
JuliaDiff/SparseMatrixColorings.jl#329 · 2 commenti · 2 reazioni ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 50/100
JuliaDiff/SparseMatrixColorings.jl#301 · 1 commento ·
-
Decompress into a single triangleForse già presa @amontoison l’ha presa 288 giorni fa. Apertaepic feature
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
JuliaDiff/SparseMatrixColorings.jl#280 · 4 commenti · 1 reazione ·
Tutte le issue di JuliaDiff/SparseMatrixColorings.jl
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
SciML/OrdinaryDiffEq.jl#4875 ·
I maintainer di solito rispondono entro 3 giorni
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
SciML/NonlinearSolve.jl#1372 ·
I maintainer di solito rispondono entro 1 giorno
-
Truncated discrete ccdf and logccdf return incorrect values at the lower atomForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
JuliaStats/Distributions.jl#2095 ·
-
documentation 📜 microphysics💧 ❄️
Difficoltà 2/5 1-3 ore Idoneità per principianti 63/100
NumericalEarth/Breeze.jl#1073 ·
I maintainer di solito rispondono entro 1 giorno