kaleidicassociates / lubeck

High level linear algebra library for Dlang
http://lubeck.libmir.org/
Boost Software License 1.0
66 stars 14 forks source link

Add additional overloads for mtimes (with handling for self-adjoint) #52

Closed jmh530 closed 1 year ago

jmh530 commented 1 year ago

I'm open to different names for the enum that controls what to assume for the properties of the matrix.

jmh530 commented 1 year ago

I moved what I did with dot into mtimes so that it would be similar to the original lubeck API.

There is some stuff in those original lubeck mtimes functions for handling the case where the kind isn't Contiguous that isn't getting handled here. It doesn't look like it's being tested though.

jmh530 commented 1 year ago

@9il I think this is in good shape now if you have time to review.

9il commented 1 year ago

Could it be new function names instead then extending API for the existing one?

jmh530 commented 1 year ago

@9il I can make that change.

This PR also includes the addition of functionality from the original lubeck API to handle matrix-vector and vector-matrix and vector-vector multiplication. For the general matrix case, can I keep that as part of this PR? (i.e. just splitting off the selfAdjoint stuff to separate functions).

jmh530 commented 1 year ago

@9il Pushed some updates. Diff looks better now. Separated the mtimesSymmetric from mtimes.

Apologies for the delay.

jmh530 commented 1 year ago

@9il No rush, but when you have a chance can you push a new tag. I don't think I have permissions to do that on this repository.