eval3d removed 44/21344/2
Adeline CARNIS [Mon, 17 Feb 2020 15:34:33 +0000 (16:34 +0100)]
Change-Id: If032cc751804bafd554a682ce6ddfc7cb11d2ee9

scilab/modules/elementary_functions/help/ru_RU/elementarymatrices/ndgrid.xml
scilab/modules/graphics/help/en_US/3d_plot/eval3d.xml [deleted file]
scilab/modules/graphics/macros/eval3d.sci [deleted file]
scilab/modules/helptools/data/configuration/scilab_macros.txt

index 9e2fd1d..efd1120 100644 (file)
@@ -3,65 +3,66 @@
           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="ndgrid" xml:lang="ru">
-<refnamediv>
-    <refname>ndgrid</refname>
-    <refpurpose>строит матрицы или N-мерные массивы путем репликации данных векторов
-    </refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-    <title>Синтаксис</title>
-    <synopsis>
-        [X, Y] = ndgrid(x)
-        [X, Y] = ndgrid(x,y)
-        [X, Y, Z] = ndgrid(x,y,z)
-        [X, Y, Z, T] = ndgrid(x,y,z,t)
-        [X1, X2, ..., Xm] = ndgrid(x1,x2,...,xm)
-    </synopsis>
-</refsynopsisdiv>
-<refsection role="arguments">
-    <title>Аргументы</title>
-    <variablelist>
-        <varlistentry>
-            <term>x, y, z, ...</term>
-            <listitem>
-                <para>векторы любых типов данных. Они могут иметь различные типы данных.
-                По умолчанию <literal>y=x</literal>.</para>
-            </listitem>
-        </varlistentry>
-        <varlistentry>
-            <term>X, Y, Z, ...</term>
+    <refnamediv>
+        <refname>ndgrid</refname>
+        <refpurpose>строит матрицы или N-мерные массивы путем репликации данных векторов
+        </refpurpose>
+    </refnamediv>
+    <refsynopsisdiv>
+        <title>Синтаксис</title>
+        <synopsis>
+            [X, Y] = ndgrid(x)
+            [X, Y] = ndgrid(x,y)
+            [X, Y, Z] = ndgrid(x,y,z)
+            [X, Y, Z, T] = ndgrid(x,y,z,t)
+            [X1, X2, ..., Xm] = ndgrid(x1,x2,...,xm)
+        </synopsis>
+    </refsynopsisdiv>
+    <refsection role="arguments">
+        <title>Аргументы</title>
+        <variablelist>
+            <varlistentry>
+                <term>x, y, z, ...</term>
+                <listitem>
+                    <para>векторы любых типов данных. Они могут иметь различные типы данных.
+                        По умолчанию <literal>y=x</literal>.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>X, Y, Z, ...</term>
                 <listitem>
                     <para>
                         В случае двух входных аргументов это матрицы, в противном случае это гиперматрицы.
                         Все они имеют одинаковые размеры: <literal>size(x,"*")</literal> строк, <literal>size(y,"*")</literal>
                         столбцов, <literal>size(z,"*")</literal> слоёв и так далее.
-                  </para>
-                  <para>
+                    </para>
+                    <para>
                         Они имеют одинаковые типы данных соответствющих входных векторов:
                         <literal>typeof(X)==typeof(x)</literal>,
                         <literal>typeof(Y)==typeof(y)</literal>, и т.д.
                     </para>
                 </listitem>
