您當前的位置:首頁 > 歷史

2D SSH模型的能帶圖和邊緣態

作者:由 搗蛋鬼 發表于 歷史時間:2021-05-24

一、能帶圖

程式碼如下:

clc

clear

w

=

2

v

=

1

h

=

zeros

4

);

x

=

-

pi

pi

/

100

pi

y

=

-

pi

pi

/

100

pi

for

ii

=

1

201

kx

=

x

ii

);

for

jj

=

1

201

ky

=

y

jj

);

h

1

2

)=

w

+

v

*

exp

-

1

i

*

kx

);

h

1

3

)=

w

+

v

*

exp

-

1

i

*

ky

);

h

2

4

)=

w

+

v

*

exp

-

1

i

*

ky

);

h

3

4

)=

w

+

v

*

exp

-

1

i

*

kx

);

H

=

h

+

h

E

=

eig

H

);

E1

ii

jj

)=

E

1

);

E2

ii

jj

)=

E

2

);

E3

ii

jj

)=

E

3

);

E4

ii

jj

)=

E

4

);

end

end

X

Y

]=

meshgrid

x

y

);

surface

X

Y

E1

);

hold

on

surface

X

Y

E2

);

hold

on

surface

X

Y

E3

);

%畫下能帶

hold

on

surface

X

Y

E4

);

shading

interp

%使更光滑

結果如下:

2D SSH模型的能帶圖和邊緣態

二、邊緣態

程式碼如下:

clc;clear;

w=2;

v=1;

h=zeros(4);

g=zeros(4);

N=20;

y=-pi:pi/100:pi;

for ii=1:201

k=y(ii);

h(1,2)=w;

h(1,3)=w+v*exp(-1i*k);

h(2,4)=w+v*exp(-1i*k);

h(3,4)=w;

H=h+h’;

g(2,1)=v;

g(4,3)=v;

matrix=kron(eye(N),H)+kron(diag(ones(1,N-1),1),g)+kron(diag(ones(1,N-1),-1),g‘);

E(ii,:)=eig(matrix)

end

plot(y,E,’k‘)

xlim([-pi,pi])

結果如下:

w=2,v=1時,

2D SSH模型的能帶圖和邊緣態

w=1,v=2時,

2D SSH模型的能帶圖和邊緣態

標簽: pi  II  EXP  1i  jj