kronecker.prod {fastmatrix} | R Documentation |
Kronecker product on matrices
Description
Computes the kronecker product of two matrices, x
and y
.
Usage
kronecker.prod(x, y = x)
Arguments
x |
a numeric matrix or vector. |
y |
a numeric matrix or vector. |
Details
Let \bold{X}
be an m\times n
and \bold{Y}
a p\times q
matrix.
The mp\times nq
matrix defined by
\left[{\begin{array}{ccc}
x_{11}\bold{Y} & \dots & x_{1n}\bold{Y} \\
\vdots & & \vdots \\
x_{m1}\bold{Y} & \dots & x_{mn}\bold{Y}
\end{array}}\right],
is called the Kronecker product of \bold{X}
and \bold{Y}
.
Value
An array with dimensions dim(x) * dim(y)
.
References
Magnus, J.R., Neudecker, H. (2007). Matrix Differential Calculus with Applications in Statistics and Econometrics, 3rd Edition. Wiley, New York.
See Also
kronecker
function from base
package is based on outer
.
Our C
version is slightly faster.
Examples
# block diagonal matrix:
a <- diag(1:3)
b <- matrix(1:4, ncol = 2)
kronecker.prod(a, b)
# examples with vectors
ones <- rep(1, 4)
y <- 1:3
kronecker.prod(ones, y) # 12-dimensional vector
kronecker.prod(ones, t(y)) # 3 x 3 matrix
[Package fastmatrix version 0.5-772 Index]