Generieren von Ising-Modell-Steady-State-Konfigurationen

Was ist der effizienteste Weg, um stationäre Konfigurationen des Ising-Modells zu simulieren? Ich bin nur daran interessiert, einen großen Satz zufälliger Steady-State-Konfigurationen des 1D-Ising-Modells (mit homogenen Kopplungskonstanten) zu haben. Ein paar Ideen kamen mir in den Sinn:

  1. Brute-Force-Probenahme. Da das Ising-Modell in 1D und 2D exakt lösbar ist, hat man exakte Ausdrücke für die Wahrscheinlichkeiten jedes Zustands. Zufallsstichproben über eine Reihe von 2 N wird wahrscheinlich Speicherprobleme für kleine verursachen N bereits.
  2. Monte-Carlo-Dynamik. Man könnte die üblichen Monte-Carlo-Algorithmen (zB Glauber-Dynamik) auf zufälligen Anfangszuständen laufen lassen und warten, bis das System zum thermischen Gleichgewicht konvergiert. Dies erscheint jedoch ineffizient, wenn Sie nicht an der Dynamik interessiert sind und nur stationäre Konfigurationen wünschen.
  3. Verwendung der Zustandsdichte. Man könnte auch zunächst die Energie des Systems entsprechend stichprobenartig abtasten P ( E ) N ( E ) exp ( β E ) , Wo N ( E ) ist die (zumindest numerisch) berechenbare Zustandsdichte. Dann erzeugt man mit dieser Energie eine zufällige Konfiguration, zB unter Verwendung eines Spin-Flip-Algorithmus, bei dem man einzelne Drehungen umdreht, um die Energie zu erhöhen/zu verringern, bis sie der Zielenergie entspricht. Aber ich bin mir nicht sicher, ob die so erhaltenen Konfigurationen statistisch der Boltzmann-Verteilung folgen.

Hinweis: In 1D gibt es auch einen exakten Ausdruck für die Ising-Zustandsdichte, G ( E ( k ) ) = 2 ( N 1 k ) mit E ( k ) = N + 2 k + 1 . Siehe diese andere Frage: Ising-Modell Zustandsdichte .

Irgendwelche Ideen, wie man das am besten angeht?

Antworten (1)

Für das eindimensionale Modell ist die bei weitem effizienteste Methode zur Simulation des Ising-Modells die Verwendung einer Markov-Kette { 1 , 1 } , wodurch ein Spin nach dem anderen generiert wird, abhängig von den Werten, die von den vorherigen Spins genommen wurden. Beachten Sie auch, dass Sie auf diese Weise genau von der Gibbs-Verteilung abtasten , ohne Annäherung (im Gegensatz zu einem Monte-Carlo-Ansatz).

Betrachten wir der Einfachheit halber das Modell mit freier Randbedingung, also das Modell mit Hamiltonoperator

β H = β ich = 2 N σ ich 1 σ ich .
(Sie können auch ein Magnetfeld hinzufügen, aber ich werde es hier nicht tun, um die Darstellung zu vereinfachen). Dann, σ 1 ist gleich + 1 oder 1 mit Wahrscheinlichkeit 1 2 durch Symmetrie. Darüber hinaus für alle k 2 ,
P R Ö B ( σ k = σ k 1 | σ 1 , , σ k 1 ) = P R Ö B ( σ k = σ k 1 ) = e β e β + e β = 1 1 + e 2 β .
Nennen wir das Wahrscheinlichkeit P .

Zusammenfassen:

  • Sie probieren σ 1 : es ist + 1 mit Wahrscheinlichkeit 1 2 Und 1 mit Wahrscheinlichkeit 1 2 .
  • Gegeben σ 1 , Sie setzen σ 2 = σ 1 mit Wahrscheinlichkeit P Und σ 2 = σ 1 mit Wahrscheinlichkeit 1 P .
  • Gegeben σ 2 , Sie setzen σ 3 = σ 2 mit Wahrscheinlichkeit P Und σ 3 = σ 2 mit Wahrscheinlichkeit 1 P .
  • usw...

Dies ist sehr einfach zu implementieren und extrem schnell (natürlich compute P = 1 / ( 1 + e 2 β ) nur einmal). Dann wird die meiste Zeit von der Pseudozufallszahlengenerierung in Anspruch genommen. Auf diese Weise können Sie problemlos beliebig lange Ketten simulieren.

(Siehe auch diese Antwort für einen anderen Gesichtspunkt der Beziehung zwischen eindimensionalen Modellen und Markov-Ketten.)


Erklärung der Formel für P .

