Translation of circshift, fftshift and flipdim help pages into russian. 99/21399/3
Stanislav KROTER [Mon, 24 Feb 2020 11:46:16 +0000 (16:46 +0500)]
Change-Id: Iff7fbaacf245c456642897dc3969472c04800891

scilab/modules/elementary_functions/help/ru_RU/matrixmanipulation/circshift.xml [new file with mode: 0644]
scilab/modules/elementary_functions/help/ru_RU/matrixmanipulation/flipdim.xml [new file with mode: 0644]
scilab/modules/signal_processing/help/ru_RU/transforms/fftshift.xml [new file with mode: 0644]

diff --git a/scilab/modules/elementary_functions/help/ru_RU/matrixmanipulation/circshift.xml b/scilab/modules/elementary_functions/help/ru_RU/matrixmanipulation/circshift.xml
new file mode 100644 (file)
index 0000000..658ae99
--- /dev/null
@@ -0,0 +1,303 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2017 - Samuel GOUGEON
+ *
+ * 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:mml="http://www.w3.org/1998/Math/MathML"
+        xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+        xml:lang="ru" xml:id="circshift">
+    <refnamediv>
+        <refname>circshift</refname>
+        <refpurpose>
+            смещает по кругу элементы матрицы
+        </refpurpose>
+    </refnamediv>
+    <refsynopsisdiv>
+        <title>Синтаксис</title>
+        <synopsis>
+            B = circshift(A, shift)
+            B = circshift(A, shift, 0)
+            B = circshift(A, shifts)
+            B = circshift(A, shifts, dims)
+        </synopsis>
+    </refsynopsisdiv>
+    <refsection>
+        <title>Аргументы</title>
+        <variablelist>
+            <varlistentry>
+                <term>A, B</term>
+                <listitem>
+                    <para>
+                        векторы, матрицы, гиперматрицы любого обычного типа данных, структуры,
+                        cell-массивы, пользовательских типов. <varname>B</varname> имеет форму,
+                        размеры и тип <varname>A</varname>. Пользовательские типы применимы, при
+                        условии, что операторы <literal>size()</literal>, вставки и извлечения
+                        определены для типа переменной <varname>A</varname>.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>shift</term>
+                <listitem>
+                    <para>
+                        уникальное положительное или отрицательное целое: сдвиг для применения к
+                        индексам вдоль первого неединичной размерности, или к линейным индексам
+                        элементов <varname>A</varname>, если в качестве третьего входного
+                        аргумента используется <literal>0</literal>.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>shifts</term>
+                <listitem>
+                    <para>
+                        вектор положительных или отрицательных целых чисел: свдиги, которые
+                        применяются к диапазонам вдоль направлений, указанных в <varname>dims</varname>
+                        (или <literal>1:length(shifts)</literal> по умолчанию).
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>dims</term>
+                <listitem>
+                    <para>
+                        вектор целых чисел в диапазоне <literal>[1, ndims(A)]</literal>:
+                        указывает размерности <varname>A</varname>, вдоль которых, соответственно,
+                        должны применятся сдвиги <literal>shifts</literal>.
+                    </para>
+                </listitem>
+            </varlistentry>
+        </variablelist>
+    </refsection>
+    <refsection>
+        <title>Описание</title>
+        <para>
+            <literal>circshift(A, shift)</literal> сдвигает вдоль первой размерности
+            <literal>A</literal> размером > 1.
+        </para>
+        <para>
+            <literal>circshift(A, shift, 0)</literal> по кругу сдвигает элементы
+            <literal>A</literal> на <varname>shift</varname> позиций.
+        </para>
+        <para>
+            <literal>circshift(A, shifts)</literal> по кругу сдвигает индексы
+            строк <literal>A</literal> на <literal>shifts(1)</literal>,
+            индексы столбцов <literal>A</literal> на <literal>shifts(2)</literal>,
+            индексы слоёв <literal>A</literal> на <literal>shifts(3)</literal> и т.д.
+        </para>
+        <para>
+            <literal>circshift(A, shifts, dims)</literal> по кругу сдвигает <literal>A</literal>
+            на <literal>shifts(1)</literal> вдоль её размерности №<literal>dims(1)</literal>,
+            на <literal>shifts(2)</literal> вдоль её размерности №<literal>dims(2)</literal> и т.д.
+        </para>
+    </refsection>
+    <refsection>
+        <title>Примеры</title>
+        <programlisting role="example"><![CDATA[
+circshift(1:7, 2)
+circshift(1:7, -1)
+      ]]></programlisting>
+        <screen><![CDATA[
+--> circshift(1:7, 2)
+ ans  =
+   6.   7.   1.   2.   3.   4.   5.
+
+--> circshift(1:7, -1)
+ ans  =
+   2.   3.   4.   5.   6.   7.   1.
+]]></screen>
+        <para/>
+        <programlisting role="example"><![CDATA[
+M = matrix(1:12, 3, 4)
+circshift(M, 1)
+circshift(M, 1, 2)
+circshift(M, [-1 1])
+circshift(M, [-2 1], [2 1])
+      ]]></programlisting>
+        <screen><![CDATA[
+--> M = matrix(1:12, 3, 4)
+ M  =
+   1.   4.   7.   10.
+   2.   5.   8.   11.
+   3.   6.   9.   12.
+
+--> circshift(M, 1)
+ ans  =
+   3.   6.   9.   12.
+   1.   4.   7.   10.
+   2.   5.   8.   11.
+
+--> circshift(M, 1, 2)
+ ans  =
+   10.   1.   4.   7.
+   11.   2.   5.   8.
+   12.   3.   6.   9.
+
+--> circshift(M, [-1 1])
+ ans  =
+   11.   2.   5.   8.
+   12.   3.   6.   9.
+   10.   1.   4.   7.
+
+--> circshift(M, [-2 1], [2 1])
+ ans  =
+   9.   12.   3.   6.
+   7.   10.   1.   4.
+   8.   11.   2.   5.
+]]></screen>
+        <para/>
+        <programlisting role="example"><![CDATA[
+M = matrix(1:12, 3, 4)
+circshift(M, 5, 0)
+      ]]></programlisting>
+        <screen><![CDATA[
+--> circshift(M, 5, 0)
+ ans  =
+   8.    11.   2.   5.
+   9.    12.   3.   6.
+   10.   1.    4.   7.
+]]></screen>
+        <para>
+            <emphasis role="bold">С гиперматрицей текстов:</emphasis>
+        </para>
+        <programlisting role="example"><![CDATA[
+t = matrix([string(1:12) strsplit("a":"l")' strsplit("A":"L")'],3,4,3)
+circshift(t, 1, 0)
+circshift(t, 1)
+circshift(t, 1, 3)
+circshift(t, [1 -1], [2 3])
+      ]]></programlisting>
+        <screen><![CDATA[
+--> t = matrix([string(1:12) strsplit("a":"l")' strsplit("A":"L")'],3,4,3)
+ t  =
+(:,:,1)
+!1  4  7  10  !
+!2  5  8  11  !
+!3  6  9  12  !
+
+(:,:,2)
+!a  d  g  j  !
+!b  e  h  k  !
+!c  f  i  l  !
+
+(:,:,3)
+!A  D  G  J  !
+!B  E  H  K  !
+!C  F  I  L  !
+
+--> circshift(t, 1, 0)
+ ans  =
+(:,:,1)
+!L  3  6  9   !
+!1  4  7  10  !
+!2  5  8  11  !
+
+(:,:,2)
+!12  c  f  i  !
+!a   d  g  j  !
+!b   e  h  k  !
+
+(:,:,3)
+!l  C  F  I  !
+!A  D  G  J  !
+!B  E  H  K  !
+
+--> circshift(t, 1)
+ ans  =
+(:,:,1)
+!3  6  9  12  !
+!1  4  7  10  !
+!2  5  8  11  !
+
+(:,:,2)
+!c  f  i  l  !
+!a  d  g  j  !
+!b  e  h  k  !
+
+(:,:,3)
+!C  F  I  L  !
+!A  D  G  J  !
+!B  E  H  K  !
+
+--> circshift(t, 1, 3)
+ ans  =
+(:,:,1)
+!A  D  G  J  !
+!B  E  H  K  !
+!C  F  I  L  !
+
+(:,:,2)
+!1  4  7  10  !
+!2  5  8  11  !
+!3  6  9  12  !
+
+(:,:,3)
+!a  d  g  j  !
+!b  e  h  k  !
+!c  f  i  l  !
+
+--> circshift(t, [1 -1], [2 3])
+ ans  =
+(:,:,1)
+!j  a  d  g  !
+!k  b  e  h  !
+!l  c  f  i  !
+
+(:,:,2)
+!J  A  D  G  !
+!K  B  E  H  !
+!L  C  F  I  !
+
+(:,:,3)
+!10  1  4  7  !
+!11  2  5  8  !
+!12  3  6  9  !
+]]></screen>
+        <para>
+            <emphasis role="bold">С cell-массивом:</emphasis>
+        </para>
+        <programlisting role="example"><![CDATA[
+L = list(1,%t);
+C = {%f "a" %i  %z
+     %t "b" %e  %s
+      0 "c" %pi L }
+circshift(C, 1, 0)
+circshift(C, 1)
+circshift(C, 1, 2)
+circshift(C, [1 -1])
+      ]]></programlisting>
+    </refsection>
+    <refsection role="see also">
+        <title>Смотрите также</title>
+        <simplelist type="inline">
+            <member>
+                <link linkend="flipdim">flipdim</link>
+            </member>
+            <member>
+                <link linkend="fftshift">fftshift</link>
+            </member>
+        </simplelist>
+    </refsection>
+    <refsection>
+        <title>История</title>
+        <revhistory>
+            <revision>
+                <revnumber>6.1</revnumber>
+                <revremark>
+                    Введена <literal>circshift()</literal>.
+                </revremark>
+            </revision>
+        </revhistory>
+    </refsection>
+</refentry>
diff --git a/scilab/modules/elementary_functions/help/ru_RU/matrixmanipulation/flipdim.xml b/scilab/modules/elementary_functions/help/ru_RU/matrixmanipulation/flipdim.xml
new file mode 100644 (file)
index 0000000..6ead63e
--- /dev/null
@@ -0,0 +1,243 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008 - INRIA - Farid BELAHCENE
+ * Copyright (C) 2013, 2016 - Samuel GOUGEON : 5.5.0 extensions, page overhauled
+ *
+ * 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="flipdim" xml:lang="ru">
+    <refnamediv>
+        <refname>flipdim</refname>
+        <refpurpose>меняем порядок (частей) строк, столбцов, страниц... массива</refpurpose>
+    </refnamediv>
+    <refsynopsisdiv>
+        <title>Синтаксис</title>
+        <synopsis>
+            y = flipdim(x, dim)
+            y = flipdim(x, dim, blockSize)
+        </synopsis>
+    </refsynopsisdiv>
+    <refsection role="parameters">
+        <title>Аргументы</title>
+        <variablelist>
+            <varlistentry>
+                <term>x, y</term>
+                <listitem>
+                    <para>
+                        векторы, матрицы или гиперматрицы любого обычного типа данных или cell-массива.
+                        <varname>y</varname> получает размеры <varname>x</varname>.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>dim</term>
+                <listitem>
+                        <para>
+                            положительное целое: индексы размерности/направления 
+                            <literal>x</literal>, вдоль которой порядок элементов
+                            <varname>x</varname> должен быть изменён.
+                        </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>blockSize</term>
+                <listitem>
+                    <para>
+                        положительное целое, общий делитель <literal>size(x,dim)</literal>:
+                        число строк, столбцов страниц и т.д. в каждом блоке. Значение по умолчанию 1.
+                    </para>
+                </listitem>
+            </varlistentry>
+        </variablelist>
+    </refsection>
+    <refsection role="description">
+        <title>Описание</title>
+        <para>
+            <literal>flipdim(x, 1)</literal> изменяет порядок
+            <emphasis role="italic">строк</emphasis> в <varname>x</varname>.
+        </para>
+        <para>
+            <literal>flipdim(x, 2)</literal> изменяет порядок
+            <emphasis role="italic">столбцов</emphasis> в <varname>x</varname>.
+        </para>
+        <para>
+            <literal>flipdim(x, 3)</literal> изменяет порядок
+            <emphasis role="italic">страниц</emphasis> в <varname>x</varname>. И т.д.
+        </para>
+        <para>
+            Необязательный параметр <varname>blockSize</varname> позволяет разделить
+            <varname>x</varname> на <literal>size(x,1)/blockSize</literal> блоков
+            из <varname>blockSize</varname> строк (<literal>dim=1</literal>),
+            или в <literal>size(x,2)/blockSize</literal> блоков из <varname>blockSize</varname>
+            столбцов (<literal>dim=2</literal>) и т.д. (<literal>dim>2</literal>)
+            и меняет их порядок. В каждом блоке меняется порядок элементов (строк, столбцов,
+            страниц и т.д.).
+        </para>
+    </refsection>
+    <refsection role="examples">
+        <title>Примеры</title>
+        <programlisting role="example"><![CDATA[
+// Пример 1: переключает строки x (= элементы вдоль первой размерности)
+x = [1 2 3 4; 5 6 7 8]
+y = flipdim(x, 1)
+
+// Пример 2: переключает столбцы (= элементы вдоль второй размерности)
+y = flipdim(x, 2)
+
+// Пример 3: переключает страницы (= элементы вдоль третьей размерности)
+x = matrix(1:24, [3 2 4])
+y = flipdim(x, 3)
+
+// Пример 4: первый пример с комплексными числами
+x = [1+%i 2*%i 3 4; 5 6-%i 7 8*%pi*%i]
+y = flipdim(x, 1)
+
+// Кодированные целые числа:
+x = int16(grand(4, 3, 2, "uin", -9, 9))
+y = flipdim(x, 1)
+
+// Логические значения:
+x = (grand(3, 4, "uin", -9, 9) > 0)
+y = flipdim(x, 2)
+
+// Тексты:
+x = matrix(strsplit("a":"x", 1:23), 4, 6);
+x = x+x
+flipdim(x, 2)
+
+// Полиномы:
+x = inv_coeff(grand(3, 9, "uin", 0, 3), 2)
+flipdim(x, 1)
+
+// Дробно-рациональные:
+n = inv_coeff(grand(3, 9, "uin", 0, 3), 2);
+d = inv_coeff(grand(3, 9, "uin", 0, 3), 2);
+r = n./d
+flipdim(r, 2)
+ ]]></programlisting>
+        <para>
+            Примеры, использующие <literal>blockSize</literal> :
+        </para>
+        <programlisting role="example"><![CDATA[
+X = [0 1 2 3 4 5 6 7 8 9 10 11];
+flipdim(X, 2, 2) // => [10 11   8 9   6 7   4 5   2 3   0 1] // Размер блока = 2.
+flipdim(X, 2, 3) // => [9 10 11   6 7 8   3 4 5   0 1 2]
+flipdim(X, 2, 4) // => [8 9 10 11   4 5 6 7   0 1 2 3]
+flipdim(X, 2, 6) // => [6 7 8 9 10 11   0 1 2 3 4 5]
+
+// Ошибка, если blockSize не делится на результирующую размерность x.
+y = flipdim(x, 2, 5); // size(X) = [1 12] и blockSize=5 не делится на 12.
+ ]]></programlisting>
+    <para>Примеры результатов:</para>
+    <screen><![CDATA[
+--> x
+ x  =
+ -5 -2  0  9
+  0 -7 -6  9
+ -1 -8 -7  8
+
+--> flipdim(x, 1)
+ ans  =
+ -1 -8 -7  8
+  0 -7 -6  9
+ -5 -2  0  9
+
+--> flipdim(x, 2)
+ ans  =
+  9  0 -2 -5
+  9 -6 -7  0
+  8 -7 -8 -1
+]]></screen>
+    <para></para>
+    <screen><![CDATA[
+--> x
+ x  =
+(:,:,1)
+  9  4 -3
+ -4 -8 -3
+
+(:,:,2)
+  5  8  9
+  4  4  9
+
+--> flipdim(x, 3)
+ ans  =
+(:,:,1)
+  5  8  9
+  4  4  9
+
+(:,:,2)
+  9  4 -3
+ -4 -8 -3
+]]></screen>
+    <para></para>
+    <screen><![CDATA[
+--> x
+ x  =
+ -2  3 -5  9 -4 -8
+  2  8  4 -9  6 -6
+ -9  8  3  4 -3  4
+
+--> flipdim(x, 2, 2)
+ ans  =
+ -4 -8 -5  9 -2  3
+  6 -6  4 -9  2  8
+ -3  4  3  4 -9  8
+
+--> flipdim(x, 2, 3)
+ ans  =
+  9 -4 -8 -2  3 -5
+ -9  6 -6  2  8  4
+  4 -3  4 -9  8  3
+]]></screen>
+    </refsection>
+    <refsection role="see also">
+        <title>Смотрите также</title>
+        <simplelist type="inline">
+            <member>
+                <link linkend="circshift">circshift</link>
+            </member>
+            <member>
+                <link linkend="fftshift">fftshift</link>
+            </member>
+            <member>
+                <link linkend="ifftshift">ifftshift</link>
+            </member>
+            <member>
+                <link linkend="colon">двоеточие</link>
+            </member>
+        </simplelist>
+    </refsection>
+    <refsection role="history">
+        <title>История</title>
+        <revhistory>
+            <revision>
+                <revnumber>5.5.0</revnumber>
+                <revremark>
+                    <itemizedlist>
+                        <listitem>
+                            Расширение на все обычные типы данных: логические, целые числа,
+                            строковые, полиномы, дробно-рациональны, графические указатели и т.д.
+                        </listitem>
+                        <listitem>
+                            Новый входной аргумент <literal>blockSize</literal> для поблокового
+                            переключения <literal>x</literal>.
+                        </listitem>
+                    </itemizedlist>
+                </revremark>
+            </revision>
+        </revhistory>
+    </refsection>
+</refentry>
diff --git a/scilab/modules/signal_processing/help/ru_RU/transforms/fftshift.xml b/scilab/modules/signal_processing/help/ru_RU/transforms/fftshift.xml
new file mode 100644 (file)
index 0000000..72fcbf0
--- /dev/null
@@ -0,0 +1,181 @@
+<?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:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="ru" xml:id="fftshift">
+    <refnamediv>
+        <refname>fftshift</refname>
+        <refpurpose>
+            перегруппировывает результат БПФ, сдвигая нулевую частоту в центр спектра
+        </refpurpose>
+    </refnamediv>
+    <refsynopsisdiv>
+        <title>Синтаксис</title>
+        <synopsis>
+            y = fftshift(x)
+            y = fftshift(x, along)
+        </synopsis>
+    </refsynopsisdiv>
+    <refsection>
+        <title>Аргументы</title>
+        <variablelist>
+            <varlistentry>
+                <term>x, y</term>
+                <listitem>
+                    <para>векторы, матрицы или гиперматрицы одинакового размера.</para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>along</term>
+                <listitem>
+                    <para>
+                        1 | "r" | 2 | "c" | 0&lt;along&lt;=ndims(x): размерность, вдоль которой 
+                        половинки меняются местами.
+                    </para>
+                </listitem>
+            </varlistentry>
+        </variablelist>
+    </refsection>
+    <refsection>
+        <title>Описание</title>
+        <para>
+            Если <varname>x</varname> является результатом вычисления БПФ, то
+            <literal>y=fftshift(x)</literal> или <literal>y=fftshift(x,"all")</literal>
+            двигает нулевую частоту в центр спектра, что иногда является более удобной формой.
+        </para>
+        <screen><![CDATA[
+x = [x1  x2 ]    даёт   y = [x2  x1 ]  // вектор
+
+    [x11 x12]                [x22 x21]
+x = |       |    даёт   y = |       |  // матрица
+    [x21 x22]                [x12 x11]
+и т.д.
+]]></screen>
+        <para>
+            <literal>y=fftshift(x,n)</literal> меняет местами только вдоль <literal>n</literal>-ой размерности.
+        </para>
+    </refsection>
+    <refsection>
+        <title>Примеры</title>
+        <programlisting role="example"><![CDATA[
+x = [1 2 3 4 5 6 7]
+fftshift(x)
+ ]]></programlisting>
+    <screen><![CDATA[
+--> x = [1 2 3 4 5 6 7]
+ x  =
+   1.   2.   3.   4.   5.   6.   7.
+
+--> fftshift(x)
+ ans  =
+   5.   6.   7.   1.   2.   3.   4.
+]]></screen>
+    <para/>
+        <programlisting role="example"><![CDATA[
+x = matrix(1:36,6,6)
+fftshift(x)
+fftshift(x, "r")
+fftshift(x, "c")
+ ]]></programlisting>
+    <screen><![CDATA[
+--> x = matrix(1:36,6,6)
+ x  =
+   1.   7.    13.   19.   25.   31.
+   2.   8.    14.   20.   26.   32.
+   3.   9.    15.   21.   27.   33.
+   4.   10.   16.   22.   28.   34.
+   5.   11.   17.   23.   29.   35.
+   6.   12.   18.   24.   30.   36.
+
+--> fftshift(x)       // Углы переходят в центр
+ ans  =
+   22.   28.   34.   4.   10.   16.
+   23.   29.   35.   5.   11.   17.
+   24.   30.   36.   6.   12.   18.
+   19.   25.   31.   1.   7.    13.
+   20.   26.   32.   2.   8.    14.
+   21.   27.   33.   3.   9.    15.
+
+--> fftshift(x, "r")  // Внешние строки становятся строками в середине
+ ans  =
+   4.   10.   16.   22.   28.   34.
+   5.   11.   17.   23.   29.   35.
+   6.   12.   18.   24.   30.   36.
+   1.   7.    13.   19.   25.   31.
+   2.   8.    14.   20.   26.   32.
+   3.   9.    15.   21.   27.   33.
+
+--> fftshift(x, "c")  // Внешние столбцы становятся столбцами в середине
+ ans  =
+   19.   25.   31.   1.   7.    13.
+   20.   26.   32.   2.   8.    14.
+   21.   27.   33.   3.   9.    15.
+   22.   28.   34.   4.   10.   16.
+   23.   29.   35.   5.   11.   17.
+   24.   30.   36.   6.   12.   18.
+]]></screen>
+    <para/>
+
+ <programlisting role="example"><![CDATA[
+// Сделаем сигнал
+t = 0:0.1:1000;
+x = 3*sin(t)+8*sin(3*t)+0.5*sin(5*t)+3*rand(t);
+// Выполним БПФ
+y = fft(x,-1);
+
+// Отобразим
+clf();
+subplot(2,1,1); plot2d(abs(y))
+subplot(2,1,2); plot2d(fftshift(abs(y)))
+ ]]></programlisting>
+        <scilab:image>
+            t=0:0.1:1000;
+            x=3*sin(t)+8*sin(3*t)+0.5*sin(5*t)+3*rand(t);
+            y=fft(x,-1);
+            subplot(2,1,1);plot2d(abs(y))
+            subplot(2,1,2);plot2d(fftshift(abs(y)))
+        </scilab:image>
+        <programlisting role="example"><![CDATA[
+// Сделаем двумерную картинку
+t = 0:0.1:30;
+x = 3*sin(t')*cos(2*t)+8*sin(3*t')*sin(5*t)+..
+  0.5*sin(5*t')*sin(5*t)+3*rand(t')*rand(t);
+// Выполним БПФ
+y = fft(x,-1);
+
+// Отобразим
+clf();
+gcf().color_map = hotcolormap(256);
+subplot(2,1,1); Matplot(abs(y))
+subplot(2,1,2); Matplot(fftshift(abs(y)))
+ ]]></programlisting>
+        <scilab:image>
+            t=0:0.1:30;
+            x=3*sin(t')*cos(2*t)+8*sin(3*t')*sin(5*t)+..
+            0.5*sin(5*t')*sin(5*t)+3*rand(t')*rand(t);
+            y=fft(x,-1);
+            gcf().color_map = hotcolormap(256);
+            subplot(2,1,1);
+            Matplot(abs(y))
+            subplot(2,1,2);
+            Matplot(fftshift(abs(y)))
+        </scilab:image>
+    </refsection>
+    <refsection role="see also">
+        <title>Смотрите также</title>
+        <simplelist type="inline">
+            <member>
+                <link linkend="ifftshift">ifftshift</link>
+            </member>
+            <member>
+                <link linkend="flipdim">flipdim</link>
+            </member>
+            <member>
+                <link linkend="circshift">circshift</link>
+            </member>
+            <member>
+                <link linkend="fft">fft</link>
+            </member>
+        </simplelist>
+    </refsection>
+</refentry>