Learn R Programming

MVT (version 0.3)

duplication: Duplication matrix

Description

This function returns a duplication matrix of order n which transforms, for a symmetric matrix x, vech(x) into vec(x).

Usage

duplication(n = 1)

Arguments

n
order of the duplication matrix.

Value

Returns an $n^2$ by $n(n + 1)/2$ matrix.

References

Magnus, J.R., and Neudecker, H. (1980). The elimination matrix, some lemmas and applications. SIAM Journal on Algebraic Discrete Methods 1, 422-449.

Magnus, J.R., and Neudecker, H. (1999). Matrix Differential Calculus with Applications in Statistics and Econometrics, 2nd Edition. Wiley, New York.

Examples

Run this code
dmat <- duplication(3)
a <- matrix(c( 1, 2, 3,
               2, 3, 4,
               3, 4, 5), nrow = 3)
vech <- a[upper.tri(a, diag = TRUE)]
vec <- dmat %*% vech
as.vector(vec)

Run the code above in your browser using DataLab