1 <?xml version="1.0" encoding="UTF-8"?>
3 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4 * Copyright (C) 2011 - DIGITEO - Michael Baudin
5 * Copyright (C) 2012 - 2016 - Scilab Enterprises
6 * Copyright (C) 2020 - Samuel GOUGEON
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.
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="ru">
21 <refname>complex</refname>
22 <refpurpose>Построение массива комплексных чисел по их частям</refpurpose>
25 <title>Синтаксис</title>
32 <title>Аргументы</title>
37 скаляры, векторы, матрицы и гиперматрицы вещественных чисел.
38 Если оба <varname>a</varname> и <varname>b</varname> не скаляры,
39 то они должны быть одинакового размера.
46 Array of complex numbers, of the size of <varname>u</varname> or of
47 <varname>a</varname> and <varname>b</varname>.
48 If <varname>u</varname> is sparse, or if <varname>a</varname> and
49 <varname>b</varname> have the same sizes and both are sparse,
50 то <varname>c</varname> является также разрежённой.
51 В противном случае <varname>c</varname> является плотной.
58 <title>Описание</title>
60 <emphasis role="bold">c = complex(u)</emphasis> создаёт комплексное число из
61 его реальной части <varname>u</varname> и нуля в качестве мнимой части.
64 <emphasis role="bold">c = complex(a, b)</emphasis> создаёт комплексное число из его реальной части
65 <varname>a</varname> и мнимой части <varname>b</varname>.
68 Эта функция эквивалентна <literal>a + imult(b)</literal>, и должным
69 образом управляет специальными Inf и NaN вещественной и мнимой частями.
73 <title>Примеры</title>
75 В следующем примере мы создадим комплексное число из его реальной и мнимой части.
77 <programlisting role="example"><![CDATA[
82 Если определено только <varname>a</varname>, то мнимая часть устанавливается равной нулю.
84 <programlisting role="example"><![CDATA[
88 Если <varname>a</varname> является скаляром, а <varname>b</varname>
89 является матрицей, то результат <varname>c</varname> имеет тот же размер, что и
91 Аналогично, если <varname>a</varname> является матрицей, а <varname>b</varname> является
92 скаляром, то результат <varname>c</varname> имеет тот же размер, что и
95 <programlisting role="example"><![CDATA[
96 c = complex([1 2 3], 4)
97 c = complex(1, [2 3 4])
100 Если <varname>a</varname> и <varname>b</varname> являются матрицами разных размеров,
101 то сформируется ошибка, как в следующем примере.
104 -->complex(ones(2,3),ones(4,5))
106 complex: Несовместимые входные параметры №1 и №2: ожидались одинаковые размеры.
107 at line 33 of function complex called by :
108 complex(ones(2,3),ones(4,5))
111 При специальных вещественной или/и мнимой частях:
113 <programlisting role="example"><![CDATA[
114 r = [0 0 0 %inf %inf %inf %nan %nan %nan].';
115 i = [0 %inf %nan 0 %inf %nan 0 %inf %nan].';
118 // Затем сравним complex(r, i) и r + i*%i :
119 [complex(r,i), r+i*%i]
134 // Затем сравним complex(r, i) и r + i*%i :
135 --> [complex(r,i), r+i*%i]
141 Inf + Infi Nan + Infi
142 Inf + Nani Nan + Nani
144 Nan + Infi Nan + Infi
145 Nan + Nani Nan + Nani
148 <refsection role="see also">
149 <title>Смотрите также</title>
150 <simplelist type="inline">
152 <link linkend="percenti">%i</link>
155 <link linkend="imult">imult</link>
159 <refsection role="history">
160 <title>История</title>
163 <revnumber>6.1.1</revnumber>
165 Расширение до разрежённых массивов.