kronecker {base} R Documentation

## Kronecker Products on Arrays

### Description

Computes the generalised kronecker product of two arrays, X and Y.

### Usage

kronecker(X, Y, FUN = "*", make.dimnames = FALSE, ...)
X %x% Y


### Arguments

 X A vector or array. Y A vector or array. FUN a function; it may be a quoted string. make.dimnames Provide dimnames that are the product of the dimnames of X and Y. ... optional arguments to be passed to FUN.

### Details

If X and Y do not have the same number of dimensions, the smaller array is padded with dimensions of size one. The returned array comprises submatrices constructed by taking X one term at a time and expanding that term as FUN(x, Y, ...).

%x% is an alias for kronecker (where FUN is hardwired to "*").

### Value

An array A with dimensions dim(X) * dim(Y).

Jonathan Rougier

### References

Shayle R. Searle (1982) Matrix Algebra Useful for Statistics. John Wiley and Sons.

outer, on which kronecker is built and %*% for usual matrix multiplication.

### Examples

# simple scalar multiplication
( M <- matrix(1:6, ncol = 2) )
kronecker(4, M)
# Block diagonal matrix:
kronecker(diag(1, 3), M)