\name{lower.to.upper.tri.inds} \alias{lower.to.upper.tri.inds} \alias{upper.to.lower.tri.inds} \title{Permute Indices for Triangular Matrices} \description{ Compute index vectors for extracting or reordering of lower or upper triangular matrices that are stored as contiguous vectors. } \usage{ lower.to.upper.tri.inds(n) upper.to.lower.tri.inds(n) } \arguments{ \item{n}{integer larger than 1.} } \value{ integer vector containing a permutation of \code{1:N} where \eqn{N = n(n-1)/2}. } \seealso{\code{\link{upper.tri}}, \code{\link{lower.tri}} with a related purpose.} \examples{ m5 <- matrix(NA,5,5) m <- m5; m[lower.tri(m)] <- upper.to.lower.tri.inds(5); m m <- m5; m[upper.tri(m)] <- lower.to.upper.tri.inds(5); m stopifnot(lower.to.upper.tri.inds(2) == 1, lower.to.upper.tri.inds(3) == 1:3, upper.to.lower.tri.inds(3) == 1:3, sort(upper.to.lower.tri.inds(5)) == 1:10, sort(lower.to.upper.tri.inds(6)) == 1:15) } \keyword{array} \keyword{utilities}