<?xml version="1.0" encoding="UTF-8"?>
<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="feval" xml:lang="fr">
    <refnamediv>
        <refname>feval</refname>
        <refpurpose>évaluation multiple d'une fonction</refpurpose>
    </refnamediv>
    <refsynopsisdiv>
        <title>Séquence d'appel</title>
        <synopsis>[z]=feval(x,y,f)
            [z]=feval(x,f)
        </synopsis>
    </refsynopsisdiv>
    <refsection>
        <title>Paramètres</title>
        <variablelist>
            <varlistentry>
                <term>x,y</term>
                <listitem>
                    <para>deux vecteurs</para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>f</term>
                <listitem>
                    <para>fonction, ou chaîne de caractères pour les appels Fortran ou
                        C
                    </para>
                </listitem>
            </varlistentry>
        </variablelist>
    </refsection>
    <refsection>
        <title>Description</title>
        <para>Evaluation multiple d'une fonction pour un ou deux arguments de type
            vecteur.
        </para>
        <variablelist>
            <varlistentry>
                <term>z=feval(x,f)</term>
                <listitem>
                    <para>
                        renvoie le vecteur <literal>z</literal> défini par
                        <literal>z(i)=f(x(i)</literal>
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>z=feval(x,y,f)</term>
                <listitem>
                    <para>
                        renvoie la matrice <literal>z</literal> telle que
                        <literal>z(i,j)=f(x(i),y(j)) </literal>
                    </para>
                </listitem>
            </varlistentry>
        </variablelist>
        <para>
            <literal>f</literal> est un <link linkend="external">"external"</link> (fonction
            ou routine Fortran
            ou C) acceptant un ou deux arguments d'entrée supposés réels. Le résultat
            renvoyé par <literal>f</literal> peut par contre être réel ou complexe.
            Dans le cas d'un appel Fortran ou C, la fonction <literal>f</literal>
            doit être définie dans la fonction <literal>fevaltable.c</literal> (voir dans
            le dossier <literal>SCI/modules/differential_equations/src/c</literal>)
        </para>
    </refsection>
    <refsection>
        <title>Exemples</title>
        <programlisting role="example"><![CDATA[
deff('[z]=f(x,y)','z=x^2+y^2');
feval(1:10,1:5,f)
deff('[z]=f(x,y)','z=x+%i*y');
feval(1:10,1:5,f)
feval(1:10,1:5,'parab')   // voir le fichier ffeval.f
feval(1:10,'parab')
// Pour le lien dynamique (voir l'exemple ftest dans ffeval.f)
// on peut utiliser la commande "link"
// unix('make ftest.o');link('ftest.o','ftest'); feval(1:10,1:5,'ftest')
 ]]></programlisting>
    </refsection>
    <refsection role="see also">
        <title>Voir aussi</title>
        <simplelist type="inline">
            <member>
                <link linkend="evstr">evstr</link>
            </member>
            <member>
                <link linkend="horner">horner</link>
            </member>
            <member>
                <link linkend="execstr">execstr</link>
            </member>
            <member>
                <link linkend="external">external</link>
            </member>
            <member>
                <link linkend="link">link</link>
            </member>
        </simplelist>
    </refsection>
</refentry>
