Scroll to navigation

complex(7) Miscellaneous Information Manual complex(7)

ИМЯ

complex - основы комплексной математики

СИНТАКСИС

#include <complex.h>

ОПИСАНИЕ

Комплексные числа — это числа вида z = a+b*i, где a и b являются вещественными числами, и i = sqrt(-1), где i*i = -1.

Существуют и другие способы представления комплексных чисел. Пара вещественных чисел (a,b) может быть представлена как точка на плоскости, которая задаётся координатными осями X и Y. Эта же самая точка может быть также описана парой вещественных чисел (r,phi), где r — это расстояние от нулевой точки отсчёта 0, а phi — угол между осью X и прямой 0z. Итак, z = r*exp(i*phi) = r*(cos(phi)+i*sin(phi)).

Основные операции с комплексными числами, заданными в виде z = a+b*i и w = c+d*i, следующие:

сложение: z+w = (a+c) + (b+d)*i
умножение: z*w = (a*c - b*d) + (a*d + b*c)*i
деление: z/w = ((a*c + b*d)/(c*c + d*d)) + ((b*c - a*d)/(c*c + d*d))*i

Почти все математические функции имеют своих комплексных собратьев, но есть и только комплексные функции.

ПРИМЕРЫ

Ваш C-компилятор может работать с комплексными числами, если он поддерживает стандарт C99. Компоновку программы нужно производить с параметром -lm. Здесь мнимая единица представлена как I.

/* проверка что exp(i * pi) == -1 */
#include <math.h>        /* для atan */
#include <stdio.h>
#include <complex.h>
int
main(void)
{

double pi = 4 * atan(1.0);
double complex z = cexp(I * pi);
printf("%f + %f * i\n", creal(z), cimag(z)); }

СМ. ТАКЖЕ

cabs(3), cacos(3), cacosh(3), carg(3), casin(3), casinh(3), catan(3), catanh(3), ccos(3), ccosh(3), cerf(3), cexp(3), cexp2(3), cimag(3), clog(3), clog10(3), clog2(3), conj(3), cpow(3), cproj(3), creal(3), csin(3), csinh(3), csqrt(3), ctan(3), ctanh(3)

ПЕРЕВОД

Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.

30 октября 2022 г. Linux man-pages 6.03