LayerwiseEvolver
class LayerwiseEvolver(evolution_state, layers, *args, **kwargs)
Basen: TEBDEvolver
Ein Spezialfall des TEBDEvolver auf der Grundlage schichtweiser Evolutionsmodelle.
Wie auch in quimb_layerserläutert, werden bei dieser Implementierung die abwechselnden geraden/ungeraden Aktualisierungen der Anleihen, die im Original quimb.tensor.TEBD in die Verantwortung des Endnutzers. Dies geschieht, indem der einzelne Hamiltonian, der der TEBDEvolver instanz durch eine Folge von LayerModel instanzen. Jede einzelne dieser Instanzen kodiert eine einzige Ebene von Interaktionen. Diese sollten die abwechselnde Aktualisierung von geraden und ungeraden Bindungen des zugrunde liegenden Tensornetzes erzwingen.
Die Motivation für diese kompliziertere Schnittstelle ist, dass sie viel mehr Flexibilität bietet und es den Benutzern ermöglicht, eigene Trotter-Produktformeln zu definieren, anstatt auf die von quimb direkt implementierten Formeln beschränkt zu sein.
Initialisieren Sie eine LayerwiseEvolver instanz.
Parameter
- evolution_state (quimb_tebd.MPOState | MatrixProductState) – weitergeleitet an
TEBDEvolver. Weitere Einzelheiten entnehmen Sie bitte der Dokumentation. - layers (list[LayerModel]) – die Liste der Modelle, die einzelne Schichten von Interaktionen beschreiben. Siehe oben sowie die Erläuterungen in
quimb_layers. - args - alle weiteren Positionsargumente werden an den
TEBDEvolverkonstruktor weitergeleitet. - kwargs - alle weiteren Schlüsselwortargumente werden an den
TEBDEvolverkonstruktor weitergeleitet.
Attribute
layers
Die Interaktionsebenen, die zur Umsetzung der zeitlichen Entwicklung verwendet werden.