Jump to content

ComparingSystemSizes.py

From ChemWiki
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()