Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes


mtlb_logic

Matlab logical operators emulation function

Description

Matlab and Scilab logical operator behave differently in some particular cases:

  • With complex operands: The <, <=, > and >= operators can not be used into Scilab with complex operands, while in Matlab they can. And in this case, only real part of complex operands is compared.

  • With empty matrices: For operators == and ~=, if at least one operand is an empty matrix, Matlab returns [] while Scilab returns a boolean value %T or %F.

The function mtlb_logic(A,symbol,B) (with "symbol" a character string containing the operator symbol) is used by mfile2sci to replace A symbol B when it was not possible to know what were the operands 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_logic calls:

  • If both A and B are not complex values nor empty matrices mtlb_logic(A,symbol,B) may be replaced by A symbol B.

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

Report an issue
<< mtlb_linspace Compatible fonctions mtlb_logical >>

Copyright (c) 2022-2023 (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 Nov 07 15:06:10 CET 2022