Learn R Programming

SMME (version 1.1.1)

RH: The Rotated H-transform of a 3d Array by a Matrix

Description

This function is an implementation of the \(\rho\)-operator found in Currie et al 2006. It forms the basis of the GLAM arithmetic.

Usage

RH(M, A)

Value

A 3d array of size \(p_2 \times p_3 \times n\).

Arguments

M

a \(n \times p_1\) matrix.

A

a 3d array of size \(p_1 \times p_2 \times p_3\).

Author

Adam Lund

Details

For details see Currie et al 2006. Note that this particular implementation is not used in the routines underlying the optimization procedure.

References

Currie, I. D., M. Durban, and P. H. C. Eilers (2006). Generalized linear array models with applications to multidimensional smoothing. Journal of the Royal Statistical Society. Series B. 68, 259-280. url = http://dx.doi.org/10.1111/j.1467-9868.2006.00543.x.

Examples

Run this code

n1 <- 65; n2 <- 26; n3 <- 13; p1 <- 13; p2 <- 5; p3 <- 4

##marginal design matrices (Kronecker components)
X1 <- matrix(rnorm(n1 * p1), n1, p1)
X2 <- matrix(rnorm(n2 * p2), n2, p2)
X3 <- matrix(rnorm(n3 * p3), n3, p3)

Beta <- array(rnorm(p1 * p2 * p3, 0, 1), c(p1 , p2, p3))
max(abs(c(RH(X3, RH(X2, RH(X1, Beta)))) - kronecker(X3, kronecker(X2, X1)) %*% c(Beta)))

Run the code above in your browser using DataLab