NeutralAtomDevice Klasse

Darstellung eines neutralen Atomgeräte-Quantencomputers.

Konstruktor

NeutralAtomDevice(column_count: int = 40, register_zone_row_count: int = 25, interaction_zone_row_count: int = 2, measurement_zone_row_count: int = 2)

Parameter

Name Beschreibung
column_count
Standardwert: 40
register_zone_row_count
Standardwert: 25
interaction_zone_row_count
Standardwert: 2
measurement_zone_row_count
Standardwert: 2

Methoden

compile

Kompilieren Sie ein QIR-Programm für das NeutralAtomDevice-Gerät. Dazu gehört das Zerlegen von Toren in den systemeigenen Gate-Satz, die Optimierung von Sequenzen einzelner Qubittore, das Löschen nicht verwendeter Funktionen und das Neuanordnen von Anweisungen, um eine bessere Planung während der Ausführung zu ermöglichen.

show_trace

Visualisieren Sie die Ausführungsablaufverfolgung eines QIR-Programms auf dem NeutralAtomDevice-Gerät mithilfe des Atoms-Widgets. Dies umfasst das ungefähre Layout und die Planung des Programms, um die Parallelität von Toren und Bewegungen von Qubits während der Ausführung zu zeigen.

simulate

Simulieren Sie ein QIR-Programm auf dem NeutralAtomDevice-Gerät. Dazu gehört das ungefähre Layout und die Planung des Programms, um die Parallelität von Toren und Bewegungen von Qubits während der Ausführung zu modellieren. Die Simulation kann optional Rauschen basierend auf einer bereitgestellten Rauschkonfiguration enthalten.

compile

Kompilieren Sie ein QIR-Programm für das NeutralAtomDevice-Gerät. Dazu gehört das Zerlegen von Toren in den systemeigenen Gate-Satz, die Optimierung von Sequenzen einzelner Qubittore, das Löschen nicht verwendeter Funktionen und das Neuanordnen von Anweisungen, um eine bessere Planung während der Ausführung zu ermöglichen.

compile(program: str | QirInputData, verbose: bool = False) -> QirInputData

Parameter

Name Beschreibung
program
Erforderlich

Das QIR-Programm, das kompiliert werden soll, entweder als Zeichenfolge oder als QirInputData.

verbose

Wenn true, drucken Sie detaillierte Informationen zu den einzelnen Kompilierungsschritten.

Standardwert: False

Gibt zurück

Typ Beschreibung

Das kompilierte QIR-Programm.

show_trace

Visualisieren Sie die Ausführungsablaufverfolgung eines QIR-Programms auf dem NeutralAtomDevice-Gerät mithilfe des Atoms-Widgets. Dies umfasst das ungefähre Layout und die Planung des Programms, um die Parallelität von Toren und Bewegungen von Qubits während der Ausführung zu zeigen.

show_trace(qir: str | QirInputData)

Parameter

Name Beschreibung
qir
Erforderlich

Das QIR-Programm zur Visualisierung entweder als Zeichenfolge oder als QirInputData.

simulate

Simulieren Sie ein QIR-Programm auf dem NeutralAtomDevice-Gerät. Dazu gehört das ungefähre Layout und die Planung des Programms, um die Parallelität von Toren und Bewegungen von Qubits während der Ausführung zu modellieren. Die Simulation kann optional Rauschen basierend auf einer bereitgestellten Rauschkonfiguration enthalten.

simulate(qir: str | QirInputData, shots=1, noise: NoiseConfig | None = None, type: Literal['clifford', 'cpu', 'gpu'] | None = None, seed: int | None = None) -> List

Parameter

Name Beschreibung
qir
Erforderlich

Das QIR-Programm, das simuliert werden soll, entweder als Zeichenfolge oder als QirInputData.

shots

Die Anzahl der zu simulierenden Aufnahmen. Der Standardwert ist 1.

Standardwert: 1
noise

Ein optionaler NoiseConfig-Wert, der Rauschen in die Simulation einschließt.

Standardwert: None
type

Der zu verwendende Simulatortyp: Verwenden Sie "Clifford" , wenn Ihr QIR nur Clifford-Tore und Maße enthält. Verwenden Sie "gpu" , wenn eine GPU in Ihrem System verfügbar ist. Verwenden Sie "cpu" als Fallbackoption, wenn Sie keine GPU in Ihrem System haben. Wenn Keine (Standardeinstellung) wird der GPU-Simulator zuerst ausprobiert, wenn ein geeignetes GPU-Gerät nicht gefunden werden konnte.

Standardwert: None
seed

Ein optionaler zufallsfreier Samen zur Reproduzierbarkeit.

Standardwert: None

Gibt zurück

Typ Beschreibung

Die Ergebnisse der einzelnen Aufnahmen der Simulation als Liste.