| doxygen-awesome | ||
| include | ||
| latex | ||
| src | ||
| .clang-format | ||
| .clangd | ||
| .gitignore | ||
| Doxyfile | ||
| README.md | ||
Ising Model
Requirements
Operating systems
- Linux
- Has been tested on Fedora 38
- Will most likely work on other Linux distributions
- MacOS
- Might work, but hasn't been tested
- Windows
- Will most likely not work
Tools
Libraries
-
Python
-
C++
Compiling
Compiling is as easy as running this command while being inside the src directory:
make
Running programs
C++ binaries
To run main or test_suite, just run this command while being inside src:
./<program-name>
Python scripts
Install libraries
Before running the scripts, make sure that all libraries are installed. Using pip, you can install all requirements like this:
pip install -r requirements.txt
This recursively install all the packages that are listed in requirements.txt.
Running scripts
For the Python scripts, run them from the src directory like this:
python scripts/<script-name>
If you have any problems running the scripts, you might have to run this instead:
python3 scripts/<script-name>
Batch system
For the phase_transition_mpi program, there are scripts in the src/jobs directory that come along with it. This is to be able to run it on a batch system using Slurm if you have access to one. This is the recommended way to use this program as it takes approximately 90 minutes to complete when using 8 processes where each process has 10 threads.
If you happen to have such a system available to you, then you should clone this repo on that system, then compile it by running:
make phase_transition_mpi
You might have to load the Armadillo library using the module system before compiling.
After compiling, you can schedule it by running:
sbatch jobs/<script-name>
Performance
This section aims to give an idea to the time it takes for the program to run so that you know a bit what to expect if you decide to run it for yourself.
CPU
The times mentioned here are times achieved on a computer with these specifications:
- CPU model
- Intel i7-9850H
- Threads
- 12
- Clock speed
- 4.6GHz
Times
Credits
The Doxygen theme used here is doxygen-awesome-css.