Functions to extract or replace the diagonals of an array, or construct a diagonal array.
diagonal(x =1, dim = rep(2,2))diagonal(x)<- value
Arguments
x: an array from which to extract the diagonals, or a vector giving the diagonal values to construct the array.
dim: the dimensions of the (square) array to construct when x is a vector.
value: vector giving the values of the diagonal entries.
Returns
Vector of the diagonal entries of x if x is an array. If x is a vector, returns the diagonal array with the entries given by x.
Functions
diagonal(x) \<- value: set diagonals.
Examples
### 3x3 matrixdiagonal(x =1, dim = c(3,3))### 2x2x2 arraydiagonal(x =1:2, dim = c(2,2,2))### extract diagonals x <- diagonal(1:5, dim = c(5,5,5))diagonal(x)### set diagonalsx <- array(0, dim = c(2,2,2))diagonal(x)<-1:2x
References
Guidotti E (2022). "calculus: High-Dimensional Numerical and Symbolic Calculus in R." Journal of Statistical Software, 104(5), 1-37. tools:::Rd_expr_doi("10.18637/jss.v104.i05")
See Also
Other tensor algebra: contraction(), delta(), einstein(), epsilon(), index()