Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.1.0 - Русский


mtlb_any

Matlab any emulation function

Description

Matlab any and Scilab or behave differently in some particular cases:

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

  • When used with two inputs (any(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_any(A[,dim]) is used by mfile2sci to replace any(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_any calls:

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

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

  • If A is a hypermatrix R = mtlb_any(A) may be replaced by R = or(A,firstnonsingleton(A)) or by R = or(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_any(A,dim) may be replaced by R = or(A,dim)

  • If dim is greater than then number of dimensions of A R = mtlb_any(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_any has not to be used for hand coded functions.

See also

Report an issue
<< mtlb_all compatibility_functions mtlb_axis >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon May 22 12:41:19 CEST 2023