lineartm_g.m

来自「可以用来求复合半导体能带随着偏压的变化情况」· M 代码 · 共 27 行

M
27
字号
function linearTM_g

global ks ind kn Ny Nx E dx dy ind Hr

handle=findobj('Tag','vid');
nr=str2num(get(handle,'String'));

Em = zeros( Ny+1, Nx+1);

for n=2:Ny
  Em(n,2:Nx) = E(1+(n-2)*(Nx-1):(n-1)*(Nx-1),ind( nr))';
end

for n=2:Nx
  for m=2:Ny
    Hy(m,n) = 0.5*(Em(m,n+1)-Em(m,n-1))/dx(n);
    Hx(m,n) = 0.5*(Em(m+1,n)-Em(m-1,n))/dy(m);
 end
end
Hmax = max( max( sqrt( abs( Hx*Hy'))));

figure;  surf( Em/max(max(abs(Em))));
title(['Ez, kn = ',num2str( ks( nr))]);
figure;  quiver( Hx/Hmax, Hy/Hmax);
title(['Ht, kn = ',num2str( ks( nr))]);
figure;  quiver( Hy/Hmax, Hx/Hmax);
title(['Et, kn = ',num2str( ks( nr))]);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?