In [61]:
from __future__ import division
#%pylab inline
#%matplotlib qt
%pylab
#%matplotlib notebook
#%matplotlib nbagg
import matplotlib.ticker as ticker
import string
import os
rcParams.update({'font.size': 33})
def plotStates(n, Nsites , numEst):
#n = 5
#output = "/home/cifucito/nrgcode/TwoChNRG/Data/run"+str(n)+"/output_NRG_Code_NRG_main_Model_1chNupPdn_Majorana_Dir"+str(n)+".txt"
#output = "/home/cifucito/nrgcode/TwoChNRG/Data/run"+str(n)+"/output_NRG_Code_NRG_main_Model_1chNupPdn_Majorana_Band_Const_Dir"+str(n)+"_zEQ1.txt"
output = "/home/cifucito/ML/TwoChNRG/Runs/run"+str(n)+"/output_NRG_main_1Dot-Majorana.txt"
output = "/home/cifu/nrgcode/Data/run100/output_NRG_Code_NRG_main_Model_1chNupPdn_Majorana_Band_Const_Dir100_zEQ1.txt"
infile = open(os.path.abspath(output), 'r')
#load the full text by lines
text = infile.readlines()
A = [] # Este sera el alfabeto
for x in text:
#print(list(x))
a=x.split(' ')
if x.split(' ')[0]=='En':
#En , |n,m> , N
Ens = [float(a[2]),int(a[4]),float(a[6]),int(a[-1].split('\n')[0])]
A.append(Ens)
A=array(A)
minEns = zeros((Nsites+1,numEst))
for n in range(0,Nsites+1):
An = A[A[:,3]==n]
An = sorted(An, key=lambda An_entry: An_entry[0])
AnMins = An[0:numEst];
for m in range(0,len(AnMins)):
minEns[n,m] = AnMins[m][0]
for m in range(0,numEst):
plot(range(Nsites+1)[1::2],minEns[1::2,m],'r-');
#plot(range(Nsites+1)[2::2],minEns[0:-1:2,m],'k-');
xlabel('N')
ylabel('E/D')
#title('Even-site spectrum ',fontsize=20)
#label_size = 16
#xticks(fontsize=16, rotation=0)
#yticks(fontsize=16, rotation=0)
#xticks(arange(-1,70, step=70))
#yticks(arange(-2000,20000, step=1000))
axis('on')
xticks([])
yticks([])
In [62]:
n =100
Nsites = 50
numEst = 1000
plotStates(n, Nsites , numEst)
In [30]:
n = 59
def plotError(n):
Nsites = 50
numEst = 500
#output = "/home/cifucito/nrgcode/TwoChNRG/Data/run"+str(n)+"/output_NRG_Code_NRG_main_Model_1chNupPdn_Majorana_Band_Const_Dir"+str(n)+"_zEQ1.txt"
output = "/home/cifucito/nrgcode/TwoChNRG/Runs/run10/output_NRG_main_Majorana.txt"
output = "/home/cifucito/ML/TwoChNRG/Runs/run4/output_NRG_main_1Dot-Majorana.txt"
infile = open(os.path.abspath(output), 'r')
#load the full text by lines
text = infile.readlines()
A = [] # Este sera el alfabeto
for x in text:
#print(list(x))
a=x.split(' ')
if x.split(' ')[0]=='En':
#En , |n,m> , N
Ens = [float(a[2]),int(a[4]),float(a[6]),int(a[-1].split('\n')[0])]
A.append(Ens)
A=array(A) ; error = []
for Nmen in range(-1,51):
a1 = A[A[:,-1]== Nmen]
a2 = copy(a1)
N = Nmen+3
for i in range(N+1):
#print i , N-i ,N
a2[a1[:,1]==i ] = -a1[a1[:,1]==N-i]
error.append(sqrt(sum((a1[:,0]+a2[:,0])**2))/1000)
plot(range(-1,51) , log10(error) , 'o')
plotError(56)
#plotError(57)
In [18]:
np.fmod(5, 3)
Out[18]:
In [59]:
3>2 && 1>5
In [ ]: