To use the program, put it into a directory and type gcc ising.c -o ising.out -lm in order to compile the code. Then typing ./ising.out specificHeat 1.2214 1 should produce the output 0.097650 In place of specificHeat you can say freeEnergy or internalEnergy. The two numerical arguments are x and y. You can also say ./ising.out eigenvalue 10 1.2214 1 which should produce 1548.898450 In this case, the first numerical argument is the dimension, the second and third are x and y. Thanks to the numerics, you can go pretty far with the dimension. Even 25 takes just a minute or so.