a460b04d27c874f5854c94bea0b095843e3f7b54
[scilab.git] / scilab / modules / elementary_functions / help / ja_JP / complex / complex.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) 2011 - DIGITEO - Michael Baudin
5  *
6  * Copyright (C) 2012 - 2016 - Scilab Enterprises
7  *
8  * This file is hereby licensed under the terms of the GNU GPL v2.0,
9  * pursuant to article 5.3.4 of the CeCILL v.2.1.
10  * This file was originally licensed under the terms of the CeCILL v2.1,
11  * and continues to be available under such terms.
12  * For more information, see the COPYING file which you should have received
13  * along with this program.
14  *
15  -->
16 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
17           xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml"
18           xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
19           xmlns:scilab="http://www.scilab.org" xml:id="complex" xml:lang="ja">
20     <refnamediv>
21         <refname>complex</refname>
22         <refpurpose>複素数を計算する.</refpurpose>
23     </refnamediv>
24     <refsynopsisdiv>
25         <title>呼び出し手順</title>
26         <synopsis>
27             c=complex(a)
28             c=complex(a,b)
29         </synopsis>
30     </refsynopsisdiv>
31     <refsection>
32         <title>引数</title>
33         <variablelist>
34             <varlistentry>
35                 <term>a</term>
36                 <listitem>
37                     <para>
38                         1行1列またはn行m列の倍精度実数行列, 実部.
39                         <literal>a</literal> が虚部を有する場合,
40                         エラーが発生します.
41                     </para>
42                 </listitem>
43             </varlistentry>
44             <varlistentry>
45                 <term>b</term>
46                 <listitem>
47                     <para>
48                         1行1列またはn行m列の倍精度実数行列, 虚部 (デフォルト b=0).
49                         <literal>b</literal> が虚部を有する場合,
50                         エラーが発生します.
51                     </para>
52                 </listitem>
53             </varlistentry>
54             <varlistentry>
55                 <term>c</term>
56                 <listitem>
57                     <para>n行m列の倍精度複素行列, 複素数.</para>
58                 </listitem>
59             </varlistentry>
60         </variablelist>
61     </refsection>
62     <refsection>
63         <title>説明</title>
64         <para>
65             c=complex(a) は, <literal>a</literal>を実部,
66             0 を虚部とする複素数を作成します.
67         </para>
68         <para>
69             c=complex(a,b) は実部<literal>a</literal> ,
70             虚部<literal>b</literal>の複素数を作成します.
71         </para>
72         <para>
73             この関数は,
74             特に複素数演算が<literal>%inf</literal> または<literal>%nan</literal>
75             のような特定の浮動小数点数と競合する場合に,
76             <literal>a+%i*b</literal>のような式の代替手段となります.
77         </para>
78     </refsection>
79     <refsection>
80         <title>例</title>
81         <para>
82             以下の例では,実部と虚部から複素数を生成します.
83         </para>
84         <programlisting role="example"><![CDATA[
85 complex(1,2)
86 complex([1 2],[3 4])
87  ]]></programlisting>
88         <para>
89             <literal>a</literal> のみが指定された場合, 虚部は0に設定されます.
90         </para>
91         <programlisting role="example"><![CDATA[
92 complex([1 2 3])
93  ]]></programlisting>
94         <para>
95             <literal>a</literal> がスカラーで <literal>b</literal> が
96             行列の場合, 結果 <literal>c</literal> は,
97             <literal>b</literal>と同じ大きさとなります.
98             同様に, <literal>b</literal> がスカラーで <literal>a</literal>
99             が行列の場合, 結果 <literal>c</literal> は
100             <literal>a</literal>と同じ大きさになります.
101         </para>
102         <programlisting role="example"><![CDATA[
103 c = complex([1 2 3], 4)
104 c = complex(1, [2 3 4])
105  ]]></programlisting>
106         <para>
107             <literal>a</literal> と <literal>b</literal> が
108             異なる大きさの行列の場合,以下のセッションのような
109             エラーが発生します.
110         </para>
111         <screen><![CDATA[
112 -->complex(ones(2,3),ones(4,5))
113  !--error 10000
114 complex: Incompatible input arguments #1 and #2: Same sizes expected.
115 at line      33 of function complex called by :
116 complex(ones(2,3),ones(4,5))
117  ]]></screen>
118         <para>
119             <literal>complex</literal> 関数の目的は,NaNや無限大のような
120             IEEE 浮動小数点数を管理することです.
121             以下の例では,複素数演算を使用する場合,
122             実部と虚部が複合体となる複素数を作成するのは
123             容易ではないことを示します.
124             これは,<literal>%i</literal> と <literal>%inf</literal>の積が
125             <literal>(0+%i) * (%inf+%i*0)</literal>と評価されるためです.
126             この結果は,中間式<literal>0*%inf</literal>,つまり,
127             <literal>%nan</literal>となります.
128         </para>
129         <screen><![CDATA[
130 -->%inf+%i*%inf
131  ans  =
132     Nan + Inf
133  ]]></screen>
134         <para>
135             この問題の解決策は <literal>complex</literal>関数を使用することです.
136         </para>
137         <screen><![CDATA[
138 -->complex(%inf,%inf)
139  ans  =
140     Inf + Inf
141  ]]></screen>
142     </refsection>
143     <refsection role="see also">
144         <title>参照</title>
145         <simplelist type="inline">
146             <member>
147                 <link linkend="percenti">%i</link>
148             </member>
149             <member>
150                 <link linkend="imult">imult</link>
151             </member>
152         </simplelist>
153     </refsection>
154 </refentry>