Калькулятор комплексных чисел

Комплексное число z = a + bi — это точка и вектор на плоскости: a по оси Re, b по оси Im. Калькулятор складывает, вычитает, умножает и делит комплексные числа, считает квадрат, корень, сопряжённое и обратное число, показывает модуль и аргумент, а на чертеже — как меняется вектор при повороте.

Данные

Комплексное число записывается как z = a + b·i, где i² = −1. Пустое поле — ошибка, а не ноль.

Поля a, b, c и d принимают любые числа. Для операций z₁ + z₂, z₁ − z₂, z₁ × z₂ и z₁ ÷ z₂ нужны обе пары; для квадрата, корня, сопряжённого и обратного числа — только z₁. Деление на ноль и обращение нуля дают ошибку, а не число.

Комплексная плоскость

Красная стрелка — вектор z₁, синяя — результат. Тяните точку z₁ мышью или касанием; с клавиатуры выделите точку (Tab) и двигайте стрелками, Shift увеличивает шаг.

Векторы z₁ и результата на комплексной плоскости

Результат

— = —
модуль z₁ = —
аргумент z₁ = —
тригонометрическая форма z₁ = —
модуль результата = —
аргумент результата = —

Поворот и масштаб

умножение на cos θ + i·sin θ

Умножение z₁ на (cos θ + i·sin θ) поворачивает вектор против часовой стрелки на угол θ, не меняя его длины. Меняйте θ ползунком.

θ 90°
Исходный вектор z₁ и повёрнутый вектор z₁·e^{iθ}

Как считается Алгебраическая и тригонометрическая формы, модуль, аргумент и формулы всех операций.

Комплексное число z = a + b·i состоит из вещественной части a и мнимой части b, где i² = −1. На комплексной плоскости ему отвечает вектор из начала координат в точку (a; b).

Модуль |z| = √(a² + b²) — длина вектора. Аргумент arg z = atan2(b, a) — угол между положительным направлением оси Re и вектором, в градусах, в диапазоне от −180° до 180°.

Сложение и вычитание идут по частям: (a + b·i) ± (c + d·i) = (a ± c) + (b ± d)·i. Произведение раскрывается по правилу i² = −1: (a + b·i)(c + d·i) = (a·c − b·d) + (a·d + b·c)·i. Деление — умножение числителя и знаменателя на сопряжённое знаменателя: (a + b·i)/(c + d·i) = ((a·c + b·d) + (b·c − a·d)·i)/(c² + d²).

Квадрат z² = (a² − b²) + 2·a·b·i. Корень берётся по половине аргумента: √z = √|z|·(cos(arg z / 2) + i·sin(arg z / 2)). Сопряжённое z̄ = a − b·i. Обратное число 1/z = (a − b·i)/(a² + b²).

Тригонометрическая форма z = |z|·(cos φ + i·sin φ) удобна для умножения и поворота: |z₁·z₂| = |z₁|·|z₂|, arg(z₁·z₂) = arg z₁ + arg z₂. Поэтому умножение на cos θ + i·sin θ поворачивает вектор на угол θ в ту же сторону.

Что такое комплексное число

Комплексное число записывают в виде z = a + b·i. Здесь a — вещественная часть, b — мнимая часть, а мнимая единица i определяется единственным свойством i² = −1. Если b = 0, число превращается в обычное вещественное; если a = 0, его называют чисто мнимым. Два комплексных числа равны только тогда, когда совпадают и вещественные, и мнимые части.

Геометрически комплексное число — это вектор на плоскости: по горизонтальной оси Re откладывают a, по вертикальной Im откладывают b. Длина вектора называется модулем, а угол между положительным направлением оси Re и вектором — аргументом. Такая картинка и делает понятными умножение, деление и поворот.

Как заполнять поля

Введите вещественную и мнимую части первого числа z₁ в поля a и b, затем выберите операцию. Для сложения, вычитания, умножения и деления появляются поля второго числа z₂: вещественная часть c и мнимая часть d. Для квадрата, корня, сопряжённого и обратного числа второго числа не нужно — операция действует на одно z₁.

Знак минус учитывается как обычно; десятичную дробь можно писать через точку или через запятую. Если очистить любое из нужных полей, калькулятор не подставит ноль, а покажет ошибку рядом с этим полем: пустая строка не считается числом. Красную точку z₁ на комплексной плоскости можно тянуть мышью или касанием, а с клавиатуры — выделить и двигать стрелками, при этом поля a и b обновляются сами.

Модуль, аргумент и две формы записи

Модуль и аргумент — две величины, которые полностью задают число наравне с парой a и b.

  • Модуль |z| = √(a² + b²) — это длина вектора, всегда неотрицательная.
  • Аргумент arg z = atan2(b, a) — угол в градусах, он попадает в диапазон от −180° до 180°. Функция atan2 выбирает четверть по знакам a и b, поэтому угол восстанавливается однозначно.

