public function augmentAbove(Matrix $b) : self
    {
        if ($this->m > 0 and $b->n() !== $this->n) {
            throw new DimensionalityMismatchException('Matrix A requires'
                . " $this->n columns but Matrix B has {$b->n()}.");
        }

        $b = array_merge($b->asArray(), $this->a);

        return self::quick($b);
    }
public function augmentAbove(Matrix $b) : self
    {
        if ($this->m > 0 and $b->n() !== $this->n) {
            throw new DimensionalityMismatchException('Matrix A requires'
                . " $this->n columns but Matrix B has {$b->n()}.");
        }

        $b = array_merge($b->asArray(), $this->a);

        return self::quick($b);
    }
public function augmentAbove ( Matrix $ b ) : self { if ( $ this -> m > 0 and $ b -> n ( ) !== $ this -> n ) { throw new DimensionalityMismatchException ( 'Matrix A requires' . " $this->n columns but Matrix B has {$b->n()}." ) ; } $ b = array_merge ( $ b -> asArray ( ) , $ this -> a ) ; return self :: quick ( $ b ) ; }
Attach matrix b above this matrix.

@param \Rubix\Tensor\Matrix $b
@throws \Rubix\Tensor\Exceptions\DimensionalityMismatchException
@return self
Attach matrix b above this matrix .