⛄一、获取代码方式
获取代码方式1:
完整代码已上传我的资源:【光学】基于matlab一维光子晶体吸收率折射率透射率仿真(参数可修改)【含Matlab源码 2889期】
点击上面蓝色字体,直接付费下载,即可。
获取代码方式2:
付费专栏Matlab物理应用(初级版)
备注:
点击上面蓝色字体付费专栏Matlab物理应用(初级版),扫描上面二维码,付费29.9元订阅海神之光博客付费专栏Matlab物理应用(初级版),凭支付凭证,私信博主,可免费获得1份本博客上传CSDN资源代码(有效期为订阅日起,三天内有效);
点击CSDN资源下载链接:1份本博客上传CSDN资源代码
⛄二、部分源代码
clear all
tic
eps0=8.85e-12;
mu0=4pi1e-7;
ll=sqrt(eps0/mu0);
c=3e+8;
lamd0=800e-9;
i=sqrt(-1);
w0=2pic/lamd0;
ct0=0*pi/180;
c0=cos(ct0);
NN=5;
na=1.7;
a=142e-9;
nb=3;%(3:5.5)硅光电池
%nb=1.66;
b=200e-9;
%4lamb
n0=2.86;
% k0=0.15;
k0=0;
nd=n0+k0i;
d=500e-9;
%l=(a+b+d)NN2;
l=(a+b)2NN+d;
scta=sin(ct0)/na;
sctb=sctana/nb;
sctd=sctanb/nd;
ca=sqrt(1-sctascta);
cb=sqrt(1-sctbsctb);
cd=sqrt(1-sctd*sctd);
deltaA=(canaa/c);
deltaB=(cbnbb/c);
deltaD=(cdndd/c);
etaA=(ll*na*ca*ca);
etaB=(ll*nb*cb*cb);
etaD=(ll*nd*cd*cd);
% etaA=(llna/ca/ca);
% etaB=(llnb/cb/cb);
% etaD=(ll*nd/cd/cd);
n=1;nw(1)=nb;m=-1;k=0;
dx=0.0001;
shui=[];shuo=[];heni=[];heno=[];dw=[];ww0=[];
p=0;q=0;
for x=8/11:dx:8/3
Ma=[cos(deltaAxw0) -isin(deltaAxw0)/etaA;-ietaAsin(deltaAxw0) cos(deltaAxw0)]; %% x=w/w0
Mb=[cos(deltaBxw0) -isin(deltaBxw0)/etaB;-ietaBsin(deltaBxw0) cos(deltaBxw0)];
Md=[cos(deltaDxw0) -isin(deltaDxw0)/etaD;-ietaDsin(deltaDxw0) cos(deltaDx*w0)];
M=(Mb*Ma)NN*Md*(Mb*Ma)NN;
t=2*ll*c0/(M(1,1)*ll*c0 + M(1,2)*ll*ll*c0*c0 + M(2,1)+ ll*M(2,2));
r=(M(1,1)*ll*c0 + M(1,2)*ll*ll*c0 - M(2,1) - ll*M(2,2))/(ll*M(1,1)*c0+ ll*ll*M(1,2)*c0+M(2,1)+ll*M(2,2));
%t=2*ll/(M(1,1)*ll+M(1,2)*ll*ll+M(2,1)+ll*M(2,2));
%r=(M(1,1)*ll+M(1,2)*ll*ll-M(2,1)-ll*M(2,2))/(ll*M(1,1)+ll*ll*M(1,2)+M(2,1)+ll*M(2,2));
T=abs(t)*abs(t);
R=abs(r)*abs(r);
⛄三、运行结果
⛄四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 门云阁.MATLAB物理计算与可视化[M].清华大学出版社,2013.
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除