complex - Grundlagen der komplexen Mathematik
#include <complex.h>
Komplexe Zahlen sind Zahlen der Form z = a+b*i, wobei a und b reelle Zahlen sind und i = sqrt(-1), also i*i = -1.
Es gibt andere Darstellungen dieser Zahl. Das Paar (a,b) reeller Zahlen kann als Punkt in der Ebene betrachtet werden, der durch die X- und Y-Koordinaten gegeben ist. Derselbe Punkt kann auch durch ein Paar (r,phi) von reellen Zahlen beschrieben werden, wobei r der Abstand vom Ursprung O ist und phi der Winkel zwischen der X-Achse und der Geraden Oz. Es ist z = r*exp(i*phi) = r*(cos(phi)+i*sin(phi)).
Die grundlegenden Operationen sind auf z = a+b*i und w = c+d*i folgendermaßen definiert:
Addition: z+w = (a+c) + (b+d)*i
Multiplikation: z*w = (a*c - b*d) + (a*d + b*c)*i
Division: z/w = ((a*c + b*d)/(c*c + d*d)) + ((b*c - a*d)/(c*c + d*d))*i
Nahezu alle Funktionen aus math.h haben komplexe Entsprechungen, aber es gibt auch einige Funktionen, die es nur in complex.h gibt.
Ihr C-Compiler kann mit komplexen Zahlen arbeiten, wenn er den C99-Standard unterstützt. Sie müssen mit -lm linken. Die imaginäre Einheit wird durch I dargestellt.
/* überprüfe exp(i*pi) == -1 */
#include <math.h> /* für atan */
#include <complex.h>
#include <stdio.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)
Die deutsche Übersetzung dieser Handbuchseite wurde von Jens Rohler <jkcr AT rohler DOT de> und Martin Eberhard Schauer <Martin DOT E DOT Schauer AT gmx DOT de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.