Skip to main content
IBM Quantum Platform

QkComplex64

Eine komplexe, doppeltgenaue Zahlendarstellung. Dieser Datentyp wird verwendet, um komplexe Zahlen in Qiskit sicher zu verwenden, ist aber nicht unbedingt für eine einfache Manipulation auf der Benutzerseite gedacht. Stattdessen bieten wir Funktionen zur Konvertierung von compilernativen Darstellungen (z. B. complex double für GNU- oder Clang-Compiler), die eine ergonomische Handhabung ermöglichen, zu Qiskits QkComplex64 Repräsentation, die für die Übergabe an Qiskit-Funktionen und -Strukturen gedacht ist.

Qiskit geht explizit davon aus, dass der compilernative komplexe Zahlentyp in C für Windows MSVC _Dcomplex ist (wenn _MSC_VER definiert ist) und ansonsten double _Complex . In C++ (wenn __cplusplus definiert ist), ist der Typ der komplexen Zahl immer std::complex<double>.


Datentypen

QkComplex64

struct QkComplex64

Ein komplexes Doppel.

Siehe auch qk_complex64_to_native und qk_complex64_from_native , um diese Struktur in eine compilernative komplexe Zahlendarstellung zu konvertieren (oder von ihr abzuleiten).

doppeltes Re

Der reale Teil.

doppeltes Ich

Der imaginäre Teil.


Funktionen

qk_complex64_to_native

static CMPLX_DOUBLE qk_complex64_to_native(QkComplex64 *value)

Konvertiert eine QkComplex64 in eine compilernative komplexe Zahlendarstellung. Beachten Sie, dass CMPLX_DOUBLE ein Platzhalter für den compilernativen komplexen Zahlentyp ist, siehe oben auf der Seite für weitere Details.

Beispiel

Unter der Annahme eines GNU/clang-Compilers mit complex double als nativer komplexer Zahl ergibt sich

QkComplex64 qk_value = {1, 1}; // represents 1 + i
complex double value = qk_complex64_to_native(&qk_value);

Sicherheit

Das Verhalten ist undefiniert, wenn value kein gültiger, nicht-null Zeiger auf QkComplex64 ist.

Parameter

value - Ein Zeiger auf die zu konvertierende QkComplex64 .

Rückgabe

Eine native Darstellung der komplexen Zahl.

qk_complex64_from_native

static QkComplex64 qk_complex64_from_native(CMPLX_DOUBLE *value)

Konvertiert eine compiler-native komplexe Zahl in eine QkComplex64. Beachten Sie, dass CMPLX_DOUBLE ein Platzhalter für den compilernativen komplexen Zahlentyp ist, siehe oben auf der Seite für weitere Details.

Beispiel

Unter der Annahme eines GNU/clang-Compilers mit complex double als nativer komplexer Zahl ergibt sich

complex double value = 1 + I;
QkComplex64 qk_value = qk_complex64_from_native(&value);

Sicherheit

Das Verhalten ist undefiniert, wenn value kein gültiger, nicht-null Zeiger auf QkComplex64 ist.

Parameter

value - Ein Zeiger auf die native komplexe Zahl.

Rückgabe

Eine QkComplex64 Darstellung der komplexen Zahl.

War diese Seite hilfreich?
Melden Sie auf GitHub einen Fehler, einen Tippfehler oder fordern Sie Inhalte an.