Skip to main content
IBM Quantum Platform

TwirlingOptions

class TwirlingOptions(enable_gates=Unset, enable_measure=Unset, num_randomizations=Unset, shots_per_randomization=Unset, strategy=Unset)

GitHub

Basen: object

Zwirbeloptionen.


Attribute

Parameter

  • enable_gates (UnsetType | bool)
  • enable_measure (UnsetType | bool)
  • num_randomizations (UnsetType | int | Literal['auto'])
  • shots_per_randomization (UnsetType | int | Literal['auto'])
  • strategy (UnsetType | Literal['active', 'active-accum', 'active-circuit', 'all'])

enable_gates

Typ: UnsetType | bool

Standardwert: Unset

Ob 2-Qubit-Clifford-Gate-Twirling angewendet werden soll.

Standard: - Für den Sampler: False. - Für den Schätzer: Wenn enables_gates ist Unset, wird er vom Server entsprechend der Resilienzstufe festgelegt: Er ist False für die Resilienzstufen 0 und 1 und True für die Resilienzstufe 2.

enable_measure

Typ: UnsetType | bool

Standardwert: Unset

Ermöglicht das Drehen von Messanweisungen, sofern die Messung nicht in einen bedingten Block eingebunden ist.

Standard: - Für den Sampler: False. - Für den Schätzer: Wenn enable_measure ist Unset, wird der Wert vom Server entsprechend der Resilienzstufe festgelegt: Er beträgt False für Resilienzstufe 0 und True für die Resilienzstufen 1 und 2.

num_randomizations

Typ: UnsetType | int | Literal['auto']

Standardwert: Unset

Die Anzahl der Zufallsstichproben, die beim Wirbeln oder bei der Abschwächung von Stichproben verwendet werden.

Wenn num_randomizations "auto" ist, wird für jede Kneipe shots ausgeführt:

  • Wenn shots_per_randomization ebenfalls "auto" ist, wird zuerst shots_per_randomization wie unten beschrieben eingestellt, dann wird num_randomizations wie ceil(shots/shots_per_randomization) eingestellt, wobei ceil die Obergrenzenfunktion ist.
  • Andernfalls wird der Wert auf ceil(shots/shots_per_randomization) gesetzt.

Standardwert: "auto".

Anmerkung

Der in einem PUB oder in der Methode run() angegebene Wert shots wird als Teil der primitiven Ausführungsschnittstelle betrachtet und daher stets beachtet. default_shots, Andererseits gilt dies als eine Option, die speziell für „ IBM Quantum Compute “ (früher „ Qiskit Runtime “) vorgesehen ist. Daher shots_per_randomization hat das Produkt aus und num_randomizations Vorrang vor default_shots.

shots_per_randomization

Typ: UnsetType | int | Literal['auto']

Standardwert: Unset

Die Anzahl der Schüsse, die für jede Zufallsstichprobe durchgeführt werden.

Wenn "auto", für jede Kneipe shots mal ausgeführt:

  • Wenn num_randomizations ebenfalls "auto" ist, wird der Wert für die PEC-Minderung auf 64 und in allen anderen Fällen auf max(64, ceil(shots / 32)) gesetzt, wobei ceil die Obergrenzenfunktion ist.
  • Andernfalls wird der Wert auf ceil(shots/num_randomizations) gesetzt.

Standardwert: "auto".

Anmerkung

Der in einem PUB oder in der Methode run() angegebene Wert shots wird als Teil der primitiven Ausführungsschnittstelle betrachtet und daher stets beachtet. default_shots, Andererseits gilt dies als eine Option, die speziell für „ IBM Quantum Compute “ (früher „ Qiskit Runtime “) vorgesehen ist. Daher shots_per_randomization hat das Produkt aus und num_randomizations Vorrang vor default_shots.

strategy

Typ: UnsetType | Literal['active', 'active-accum', 'active-circuit', 'all']

Standardwert: Unset

Spezifizieren Sie die Strategie der Verwirbelung von Qubits in identifizierten Schichten von 2-Qubit-Twirling-Gates.

Zulässige Werte:

  • Unter "active" werden nur die Befehlsqubits in jeder einzelnen gezwirbelten Schicht gezwirbelt.
  • Unter "active-circuit" wird die Vereinigung aller Befehlsqubits in der Schaltung in jeder verzwirbelten Schicht gezwirbelt.
  • Unter "active-accum" wird die Vereinigung der Instruktions-Qubits im Schaltkreis bis zur aktuell gezwirbelten Schicht in jeder einzelnen gezwirbelten Schicht gezwirbelt.
  • Unter "all" werden alle Qubits im Eingangskreis in jeder gezwirbelten Schicht gezwirbelt.

Standardwert: "active-accum".

Bild zur Veranschaulichung der Unterschiede zwischen den verschiedenen Strategien des Zwirbelns. Wenn "aktiv", werden nur die Befehlsqubits in jeder Schicht gezwirbelt. Wenn "active-circuit", werden alle Befehlsqubits im Schaltkreis gedreht. Wenn "active-accum", wird die Vereinigung aller Befehlsqubits im Schaltkreis bis zur aktuell gezwirbelten Ebene gezwirbelt. Wenn Sie schließlich "alle" wählen, werden alle Qubits im Eingangskreis in jeder verdrillten Schicht verdrillt.

Methoden

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