Importing from the script ./ising2dim.py


In [1]:
import os
import sys
print(os.getcwd())
print(os.listdir( os.getcwd() ))


/home/topolo/PropD/CompPhys/Cpp/Ising
['ising', '.ipynb_checkpoints', 'ising_2dim', 'IsingGPU', 'Ising2d_py.ipynb', 'README.md', 'ising_2dim.cpp', 'Ising', 'ising2dim.pyc', 'ising2dim.py', 'ising.gz', 'ising.ipynb']

In [2]:
import numpy
import numpy as np

In [3]:
sys.path.append('./')

In [4]:
from ising2dim import periodic
from ising2dim import monteCarlo

In [8]:
trials = int( 10000 )
size = int( 128 )
temp_init   = float( 1.0 )
temp_end    = float( 3.0 )
temp_step = float( 0.05 )

In [9]:
temps = np.arange(temp_init,temp_end+temp_step/2,temp_step,float)
print(len(temps))


41

In [7]:
# code to time code
import time

In [ ]:
# code to time code
"""
t0 = time.time() # return time in seconds  
code_block
t1 = time.time() 
total = t1-t0 # return time in seconds  
"""

In [11]:
avgresults = []
t0 = time.time()
for temp in temps:
    t1 = time.time()
    [E_av, E_variance, M_av, M_variance, Mabs_av] = monteCarlo(temp,size,trials)
    t2 = time.time() # return time in seconds
    avgresults.append( [E_av, E_variance, M_av, M_variance, Mabs_av] )
    t3 = time.time()
    print( " temp : %f , t2-t1 : %f sec., t3-t1 : %f sec. \n" % (temp, t2-t1, t3-t1) )


 temp : 1.000000 , t2-t1 : 332.685235 sec., t3-t1 : 332.685238 sec. 

 temp : 1.050000 , t2-t1 : 335.462056 sec., t3-t1 : 335.462059 sec. 

 temp : 1.100000 , t2-t1 : 332.107940 sec., t3-t1 : 332.107943 sec. 

 temp : 1.150000 , t2-t1 : 333.613357 sec., t3-t1 : 333.613359 sec. 

 temp : 1.200000 , t2-t1 : 334.402636 sec., t3-t1 : 334.402638 sec. 

 temp : 1.250000 , t2-t1 : 336.460900 sec., t3-t1 : 336.460902 sec. 

 temp : 1.300000 , t2-t1 : 341.880590 sec., t3-t1 : 341.880592 sec. 

 temp : 1.350000 , t2-t1 : 340.144723 sec., t3-t1 : 340.144726 sec. 

 temp : 1.400000 , t2-t1 : 337.601802 sec., t3-t1 : 337.601805 sec. 

 temp : 1.450000 , t2-t1 : 339.555909 sec., t3-t1 : 339.555911 sec. 

 temp : 1.500000 , t2-t1 : 340.557747 sec., t3-t1 : 340.557750 sec. 

 temp : 1.550000 , t2-t1 : 342.579284 sec., t3-t1 : 342.579286 sec. 

 temp : 1.600000 , t2-t1 : 344.613244 sec., t3-t1 : 344.613246 sec. 

 temp : 1.650000 , t2-t1 : 345.885168 sec., t3-t1 : 345.885171 sec. 

 temp : 1.700000 , t2-t1 : 348.508026 sec., t3-t1 : 348.508029 sec. 

 temp : 1.750000 , t2-t1 : 350.909981 sec., t3-t1 : 350.909983 sec. 

 temp : 1.800000 , t2-t1 : 355.591386 sec., t3-t1 : 355.591389 sec. 

 temp : 1.850000 , t2-t1 : 358.757520 sec., t3-t1 : 358.757522 sec. 

 temp : 1.900000 , t2-t1 : 363.258782 sec., t3-t1 : 363.258784 sec. 

 temp : 1.950000 , t2-t1 : 369.545482 sec., t3-t1 : 369.545484 sec. 

 temp : 2.000000 , t2-t1 : 376.015185 sec., t3-t1 : 376.015187 sec. 

 temp : 2.050000 , t2-t1 : 384.937281 sec., t3-t1 : 384.937283 sec. 

 temp : 2.100000 , t2-t1 : 398.665850 sec., t3-t1 : 398.665852 sec. 

 temp : 2.150000 , t2-t1 : 403.305000 sec., t3-t1 : 403.305002 sec. 

 temp : 2.200000 , t2-t1 : 419.249487 sec., t3-t1 : 419.249489 sec. 

 temp : 2.250000 , t2-t1 : 438.730402 sec., t3-t1 : 438.730404 sec. 

 temp : 2.300000 , t2-t1 : 458.183288 sec., t3-t1 : 458.183290 sec. 

 temp : 2.350000 , t2-t1 : 476.095774 sec., t3-t1 : 476.095775 sec. 

 temp : 2.400000 , t2-t1 : 491.375762 sec., t3-t1 : 491.375764 sec. 

 temp : 2.450000 , t2-t1 : 499.186498 sec., t3-t1 : 499.186500 sec. 

 temp : 2.500000 , t2-t1 : 505.931850 sec., t3-t1 : 505.931852 sec. 

 temp : 2.550000 , t2-t1 : 522.743397 sec., t3-t1 : 522.743399 sec. 

 temp : 2.600000 , t2-t1 : 528.661152 sec., t3-t1 : 528.661154 sec. 

 temp : 2.650000 , t2-t1 : 535.596299 sec., t3-t1 : 535.596301 sec. 

 temp : 2.700000 , t2-t1 : 551.087282 sec., t3-t1 : 551.087284 sec. 

 temp : 2.750000 , t2-t1 : 549.237094 sec., t3-t1 : 549.237097 sec. 

 temp : 2.800000 , t2-t1 : 558.786034 sec., t3-t1 : 558.786036 sec. 

 temp : 2.850000 , t2-t1 : 560.279595 sec., t3-t1 : 560.279597 sec. 

 temp : 2.900000 , t2-t1 : 568.216951 sec., t3-t1 : 568.216954 sec. 

 temp : 2.950000 , t2-t1 : 569.949948 sec., t3-t1 : 569.949950 sec. 

 temp : 3.000000 , t2-t1 : 579.395716 sec., t3-t1 : 579.395718 sec. 

