Skip to main content
IBM Quantum Platform

FoldRzzAngle

class FoldRzzAngle(*args, **kwargs)

GitHub

Basen: TransformationPass

Falten Sie den Rzz-Gate-Winkel in den kalibrierten Bereich von 0-pi/2 mit lokalen Gate-Tweaks.

In der IBM Quantum ISA hat die Anweisung Rzz(theta) einen gültigen "theta"-Wert von [0, pi/2] und jede Anweisung außerhalb dieses Bereichs wird zu einer Nicht-ISA-Operation für das Quantum-Backend. Der Transpiler-Pass erkennt solche Nicht-ISA-Rzz-Gatter und faltet den Gatterwinkel in den kalibrierten Bereich durch Hinzufügen von Einzel-Qubit-Gattern, wobei die logische Äquivalenz der Eingangsquantenschaltung erhalten bleibt. Hinzugefügte lokale Gatter können durch die folgenden Ein-Qubit-Optimierungsläufe effizient zu benachbarten Ein-Qubit-Gattern zusammengeführt werden.

Dieser Durchgang ermöglicht es den Qiskit-Benutzern, die Rzz-Gatter naiv mit Winkeln beliebiger reeller Zahlen zu verwenden.

Anmerkung

Dieser Durchgang transformiert die Schaltung nicht, wenn der Rzz-Gate-Winkel ein ungebundener Parameter ist. In diesem Fall muss der Benutzer vor der Transpilierung einen Torwinkel zuweisen oder die Parameter aus dem kalibrierten Bereich von [0, pi/2] auswählen.


Attribute

is_analysis_pass

Prüfen Sie, ob der Pass ein Analysepass ist.

Wenn der Pass ein AnalysisPass, ist, bedeutet dies, dass der Pass die DAG analysieren und die Ergebnisse dieser Analyse in den Eigenschaftssatz schreiben kann. Änderungen an der DAG sind bei dieser Art von Pass nicht zulässig.

is_transformation_pass

Prüfen Sie, ob der Pass ein Transformationspass ist.

Wenn es sich bei dem Pass um TransformationPass, handelt, bedeutet dies, dass der Pass die DAG manipulieren kann, aber den Eigenschaftssatz nicht ändern kann (aber er kann gelesen werden).


Methoden

__call__

__call__(circuit, property_set=None)

Betreibt den Durchgangsstromkreis.

Parameter

  • circuit (QuantumCircuit) – Der Tag, an dem der Pass durchgeführt wird.
  • property_set (PropertySet | dict | None) – Eingabe-/Ausgabe-Eigenschaftssatz. Ein Analyse-Durchlauf kann die Eigenschaften vor Ort ändern. Wenn nicht angegeben, wird das vorhandene property_set Attribut des Passes verwendet (sofern festgelegt).

Rückgabe

Wenn eine Transformation erfolgreich ist, ist das Ergebnis QuantumCircuit. Wenn die Analyse erfolgreich ist, wird das Signal weitergeleitet.

Rückgabetyp

QuantumCircuit

execute

execute(passmanager_ir, state, callback=None)

Ausführen der Optimierungsaufgabe für die Eingabe Qiskit IR.

Parameter

  • passmanager_ir (DAGCircuit) – Qiskit IR zur Optimierung.
  • state (DAGCircuit) – Zustand, der mit der Ausführung des Workflows durch den Pass-Manager selbst verbunden ist.
  • callback (Callable[[Task, DAGCircuit, PropertySet, float, int], None] | None) – Eine Callback-Funktion, die bei jeder Ausführung einer Optimierungsaufgabe aufgerufen wird.

Rückgabe

Optimierte Qiskit IR und Stand des Workflows.

Rückgabetyp

Tupel[ DAGCircuit, PassManagerState ]

name

name()

Name des Passes.

Rückgabetyp

str

run

run(dag)

GitHub

Führen Sie den Durchlauf auf dem DAGCircuit aus.

Parameter

dag (DAGCircuit)

Rückgabetyp

DAGCircuit

update_status

update_status(state, run_state)

Aktualisieren Sie den Workflow-Status.

Parameter

  • state (PassManagerState) – Übergeben Sie den Status des Managers zur Aktualisierung.
  • run_state (RunState) – Erledigungsstatus der aktuellen Aufgabe.

Rückgabe

Aktualisierter Status des Passmanagers.

Rückgabetyp

PassManagerState

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