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

📄 lightpoint.m

📁 利用电磁场的源激发方法来计算近场FDTD模拟点光源空间传播,用Matlab编写
💻 M
字号:
clear;
ez(1:300,1:300)=0;
hx(1:300,1:300)=0;
hy(1:300,1:300)=0;
eu(1:300)=0;
er(1:300)=0;
ed(1:300)=0;
el(1:300)=0;
for n=1:1000
   n
   ez(150,150)=sin(n/10.0)+ez(150,150);%Point light source
   
   %FDTD
      hx(1:300,2:300)=hx(1:300,2:300)-1/376.73/5*(ez(1:300,2:300)-ez(1:300,1:299));
      hy(2:300,1:300)=hy(2:300,1:300)+1/376.73/5*(ez(2:300,1:300)-ez(1:299,1:300));
        eu=ez(1:300,2:2);
        ed=ez(1:300,299:299);
        el=ez(2:2,1:300);
        er=ez(299:299,1:300);
     ez(2:299,2:299)=ez(2:299,2:299)+376.73/5*(-hx(2:299,3:300)+hx(2:299,2:299)+hy(3:300,2:299)-hy(2:299,2:299));
          
   %Absorb boundary of first order
    ez(2:299,1:1)=eu(2:299)-2/3*(ez(2:299,2:2)-ez(2:299,1:1));
    ez(2:299,300:300)=ed(2:299)-2/3*(ez(2:299,299:299)-ez(2:299,300));
    ez(1:1,2:299)=el(2:299)-2/3*(ez(2:2,2:299)-ez(1,2:299));
    ez(300:300,2:299)=er(2:299)-2/3*(ez(299,2:299)-ez(300,2:299));
       
   %Absorb boundary of second order
   ez(2:299,1)=ez(2:299,1)+(hy(3:300,1)+hy(3:300,2)-hy(2:299,1)-hy(2:299,2))/12/376.73;
   ez(2:299,300)=ez(2:299,300)-(hy(3:300,300)+hy(3:300,299)-hy(2:299,300)-hy(2:299,299))/12/376.73;
   ez(1,2:299)=ez(1,2:299)-(hx(1,3:300)+hx(2,3:300)-hx(1,2:299)-hx(2,2:299))/12/376.73;
   ez(300,2:299)=ez(300,2:299)+(hx(300,3:300)+hx(299,3:300)-hx(300,2:299)-hx(299,2:299))/12/376.73;
   
   
   %four corner
    ez(1,1)=eu(2)-1.214/1.614*(ez(2,2)-ez(1,1));
    ez(1,300)=ed(2)-1.214/1.614*(ez(2,299)-ez(1,300));
    ez(300,1)=eu(299)-1.214/1.614*(ez(300,2)-ez(300,1));
    ez(300,300)=ez(299)-1.214/1.614*(ez(299,299)-ez(300,300));
    
               
 end
      %Draw the result
      ez(145:155,145:155)=0;      
      figure(2);   
      mesh(abs(ez));
      view(90,90);
   

⌨️ 快捷键说明

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