Алгебраическая форма — это привычная запись a + b·i. Тригонометрическая форма опирается на модуль и аргумент: z = |z|·(cos φ + i·sin φ), где φ = arg z. Через неё особенно удобно умножать и делить: модули перемножаются, а аргументы складываются. Отсюда же видно, что умножение на cos θ + i·sin θ поворачивает вектор на угол θ, не меняя длины.

Формулы всех операций

Ниже z₁ = a + b·i, а z₂ = c + d·i. Обозначения одни и те же во всех строках: a и b — части z₁, c и d — части z₂.

  • Сложение: z₁ + z₂ = (a + c) + (b + d)·i.
  • Вычитание: z₁ − z₂ = (a − c) + (b − d)·i.
  • Умножение: z₁·z₂ = (a·c − b·d) + (a·d + b·c)·i; правило опирается на i² = −1.
  • Деление: z₁ / z₂ = ((a·c + b·d) + (b·c − a·d)·i) / (c² + d²). Числитель и знаменатель умножают на сопряжённое знаменателя, чтобы избавиться от мнимой части в знаменателе. При c² + d² = 0 (то есть при z₂ = 0) деление невозможно.
  • Квадрат: z₁² = (a² − b²) + 2·a·b·i.
  • Квадратный корень: √z₁ = √|z₁|·(cos(arg z₁ / 2) + i·sin(arg z₁ / 2)). Это главное значение корня; второе значение отличается знаком.
  • Сопряжённое: z̄₁ = a − b·i, то есть знак мнимой части меняется.
  • Обратное число: 1 / z₁ = (a − b·i) / (a² + b²). При z₁ = 0 обратного числа не существует.

Пример, который можно повторить

Возьмём z₁ = 3 + 4·i и z₂ = 1 − 2·i. Для первого числа |z₁| = √(3² + 4²) = √25 = 5, а arg z₁ = atan2(4, 3) = 53,13°. Для второго |z₂| = √(1 + 4) = √5 = 2,24, а arg z₂ = atan2(−2, 1) = −63,43°.

Сложение даёт (3 + 1) + (4 − 2)·i = 4 + 2·i, вычитание — (3 − 1) + (4 + 2)·i = 2 + 6·i. Произведение: a·c − b·d = 3·1 − 4·(−2) = 3 + 8 = 11 и a·d + b·c = 3·(−2) + 4·1 = −6 + 4 = −2, то есть z₁·z₂ = 11 − 2·i. Модуль произведения равен 11,18, аргумент равен −10,30°. Проверка через тригонометрическую форму сходится: |z₁|·|z₂| = 5·2,24 = 11,18, а arg z₁ + arg z₂ = 53,13° − 63,43° = −10,30°.

Деление: c² + d² = 1 + 4 = 5, числитель даёт (−1) + 2·i, поэтому z₁ / z₂ = −1 + 2·i. Квадрат z₁ равен (9 − 16) + 2·3·4·i = −7 + 24·i. Квадратный корень из 3 + 4·i равен 2 + 1·i, и это легко проверить обратно: (2 + i)² = 4 + 4·i + i² = 3 + 4·i. Сопряжённое — 3 − 4·i, обратное — (3 − 4·i)/25 = 0,12 − 0,16·i.

Что показывает ползунок поворота

Отдельный ползунок умножает z₁ на cos θ + i·sin θ. Длина вектора при этом не меняется: |z₁·e^{iθ}| = |z₁|, а аргумент растёт на θ: arg = arg z₁ + θ. На чертеже исходный красный вектор переходит в синий повёрнутый, а пунктирная дуга отмечает пройденный угол. Модуль множителя задаёт, во сколько раз растянется вектор, а его аргумент — на какой угол повернётся плоскость.

Где модель не работает

Комплексные числа — точная алгебраическая модель, у неё нет областей, где формулы «перестают действовать». Ограничения здесь только вычислительные. Расчёты идут в числах двойной точности, поэтому результат выводится с округлением до значащих цифр; проверка подстановкой может дать очень малую ненулевую величину вместо строгого нуля. Это округление вывода, а не ошибка метода.

Отдельно стоит деление на ноль и обращение нуля: для z₂ = 0 и для z₁ = 0 формулы не определены, и калькулятор честно сообщает об ошибке, а не выдаёт бесконечность. Квадратный корень возвращает одно главное значение из двух возможных. Наконец, этот калькулятор считает отдельные числа и показывает векторы; он не строит графики функций комплексного переменного и не раскладывает функции в ряды — для таких задач нужны другие инструменты.