demomat {lazy.tools} R Documentation

## Set up a matrix whose elements consist of row and col numbers.

### Description

This can create either symbolic or numeric matrix.

### Usage

```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"
)
```

### Arguments

 `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. If this is present, a character matrix/array will be created. `vec` = 1 to drop the redundant subscript. `shape` Shape of the resulting matrix: "sym", "symU", "symL", "diag", "uppert", "lowert" `nodiag` = 1 to set the diagonal elements to 0 when either "upper" or "lower" is specified `supermat` = 1 to create horizontally stacked array = 2 to create vertically stacked array = 0 othereize `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

### Details

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.
'

### Value

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.

### Examples

```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)

```

[Package lazy.tools version 0.1.3 Index]