Performs a matrix multiplication of the matrices mat1 and mat2.
The matrix input is added to the final result.
If mat1 is a \((n \times m)\) tensor, mat2 is a
\((m \times p)\) tensor, then input must be
broadcastable with a \((n \times p)\) tensor
and out will be a \((n \times p)\) tensor.
alpha and beta are scaling factors on matrix-vector product between
mat1 and mat2 and the added matrix input respectively.
$$
\mbox{out} = \beta\ \mbox{input} + \alpha\ (\mbox{mat1}_i \mathbin{@} \mbox{mat2}_i)
$$
For inputs of type FloatTensor or DoubleTensor, arguments beta and
alpha must be real numbers, otherwise they should be integers.