Learn R Programming

tensr (version 1.0.1)

amprod: \(k\)-mode product.

Description

amprod returns the \(k\)-mode product of an array with a matrix.

Usage

amprod(A, M, k)

Arguments

A

A real valued array.

M

A real matrix.

k

An integer. The mode along which M is to be multiplied to A.

Value

An array whose \(k\)-mode unfolding is M %*% mat(A,k).

Details

The \(k\)-mode product of a tensor \(A\) with a matrix \(M\) results in a tensor whose \(k\)-mode unfolding is \(M\) times the \(k\)-mode unfolding of \(A\). That is mat(amprod(A,M,k)) = M %*% mat(A,k). More details of the \(k\)-mode product can be found in Kolda and Bader (2009).

References

Kolda, T. G., & Bader, B. W. (2009). Tensor decompositions and applications. SIAM review, 51(3), 455-500.

See Also

atrans for applying multiple \(k\)-mode products.

Examples

Run this code
# NOT RUN {
A <- array(1:8, dim = c(2,2,2))
M <- matrix(1:4, nrow = 2, ncol = 2)
Y <- amprod(A, M, 2)
Y
identical(M %*% mat(A,2), mat(Y,2))
# }

Run the code above in your browser using DataLab