Elementary_functions: slight fix for flipdim
[scilab.git] / scilab / modules / elementary_functions / help / fr_FR / matrixmanipulation / flipdim.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 - Farid BELAHCENE
5  * Copyright (C) 2013 - Samuel GOUGEON: restriction to decimal numbers removed. Examples added for booleans, integer-encoded numbers, text, polynomials, rationals
6  *
7  * This file must be used under the terms of the CeCILL.
8  * This source file is licensed as described in the file COPYING, which
9  * you should have received as part of this distribution.  The terms
10  * are also available at
11  * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
12  *
13  -->
14 <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="fr">
15     <refnamediv>
16         <refname>flipdim</refname>
17         <refpurpose>
18             retourne par blocs les éléments de <literal>x</literal> selon une dimension
19         </refpurpose>
20     </refnamediv>
21     <refsynopsisdiv>
22         <title>Séquence d'appel</title>
23         <synopsis>y = flipdim(x, dim [,sb])</synopsis>
24     </refsynopsisdiv>
25     <refsection>
26         <title>Paramètres</title>
27         <variablelist>
28             <varlistentry>
29                 <term>x, y</term>
30                 <listitem>
31                     <para>scalaires, vecteurs, matrices, ou hypermatrices de n'importe quel type, de même taille</para>
32                 </listitem>
33             </varlistentry>
34             <varlistentry>
35                 <term>dim</term>
36                 <listitem>
37                     <para>
38                         entier positif, la dimension de <literal>x</literal> selon laquelle les éléments seront retournés
39                     </para>
40                 </listitem>
41             </varlistentry>
42             <varlistentry>
43                 <term>sb</term>
44                 <listitem>
45                     <para>entier positif, la taille des blocs à permuter</para>
46                 </listitem>
47             </varlistentry>
48         </variablelist>
49     </refsection>
50     <refsection>
51         <title>Description</title>
52         <para>
53             A partir de <literal>x</literal>, un scalaire/vecteur/matrice/hypermatrice de n'importe quel type et
54             deux entiers positifs <literal>dim</literal> et <literal>sb</literal>, cette fonction retourne les éléments de
55             <literal>x</literal> par blocs de taille <literal>sb</literal> selon le nombre dimension <literal>dim</literal> de
56             <literal>x</literal> (<literal>x</literal> et <literal>y</literal> ont la même taille)
57         </para>
58         <para>
59             Le paramètre optionnel <literal>sb</literal> (pour Size Block) permet de retounerles éléments de <literal>x</literal>
60             par blocs de taille <literal>sb*size(x,2)</literal> (<literal>dim=1</literal>)
61             ou <literal>size(x,1)*sb</literal> (<literal>dim=2</literal>).
62         </para>
63     </refsection>
64     <refsection>
65         <title>Exemples</title>
66         <programlisting role="example"><![CDATA[
67 // Exemple 1 : selon la première dimension
68 x = [1 2 3 4; 5 6 7 8]
69 dim = 1
70 y = flipdim(x, dim)
71
72 // Exemple 2 : selon la deuxième dimension
73 dim = 2
74 y = flipdim(x, dim)
75
76 // Exemple 3 : selon la troisième dimension
77 x = matrix(1:24, [3 2 4])
78 dim = 3
79 y = flipdim(x, dim)
80
81 // Exemple 4 : premier exemple, mais avec des complexes
82 x = [1+%i 2*%i 3 4; 5 6-%i 7 8*%pi*%i]
83 dim = 1
84 y = flipdim(x, dim)
85
86 // Entiers :
87 x = int16(grand(4, 3, 2, "uin", -9, 9))
88 y = flipdim(x, 1)
89
90 // Booléens :
91 x = (grand(3, 4, "uin", -9, 9) > 0)
92 y = flipdim(x, 2)
93
94 // Textes :
95 x = matrix(strsplit("a":"x", 1:23), 4, 6);
96 x = x+x
97 flipdim(x, 2)
98
99 // Polynômes :
100 x = inv_coeff(grand(3, 9, "uin", 0, 3), 2)
101 flipdim(x, 1)
102
103 // Rationals :
104 n = inv_coeff(grand(3, 9, "uin", 0 ,3), 2);
105 d = inv_coeff(grand(3, 9, "uin", 0, 3), 2);
106 r = n./d
107 flipdim(r, 2)
108  ]]></programlisting>
109         <para>
110             Exemples utilisant <literal>sb</literal> :
111         </para>
112         <programlisting role="example"><![CDATA[
113 X = [0 1 2 3 4 5 6 7 8 9 10 11];
114 flipdim(X, 2, 2) // => [10 11   8 9   6 7   4 5   2 3   0 1] // Taille du bloc = 2.
115 flipdim(X, 2, 3) // => [9 10 11   6 7 8   3 4 5   0 1 2]
116 flipdim(X, 2, 4) // => [8 9 10 11   4 5 6 7   0 1 2 3]
117 flipdim(X, 2, 6) // => [6 7 8 9 10 11   0 1 2 3 4 5]
118
119 // Erreur si sb ne divise pas la dimension ciblée de x.
120 y = flipdim(x, 2, 5); // size(X) = [1 12] et sb=5 ne divise pas 12.
121  ]]></programlisting>
122     </refsection>
123     <refsection>
124         <title>History</title>
125         <revhistory>
126             <revision>
127                 <revnumber>5.5.0</revnumber>
128                 <revremark>
129                     Extension de décimaux à tout type : booléens, entiers, chaines de caractères, polynômes et fractions rationnelles.
130                     Nouveau paramètre optionnel <literal>sb</literal> pour retourner <literal>x</literal> par blocs.
131                 </revremark>
132             </revision>
133         </revhistory>
134     </refsection>
135 </refentry>