D.matrix {matrixcalc} | R Documentation |
Duplication matrix
Description
This function constructs the linear transformation D that maps vech(A) to vec(A) when A is a symmetric matrix
Usage
D.matrix(n)
Arguments
n |
a positive integer value for the order of the underlying matrix |
Details
Let {\bf{T}}_{i,j}
be an n \times n
matrix with 1 in its \left( {i,j} \right)
element 1 \le i,j \le n
.
and zeroes elsewhere. These matrices are constructed by the function T.matrices
. The formula for the
transpose of matrix \bf{D}
is {\bf{D'}} = \sum\limits_{j = 1}^n {\sum\limits_{i = j}^n {{{\bf{u}}_{i,j}}\;{{\left( {vec\;{{\bf{T}}_{i,j}}} \right)}^\prime }} }
where {{{\bf{u}}_{i,j}}}
is the column vector in the order \frac{1}{2}n\left( {n + 1} \right)
identity
matrix for column k = \left( {j - 1} \right)n + i - \frac{1}{2}j\left( {j - 1} \right)
. The function
u.vectors
generates these vectors.
Value
It returns an {n^2}\; \times \;\frac{1}{2}n\left( {n + 1} \right)
matrix.
Author(s)
Frederick Novomestky fnovomes@poly.edu
References
Magnus, J. R. and H. Neudecker (1980). The elimination matrix, some lemmas and applications, SIAM Journal on Algebraic Discrete Methods, 1(4), December 1980, 422-449.
Magnus, J. R. and H. Neudecker (1999). Matrix Differential Calculus with Applications in Statistics and Econometrics, Second Edition, John Wiley.
See Also
Examples
D <- D.matrix( 3 )
A <- matrix( c( 1, 2, 3,
2, 3, 4,
3, 4, 5), nrow=3, byrow=TRUE )
vecA <- vec( A )
vechA<- vech( A )
y <- D %*% vechA
print( y )
print( vecA )