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

Add inplace `mul!` with `StandardBasisVector`

Open bartvanerp opened this issue 1 year ago • 6 comments

Currently we can only perform multiplications with the StandardBasisVector by creating a new vector/matrix. For performance reasons it might be beneficial to also support inplace operations here.

bartvanerp avatar Mar 01 '23 10:03 bartvanerp

Also check for *(Adjoint{ T, StandardBasisVector{T}}, AbstractMatrix) and extend get/set for Adjoint

bartvanerp avatar Mar 01 '23 14:03 bartvanerp

Related #344

bvdmitri avatar Aug 31 '23 11:08 bvdmitri

Can we replace the entire thing with FillArrays and its OneElement?

bvdmitri avatar Oct 05 '23 11:10 bvdmitri

Didn't know about this package, but I think yes

bartvanerp avatar Oct 05 '23 12:10 bartvanerp

Just had a look at OneElement. I like their definition where they save the axes in the struct, where we constrain ourselves to the length. Nonetheless, they seem to lack some important functionality in terms of (triple) dot-products.

bartvanerp avatar Oct 06 '23 14:10 bartvanerp

Nonetheless, they seem to lack some important functionality in terms of (triple) dot-products.

Maybe we can make a PR for them?

bvdmitri avatar Oct 10 '23 08:10 bvdmitri