hypermatrices a Scilab object, N dimensional matrix in Scilab

## Description

Hypermatrix type allows to manipulate multidimensional arrays.

They can be defined by extension of 2D matrices as follows `a=[1 2;3 4];a(:,:,2)=rand(2,2)` or directly using `matrix` function.

Entries can be booleans, encoded integers of any inttype, real or complex numbers, polynomials, rationals, strings, booleans.

The number of dimension of hypermatrices with right-most sizes equal to 1 are automatically reduced. An hypermatrix with only two dimensions is automatically changed to a regular matrix (type 1).

## Examples

    a(1,1,1,1:2)=[1 2]
    a=[1 2;3 4];a(:,:,2)=rand(2,2)
    a(1,1,:)

    size(a)

    a(:,:,1) //dimensionality reduction
    type(a(:,:,1))

    [a a]

## See also

- zeros
- ones
- grand
- matrix