Der einfachste Weg, um zu sehen, warum die Formel für P Oben gegebene gilt entweder durch Verwendung der Random-Cluster- oder der Hochtemperatur-Darstellung des Ising-Modells, wenn Sie damit vertraut sind (sie werden beispielsweise in den Abschnitten 3.7.3 und 3.10.6 in diesem Buch beschrieben ) . .

Wenn Sie mit diesen Darstellungen nicht vertraut sind, lassen Sie mich versuchen, ein direktes Argument zu liefern.

Lassen S 1 , , S N { 1 , 1 } und schreibe S = ( S 1 , , S k 1 , S k , , S N ) Und S ' = ( S 1 , , S k 1 , S k , , S N ) (also die Konfiguration S ' ergibt sich aus der Konfiguration S indem Sie die Spins umdrehen k , k + 1 , N ).

Jetzt,

P R Ö B ( σ = S ) P R Ö B ( σ = S ' ) = exp ( β H ( S ) ) exp ( β H ( S ' ) ) = exp ( 2 β S k 1 S k ) .
Insbesondere,
P R Ö B ( σ k = σ k 1 ) P R Ö B ( σ k = σ k 1 ) = exp ( 2 β ) .
Aber das impliziert das
P R Ö B ( σ k = σ k 1 ) = e 2 β P R Ö B ( σ k = σ k 1 ) = e 2 β ( 1 P R Ö B ( σ k = σ k 1 ) ) ,
und deshalb
( 1 + e 2 β ) P R Ö B ( σ k = σ k 1 ) = e 2 β ,
woraus die Formel für P folgt sofort.

Danke, das ist definitiv das, wonach ich gesucht habe! Ich habe mich nur gefragt, wie ich die bedingte Wahrscheinlichkeit herleiten soll, die Sie aufgeschrieben haben. Es scheint sehr intuitiv zu sein, aber irgendwie sehe ich nicht, wie ich es herleiten soll. Ich frage mich, ob dies einfach zu erkennen ist oder ob es sich aus den Eigenschaften der Markov-Kette ergibt, auf die Sie sich in Ihrer anderen Antwort beziehen (die ich nicht vollständig verstehe).
Ich habe eine direkte Ableitung hinzugefügt. Die Idee ist denkbar einfach: Wenn Sie den Spin umdrehen σ k und alle Drehungen rechts davon, dann änderst du die Energie um ± 2 , je nachdem, ob der Spin σ k stimmt zu σ k 1 vor oder nach dem Flip. In jedem Fall wird das Verhältnis der Wahrscheinlichkeiten durch gegeben e ± 2 β , woraus die Formel für P folgt problemlos. Weitere Einzelheiten finden Sie in der Antwort.
Ich sehe den Punkt und halte das auch für sinnvoll. Bei der Herleitung setzt man das aber für den Zustand voraus S ' , S k , S N sind alle umgedreht, was notwendig ist, um die erste Formel auf einen einzigen Term zu reduzieren. Aber ich finde es verwirrend, weil es scheint, dass wir zusätzliche Bedingungen auferlegen S k + 1 , S N Hier.
Eigentlich habe ich jetzt ein paar Zweifel. Aus dieser Konstruktion P ( σ k + l = σ k ) = ich = 1 l P ( σ k + ich = σ k + ich 1 ) = P l . Aber dies würde bedeuten, dass die Zwei-Punkt-Korrelationsfunktion σ k σ k + l = 2 P ( σ k + l = σ k ) 1 würde als Potenzgesetz zerfallen, richtig? Aber wir wissen, dass es stattdessen exponentiell abfällt.
Nein, wir fügen keine Bedingungen hinzu S k + 1 , , S N . Bei der Berechnung der Wahrscheinlichkeit, dass σ k = σ k 1 , muss man über alle zulässigen Konfigurationen summieren S (das heißt, solche, die S k = S k 1 ). Jeder solchen Konfiguration entspricht genau eine Konfiguration, in der S k = S k 1 , erhalten durch Umdrehen der Drehungen rechts von S k 1 . Außerdem ist für jedes dieser Konfigurationspaare das Wahrscheinlichkeitsverhältnis gleich e 2 β . Dies impliziert, dass das Verhältnis der Wahrscheinlichkeiten, dass σ k = σ k 1 Und σ k = σ k 1 ist auch e 2 β .
P l = exp ( l | Protokoll P | ) zerfallen exponentiell mit l also ich verstehe deine frage nicht...
Ja, tut mir leid, vergiss das Exponential ... Danke, das verdeutlicht es für mich!