M2SCI function
Last update : 13/8/2004

mtlb_repmat - Matlab repmat emulation function

### Description

There is no Scilab equivalent function for Matlab `repmat` but there are equivalent instructions.

The function `mtlb_repmat(M,m[,n])` is used by `mfile2sci` to replace `repmat(M,m[,n])` when it was not possible to know what were the inputs while porting Matlab code to Scilab. This function will determine the correct semantic at run time. If you want to have a more efficient code it is possible to replace `mtlb_repmat` calls:

  - If `A` is of Double type and `m` is a scalar, `mtlb_repmat(M,m)` may be replaced by `ones(m,m).*.M` and `mtlb_repmat(M,m,n)` may be replaced by `ones(m,n).*.M`
  - If `A` is of Boolean type and `m` is a scalar, `mtlb_repmat(M,m)` may be replaced by `ones(m,m).*.bool2s(M)` and `mtlb_repmat(M,m,n)` may be replaced by `ones(m,n).*.bool2s(M)`
  - If `A` is of String type and `m` is a scalar, `mtlb_repmat(M,m)` may be replaced by `asciimat(ones(m,m).*.asciimat(M))` and `mtlb_repmat(M,m,n)` may be replaced by `asciimat(ones(m,n).*.asciimat(M))`
  - If `A` is of Double type and `m` is a vector, `mtlb_repmat(M,m)` may be replaced by `ones(m(1),m(2),...).*.M`
  - If `A` is of Boolean type and `m` is a vector, `mtlb_repmat(M,m)` may be replaced by `ones(m(1),m(2),...).*.bool2s(M)`
  - If `A` is of String type and `m` is a vector, `mtlb_repmat(M,m)` may be replaced by `asciimat(ones(m(1),m(2),...).*.asciimat(M))`

Caution: `mtlb_repmat` has not to be used for hand coded functions.

### See Also

`ones`, `kron`,

### Authors

  V.C.