Skip to main content
IBM Quantum Platform

SupportsApplyUnitaryPlaced

class SupportsApplyUnitaryPlaced(*args, **kwargs)

Basen: Protocol

Eine paketspezifische Erweiterung von ffsim.SupportsApplyUnitary.

Während das Protokoll von ffsim ein Objekt auf einen gesamten Zustandsvektor anwendet, fügt dieses Protokoll die Platzierung der lokalen Moden des Objekts zu den globalen Moden hinzu, auf die es einwirkt. Es gibt kein ffsim-Äquivalent: _apply_unitary_placed_() ist der einzige Aufrufer, und es wird über getattr Duck-Typing direkt an diesen weitergeleitet. Sie dient hier ausschließlich zu Typisierungs- und Dokumentationszwecken, da jede konkrete Klasse ( FermionicGate sowie die Klasse selbst FermionicCircuit ) diese Methode implementiert.

Siehe FermionicCircuit._apply_unitary_placed_() für die vollständige Semantik, einschließlich der Erklärung, warum eine einfache _apply_unitary_ Implementierung (ohne Argument für die Modusplatzierung) nur bei der Identitätsplatzierung berücksichtigt wird.

Protokollmethoden

_apply_unitary_placed_

_apply_unitary_placed_(vec, norb, nelec, copy, freg_indices)

Wendet eine unitäre Transformation auf einen Zustandsvektor an, nachdem lokale Moden auf globale Moden abgebildet wurden.

Parameter

  • vec (np.ndarray) – der Zustandsvektor, auf den die unitäre Transformation angewendet werden soll.
  • norb (int) – die Anzahl der räumlichen Orbitalen des globalen Zustandsvektors.
  • nelec (int |tuple[int, int]) – entweder eine einzelne ganze Zahl, die die Anzahl der Fermionen in einem spinlosen System angibt, oder ein Paar ganzer Zahlen, das die Anzahl der Fermionen mit Spin alpha und Spin beta angibt.
  • copy (bool) – ob der Vektor vor der Bearbeitung kopiert werden soll.
  • freg_indices (list[int]) – die absoluten (globalen) Modenindizes, auf die die lokalen Moden dieses Objekts abgebildet werden.

Rückgabe

Der transformierte Vektor.

Rückgabetyp

np.ndarray

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