demomat {lazy.tools} | R Documentation |
This can create either symbolic or numeric matrix.
demomat(
nr,
nc,
n3 = 0,
root = NULL,
vec = 0,
shape = NULL,
nodiag = 0,
supermat = 0,
list = 0,
fullsymb = 0,
mul = NULL,
mul3 = NULL,
rnroot = "r",
cnroot = "c",
anroot = "a"
)
nr |
# of rows of the matrix to be generated or a vector consisting of the # of rows of each submatrix. |
nc |
# of columns of the matrix to be generated or a vector consisting of the # of columns of each submatrix. |
n3 |
# of the 3d dimension or 0, if any |
root |
The root character of the elements of the symbolic matrix. |
vec |
= 1 to drop the redundant subscript. |
shape |
Shape of the resulting matrix: |
nodiag |
= 1 to set the diagonal elements to 0 when either "upper" or "lower" is specified |
supermat |
= 1 to create horizontally stacked array |
list |
= 1 to return the array as list when n3 > 2. |
fullsymb |
= 1 to make the result a fully symbolic matrix |
mul |
See below. |
mul3 |
See below. |
rnroot |
root of the row names |
cnroot |
root of the column names |
anroot |
root of the third dimension names |
The i,j elements of a matrix will be named as mul*i + j
The i,j,k elements of an array will be named as mul3*(mul*i + j) + k
When a supermatrix is generated, SMdim attributes will be set
where SMdim is a list of the form
(nrows=nr, ncols=nc, rownames=rn, colnames=cn, anames=an)
where
nr is a vector consisting of the number of rows of each submatrix,
nc is a vector consisting of the number of columns of each submatrix
rn is a vector consisting of the supplemental row names
cn is a vector consisting of the supplemental column names
an is a vector consisting of the names associated with the 3rd dim.
'
A matrix or an array.
Note that even with vec=1 option, thre result is a matrix.
Use c() to convert it to a vector.
demomat( 11,3 ) # numeric matrix
demomat( 11,3,root="a" ) # symbolic matrix
demomat( 4,1,root="a", vec=1 ) # symbolic matrix
demomat( 4,3,2 ) # numeric array
demomat( 4,3,2, supermat=1 ) # numeric supermatrix (horizontally stacked)
demomat( 4,3,2, supermat=2 ) # numeric supermatrix (vertically stacked)
# Below two creates almost identical super matrices.
demomat( 4,3,2, root="a", supermat=1 )
demomat( 4,c(3,3), root="a" )
# 2 x 2 partitioned matrix
A=demomat( c(4,3),c(3,2), root="a" )
Printb(A)