public function dot(Vector $b) : ColumnVector
    {
        if ($this->n !== $b->size()) {
            throw new DimensionalityMismatchException('Matrix A requires'
                . " $this->n elements but Vector B has {$b->size()}.");
        }

        return $this->matmul($b->asColumnMatrix())->columnAsVector(0);
    }
public function dot(Vector $b) : ColumnVector
    {
        if ($this->n !== $b->size()) {
            throw new DimensionalityMismatchException('Matrix A requires'
                . " $this->n elements but Vector B has {$b->size()}.");
        }

        return $this->matmul($b->asColumnMatrix())->columnAsVector(0);
    }
public function dot ( Vector $ b ) : ColumnVector { if ( $ this -> n !== $ b -> size ( ) ) { throw new DimensionalityMismatchException ( 'Matrix A requires' . " $this->n elements but Vector B has {$b->size()}." ) ; } return $ this -> matmul ( $ b -> asColumnMatrix ( ) ) -> columnAsVector ( 0 ) ; }
Compute the dot product of this matrix and a vector.

@param \Rubix\Tensor\Vector $b
@throws \InvalidArgumentException
@return \Rubix\Tensor\ColumnVector
Compute the dot product of this matrix and a vector .