JuliaSmoothOptimizers / QRMumps.jl

Interface to multicore QR factorization qr_mumps
GNU Lesser General Public License v3.0
16 stars 6 forks source link

Interface Xqrm_spfct_trsm and Xqrm_spmat_gels #110

Open MaxenceGollier opened 1 week ago

MaxenceGollier commented 1 week ago

Related to #99, I could add these as well.

amontoison commented 1 week ago

I need to check with @abuttari if the features are not already interfaced with a different name. From what I remember, it's what is used by qrm_spfct_solve and qrm_spfct_apply.

abuttari commented 1 week ago

qrm_spfct_solve and qrm_spfct_apply are aliases for qrm_spfct_trsm and qrm_spfct_unmqr respectively.

qrm_spmat_gels, instead, is the equivalent to the sequence analyze, factorize, unmqr, trsm where the last two are inverted if transp is set to 't' or 'c'

amontoison commented 1 week ago

It seems that the routine qrm_spmat_gels is not in the header files:
https://github.com/JuliaSmoothOptimizers/QRMumps.jl/blob/main/src/wrapper/libqrmumps.jl

Maybe it's not part of the C interface and just a Fortran routine.

@abuttari Off-topic: We exchanged a few emails with François Pellegrini about the upcoming SCOTCH v7.0.6. Can I recompile qr_mumps with SCOTCH v7.x.x? I remember that the last time we exchanged about this, you hadn't tested it yet.

Also, I have a request: could you add a routine in the C interface to return the content of the analysis phase (sparsity pattern of the factors, etc.)? I wanted to experiment with something in pure Julia for the other phases. :smiling_imp:

abuttari commented 1 week ago

you're right, I forgot to add gels in the C interface. I'll fixe this in the next release.

Yes, please go ahead and test qr_mumps with SCOTCH v7.0.6!

I might a (very young, "stage de fin de prepa") student who's potentially interested in coding the analysis directly in Julia. I should meet him in the next few days. This might be a better way to proceed.