To use the code you need Python 3.9+
To install the requirements just run
pip install -r requirements.txt
To run visualization just run the IsingModel3d run_simulation
method. This way no graphs are created, you can just see the visualization.
The model is updated in runtime and you can rotate and move the camera
Example of the visualization:
There are 2 classes in the code: IsingModel and IsingModel3d. The latter inherits IsingModel and implements additional visualization
The model is implemented without any libraries that can improve the performance (like NumPy)
Visualization is done with pyqtgraph Python library