Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Change language to: Français - Português - 日本語 - Русский

Please note that the recommended version of Scilab is 6.1.1. This page might be outdated.
See the recommended documentation of this function

# matrix

reshape a vector or a matrix to a different size matrix

### Calling Sequence

```y=matrix(v,n,m)
y=matrix(v,[sizes])```

### Arguments

v

a vector, a matrix or a hypermatrix

n,m

integers

sizes

vector of integers

y

a vector, a matrix or hypermatrix

### Description

For a vector or a matrix with `n` x `m` entries, the command `y=matrix(v,n,m)` or similarly `y=matrix(v,[n,m])` transforms the `v` vector (or matrix) into an `nxm` matrix by stacking columnwise the entries of `v`.

If one of the dimension `m` or `n` is equal to -1 it is automatically assigned to the quotient of `size(v,'*')` by the other dimension.

For a hypermatrix such as `prod(size(v))==prod(sizes)`, the command `y=matrix(v,sizes)` (or equivalently `y=matrix(v,n1,n2,...nm)`) transforms `v` into an matrix or hypermatrix by stacking "columnwise" (first dimension is varying first) the entries of `v`. `y=matrix(v,sizes)` results in a regular matrix if sizes is a scalar or a 2-vector.

### Examples

```a=[1 2 3;4 5 6]
matrix(a,1,6)
matrix(a,1,-1)
matrix(a,3,2)```

• matrices — Scilab objects, matrices in Scilab
• hypermatrices — a Scilab object, N dimensional matrix in Scilab
• ones — matrix made of ones
• zeros — matrix made of zeros
• rand — Random numbers
• poly — polynomial definition
• empty — ([]) empty matrix