PartitionedArrays.jl icon indicating copy to clipboard operation
PartitionedArrays.jl copied to clipboard

Implement matrix-matrix and matrix-matrix-matrix product

Open fverdugo opened this issue 4 years ago • 1 comments

This would be needed for multigrid preconditioners.

fverdugo avatar Jan 18 '21 08:01 fverdugo

Wouldn't you generally want to leave such products implicit, ala https://github.com/JuliaSmoothOptimizers/LinearOperators.jl, i.e. A * B returns an operator that computes (A * B) * x via A * (B * x)?

That being said, matrix–matrix products are nice to have in general.

stevengj avatar Nov 18 '21 21:11 stevengj

I would try to implement this feature. I was looking at the PSparseMatrix and PVector product. Do you have any suggestions on where I can start from? or reference to better understand how the code/package internally works (I get lost in the indexing notation)?

carlodev avatar Jan 10 '23 16:01 carlodev

Hi Carlos, I am refactoring the code with the main objective of improving the documentation so that others can contribute easier.

See the work going on in branch https://github.com/fverdugo/PartitionedArrays.jl/tree/remove_abstractpdata

(the name is a bit confusing, sorry...)

If you are not in a hurry, it would better to wait.

In the meanwhile, you can build and read the documentation in the branch and start providing feedback for the parts that are relatively mature (parallel primitives and partitioned ranges).

fverdugo avatar Jan 10 '23 16:01 fverdugo

@fverdugo, can you link the commit where this was completed?

stevengj avatar Feb 27 '24 20:02 stevengj

Yes, I should have mentioned this, while closing the issue.

It was in PR #134 as part of the implementation of smoothed aggregation AMG solvers.

fverdugo avatar Feb 28 '24 08:02 fverdugo