Skip to main content
IBM Quantum Platform

CircuitEvolver

class CircuitEvolver(evolution_state, circuit, dt)

GitHub

Basen: Evolver

Eine Zeitentwicklungsmaschine auf der Grundlage von Quantenschaltungen.

Dieser Algorithmus führt die Zeitentwicklung durch, indem er nacheinander eine Quantenschaltung, die einem einzelnen Trotter-Schritt entspricht, auf seinen internen Zustand anwendet. Genauer gesagt, baut es ein Tensornetzwerk in der CircuitState. Wie vom Algorithmus gefordert DynamicMPF der Algorithmus verfolgt eine linke und eine rechte Seite der Zeitentwicklung, um die Überschneidung zweier Schaltkreise zu berechnen. In Abhängigkeit von conjugatewendet eine Instanz dieser Engine die Quantengatter ihrer Schablonenschaltung auf die entsprechende Seite an (siehe quimb_circuit für weitere Details).

Initialisieren Sie eine CircuitEvolver instanz.

Parameter

  • evolution_state (CircuitState) – ein Verweis auf den Zustand der Zeitentwicklung.
  • circuit (QuantumCircuit) – die Schablonenschaltung, die die zeitliche Entwicklung eines einzelnen Trotter-Schrittes kodiert. Diese Schaltung muss parametrisiert werden (siehe Parameter anstelle des Zeitschritts der Trotter-Methode. Dieser Parameter muss dt heißen.
  • dt (float) – den Zeitschritt, der verwendet und später an das Parameter des circuit Objekts gebunden.

Attribute

conjugate

Gibt zurück, ob diese Time-Evolver-Instanz auf der rechten Seite agiert.

evolved_time

Gibt die aktuelle Entwicklungszeit zurück.

evolution_state

Der Zustand der Zeitentwicklung (siehe auch DynamicMPF.evolution_state).

circuit

Die parametrisierte QuantumCircuit beschreibt den Trotter-Schritt.


Methoden

step

step()

GitHub

Führen Sie einen einzelnen Zeitschritt von TEBD durch.

Dadurch werden die Gates des circuit auf die evolution_state. Wenn conjugateTrue ist, gilt sie für CircuitState.lhs, andernfalls für CircuitState.rhs.

Rückgabetyp

Keine

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