分享

一篇文章入门时域有限差分方法(FDTD)

 多物理场仿真 2022-03-22

时域有限差分(Finite Difference Time Domain简称FDTD)由美籍华人Yee于1966年提出,是求解Maxwell方程的一种方法,其核心思想是将求解空间离散成笛卡尔坐标上的长方体网状结构,其中每个点赋值电场和磁场,随着时间变化每个点以蛙跳形式交替更新电场和磁场,从本质上讲,FDTD是对电磁场问题的最原始最完善的模拟,具有非常广泛的适用性。

不同于有限元方法,该方法只需要对求解空间划分结构化网格,不需要对对象划分网格,不需要求解线性方程组,不需要复杂导出方程,适合计算程序实现,非常容易应用并行计算。但由于FDTD计算量巨大,导致其方法提出后应用发展缓慢,最近一二十年,由于计算机硬件快速发展,尤其是多核多线程,GPU计算,分布式计算应用,使得FDTD可用于计算量大的实际工程。Navida 的CUDA计算案例里甚至有专门针对FDTD的例子。

之前简单介绍了计算电磁学,这里首先介绍一下数学基础理论知识。

基础介绍

在积分微分公式中我们经常看到倒三角符号 ▽,叫做哈密顿算子,这是一个常用算子,读作del,表示在空间xyz各方向上的全微分,另一个是  ▽·▽=▽2=△,△称为拉普拉斯算子。

梯度: ▽u

散度: ·A   

旋度: ▽×A  

电磁场本构方程为麦克斯韦方程

以上四个方程构成了麦克斯韦方程组。

其中E为电场强度,H为磁感应强度,B为磁通量密度,J为电流密度。

通常说的磁生电,电生磁,麦克斯韦方程准确描述为:

1.电场的散度跟这点的电荷密度成正比;

2.感生电场的旋度等于磁感应强度的变化率;

3.磁场的散度处处为0;

4.感生磁场的旋度等于电流密度和电场强度变化率之和

FDTD的Cell(元胞)结构

FDTD的核心思想是将求解空间离散成笛卡尔坐标上的长方体网状结构,下图(图3)是网状结构中的一个单元,一个非常典型的三维Yee元胞结构,又叫Yee网格。

FDTD的Cell

1.靠近远点的坐标为i,j,k,对角坐标则为i+1,j+1,k+1。

2.在这个长方体上,我们将其分为八个等分长方体,长方体的每条边的中点存放磁场分量,面上的中点存放电场分量。当到下一个长方体时,则反过来:边的中点存放电场分量,面的中点存放磁场分量,以此类推。由上图可以看到:每一个电场矢量都被四个磁场矢量环绕;每个磁场矢量被四个电场所环绕,类似磁场的旋度。

3.FDTD算法在离散的时间瞬间取样和计算场值,电场和磁场取样计算并不在同一时刻。对时间步长t,电场取样时间为0,1t,2t,3t,磁场取样时刻为0.5t,1.5t,2.5t,3.5t,两者之间相差半个时间步长。

4.对于求解区域内不同介质的对象(介电常数,磁导率,电导率等),也分布在FDTD的整个网格节点上。

从以上描述可知,FDTD是一种在时间上迭代的差分方法,在给定的时间上,更新网格节点上电场,磁场,不需要对对象划分网格,也不需要求解线性方程组。

几个核心问题:

1. 如何确定网格大小;

2. 如何确定迭代时间步长;

3. 边界条件如何设置;

4. 如何设置激励

1. 如何确定网格大小;

FDTD的网格,我们通常用Grid,表示是对空间的离散,而非对物体本身的离散,对空间划分网格比划分物体几何要简单,这是差分法和有限元法最显著的一个区别。FDTD差分格式所能模拟的最小尺寸为一个网格,对于小于一个网格的尺寸,需要近似成一个网格,但是存在的问题是在细小几何,比如圆孔,曲面曲线,缝隙等结构物体时,计算误差会比较大,如果全体加密网格,网格单元数和计算量也会快速增加。通常的办法是在这些细小几何的地方,采用局部加密的方式,如图1所示。

通常情况下,FDTD离散网格的大小和波长有关,应满足条件网格尺寸小于计算区域内最小波长的0.1倍。网格加密尺寸需要更加几何和波长动态确定。

2. 如何确定迭代时间步长;

利用波矢量和频率的色散关系,可以求出空间和时间间隔之间应该满足的关系,该关系称为Courant稳定性条件。对于一维,时间间隔必须小于等于波以光速通过一个Yee网格所需的时间,二维和三维,时间间隔必须小于等于波以光速通过一个Yee网格对角线的1/3(三维)或者1/2(二维)所需要的时间。而对于数值色散,时间间隔要取得更小。

3. 边界条件如何设置

许多电磁场边值问题都包含了无限大的空间范围,例如天线设计,电磁散射,电磁传播等。求解的一大困难是无法存储无限空间的网格数据,需要采取一定措施将无限大空间问题转成有限空间问题,通常的做法是设置人工的边界,将无限大区域截断,构造出一个有限的空间区域,这个区域包含了要求解的对象,激励源等,同时需要在人工边界上接入一定的边界条件。使得电磁波在这些边界上与无限大空间一样无条件地向外传播,这些边界条件称为吸收边界条件。解决问题的关键是获得合适的吸收边界条件,其中早期比较典型的是Mur吸收边界条件

完全匹配层,通过在截断边界处附加匹配的有耗材料来实现。在实际三维电磁场中,电磁波会以不同角度入射到截断边界上,要使所有入射波都能够无反射地进入到有耗媒质中比较困难。完全匹配层吸收边界通过场分裂法和单轴媒质两种方法实现。

4. 激励源

在电磁仿真软件中,需要设置激励源,也就是通常所说的类似Port端口的概念。FDTD常用的激励源有:时谐场源;脉冲源,包括常见的高斯脉冲,升余弦脉冲,截断三正/余弦脉冲,调制高斯脉冲,双指数脉冲。

利用FDTD计算还会涉及到近远场转化,色散模型,并行计算,S参数计算等一系列问题,后面介绍天线,矩量法等再介绍相关话题。

FDTD软件

由于FDTD原理相对简单,开源和商用的软件都比较多,开源的FDTD++, Meep,OpenEMS,商用的GEMS, xFDTD,FDTDSolution,国内的有EastFDTD。

最后用一个简单的C++ 程序演示了二维FDTD求解流程,包含网格生成,电磁场更新,设置吸收边界,激励等基本元素。

需要可到  多物理场仿真技术 技术博客下载。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多