Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
complex
Создание комплексного числа.
Последовательность вызова
c=complex(a) c=complex(a,b)
Аргументы
- a
вещественная матрица значений двойной точности размером 1 на 1 или
nнаm, реальная часть. Еслиaимеет мнимую часть, то сформируется ошибка.- b
вещественная матрица значений двойной точности размером 1 на 1 или
nнаm, реальная часть (по умолчаниюb=0). Еслиbимеет мнимую часть, то сформируется ошибка.- c
комплексная матрица значений двойной точности размером
nнаm, комплексное число.
Описание
c=complex(a) создаёт комплексное число из его реальной части
a и нуля в качестве мнимой части.
c=complex(a,b) создаёт комплексное число из его реальной части
a и мнимой части b.
Эта функция является заменой для таких выражений как a+%i*b,
особенно в случаях, когда комплексная арифметика пересекается с особыми числами с плавающей запятой, такими как %inf или %nan.
Примеры
В следующем примере мы создадим комплексное число из его реальной и мнимой части.
complex(1,2) complex([1 2],[3 4])
Если определено только a, то мнимая часть устанавливается равной нулю.
complex([1 2 3])
Если a является скаляром, а b
является матрицей, то результат c имеет тот же размер, что и
b.
Аналогично, если a является матрицей, а b является
скаляром, то результат c имеет тот же размер, что и
a.
c = complex([1 2 3], 4) c = complex(1, [2 3 4])
Если a и b являются матрицами разных размеров, то сформируется ошибка, как в следующем примере.
-->complex(ones(2,3),ones(4,5)) !--error 10000 complex: Несовместимые входные параметры №1 и №2: ожидались одинаковые размеры. at line 33 of function complex called by : complex(ones(2,3),ones(4,5))
Целью функции complex является управление числами с плавающей запятой,
такими как нечисловые значения (Nan) или бесконечность
(Inf).
На следующем примере мы покажем, что создание комплексного числа, у которого
реальная и мнимая части являются комплексными, не простое дело, если мы используем комплексную арифметику. Это из-за того, что произведение %i на %inf вычисляется как (0+%i) * (%inf+%i*0).
Это даёт промежуточное выражение 0*%inf, которое равно %nan.
-->%inf+%i*%inf
ans =
Nan + Inf
Решением этой проблемы является использование функции complex.
-->complex(%inf,%inf)
ans =
Inf + Inf
Смотрите также
- imult — умножение на мнимую единицу i
| Report an issue | ||
| << Комплексные числа | Комплексные числа | conj >> |