Skip to main content
IBM Quantum Platform

LayerwiseEvolver

class LayerwiseEvolver(evolution_state, layers, *args, **kwargs)

GitHub

Basi: TEBDEvolver

Un caso particolare di TEBDEvolver basato su modelli di evoluzione a strati.

Come spiegato anche in quimb_layers, questa implementazione estrae l'aggiornamento alternato dei legami pari/dispari implementato all'interno dell'originale quimb.tensor.TEBD per diventare responsabilità degli utenti finali. Lo fa sostituendo la singola Hamiltoniana fornita all'istanza con una sequenza di TEBDEvolver con una sequenza di LayerModel istanze. Ogni singola istanza di questi codifica un singolo livello di interazioni. Questi dovrebbero imporre l'aggiornamento alternato dei legami pari e dispari della rete tensoriale sottostante.

La motivazione di questa interfaccia più complessa è che offre una maggiore flessibilità e consente agli utenti di definire formule di prodotto Trotter personalizzate, invece di essere limitati a quelle implementate direttamente da quimb .

Inizializza un'istanza LayerwiseEvolver istanza.

Parametri

  • evolution_state (quimb_tebd.MPOState | MatrixProductState) – inoltrata a TEBDEvolver. Per maggiori dettagli, consultare la documentazione.
  • layers (list[LayerModel]) – l'elenco dei modelli che descrivono singoli strati di interazioni. Vedi sopra e le spiegazioni fornite in quimb_layers.
  • args - qualsiasi altro argomento posizionale sarà inoltrato al costruttore TEBDEvolver costruttore.
  • kwargs - qualsiasi altro argomento di parola chiave sarà inoltrato al costruttore TEBDEvolver al costruttore.

Attributi

layers

Gli strati di interazioni utilizzati per implementare l'evoluzione temporale.


Metodi

step

step()

GitHub

Eseguire un singolo passo temporale di TEBD.

Questo itererà sugli elementi layers e applica la loro interazione allo stato interno.

Tipo di restituzione

Nessuna

Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.