Ich mache am kritischen Punkt eine numerische Monte-Carlo-Analyse des zweidimensionalen Ising-Modells. Ich habe die Metropolis 'Single Flip' Evolution anfangs mit Erfolg verwendet, obwohl sie unter kritischer Verlangsamung leidet und das Studium großer Gitter unwahrscheinlich macht. Ich schaue mir jetzt Cluster-Flip-Algorithmen an, insbesondere den Wolff-Algorithmus.
Ich habe es geschafft, es zu implementieren, und es sieht so aus, als ob es so funktioniert, wie es sollte (einen einzigartigen Dreh auf , das ganze Gitter an , stimmt mit der richtigen Energiedichte in der thermodynamischen Grenze überein ...), aber ich bekomme nicht das richtige Verhalten für die beiden Punkte Korrelationsfunktion.
Laut CFT sollte es sich wie folgt verhalten:
Ich bin immer mehr davon überzeugt, dass es mit Randbedingungen zu tun hat, ich verwende nichtperiodische freie Grenzen. Die Literatur zu diesem Thema sagt dazu nicht viel aus.
Übersehe ich eine Subtilität (oder einen Beweis) in diesem Verfahren oder in der Verwendung dieses Algorithmus?
Ich habe versucht, Ihr Problem mit meinem eigenen Code zu reproduzieren, aber ich konnte nicht: Ich habe den richtigen Wert für den Exponenten erhalten. Ich kann Ihnen nicht sagen, was bei Ihrer Berechnung schief gelaufen ist, aber ich kann Ihnen genau sagen, was ich getan habe!
Sie können meinen Code auf GitHub einsehen . Es war das erste, was ich je in C++ geschrieben habe, und heute würde ich viele Dinge anders machen, also beurteilen Sie den Code bitte nicht zu streng. Es gibt eine Readme-Datei im Repository, die so ziemlich alles darüber erklärt.
Ich habe mein Runscript hochgeladen, den relevanten Teil der entsprechenden Ergebnisse und das kleine Pyxplot- Skript, das die Passform in diesem GitHub Gist erledigt . Mein Wert für den Exponenten ist:
Hier ist eine Liste von Dingen, die meiner Meinung nach relevant sein könnten.
Das wissen Sie sicher, aber nur zur Erinnerung: In der Gleichung in der Frage soll man nicht den absoluten Wert der Differenz der Indizes nehmen Und der beiden Standorte. Die Indizes, die Sie den Sites zuweisen, sind völlig willkürlich. Was zählt, ist die Entfernung zwischen den beiden Standorten, also würde ich es lieber so schreiben:
Ich habe die Korrelation nur entlang der Richtung der Gittervektoren gemessen und nicht entlang irgendeiner Diagonalen. Das sollte aber egal sein, da es einen Beweis dafür gibt, dass die Spin-Spin-Korrelation am kritischen Punkt rotationssymmetrisch ist.
Ich habe nur dein Formular in den Bereich eingebaut für ein 512x512-Modell. Ich denke, wenn Sie darüber hinausgehen, erhalten Sie zu viel Einfluss auf die periodischen Randbedingungen. Sie können definitiv nicht das Ganze passen Bereich, da die Korrelation ein Minimum bei haben muss .
Die Korrelationsfunktion ändert sich ziemlich schnell mit der Temperatur um den kritischen Punkt, also stellen Sie sicher, dass Sie die richtige Temperatur haben und alles ausgeglichen ist. Meiner Erfahrung nach ist es am besten, den Wolff-Algorithmus mit einem Modell zu starten, bei dem alle Spins in die gleiche Richtung zeigen. Wenn Sie zufällige Drehungen machen und sich dann abkühlen Zu Der Wolff-Algorithmus ist am Anfang äußerst ineffizient, da er in diesem Rauschen zufälliger Spins keine großen Cluster bilden kann.
Hoffentlich hilft das!
Nur genau bei der kritischen Temperatur funktioniert dieses CFT-Ergebnis. Sie haben nicht erwähnt, ob Sie beim Monte-Carlo die kritische Temperatur verwendet haben.
Am/nahe dem kritischen Punkt wird die Autokorrelationszeit enorm. (Wenn ich mich nicht irre, muss die Autokorrelationszeit genau bei der kritischen Temperatur explodieren, wird jedoch aufgrund der Endlichkeit des Systems abgeschnitten). Daher ist es am besten, die Messungen alle 3-5 Autokorrelationszeiten einmal aufzuzeichnen. Beachten Sie, dass Autokorrelationseffekte für einen bestimmten Zufallsstartwert einen systematischen Fehler ergeben können, während statistische Fehler aufgrund des Autokorrelationseffekts durch Verwendung verschiedener Zufallsstartwerte geschätzt werden können. Schauen Sie in dieses Buch: http://www.amazon.com/Monte-Carlo-Methods-Statistical-Physics/dp/0198517971
Meine Vermutung ist, dass Sie keine Grenzeffekte sehen werden, solange Sie 10-20 Spins von der Grenze entfernt sind, wenn Sie die Messung von Spin-Spin-Korr. durchführen. Dies ist nur eine Vermutung. Warum setzen Sie nicht periodische Randbedingungen ein und sehen? Der Nachbar von i,j ist (i+1)%L, (j+1)%L und 3 weitere davon.
Karl Witthöft
sicher
Lernen ist ein Chaos
Lernen ist ein Chaos
Alexander
Lernen ist ein Chaos
David z
sicher
David z
AJK
N. Jungfrau
N. Jungfrau
David z
N. Jungfrau
N. Jungfrau
David z
N. Jungfrau
N. Jungfrau
David z
sicher
David z