📄 npbg.m
字号:
%%
%% Calculation the band-gap of 1-dimensional photonic crystal
%%
%% Method: Transfer Matrix Method (TMM)
%%
%% Incidence angle is 0 (not distinguished TE(S) and TM(P))
%%
%%
%% Xu shaohui
%% xush0327@yahoo.com
clf;
clear;
fid1=fopen('npbg.inp','r');
fwave=fscanf(fid1,'%f',1);
lwave=fscanf(fid1,'%f',1);
step=fscanf(fid1,'%f',1);
aa=fscanf(fid1,'%f',1);
bb=fscanf(fid1,'%f',1);
na=fscanf(fid1,'%f',1);
nb=fscanf(fid1,'%f',1);
status=fclose(fid1);
gama=aa+bb;
deta=0.5*(nb/na+na/nb)
nn1=(na*aa+nb*bb)/gama;
nn2=(na*aa-nb*bb)/gama;
for nj=1:(1+(lwave-fwave)/step)
kk=2*pi*fwave;
total1=0.5*(deta+1)*cos(nn1*gama*kk)-0.5*(deta-1)*cos(nn2*gama*kk);
pbg(nj)=acos(total1)/pi;
inten(nj)=total1;
lam2(nj)=fwave;
fwave=fwave+step;
end
yy=[lam2;inten;pbg];
fid1=fopen('npbg.dat','w');
fprintf(fid1,'%16.8f%16.8f%16.8f\n',yy);
status=fclose(fid1);
subplot(2,1,1);
plot(lam2,inten)
subplot(2,1,2);
plot(pbg,lam2)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -