* Bug 16365 fixed: median(m,'r'|'c') was wrong after 5dc990
[scilab.git] / scilab / modules / elementary_functions / help / ja_JP / matrixmanipulation / flipdim.xml
index 21efef6..ba25404 100644 (file)
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) 2008 - INRIA - Farid BELAHCENE
- * 
- * This file must be used under the terms of the CeCILL.
- * This source file is licensed as described in the file COPYING, which
- * you should have received as part of this distribution.  The terms
- * are also available at    
- * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ * 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" version="5.0-subset Scilab" xml:id="flipdim" xml:lang="ja">
-  <refnamediv>
-    <refname>flipdim</refname>
-    <refpurpose>指定した次元に沿って x の要素を反転</refpurpose>
-  </refnamediv>
-  <refsynopsisdiv>
-    <title>呼び出し手順</title>
-    <synopsis>y=flipdim(x,dim)</synopsis>
-  </refsynopsisdiv>
-  <refsection>
-    <title>パラメータ</title>
-    <variablelist>
-      <varlistentry>
-        <term>x</term>
-        <listitem>
-          <para>実数のスカラー, ベクトルまたは配列</para>
-        </listitem>
-      </varlistentry>
-      <varlistentry>
-        <term>dim</term>
-        <listitem>
-          <para>正の整数</para>
-        </listitem>
-      </varlistentry>
-      <varlistentry>
-        <term>y</term>
-        <listitem>
-          <para>実数のスカラー, ベクトルまたは配列</para>
-        </listitem>
-      </varlistentry>
-    </variablelist>
-  </refsection>
-  <refsection>
-    <title>説明</title>
-    <para>
-      実数のスカラー/ベクトル/配列 <literal>x</literal>と正の整数<literal>dim</literal>
-      を指定すると, この関数は<literal>x</literal>の次元番号 <literal>dim</literal>
-      に沿って x の要素を反転します.
-      (<literal>x</literal> および <literal>y</literal> は同じ大きさとなります)
-    </para>
-  </refsection>
-  <refsection>
-    <title>例</title>
-    <programlisting role="example"><![CDATA[ 
+<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="ja">
+    <refnamediv>
+        <refname>flipdim</refname>
+        <refpurpose>指定した次元に沿って x ブロック要素を反転</refpurpose>
+    </refnamediv>
+    <refsynopsisdiv>
+        <title>呼び出し手順</title>
+        <synopsis>
+            y = flipdim(x, dim)
+            y = flipdim(x, dim, blockSize)
+        </synopsis>
+    </refsynopsisdiv>
+    <refsection>
+        <title>引数</title>
+        <variablelist>
+            <varlistentry>
+                <term>x, y</term>
+                <listitem>
+                    <para>
+                        ベクトル、行列、または任意の通常のデータ型のハイパーマトリックスを含む、
+                        or cells array.
+                        <varname> y </varname>は<varname> x </varname>のサイズを取得します.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>dim</term>
+                <listitem>
+                    <para>
+                        positive integer : index of the dimension / direction of <literal>x</literal>
+                        along which the order of <varname>x</varname> components must be inverted.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>blockSize</term>
+                <listitem>
+                    <para>
+                        a positive integer, sub-multiple of <literal>size(x,dim)</literal>:
+                        number of rows, of columns, of pages etc in each block. Default value = 1
+                    </para>
+                </listitem>
+            </varlistentry>
+        </variablelist>
+    </refsection>
+    <refsection>
+        <title>説明</title>
+        <para>
+            <literal>flipdim(x, 1)</literal> inverts the order of
+            <emphasis role="italic">rows</emphasis> of <varname>x</varname>.
+        </para>
+        <para>
+            <literal>flipdim(x, 2)</literal> inverts the order of
+            <emphasis role="italic">columns</emphasis> of <varname>x</varname>.
+        </para>
+        <para>
+            <literal>flipdim(x, 3)</literal> inverts the order of
+            <emphasis role="italic">pages</emphasis> of <varname>x</varname>. Etc.
+        </para>
+        <para>
+            The optional parameter <literal>blockSize</literal> allows splitting
+            <varname>x</varname> in <literal>size(x,1)/blockSize</literal> blocks
+            of <varname>blockSize</varname> rows (<literal>dim=1</literal>),
+            or in <literal>size(x,2)/blockSize</literal> blocks of <varname>blockSize</varname>
+            columns (<literal>dim=2</literal>), etc (<literal>dim>2</literal>)
+            and to invert their order.
+            In each block, the order of components (rows, columns, pages etc)
+            is unchanged.
+        </para>
+    </refsection>
+    <refsection>
+        <title>例</title>
+        <programlisting role="example"><![CDATA[
 // 例 1: x の要素を最初の次元に沿って反転
-x=[1 2 3 4; 5 6 7 8];
-dim=1;
-y=flipdim(x,dim)
+x = [1 2 3 4; 5 6 7 8];
+y = flipdim(x, 1)
 
 // 例2: x の要素を2番目の次元に沿って反転
-dim=2;
-y=flipdim(x,dim)
+y = flipdim(x, 2)
 
 // 例3: x の要素を3番目の次元に沿って反転
-x=matrix(1:48,[3 2,4,2]);
-dim=3;
-y=flipdim(x,dim)
+x = matrix(1:48,[3 2,4,2]);
+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>
-  </refsection>
+        <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>Example of results:</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">colon</link>
+            </member>
+        </simplelist>
+    </refsection>
+    <refsection>
+        <title>履歴</title>
+        <revhistory>
+            <revision>
+                <revnumber>5.5.0</revnumber>
+                <revremark>
+                    10進数から任意の型に拡張: 論理値, 整数, 文字列, 多項式および有理数.
+                    <literal>x</literal>ブロック毎に反転するために,
+                    新しい入力引数 <literal>blockSize</literal>が追加されました.
+                </revremark>
+            </revision>
+        </revhistory>
+    </refsection>
 </refentry>