product assign operator for vector-matrix operation

Issue #131 closed
Ray Kim created an issue

This is a feature request.

Currently, there is no overload that allows this form

auto vec = blaze::DynamicVector<T>(5);
auto mat = blaze::DynamicMatrix<T>(5, 10);

vec *= mat;

Since the result of a vector-matrix dot product is a vector, I think this operation should be available.

Comments (6)

  1. Klaus Iglberger

    Hi!

    Thanks for the proposal. We agree that this extension would be useful if it is consistently used for both row vectors and column vectors:

    blaze::DynamicVector<double,blaze::columnVector> x;
    blaze::DynamicVector<double,blaze::rowVector> y;
    blaze::DynamicMatrix<double> A;
    // ... Resizing and initialization
    
    x *= A;  // Same as 'x = A * x'
    y *= A;  // Same as 'y = y * A'
    

    We will try to implement this feature within the next releases.

    Best regards,

    Klaus!

  2. Klaus Iglberger

    The feature has been implemented, tested, and optimized as required. It is immediately available via cloning the Blaze repository and will be officially released in Blaze 3.3.

  3. Log in to comment