⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 npbg.m

📁 传输矩阵法模拟光子晶体的模拟程序
💻 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 + -