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

📄 beam propagation.m

📁 当波导和介质偶合时,计算波传导过程中的透过率,反射率.
💻 M
字号:
delta=0.01 ;
lamda=0.86  ;
npml=20  ;
delz=0.13;
nref=[3.24*ones(120,1);3.6*ones(20,1);3.24*ones(120,1)] ;
%plot(abs(V0(:,238)))
nsize=size(nref) ;
N=nsize(1) ;
ndia=eye(N,N) ;

[V0,d0,neff0] =fdmte(nref,delta,lamda,npml) ;
[pexp0,nexp0,s0]=ex(V0,d0,N,delz)  ;
a0=V0(:,238) ;

nref=[1.85*ones(120,1);1.85*ones(20,1);1.85*ones(120,1)] ;
[V1,d1,neff1] =fdmte(nref,delta,lamda,npml) ;
[pexp1,nexp1,s1]=ex(V1,d1,N,delz/2);

nref=[1*ones(120,1);1*ones(20,1);1*ones(120,1)] ;
[V2,d2,neff2] =fdmte(nref,delta,lamda,npml) ;
[pexp2,nexp2,s2]=ex(V2,d2,N,delz);

m0=[[ndia ndia]; [s1\s0 (-s1\s0)]] ;
m2=[[ndia ndia]; [s1\s2 (-s1\s2)]] ;
m1=[[pexp1 nexp1]; [pexp1 (-nexp1)]] ;
m11=[[nexp1 pexp1]; [nexp1 (-pexp1)]] ;

m=m0\(m11*(m1\m2)) ;

a=m(1:N,1:N) ;
c=m(N+1:N+N,1:N) ;
a2=a\a0 ;
b0=c*a2 ;

pi=abs(a0'*s0*a0) ;
pr=abs(b0'*s0*b0)/abs(pi);
pt=abs(a2'*s2*a2)/abs(pi);

graph(:,1)=a2 ;
for i=2:50 
    graph(:,i)=pexp2*graph(:,i-1) ;
end

graph(:,50+1)=b0 ;
for i=50+2:200
    graph(:,i)=pexp0*graph(:,i-1) ;
end    

mesh(abs(graph));
view([0,90]) ;

⌨️ 快捷键说明

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