Ising model is a basic model in phyiscs, probability theories and statisics, and widely used as a fundamental example in programming teaching and illustrating. This repository is built on the purpose of including different alogrithms, based on different programming languages.
We have:
- Local Monte Carlo, Metropolis and heat-bath, in Julia
- Wolff's Cluster Monte Carlo, in Julia
- Checkerboard parallelization, in OpenMP
To be implemented:
- Swendsen-Wang's Cluster Monte Carlo, in Julia
- Wang-Landau DOS sampling, in Julia
- Parallel tempering, in MPI-C++
- Checkerboard parallelization, in Cuda
In the future plan, continuous model such as XY model, and more algorithms such as event-chains, Microcanonical sampling will be added in.