9619bb0a92403506b67c5aedc6a27f9bbae4cede
[scilab.git] / scilab / modules / signal_processing / help / ja_JP / transforms / fftshift.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
3           xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
4           xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
5           xml:lang="ja" xml:id="fftshift">
6     <refnamediv>
7         <refname>fftshift</refname>
8         <refpurpose>fft出力を再配置し,スペクトルの中心に周波数0を移動する</refpurpose>
9     </refnamediv>
10     <refsynopsisdiv>
11         <title>呼び出し手順</title>
12         <synopsis>
13             y = fftshift(x)
14             y = fftshift(x, along)
15         </synopsis>
16     </refsynopsisdiv>
17     <refsection>
18         <title>引数</title>
19         <variablelist>
20             <varlistentry>
21                 <term>x, y</term>
22                 <listitem>
23                     <para>同じサイズのベクトル、行列またはハイパーマトリックス.</para>
24                 </listitem>
25             </varlistentry>
26             <varlistentry>
27                 <term>along</term>
28                 <listitem>
29                     <para>整数, 選択する次元, または文字列 'all'</para>
30                 </listitem>
31             </varlistentry>
32         </variablelist>
33     </refsection>
34     <refsection>
35         <title>説明</title>
36         <para>
37             <literal>x</literal>がFFT計算の結果の場合,
38             <literal>y= fftshift(x)</literal> または <literal>y= fftshift(x,"all")</literal>
39             は,扱いが容易な形式である,周波数0要素をよりスペクトルの中心に移動します.
40         </para>
41         <screen><![CDATA[
42 x = [x1  x2 ]    gives   y = [x2  x1 ]  // vector
43
44     [x11 x12]                [x22 x21]
45 x = |       |    gives   y = |       |  // matrix
46     [x21 x22]                [x12 x11]
47 etc
48 ]]></screen>
49         <para>
50             <literal>y= fftshift(x,n)</literal> は<literal>n</literal>番目の次元
51             のみについて配置換えを行ないます.
52         </para>
53     </refsection>
54     <refsection>
55         <title>例</title>
56         <programlisting role="example"><![CDATA[
57 x = [1 2 3 4 5 6 7]
58 fftshift(x)
59  ]]></programlisting>
60     <screen><![CDATA[
61 --> x = [1 2 3 4 5 6 7]
62  x  =
63    1.   2.   3.   4.   5.   6.   7.
64
65 --> fftshift(x)
66  ans  =
67    5.   6.   7.   1.   2.   3.   4.
68 ]]></screen>
69     <para/>
70         <programlisting role="example"><![CDATA[
71 x = matrix(1:36,6,6)
72 fftshift(x)
73 fftshift(x, "r")
74 fftshift(x, "c")
75  ]]></programlisting>
76     <screen><![CDATA[
77 --> x = matrix(1:36,6,6)
78  x  =
79    1.   7.    13.   19.   25.   31.
80    2.   8.    14.   20.   26.   32.
81    3.   9.    15.   21.   27.   33.
82    4.   10.   16.   22.   28.   34.
83    5.   11.   17.   23.   29.   35.
84    6.   12.   18.   24.   30.   36.
85
86 --> fftshift(x)       // Corners go to the center
87  ans  =
88    22.   28.   34.   4.   10.   16.
89    23.   29.   35.   5.   11.   17.
90    24.   30.   36.   6.   12.   18.
91    19.   25.   31.   1.   7.    13.
92    20.   26.   32.   2.   8.    14.
93    21.   27.   33.   3.   9.    15.
94
95 --> fftshift(x, "r")  // External rows become middle rows
96  ans  =
97    4.   10.   16.   22.   28.   34.
98    5.   11.   17.   23.   29.   35.
99    6.   12.   18.   24.   30.   36.
100    1.   7.    13.   19.   25.   31.
101    2.   8.    14.   20.   26.   32.
102    3.   9.    15.   21.   27.   33.
103
104 --> fftshift(x, "c")  // External columns become middle columns
105  ans  =
106    19.   25.   31.   1.   7.    13.
107    20.   26.   32.   2.   8.    14.
108    21.   27.   33.   3.   9.    15.
109    22.   28.   34.   4.   10.   16.
110    23.   29.   35.   5.   11.   17.
111    24.   30.   36.   6.   12.   18.
112 ]]></screen>
113     <para/>
114         <programlisting role="example"><![CDATA[
115 //信号を作成
116 t = 0:0.1:1000;
117 x = 3*sin(t) + 8*sin(3*t) + 0.5*sin(5*t) + 3*rand(t);
118 //compute the fft
119 y = fft(x,-1);
120
121 //表示
122 clf();
123 subplot(2,1,1); plot2d(abs(y))
124 subplot(2,1,2); plot2d(fftshift(abs(y)))
125  ]]></programlisting>
126         <scilab:image>
127             t=0:0.1:1000;
128             x=3*sin(t)+8*sin(3*t)+0.5*sin(5*t)+3*rand(t);
129             y=fft(x,-1);
130             subplot(2,1,1);plot2d(abs(y))
131             subplot(2,1,2);plot2d(fftshift(abs(y)))
132         </scilab:image>
133         <programlisting role="example"><![CDATA[
134 //2次元画像を作成
135 t = 0:0.1:30;
136 x = 3*sin(t')*cos(2*t) + 8*sin(3*t')*sin(5*t) + ..
137     0.5*sin(5*t')*sin(5*t) + 3*rand(t')*rand(t);
138 //fftを計算
139 y = fft(x,-1);
140
141 //表示
142 clf();
143 gcf().color_map = hotcolormap(256);
144 subplot(2,1,1); Matplot(abs(y))
145 subplot(2,1,2); Matplot(fftshift(abs(y)))
146  ]]></programlisting>
147         <scilab:image>
148             t=0:0.1:30;
149             x=3*sin(t')*cos(2*t)+8*sin(3*t')*sin(5*t)+..
150             0.5*sin(5*t')*sin(5*t)+3*rand(t')*rand(t);
151             y=fft(x,-1);
152             gcf().color_map = hotcolormap(256);
153             subplot(2,1,1);
154             Matplot(abs(y))
155             subplot(2,1,2);
156             Matplot(fftshift(abs(y)))
157         </scilab:image>
158     </refsection>
159     <refsection role="see also">
160         <title>参照</title>
161         <simplelist type="inline">
162             <member>
163                 <link linkend="fft">fft</link>
164             </member>
165             <member>
166                 <link linkend="ifftshift">ifftshift</link>
167             </member>
168             <member>
169                 <link linkend="flipdim">flipdim</link>
170             </member>
171         </simplelist>
172     </refsection>
173 </refentry>