




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、时域有限差分法对平面TE波的MATLAB仿真姓名:王云璐 学号:2011302021(西北工业大学 电子信息学院 08041103,陕西 西安,710072)摘要:本文分析FDTD算法的基本原理及两种典型边界条件的算法特点,通过MATLAB程序对TE波进行了仿真,模拟了高斯制下完全匹配层中磁场分量瞬态分布。得到了相应的磁场幅值效果图。最后得出用Matlab语言对FDTD算法编程的几点结论。关键词:FDTD;MATLAB;PML;平面TE波1引言 电磁场的有限差分一般是在时域上进行的,随着计算机技术的发展和应用,近年来,时域计算方法越来越受到重视。时域有限差分法具有简单、结果直观、网格剖分简单等
2、优点。近些年FDTD发展的十分迅速,在许多方面都有重要应用,包括天线设计,微波电路设计,电磁兼容分析,电磁散射计算,光子学应用等等。时域有限差分(FDTD)算法是K.S.Yee于1966年提出的直接对麦克斯韦方程作差分处理,用来解决电磁脉冲在电磁介质中传播和反射问题的算法。基本思想是:FDTD计算域空间节点采用Yee元胞的方法,同时电场和磁场节点空间与时间上都采用交错抽样;把整个计算域划分成包括散射体的总场区以及只有反射波的散射场区,这两个区域是以连接边界相连接,最外边是采用特殊的吸收边界,同时在这两个边界之间有个输出边界,用于近、远场转换;在连接边界上采用连接边界条件加入入射波,从而使得入射
3、波限制在总场区域;在吸收边界上采用吸收边界条件,尽量消除反射波在吸收边界上的非物理性反射波。本文主要简述了FDTD算法的基本原理,解的稳定性以及边界条件特点,并用Matlab语言进行对平面TE波进行了编程计算。2FDTD基本原理时域有限差分法的主要思想是把Maxwell方程在空间、时间上离散化,用差分方程代替一阶偏微分方程,求解差分方程组,从而得出各网格单元的场值。FDTD空间网格单元上电场和磁场各分量的分布如图1所示。图1.Yee氏网格及其电磁场分量分布电场和磁场被交叉放置,电场分量位于网格单元每条棱的中心,磁场分量位于网格单元每个面的中心,每个磁场(电场)分量都有4个电场(磁场)分量环绕。
4、这样不仅保证了介质分界面上切向场分量的连续性条件得到自然满足,而且还允许旋度方程在空间上进行中心差分运算,同时也满足了法拉第电磁感应定律和安培环路积分定律,也可以很恰当地模拟电磁波的实际传播过程。3解的稳定性FDTD方程是一种显式差分方程,在执行时,存在一个重要的问题:即算法的稳定性问题。这种不稳定性表现为在解显式方程时,随着时间步数的继续增加,计算结果也将无限制地增加。Taflove等于1975年对Yee氏差分格式的稳定性进行了讨论,并导出了对时间步长的限制条件。数值解是否稳定主要取决于时间步长与空间步长、的关系。对于非均匀媒质构成的计算空间选用如下的稳定性条件: (1)(1)式是空间和时间
5、离散之间应当满足的关系,又称为Courant稳定性条件。若采用均匀立方体网格: (2)其中,为计算空间中的电磁波的最大速度。4 FDTD算法的几个边界条件边界条件是对FDTD算法应用的另外一个关键问题。时域有限差分法是在计算机的数据存储空间中对连续的实际电磁波的传播过程在时间按空进程上进行数字模拟。在计算电磁场的辐射、散射等问题中,边界总是开放的,电磁场从实际的角度看总是占据无限大空间,由于计算机内存总是有限的,只能模拟有限的空间。也就是说,时域有限差分网格将在某处被截断。如何处理截断边界,使之需要考虑的无限空间的差异尽量的小,这是FDTD算法要解决的重要问题。在当今FDTD算法中,涉及到的边
6、界条件主要有Mur吸收边界条件、廖氏吸收边界条件、超吸收边界条件、完全匹配层(PML),在本文中主要介绍Mur吸收边界条件和完全匹配层(PML)。4.1Mur吸收边界条件其具体推导过程可参考文献4,递推公式如下一阶条件下的递推公式 (3)二阶条件下Mur的FDTD递推公式 (4)这就是Mur所建议的具有二阶近似的、适用于二维问题的近似吸收边界条件。它在FDTD中有着广泛的应用。4.2PML吸收边界条件1994年,Berengert提出了用完全匹配(PML)来吸收外向电磁波,它将电磁场分量在吸收边界分裂,并能分别对各个分裂的场分量赋予不同的损耗。完全匹配层是一种非物理性的电磁波吸收层,有关性质和
7、在具体条件下PML格式的FDTD递推公式见文献5,本文采用PML吸收边界条件。5 MATLAB的仿真程序及结果5.1MATLAB程序及相应说明%二维FDTDTE波仿真Clear all;%定义常数pi=3.1415;c=3.0e10;%高斯制下光速f=1.0e15;%频率lambda=c/f;%波长nmax=400;%时间步数del_s=lambda/20;%每最小波长20个采样点del_t=0.5*del_s/c;%迭代时间步长n=182;%真空区域网格数np=9;%pml层数N1=n+2*np;%总网格数N=N1+1;%采样点数M=4;%导电率渐变指数sigma_max=(M+1)/1.5
8、0/pi/del_s;%最大导电率%TE波的分量初始化tic;figure(1);axis(0N0N-0.50.5);Ex=zeros(N1,N);%x方向为横向,采样点为网格的横向边,故行数+1Ey=zeros(N,N1);%y方向为纵向,采样点为网格的纵向边,故列数+1Bz=zeros(N1,N1);%矩阵行为纵向网格数,矩阵列为横向网格数,循环中用j表示行数,i表示列数Bzx=zeros(N1,N1);Bzy=zeros(N1,N1);Bzxx=zeros(nmax,2);%进入电磁场迭代计算fortt=1:nmaxfori=1:N1ifi>=np+1&&i<
9、=N1-npdi=0;elseifi<=npdi=np-i+0.5;elseifi>=N1-np+1di=np+i-N1-0.5;end%di是采样点横向距PML内边界的距离sigma_mx=sigma_max*(di/np)M;forj=1:N1ifj>=np+1&&j<=N1-npdj=0;elseifj<=npdj=np-j+0.5;elseifj>=N1-np+1dj=np+j-N1-0.5;end%dj是采样点纵向距PML内边界的距离sigma_my=sigma_max*(dj/np)M;ifsigma_mx+sigma_my=0%
10、真空区ifj=100&&i=100t=30;%可选择高斯脉冲term=(tt-t);pulse=exp(-4*pi*term2/202);pulse=sin(2*pi*tt/40);%可选正弦时谐源c_miu=c*del_t/del_s;Eterm1=c_miu*(Ex(i,j+1)-Ex(i,j);Eterm2=c_miu*(Ey(i+1,j)-Ey(i,j);Bz(i,j)=Bz(i,j)+Eterm1-Eterm2+pulse;%加入脉冲源elsec_miu=c*del_t/del_s;Eterm1=c_miu*(Ex(i,j+1)-Ex(i,j);Eterm2=c_mi
11、u*(Ey(i+1,j)-Ey(i,j);Bz(i,j)=Bz(i,j)+Eterm1-Eterm2;endelse%PML区cpm=(1-2*c*sigma_mx*del_t)/(1+2*c*sigma_mx*del_t);cqm=c*del_t/(1+2*c*sigma_mx*del_t)/del_s;Bzx(i,j)=cpm*Bzx(i,j)-cqm*(Ey(i+1,j)-Ey(i,j);cpm=(1-2*c*sigma_my*del_t)/(1+2*c*sigma_my*del_t);cqm=c*del_t/(1+2*c*sigma_my*del_t)/del_s;Bzy(i,j)=c
12、pm*Bzy(i,j)+cqm*(Ex(i,j+1)-Ex(i,j);Bz(i,j)=Bzx(i,j)+Bzy(i,j);endendendfori=2:N1ifi>=np+1&&i<=N1-npdi=0;elseifi<=npdi=np-i+1;elseifi>=N1-np+1di=np+i-N1-1;end%di是采样点横向距PML内边界的距离sigma_ex=sigma_max*(di/np)M;forj=1:N1cam=(1-2*c*sigma_ex*del_t)/(1+2*c*sigma_ex*del_t);cbm=c*del_t/(1+2*c
13、*sigma_ex*del_t)/del_s;Ey(i,j)=cam*Ey(i,j)-cbm*(Bz(i,j)-Bz(i-1,j);endendfori=1:N1forj=2:N1ifj>=np+1&&j<=N1-npdj=0;elseifj<=npdj=np-j+1;elseifj>=N1-np+1dj=np+j-N1-1;end%dj是采样点纵向距PML内边界的距离sigma_ey=sigma_max*(dj/np)M;cam=(1-2*c*sigma_ey*del_t)/(1+2*c*sigma_ey*del_t);cbm=c*del_t/(1+2
14、*c*sigma_ey*del_t)/del_s;Ex(i,j)=cam*Ex(i,j)+cbm*(Bz(i,j)-Bz(i,j-1);endendBzxx(tt,1)=Bz(90,50);%对靠近边界的中央磁场点采样Bzxx(tt,2)=Bz(50,90);figure(1);%可视化处理clf;mesh(Bz);%磁场的幅值axis(0N0N-0.50.5);xlabel('i')ylabel('j')drawnow;endfigure(2);%激励信号示意图plot(Bzxx);figure(3);%磁场的幅值分布图title('磁场幅值分布图
15、39;);surface(Bz);shadinginterp;axissquare;toc5.2结果图2.正弦激励下3D磁场幅值分布图图3.正弦激励信号图4.正弦激励下磁场幅值分布图图5.高斯脉冲激励下3D磁场幅值分布图图6.高斯脉冲信号图7.高斯脉冲激励下磁场幅值分布图6结束语从以上分析可以看出,FDTD方法在复杂电磁场的数值计算中是一种比较实用可行的方法,可以帮助我们更加形象准确的理解场。FDTD方法是一种计算复杂目标电磁散射数值的有效方法,FDTD法在电磁场数值分析方面有很大的优越性,而Matlab具有强大的数据处理和图形处理功能,可以快速地编出高效高质量的程序。将二者的优势有效地结合起来,可以将算法迅速程序化,并获得很好的数据处理结果,使研究者可以集中精力在FDTD方法和研究对象本身上,而只需花费少量的时间在程序的实现上。参考文献1 喻志远. MATLAB模拟的电磁学时域有限差分法M.国防工业出版社, 2012-8.2 张亮, 寇晓艳. FDTD算法的Matlab语言实现J.延安大学学报, 2009, 28(2).3A.Taylor and M.E.Brodwin.Numerical solution of steady-state EM scattering problems using
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 香港高中政治题目及答案
- 葡萄酒培训知识大全课件
- 小镇特色农业示范基地建设合同
- 2025年重庆市高考生物试卷(含答案与解析)
- 2025年重庆高考生物试题及答案详解
- 2025长期供应合作协议合同
- 萧红简介资料课件
- 2025合同续签补充协议
- 2025年4月公共营养师复习题(含答案)
- 营销礼仪知识培训总结课件
- 融资租赁测算表-2016-2
- 物流基础(中职)PPT完整全套教学课件
- 倾听与问题讲义
- 通信工程用电登高等高风险作业施工安全操作
- 邮政储汇业务员高级技师理论知识试卷
- 护理服务规范整改措施(共15篇)
- 幼儿园教育活动设计与实践 张琳主编 PPT
- 建筑施工过程中成品保护施工方案
- 西师版三年级上册数学全册教案(完整)
- 整理版第三届宁波国际海报双年展2004获奖作品选
- 关键过程(工序)和特殊过程(工序)管理办法
评论
0/150
提交评论