Timing Benchmarks

trials = 10000, $L_x=128$, $t_0=1.$, $t_f=3.$, $\Delta t = 2.0$ (in secs.)

temp : 1 , t2-t1 : 84.119749 

 temp : 2 , t2-t1 : 96.466402 

 temp : 3 , t2-t1 : 150.107681

In [14]:
print(avgresults.shape)


(41, 5)

In [13]:
avgresults = np.array( avgresults )

In [15]:
import matplotlib.pyplot as plt

In [20]:
T = np.array( temps)
E_avg = avgresults[:,0]
Evar_avg = avgresults[:,1]
M_avg = avgresults[:,2]
Mvar_avg = avgresults[:,3]
Mabs_avg = avgresults[:,4]

In [21]:
plt.scatter(T,E_avg)
plt.show()



In [22]:
plt.scatter(T,Evar_avg)
plt.show()



In [23]:
plt.scatter(T,M_avg)
plt.show()



In [24]:
plt.scatter(T,Mvar_avg)
plt.show()



In [25]:
plt.scatter(T,Mabs_avg)
plt.show()



In [16]:
T = np.array( temps)
E_avg = avgresults[:,0]
Evar_avg = avgresults[:,1]
M_avg = avgresults[:,2]
Mvar_avg = avgresults[:,3]
Mabs_avg = avgresults[:,4]

In [17]:
plt.scatter(T,E_avg)
plt.show()



In [18]:
plt.scatter(T,Evar_avg)
plt.show()



In [19]:
plt.scatter(T,M_avg)
plt.show()



In [20]:
plt.scatter(T,Mvar_avg)
plt.show()



In [21]:
plt.scatter(T,Mabs_avg)
plt.show()



In [22]:
np.save("./Ising/data/IsingMetroCPU.npy",avgresults)

In [ ]: