Ising Model & Wolff's algorithm in FORTRAN

Click For Summary
SUMMARY

The discussion focuses on implementing Wolff's algorithm for the Ising model in a 2-D lattice using FORTRAN. Key steps in the algorithm include randomly selecting a site, checking neighboring sites against a probability condition to form a cluster, and flipping the spins of all sites in the cluster. Participants confirm that only one cluster is processed at a time, and neighbors that initially fail the probability check can still be added later through different sites. This iterative process continues until no new sites are added to the cluster.

PREREQUISITES
  • Understanding of the Ising model in statistical mechanics
  • Familiarity with Wolff's algorithm for cluster updates
  • Proficiency in FORTRAN programming language
  • Knowledge of random number generation techniques
NEXT STEPS
  • Research the implementation of the Ising model in FORTRAN
  • Study the details of Wolff's algorithm for cluster algorithms
  • Explore random number generation methods in FORTRAN
  • Learn about spin systems and their applications in computational physics
USEFUL FOR

Researchers, physicists, and programmers interested in computational physics, particularly those working on simulations of the Ising model and cluster algorithms in FORTRAN.

deco
Messages
1
Reaction score
0
Hi, I have the problema of implementing wolff's algorithm for ising model in 2-D lattice.
Has anyone ever done this algorithm in FORTRAN ?

I have questions of how to join the clusters.

Alexandre
 
Physics news on Phys.org
deco said:
Hi, I have the problema of implementing wolff's algorithm for ising model in 2-D lattice.
Has anyone ever done this algorithm in FORTRAN ?

I have questions of how to join the clusters.

Alexandre

The way I understand it, you only have one cluster at a time when using Wolff's algorithm. So in each iteration, you:
  1. Choose a site in your lattice at random
  2. Check all the neighbors of that site -- if the neighbors pass a probability condition, add them to the cluster.
  3. Check all the neighbors of the sites that just got added to the cluster. Repeat the probability proceedure.
  4. Continue until no sites get added to the cluster.
  5. Flip the spin of every site in the cluster.

Note that a neighbor that previously failed the probability check can get added to the cluster as a neighbor of a different site.
 
ChaosCon343 said:
The way I understand it, you only have one cluster at a time when using Wolff's algorithm. So in each iteration, you:
  1. Choose a site in your lattice at random
  2. Check all the neighbors of that site -- if the neighbors pass a probability condition, add them to the cluster.
  3. Check all the neighbors of the sites that just got added to the cluster. Repeat the probability proceedure.
  4. Continue until no sites get added to the cluster.
  5. Flip the spin of every site in the cluster.

Note that a neighbor that previously failed the probability check can get added to the cluster as a neighbor of a different site.

Thanks! I rode it in my national language and i didn't understand all but in english i see that it is simply:-) It is freak because i don't know english well(am i freak?):-)
 

Similar threads

  • · Replies 0 ·
Replies
0
Views
2K
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
Replies
5
Views
4K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 0 ·
Replies
0
Views
1K
  • · Replies 4 ·
Replies
4
Views
3K
Replies
1
Views
4K