def stat(salt):
    sys = dg.make_system_all(width, length, str(salt), dis)
    #    t=dg.t_gf(sys,en,df,1,0)[0]*2*np.pi
    #    wf=dg.wf_integral(sys,en,0)*2*np.pi
    gf0 = t_gf00(sys, en, df)
    #    return [wf,gf0]
    return gf0
コード例 #2
0
def t_stat(salt):
    sys = dg.make_system_all(width, length, str(salt), dis)
    t_gf = dg.t_gf(sys, en, df, 1, 0)

    myDict = {'t': t_gf}  #,'ld':ld 't':t, 'wf':wf, 'trans':trans 'g':g
    completeName = os.path.join('E:/dwell4/131/', str(salt) + ".mat")
    sio.savemat(completeName, myDict, oned_as='row')
コード例 #3
0
def gf_lastslice(salt):
    sys=dg.make_system_all(width, length, str(salt), dis)
    p0=kwant.greens_function(sys,ens[0]).submatrix(1,0)[tp,0]
    for cishu in np.arange(1,ens.size,1):
        p=kwant.greens_function(sys,ens[cishu]).submatrix(1,0)[tp,0]
        p0=np.hstack((p0,p))
    myDict = {'p':p0} #,'ld':ld 't':t, 'wf':wf, 'trans':trans 'g':g
    completeName = os.path.join('E:/dwell5/151/', str(salt)+".mat")
    sio.savemat(completeName,myDict,oned_as='row') 
コード例 #4
0
def wf_stat(salt):
    sys = dg.make_system_all(width, length, str(salt), dis)
    wf = []
    for cishu in np.arange(0, num_freq, 1):
        wf.append(dg.wf_integral(sys, ens[cishu], 0))

    myDict = {
        'en': ens,
        'wf': wf
    }  #,'ld':ld 't':t, 'wf':wf, 'trans':trans 'g':g
    completeName = os.path.join('E:/dwell4/51/', str(salt) + ".mat")
    sio.savemat(completeName, myDict, oned_as='row')
コード例 #5
0
def stat_time(cishu):   # return time, wf_integral
    
    sys=dg.make_system_all(width, length, str(cishu),dis)   # (width, length, salt, dis)
    t = dg.t_gf_all(sys,e1,df)
    wf = dg.wf_integral_all(sys,e1)
    return np.concatenate([t,wf])
コード例 #6
0
def speckle_stat(salt):
    sys = dg.make_system_all(width, length, str(salt), dis)
    wf = np.abs(kwant.wave_function(sys, en)(0)[0])**2
    myDict = {'wf': wf}  #,'ld':ld 't':t, 'wf':wf, 'trans':trans 'g':g
    completeName = os.path.join('E:/dwell4/147/', str(salt) + ".mat")
    sio.savemat(completeName, myDict, oned_as='row')
コード例 #7
0
def t_stat(salt):
    sys = dg.make_system_all(width, length, str(salt), dis)
    t_gf = dg.t_gf(sys, en, df, 1, 0)
    return t_gf[0]
コード例 #8
0
def wf_stat(salt):
    sys = dg.make_system_all(width, length, str(salt), dis)
    return dg.wf_integral(sys, en, 0)
#    t=[t_gf00(sys,en,df) for en in ens]
#    completeName = os.path.join('E:/dwell5/50/', str(salt)+".mat")
#    sio.savemat(completeName,{'t':t},oned_as='row')


def speckle_stat(salt):
    sys = dg.make_system_all(width, length, str(salt), dis)
    wf = kwant.wave_function(sys, en)(0)[0]
    myDict = {'wf': wf}  #,'ld':ld 't':t, 'wf':wf, 'trans':trans 'g':g
    completeName = os.path.join('E:/dwell5/100/', str(salt) + ".mat")
    sio.savemat(completeName, myDict, oned_as='row')


#Parallel(n_jobs=5)(delayed(speckle_stat)(cishu) for cishu in np.arange(10,1000,1))

sys0 = dg.make_system_all(width, length, str(0), 0)
wf = np.abs(kwant.wave_function(sys0, en)(0)[0])**2
coord = np.array([sys0.pos(i) for i in range(wf.size)])
completeName0 = os.path.join(
    'C:/Users/yumao/OneDrive - The University of Chicago/502.4.mat')
sio.savemat(completeName0, {'wf': wf, 'coord': coord}, oned_as='row')

#st=Parallel(n_jobs=5)(delayed(stat)(cishu) for cishu in np.arange(500,1500))
#s=Parallel(n_jobs=8)(delayed(spec)(cishu) for cishu in ens)

#myDict = {'tspec':tspec,'ens':ens}
##myDict = {'st':st} #,'ld':ld 't':t,  'trans':trans 'g':g t':t_list  'st':st
#completeName = os.path.join('E:/dwell5/118.mat')
#sio.savemat(completeName,myDict,oned_as='row')
#c1=os.path.join('C:/Users/ykang/Dropbox/TI8/data/118.mat')
#sio.savemat(c1,myDict,oned_as='row')
コード例 #10
0
from joblib import Parallel, delayed
import scipy.io as sio
import os.path
from time import time
from matplotlib import pyplot

#####  eigenchannel time was divided by 2pi in previous definition!!!!!
# use fisher lee relation to obtain smatrix is hard here, it is ok in trivial system
t_ini = time()

width = 30
length = 50
salt = '25'
dis = 3

sys = dg.make_system_all(width, length, salt, dis)
dg.plot_wf(sys, .395, 0)


def t_wiger(sys, en, df):
    s1 = kwant.smatrix(sys, en).data
    s2 = kwant.smatrix(sys, en + df).data
    #    tw=s2.transpose().conj()@(s2-s1)/df
    #    return np.trace(tw)
    p1 = np.angle(np.linalg.det(s1))
    p2 = np.angle(np.linalg.det(s2))
    return (p2 - p1) / df


num_freq = 64
ens = np.linspace(.392, .398, num_freq)  #(0.3,0.4,10000)   # ens
コード例 #11
0
import os.path
from time import time
#from matplotlib import≥ pyplot

t_ini=time()

width=30
length=200
dis=0

en=0
#df=1e-9

#ens=np.linspace(0,0.5,256)
ens=np.linspace(-0.55,0.55,512)
sys=dg.make_system_all(width, length, '5555',dis)
tp=np.concatenate([np.arange(0,10),np.arange(60,80)])

#p=kwant.greens_function(sys,ens[0]).submatrix(1,0)[tp,0]
#pyplot.plot(abs(p))

##wf=kwant.wave_function(sys,0.35)(0)   #,check_hermiticity=False
#dg.plot_wf(sys,0.01487,0)
t=kwant.smatrix(sys,0.55).submatrix(1,0)
    
def t_gf00(sys,en,df):     # only point to point
    g1=kwant.greens_function(sys,en).submatrix(1,0)[0,0]
    g2=kwant.greens_function(sys,en+df).submatrix(1,0)[0,0]
    return (np.angle(g2)-np.angle(g1))/df

def stat(salt):