JuliaSparse / SparseArrays.jl

SparseArrays.jl is a Julia stdlib
https://sparsearrays.juliasparse.org/
Other
89 stars 51 forks source link

implement dmperm #108

Open thorek1 opened 2 years ago

thorek1 commented 2 years ago

Hi,

it would be nice to have dmperm implemented as well.

I coudn't find a julia implementation and am using a python workaround for now.

ViralBShah commented 2 years ago

We don't ship CSparse unfortunately, which would make this easy. A contribution would be welcome. The code can probably be translated - and being LGPL, there is no licensing concern.

Do any of the other suitesparse libraries have a dmperm in them?

rayegun commented 2 years ago

No not as far as I can tell. I can translate in another package? It's probably also in his textbook, in which case I may be able to do one from scratch (I have several others I need to do).

rayegun commented 2 years ago

I'll also wrap CSparse and CXSparse in another package just to provide that functionality in the meantime.

SobhanMP commented 2 years ago

doesn't CSparse use zero based indexing? so any call to CSparse needs to be converted to a 0 based indexing?

rayegun commented 2 years ago

All of our C libs are like this.

I have it wrapped, I'll release it Monday or Tuesday.

ViralBShah commented 2 years ago

Whenever we have the wrapped packages, we should note them in the README for this package.

ViralBShah commented 2 years ago

We already ship BTF from SuiteSparse. So the solution outlined in https://discourse.julialang.org/t/block-triangular-form-permutation/818 should be usable here.

PR anyone?

rayegun commented 2 years ago

With respect to BTF I have a BlockTriangularForm.jl about to be released. It's a direct translation of the SuiteSparse version, just writing a few more tests.

For dmperm I was hitting some weird issues with CSparse, I will release the wrapper this weekend