Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.4.1 - English

Change language to:
Français - 日本語 - Português - Русский

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Compatibility Functions > mtlb_find

mtlb_find

Matlab find emulation function

Description

Matlab and Scilab find behave differently in some particular cases:

  • With column vectors and matrices as input: Matlab find returns column vectors while Scilab returns row vectors.

  • When called with three outputs: Matlab find can have three outputs but Scilab not.

The function [i[,j[,v]]] = mtlb_find(B) is used by mfile2sci to replace [i[,j[,v]]] = find(B) when it was not possible to know what was the input 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_find calls:

  • When called with one output, if B is a row vector i = mtlb_find(B) may be replaced by i = find(B)

  • When called with one output, if B is not a row vector i = mtlb_find(B) may be replaced by i = matrix(find(B),-1,1)

  • When called with two outputs, if B is a row vector [i,j] = mtlb_find(B) may be replaced by [i,j] = find(B)

  • When called with two outputs, if B is not a row vector [i,j] = mtlb_find(B) may be replaced by [i,j] = find(B);i = matrix(i,-1,1);j = matrix(j,-1,1);

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

Report an issue
<< mtlb_fftshift Compatibility Functions mtlb_findstr >>

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:
Tue Apr 02 17:36:24 CEST 2013