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

mtlb_all

Matlab all emulation function

Description

Matlab all and Scilab and behave differently in some particular cases:

• When used with one input (all(A)), Matlab all treats the values along the first non-singleton dimension of A as vectors while Scilab and treats all A values.

• When used with two inputs (all(A,dim)), Matlab tolerates dim to be greater than the number of dimensions of A while Scilab returns an error message in this case.

The function R = mtlb_all(A[,dim]) is used by mfile2sci to replace all(A[,dim]) 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_all calls:

• If A is a scalar or a vector R = mtlb_all(A) may be replaced by R = and(A)

• If A is a matrix R = mtlb_all(A) may be replaced by R = and(A,1)

• If A is a hypermatrix R = mtlb_all(A) may be replaced by R = and(A,firstnonsingleton(A)) or by R = and(A,user_defined_value) if the first non-singleton dimensions of A is known.

• If dim is less equal to the number of dimensions of A R = mtlb_all(A,dim) may be replaced by R = and(A,dim)

• If dim is greater than then number of dimensions of A R = mtlb_all(A,dim) may be replaced by R = A<>0 if A is not an empty matrix or by R = A if A is an empty matrix. Caution: mtlb_all has not to be used for hand coded functions.