“Packed” matrix storage here applies to dense matrices
(denseMatrix
) only, and there is available only
for symmetric (symmetricMatrix
)
or triangular (triangularMatrix
) matrices,
where only one triangle of the matrix needs to be stored.
unpack()
unpacks “packed” matrices, where
pack()
produces “packed” matrices.
1 2 3 4 5 
x 

symmetric 
logical (including 
upperTri 
(for the triangular case only) logical
(incl. 
... 
further arguments passed to or from other methods. 
These are generic functions with special methods for different types
of packed (or nonpacked) symmetric or triangular dense
matrices. Use showMethods("unpack")
to list
the methods for unpack()
, and similarly for pack()
.
unpack()
:A Matrix
object
containing the fullstorage representation of x
.
pack()
:A packed Matrix
(i.e. of class "..pMatrix"
)
representation of x
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15  showMethods("unpack")
(cp4 < chol(Hilbert(4))) # is triangular
tp4 < as(cp4,"dtpMatrix")# [t]riangular [p]acked
str(tp4)
(unpack(tp4))
stopifnot(identical(tp4, pack(unpack(tp4))))
(s < crossprod(matrix(sample(15), 5,3))) # traditional symmetric matrix
(sp < pack(s))
mt < as.matrix(tt < tril(s))
(pt < pack(mt))
stopifnot(identical(pt, pack(tt)),
dim(s ) == dim(sp), all(s == sp),
dim(mt) == dim(pt), all(mt == pt), all(mt == tt))
showMethods("pack")

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.
All documentation is copyright its authors; we didn't write any of that.