Translation of help page for numdiff into Russian.
[scilab.git] / scilab / modules / differential_equations / help / ru_RU / numdiff.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4  * Copyright (C) 2008 - INRIA
5  * 
6  * This file must be used under the terms of the CeCILL.
7  * This source file is licensed as described in the file COPYING, which
8  * you should have received as part of this distribution.  The terms
9  * are also available at    
10  * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
11  *
12  -->
13 <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="numdiff" xml:lang="ru">
14     <refnamediv>
15         <refname>numdiff</refname>
16         <refpurpose>числовая оценка градиента</refpurpose>
17     </refnamediv>
18     <refsynopsisdiv>
19         <title>Последовательность вызова</title>
20         <synopsis>g = numdiff(fun, x [,dx])</synopsis>
21     </refsynopsisdiv>
22     <refsection>
23         <title>Аргументы</title>
24         <variablelist>
25             <varlistentry>
26                 <term>fun</term>
27                 <listitem>
28                     <para>
29                       внешняя функция или подпрограмма, функция Scilab'а или список. См.
30                       ниже последовательность вызова, см. также <link linkend="external">external</link> о подробностях о внешних
31                       функциях.
32                     </para>
33                 </listitem>
34             </varlistentry>
35             <varlistentry>
36                 <term>x</term>
37                 <listitem>
38                     <para>вектор, аргумент функции <varname>fun</varname>.
39                     </para>
40                 </listitem>
41             </varlistentry>
42             <varlistentry>
43                 <term>dx</term>
44                 <listitem>
45                     <para>
46                       вектор, шаг конечной разности. Значение по умолчанию равно
47                       <code>dx=sqrt(%eps)*(1+1d-3*abs(x))</code>.
48                     </para>
49                 </listitem>
50             </varlistentry>
51             <varlistentry>
52                 <term>g</term>
53                 <listitem>
54                     <para>вектор, оцененный градиент</para>
55                 </listitem>
56             </varlistentry>
57         </variablelist>
58     </refsection>
59     <refsection>
60         <title>Описание</title>
61         <para>
62             Заданная функция <code>fun(x)</code> от
63             <code>R^n</code> до <code>R^p</code> вычисляет такую матрицу
64             <varname>g</varname>, что
65         </para>
66         <programlisting role="no-scilab-exec"><![CDATA[
67 g(i,j) = (df_i)/(dx_j)
68  ]]></programlisting>
69         <para>
70           используя методы конечной разницы. Использует формулу порядка 1.
71         </para>
72         <para>
73           Без параметров функция последовательность вызова <varname>fun</varname>
74           <code>y=fun(x)</code>, и <function>numdiff</function> может быть вызвана в виде
75           <code>g=numdiff(fun,x)</code>. Иначе последовательность вызова <varname>fun</varname>
76           должна быть <literal>y = fun(x, param_1, pararm_2, ..., param_q)</literal>.
77           Если параметры <literal>param_1, param_2, ..., param_q</literal> существуют, то
78           <function>numdiff</function> может быть вызвана следующим образом:
79           <literal>g=numdiff(list(fun, param_1, param_2, ..., param_q), x)</literal>.
80         </para>
81         <para>
82             См. <link linkend="derivative">derivative</link> относительно проблем числовой точности и сравнение между двумя алгоритмами.
83         </para>
84     </refsection>
85     <refsection>
86         <title>Примеры</title>
87         <programlisting role="example"><![CDATA[ 
88 // пример 1 (без параметров)
89 // myfun - это функция от R^2 до R: (x(1),x(2)) |--> myfun(x)
90 function f=myfun(x)
91   f=x(1)*x(1)+x(1)*x(2)
92 endfunction
93 x=[5 8]
94 g=numdiff(myfun,x)
95 // Точный градиент (т. е. производная принадлежит x(1): первый элемент
96 // и производная принадлежит x(2): второй элемент) равен
97 exact=[2*x(1)+x(2)  x(1)]
98
99 //пример 2 (с параметрами)
100 // myfun - это функция от R до R:  x(1) |--> myfun(x)
101 // myfun содержит 3 параметра: a, b, c
102 function  f=myfun(x,a,b,c)
103   f=(x+a)^c+b
104 endfunction
105 a=3; b=4; c=2;
106 x=1
107 g2=numdiff(list(myfun,a,b,c),x)
108 // Точный градиент, то есть производная принадлежит x(1), равен:
109 exact2=c*(x+a)^(c-1)
110  ]]></programlisting>
111     </refsection>
112     <refsection role="see also">
113         <title>Смотрите также</title>
114         <simplelist type="inline">
115             <member>
116                 <link linkend="optim">optim</link>
117             </member>
118             <member>
119                 <link linkend="derivative">derivative</link>
120             </member>
121             <member>
122                 <link linkend="external">external</link>
123             </member>
124         </simplelist>
125     </refsection>
126 </refentry>