<?xml version="1.0" encoding="UTF-8"?>
<!--
 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 * Copyright (C) INRIA
 *
 * Copyright (C) 2012 - 2016 - Scilab Enterprises
 *
 * This file is hereby licensed under the terms of the GNU GPL v2.0,
 * pursuant to article 5.3.4 of the CeCILL v.2.1.
 * This file was originally licensed under the terms of the CeCILL v2.1,
 * and continues to be available under such terms.
 * For more information, see the COPYING file which you should have received
 * along with this program.
 *
 -->
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="find" xml:lang="pt">
    <refnamediv>
        <refname>find</refname>
        <refpurpose>encontra índices de elementos verdadeiros em uma matriz ou
            vetor de booleanos
        </refpurpose>
    </refnamediv>
    <refsynopsisdiv>
        <title>Seqüência de Chamamento</title>
        <synopsis>[ii]=find(x [,nmax])
            [i1,i2,..]=find(x [,nmax])
        </synopsis>
    </refsynopsisdiv>
    <refsection>
        <title>Parâmetros</title>
        <variablelist>
            <varlistentry>
                <term>x</term>
                <listitem>
                    <para>pode ser um vetor, matriz ou hipermatriz de booleanos, uma
                        matriz ou hipermatriz "padrão".
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>nmax</term>
                <listitem>
                    <para>um inteiro fornecendo o número máximo de índices a serem
                        retornados. o valor padrão é -1, que significa "todos". Esta opção
                        pode ser usada por eficiência, para evitar uma busca por todos os
                        índices.
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>ii, i1, i2, ..</term>
                <listitem>
                    <para>vetores de índices inteiros ou matrizes vazias</para>
                </listitem>
            </varlistentry>
        </variablelist>
    </refsection>
    <refsection>
        <title>Descrição</title>
        <para>
            Se <literal>x</literal> é uma matriz booleana,
        </para>
        <para>
            <literal>ii=find(x)</literal> retorna o vetor de índices
            <literal>i</literal> para os quais <literal>x(i)</literal> é "true"
            ("verdadeiro").Se nenhum elemento "true" for encontrado, retorna uma
            matriz vazia.
        </para>
        <para>
            <literal>[i1,i2,..]=find(x)</literal> retorna vetores de índices
            <literal>i1</literal> (para linhas) e <literal>i2</literal> (para
            colunas),... tais que <literal>x(i1(n),i2(n),..)</literal> ié "true"
            ("verdadeiro"). Se nenhum elemento "true" for encontrado, retorna matrizes
            vazias em <literal>i1</literal>, <literal>i2</literal>, ...
        </para>
        <para>
            Se <literal>x</literal> é uma matriz ou hipermatriz padrão
            <literal>find(x)</literal> é interpretado como
            <literal>find(x&lt;&gt;0)</literal>
        </para>
        <para>
            <literal>find([])</literal> retorna <literal>[]</literal>
        </para>
    </refsection>
    <refsection>
        <title>Exemplos</title>
        <programlisting role="example"><![CDATA[
A=rand(1,20);
w=find(A<0.4)
A(w)
w=find(A>100)

B=rand(1,20);
w=find(B<0.4,2) //no máximo dois valores retornados

H=rand(4,3,5); //uma hipermatriz
[i,j,k]=find(H>0.9)

H(i(1),j(1),k(1))
 ]]></programlisting>
    </refsection>
    <refsection role="see also">
        <title>Ver Também</title>
        <simplelist type="inline">
            <member>
                <link linkend="boolean">boolean</link>
            </member>
            <member>
                <link linkend="extraction">extraction</link>
            </member>
            <member>
                <link linkend="insertion">insertion</link>
            </member>
            <member>
                <link linkend="vectorfind">vectorfind</link>
            </member>
        </simplelist>
    </refsection>
</refentry>
