ComparingSystemSizes.py
Appearance
import numpy as np
from matplotlib import pylab as pl
import matplotlib.pyplot as plt
def get_energy_and_mag_per_spin_vs_T(x):
data = np.loadtxt(str(x) +'x' + str(x) + '.dat')
T = data[:,0]
E = data[:,1]
E_per_spin = E/(x*x)
M = data[:,3]
M_per_spin = M/(x*x)
return T, E_per_spin, M_per_spin
for i in range (1,6):
T, E_per_spin, M_per_spin = get_energy_and_mag_per_spin_vs_T(2**i)
pl.plot(T, E_per_spin, label = str(2**i) + 'x' + str(2**i))
plt.legend()
pl.title('Energy per spin vs Tempurature')
pl.xlabel('Tempurature')
pl.ylabel('Energy per spin')
pl.show()
for i in range (1,6):
T, E_per_spin, M_per_spin = get_energy_and_mag_per_spin_vs_T(2**i)
pl.plot(T, M_per_spin, label = str(2**i) + 'x' + str(2**i))
plt.legend()
pl.title('Magnetisation per spin vs Tempurature')
pl.xlabel('Tempurature')
pl.ylabel('Magnetisation per spin')
pl.ylim([-1.5,1.5])
pl.show()