[Numpy-discussion] Re: New matvec and vecmat functions

2024-01-23 Thread Marten van Kerkwijk
> I can understand the desire to generalise the idea of matrix > multiplication for when the arrays are not both 2-D but taking the > complex conjugate makes absolutely no sense in the context of matrix > multiplication. > > You note above that "vecmat is defined as x†A" but my interpretation >

[Numpy-discussion] Re: New matvec and vecmat functions

2024-01-23 Thread Oscar Benjamin
On Tue, 23 Jan 2024 at 23:13, Marten van Kerkwijk wrote: > > >> I also note that for complex numbers, `vecmat` is defined as `x†A`, > >> i.e., the complex conjugate of the vector is taken. This seems to be the > >> standard and is what we used for `vecdot` too (`x†x`). However, it is > >> *not*

[Numpy-discussion] Re: New matvec and vecmat functions

2024-01-23 Thread Marten van Kerkwijk
>> I also note that for complex numbers, `vecmat` is defined as `x†A`, >> i.e., the complex conjugate of the vector is taken. This seems to be the >> standard and is what we used for `vecdot` too (`x†x`). However, it is >> *not* what `matmul` does for vector-matrix or indeed vector-vector >>

[Numpy-discussion] Re: New matvec and vecmat functions

2024-01-23 Thread Marten van Kerkwijk
> For dot product I can convince myself this is a math definition thing and > accept the > conjugation. But for "vecmat" why the complex conjugate of the vector? Are we > assuming that > 1D things are always columns. I am also a bit lost on the difference of dot, > vdot and vecdot. > > Also if

[Numpy-discussion] Re: New matvec and vecmat functions

2024-01-23 Thread Oscar Benjamin
On Tue, 23 Jan 2024 at 22:18, Marten van Kerkwijk wrote: > > I also note that for complex numbers, `vecmat` is defined as `x†A`, > i.e., the complex conjugate of the vector is taken. This seems to be the > standard and is what we used for `vecdot` too (`x†x`). However, it is > *not* what `matmul`

[Numpy-discussion] Re: New matvec and vecmat functions

2024-01-23 Thread Ilhan Polat
For dot product I can convince myself this is a math definition thing and accept the conjugation. But for "vecmat" why the complex conjugate of the vector? Are we assuming that 1D things are always columns. I am also a bit lost on the difference of dot, vdot and vecdot. Also if __matmul__ and

[Numpy-discussion] New matvec and vecmat functions

2024-01-23 Thread Marten van Kerkwijk
Hi All, I have a PR [1] that adds `np.matvec` and `np.vecmat` gufuncs for matrix-vector and vector-matrix calculations, to add to plain matrix-matrix multiplication with `np.matmul` and the inner vector product with `np.vecdot`. They call BLAS where possible for speed. I'd like to hear whether