-        </varlistentry>
-    </variablelist>
-</refsection>
-<refsection role="description">
-    <title>Описание</title>
-    <para>
-        Первое применение функции <function>ndgrid</function> заключается в построении сетки
-        узлов, формирующих двумерное, трёхмерное или N-мерное пространство в соответствии с
-        2, 3  и более наборами <varname>x</varname>, <varname>y</varname> и т.д. координат
-        "шаблона" продискретизированных вдоль каждого направления/размерности пространства,
-        которое вы желаете сформировать.
-    </para>
-    <para>
-        Следовательно, матрица или гиперматрица <varname>X</varname> сделана через копирование
-        вектора <varname>x</varname> по столбцам; матрица или гиперматрица <varname>Y</varname>
-        сделана через копирование вектора <varname>y</varname> по строкам; матрица <varname>Z</varname>
-        сделана через копирование вектора <varname>z</varname> по всем слоям (третье измерение);
-        и т.д
-   </para>
-    <screen><![CDATA[--> [X, Y] = ndgrid([1 3 4], [0 2 4 6])
+            </varlistentry>
+        </variablelist>
+    </refsection>
+    <refsection role="description">
+        <title>Описание</title>
+        <para>
+            Первое применение функции <function>ndgrid</function> заключается в построении сетки
+            узлов, формирующих двумерное, трёхмерное или N-мерное пространство в соответствии с
+            2, 3  и более наборами <varname>x</varname>, <varname>y</varname> и т.д. координат
+            "шаблона" продискретизированных вдоль каждого направления/размерности пространства,
+            которое вы желаете сформировать.
+        </para>
+        <para>
+            Следовательно, матрица или гиперматрица <varname>X</varname> сделана через копирование
+            вектора <varname>x</varname> по столбцам; матрица или гиперматрица <varname>Y</varname>
+            сделана через копирование вектора <varname>y</varname> по строкам; матрица <varname>Z</varname>
+            сделана через копирование вектора <varname>z</varname> по всем слоям (третье измерение);
+            и т.д
+        </para>
+        <screen><![CDATA[--> [X, Y] = ndgrid([1 3 4], [0 2 4 6])
  X  =
    1.   1.   1.   1.
    3.   3.   3.   3.
    0.   2.   4.   6.
    0.   2.   4.   6.
 ]]></screen>
-    <para>
-        Эта схема копирования может быть обобщена к любому числу измерений, а также
-        к любому типу универсальных данных. Давайте, например, возьмём 2 атрибута:
-        <orderedlist>
-            <listitem>Первый - это число, которое нужно выбрать из вектора, скажем
-                <literal>n = [ 3 7 ]</literal>
-            </listitem>
-            <listitem>Второй - это буква, которую нужно выбрать из вектора, скажем
-                <literal>c = ["a" "e" "i" "o" "u" "y"]</literal>
-            </listitem>
-        </orderedlist>
-        Тогда мы хотим построить множество всех <literal>{n,c}</literal> возможных пар.
-        Это будет просто двумерная сетка:
-    </para>
-    <screen><![CDATA[--> [N, C] = ndgrid([3 7],["a" "e" "i" "o" "u" "y"])
+        <para>
+            Эта схема копирования может быть обобщена к любому числу измерений, а также
+            к любому типу универсальных данных. Давайте, например, возьмём 2 атрибута:
+            <orderedlist>
+                <listitem>Первый - это число, которое нужно выбрать из вектора, скажем
+                    <literal>n = [ 3 7 ]</literal>
+                </listitem>
+                <listitem>Второй - это буква, которую нужно выбрать из вектора, скажем
+                    <literal>c = ["a" "e" "i" "o" "u" "y"]</literal>
+                </listitem>
+            </orderedlist>
+            Тогда мы хотим построить множество всех <literal>{n,c}</literal> возможных пар.
+            Это будет просто двумерная сетка:
+        </para>
+        <screen><![CDATA[--> [N, C] = ndgrid([3 7],["a" "e" "i" "o" "u" "y"])
  C  =
 !a  e  i  o  u  y  !
 !a  e  i  o  u  y  !
    3.   3.   3.   3.   3.   3.
    7.   7.   7.   7.   7.   7.
 ]]></screen>
-    <para>
-        Тогда <literal>object(i,j)</literal> будет иметь свойства <literal>{n(i) c(j)}</literal>,
-        которые темер могут быть адресованы как <literal>{N(i,j) C(i,j)}</literal>.
-        Такой вид сетки может быть полезен для инициализации массива структур.
-    </para>
-    <para>
-        Следующие примеры показывают как использовать <varname>X, Y, Z</varname> в
-        наиболее распространёных приложениях
-    </para>
-</refsection>
-<refsection role="examples">
-    <title>Примеры</title>
-    <para>
-        <emphasis role="bold">Пример #1:</emphasis>
-    </para>
-    <programlisting role="example"><![CDATA[
+        <para>
+            Тогда <literal>object(i,j)</literal> будет иметь свойства <literal>{n(i) c(j)}</literal>,
+            которые темер могут быть адресованы как <literal>{N(i,j) C(i,j)}</literal>.
+            Такой вид сетки может быть полезен для инициализации массива структур.
+        </para>
+        <para>
+            Следующие примеры показывают как использовать <varname>X, Y, Z</varname> в
+            наиболее распространёных приложениях
+        </para>
+    </refsection>
+    <refsection role="examples">
+        <title>Примеры</title>
+        <para>
+            <emphasis role="bold">Пример #1:</emphasis>
+        </para>
+        <programlisting role="example"><![CDATA[
 // создание простой двухмерной координатной сетки
 x = linspace(-10,2,40);
 y = linspace(-5,5,40);
@@ -122,18 +123,18 @@ Z = X - 3*X.*sin(X).*cos(Y-4) ;
 clf()
 plot3d(x,y,Z, flag=[color("green") 2 4], alpha=7, theta=60); show_window()
  ]]>    </programlisting>
-    <scilab:image>
-        x = linspace(-10,2,40);
-        y = linspace(-5,5,40);
-        [X,Y] = ndgrid(x,y);
-        Z = X - 3*X.*sin(X).*cos(Y-4) ;
-        clf()
-        plot3d(x,y,Z, flag=[color("green") 2 4], alpha=7, theta=60); show_window()
-    </scilab:image>
-    <para>
-        <emphasis role="bold">Пример #2:</emphasis>
-    </para>
-    <programlisting role="example"><![CDATA[
+        <scilab:image>
+            x = linspace(-10,2,40);
+            y = linspace(-5,5,40);
+            [X,Y] = ndgrid(x,y);
+            Z = X - 3*X.*sin(X).*cos(Y-4) ;
+            clf()
+            plot3d(x,y,Z, flag=[color("green") 2 4], alpha=7, theta=60); show_window()
+        </scilab:image>
+        <para>
+            <emphasis role="bold">Пример #2:</emphasis>
+        </para>
+        <programlisting role="example"><![CDATA[
 // создание простой трёхмерной координатной сетки
 nx = 10; ny = 6; nz = 4;
 x = linspace(0,2,nx);
@@ -158,35 +159,35 @@ clf()
 plot3d(XF,YF,ZF, flag=[0 6 3], 66, 61, leg="X@Y@Z")
 xtitle("Трёхмерная сетка!"); show_window()
  ]]></programlisting>
-    <scilab:image localized="true">
-        nx = 10; ny = 6; nz = 4;
-        x = linspace(0,2,nx);
-        y = linspace(0,1,ny);
-        z = linspace(0,0.5,nz);
-        [X,Y,Z] = ndgrid(x,y,z);
-        XF=[]; YF=[]; ZF=[];
-        for k=1:nz
-        [xf,yf,zf] = nf3d(X(:,:,k), Y(:,:,k), Z(:,:,k));
-        XF = [XF xf]; YF = [YF yf]; ZF = [ZF zf];
-        end
-        for j=1:ny
-        [xf,yf,zf] = nf3d(matrix(X(:,j,:),[nx,nz]),..
-        matrix(Y(:,j,:),[nx,nz]),..
-        matrix(Z(:,j,:),[nx,nz]));
-        XF = [XF xf]; YF = [YF yf]; ZF = [ZF zf];
-        end
-        clf()
-        plot3d(XF,YF,ZF, flag=[0 6 3], 66, 61, leg="X@Y@Z")
-        xtitle("Трёхмерная сетка!"); show_window()
-    </scilab:image>
-    <para>
-        <emphasis role="bold">Пример #3: Создание таблицы пар символов:</emphasis>
-    </para>
-    <programlisting role="example"><![CDATA[
+        <scilab:image localized="true">
+            nx = 10; ny = 6; nz = 4;
+            x = linspace(0,2,nx);
+            y = linspace(0,1,ny);
+            z = linspace(0,0.5,nz);
+            [X,Y,Z] = ndgrid(x,y,z);
+            XF=[]; YF=[]; ZF=[];
+            for k=1:nz
+            [xf,yf,zf] = nf3d(X(:,:,k), Y(:,:,k), Z(:,:,k));
+            XF = [XF xf]; YF = [YF yf]; ZF = [ZF zf];
+            end
+            for j=1:ny
+            [xf,yf,zf] = nf3d(matrix(X(:,j,:),[nx,nz]),..
+            matrix(Y(:,j,:),[nx,nz]),..
+            matrix(Z(:,j,:),[nx,nz]));
+            XF = [XF xf]; YF = [YF yf]; ZF = [ZF zf];
+            end
+            clf()
+            plot3d(XF,YF,ZF, flag=[0 6 3], 66, 61, leg="X@Y@Z")
+            xtitle("Трёхмерная сетка!"); show_window()
+        </scilab:image>
+        <para>
+            <emphasis role="bold">Пример #3: Создание таблицы пар символов:</emphasis>
+        </para>
+        <programlisting role="example"><![CDATA[
 [c1, c2] = ndgrid(["a" "b" "c"], ["a" "b" "c" "d" "e" "f" "g" "h"])
 c1+c2
  ]]>    </programlisting>
-    <screen><![CDATA[--> [c1, c2] = ndgrid(["a" "b" "c"], ["a" "b" "c" "d" "e" "f" "g" "h"])
+        <screen><![CDATA[--> [c1, c2] = ndgrid(["a" "b" "c"], ["a" "b" "c" "d" "e" "f" "g" "h"])
  c2  =
 !a  b  c  d  e  f  g  h  !
 !a  b  c  d  e  f  g  h  !
@@ -203,43 +204,40 @@ c1+c2
 !ba  bb  bc  bd  be  bf  bg  bh  !
 !ca  cb  cc  cd  ce  cf  cg  ch  !
 ]]></screen>
-</refsection>
-<refsection role="see also">
-    <title>Смотрите также</title>
-    <simplelist type="inline">
-        <member>
-            <link linkend="meshgrid">meshgrid</link>
-        </member>
-        <member>
-            <link linkend="kron">kron</link>
-        </member>
-        <member>
-            <link linkend="feval">feval</link>
-        </member>
-        <member>
-            <link linkend="eval3d">eval3d</link>
-        </member>
-        <member>
-            <link linkend="nf3d">nf3d</link>
-        </member>
-    </simplelist>
-</refsection>
-<refsection role="history">
-    <title>История</title>
-    <revhistory>
-        <revision>
-            <revnumber>6.0.0</revnumber>
-            <revdescription>
-              Расширение до всех однородных типов данных ([], логические, закодированные целые числа,
-              многочлены, дроби, строковые значения). Пересмотр  этой странички справки.
-            </revdescription>
-        </revision>
-        <revision>
-            <revnumber>6.0.1</revnumber>
-            <revdescription>
-                <literal>ndgrid(x)</literal> теперь принимает по умолчанию <literal>y=x</literal>.
-            </revdescription>
-        </revision>
-    </revhistory>
-</refsection>
+    </refsection>
+    <refsection role="see also">
+        <title>Смотрите также</title>
+        <simplelist type="inline">
+            <member>
+                <link linkend="meshgrid">meshgrid</link>
+            </member>
+            <member>
+                <link linkend="kron">kron</link>
+            </member>
+            <member>
+                <link linkend="feval">feval</link>
+            </member>
+            <member>
+                <link linkend="nf3d">nf3d</link>
+            </member>
+        </simplelist>
+    </refsection>
+    <refsection role="history">
+        <title>История</title>
+        <revhistory>
+            <revision>
+                <revnumber>6.0.0</revnumber>
+                <revdescription>
+                    Расширение до всех однородных типов данных ([], логические, закодированные целые числа,
+                    многочлены, дроби, строковые значения). Пересмотр  этой странички справки.
+                </revdescription>
+            </revision>
+            <revision>
+                <revnumber>6.0.1</revnumber>
+                <revdescription>
+                    <literal>ndgrid(x)</literal> теперь принимает по умолчанию <literal>y=x</literal>.
+                </revdescription>
+            </revision>
+        </revhistory>
+    </refsection>
 </refentry>
diff --git a/scilab/modules/graphics/help/en_US/3d_plot/eval3d.xml b/scilab/modules/graphics/help/en_US/3d_plot/eval3d.xml
deleted file mode 100644 (file)
index a0ccc91..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
- * Copyright (C) INRIA - Serge Steer
- *
- * 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="en" xml:id="eval3d">
-    <refnamediv>
-        <refname>eval3d</refname>
-        <refpurpose>values of a function on a grid  => <emphasis role="bold">this function is obsolete</emphasis></refpurpose>
-    </refnamediv>
-    <refsynopsisdiv>
-        <title>Syntax</title>
-        <synopsis>[z]=eval3d(fun,x,[y])</synopsis>
-    </refsynopsisdiv>
-    <refsection>
-        <title>Arguments</title>
-        <variablelist>
-            <varlistentry>
-                <term>fun</term>
-                <listitem>
-                    <para>function accepting vectors as arguments.</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>x,y</term>
-                <listitem>
-                    <para>
-                        2 vectors of size (1,n1) and (1,n2). (default value for <literal>y</literal> : <literal>y=x</literal>).
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>z</term>
-                <listitem>
-                    <para>matrix of size (n1,n2).</para>
-                </listitem>
-            </varlistentry>
-        </variablelist>
-    </refsection>
-    <refsection>
-        <title>Description</title>
-        <warning>
-            <emphasis role="bold">This function is obsolete</emphasis> and will be removed in Scilab 6.1.
-        </warning>
-        <para>If <literal>fun(x,y)</literal> can process <literal>x</literal>
-            and <literal>y</literal> matrices, please use the following replacements:
-            <itemizedlist>
-                <listitem>
-                    <para>
-                        <emphasis role="bold">z = eval3d(fun,x)</emphasis> => <literal>X=ndgrid(x,x); z=fun(X,X')</literal>
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <emphasis role="bold">z = eval3d(fun,x,y)</emphasis> => <literal>[X,Y]=ndgrid(x,y); z=fun(X,Y)</literal>
-                    </para>
-                </listitem>
-            </itemizedlist>
-        </para>
-        <para>
-            Otherwise, if <literal>fun(x,y)</literal> accepts only scalars
-            <literal>x</literal> and <literal>y</literal>, please use
-            <link linkend="feval">feval</link> as usual:
-            <literal>z=feval(x,fun)</literal> or <literal>z=feval(x,y,fun)</literal>.
-        </para>
-    </refsection>
-</refentry>
diff --git a/scilab/modules/graphics/macros/eval3d.sci b/scilab/modules/graphics/macros/eval3d.sci
deleted file mode 100644 (file)
index 6d7409f..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-// 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.
-
-function [z]=eval3d(fun,x,y)
-    //Etant donnee une discretisation des abscisses (x) et des ordonnees (y)
-    //  eval3d(fun,x [,y]) retourne la matrice [fun(x(i),y(j))] des valeurs de la
-    //  fonction decrite par la macro fun aux points (x(i),y(j)).
-    //Attention fun doit savoir gerer des arguments x et y vectoriels.
-    //  Si fun ne sait pas gerer des arguments vectoriels, utiliser
-    //  feval(x,y,fun)
-    //Si y n'est pas fourni il est suppose identique a x
-    //!
-    warnobsolete("ndgrid", "6.1")
-    [lhs,rhs]=argn(0)
-    if rhs==3 then
-        nx=prod(size(x));ny=prod(size(y))
-        z=matrix(fun(ones(1,ny).*.matrix(x,1,nx),matrix(y,1,ny).*.ones(1,nx)),nx,ny)
-    elseif rhs==2 then
-        nx=prod(size(x))
-        z=matrix(fun(ones(1,nx).*.matrix(x,1,nx),matrix(x,1,nx).*.ones(1,nx)),nx,nx)
-    else
-        error(msprintf(gettext("%s: Wrong number of input arguments: %d or %d expected.\n"), "eval3d", 2, 3));
-    end
-endfunction