XFDTD 7.0 网格大小划分经验宝典
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
XFDTD 7.0网格大小划分经验宝典
学习xfdtd 很多人都搞不清楚cellsize 的大小怎么确定的,和timestep有什么关系,本人根据最近学习经验,实际总结一下他们之间的联系,希望对大家有所帮助。文档截图来自软件参考文档。其他截图为软件截图。
Timestep 的确定
首先看上图:△T也就是timestep是由上述公式得出的。但是注意的事里面的△X Y Z指的是整个空间里面最小的cell size(包含subgrid)。这点我们可以从下图的文档说明得到验证。
上图我特意圈了起来,说的就是必须是the smallest grid 来确定timestep。后面我们会有实验进行对比来说明。
最大求解频率f的确定
这个f 指的是软件本次设置能求解到的最大频率,超过这个频率解就不准确了。我们可以看出,这个最大的 f 是和△X 成反比的。其中△X是the largest grid
edge,这说明呢?也就是说空间里的最大的那个cell size 决定着本次求解的能求到的最大频率。一般这个f 是由mian grid cell 的尺寸决定的(后面由实验证明。),所有一定要注意,不要以为自己划分了更细的subgrid,想着软件就可以求得更高的频率了,这是错的,本人就吃过这亏,大家一定要记得这个是决定于the largest grid edge。
实验验证:
这里我们设置main grid cell size为1 um。注意这个size决定着最大求解频率f。
这里我们队某一个part 设置一个更细的网格,设subgrid 为50 nm。注意这个决定着timestep 大小。
上图是我们仿真开始时给的summary.其中看到:
timestep=1.17859e-16(s)。(单位我们换成秒,以和后面的matlab仿真结果对比)最大的求解频率f=29.9792 Thz=3e13HZ(1Thz=10^12 hz)。
在参数的界面我们也可以查看,相应的timestep,和summary里的一致的。
由上图summary和matlab计算可以看到:
第一:
由subgrid尺寸计算的timestep-sub-grid=9.6e-17 与仿真页面那个的summary的timestep=1.17e-16 很接近,而由maingrid 尺寸计算的timestep-mian-gird 相差较远,这也证明了我们前面说说的,timestep 的计算取决于the smallest cell size。(我们matlab计算的结果不完全和summary的相同,主要是因为系统会适当自动调整有关网格,比如在边界处等)。
第二:
由main_grid 计算出的求解频率 f =3.0e13,也就是30Thz,和我们的summary 中的29.97Thz 非常相近,而又sub-grid计算的f=6.0e14,也即600Thz 很明显软件的summary计算的相差甚大。因此我们可以证明,软件中的最大求解频率 f 取决于the largest cell edge,这里也就是main-grid。
若包含电介质材料,我们怎么设定cell size。
另外关于在电介质材料中如何设定cell size,为何求解频率会下降,如何才能得到自己想要的频率,本人也做了一定的总结:
上图是参考手册第100页的截图:文档中给了一个例子,说的就是假如你把cell size 设定为1 cm(你原本的目的是求波长=10*1cm=10 cm,f=c/波长=300GHZ),结果因为模型中了low-loss dielectric 材料,它的介电常数为4.那么你实际计算过程中必须把高斯脉冲的宽度由32timestep变成64timestep,而且最终结果的只能达到1.5GHZ。为什么是这样呢,具体我也不知道,它给的理由是电介质材料中波长会变短,具体xfdtd是按照怎么计算的我也没有理清楚。我是这样理解的,我们一开始设置的cell size =1cm,实际软件是按照物质中实际波长来换算的,也就是软件认为物质中的波长L=10*cell size=10cm。因为物质中波长实际上至有真空中波长的1/2(由上面的公式得到),所有软件会认为实际你感兴趣的波长为2*L=20cm,也即15Ghz,后面如果你用高斯波进行激励的时候,必须要包括15GHZ 啊,所有你必须调整你的width,假设一开始没有dielectric的时候,一般去32*timestep,这种情况下高斯波可以涵盖到30GHZ(也是我们初始假设想求的),现在因为只能求道15GHZ,所有高斯波的width必须调整,为了使其往低频移动,
那么必须加宽width,所有变成了64*timestep。当然最终的结果的准确范围也只能达到15GHZ.
以上是我的这个文档的剖析,很多同学一开始都理不清,其实我也是,其实我们并不关心怎么变啊变,我们只关心即使在dielectric中,我还是想达到求解到3GHZ,那么我们该如何选取cell size 和width,下面我就我的理解给大家一个思路。
上图是截图参考文献的234页。红色框框内容告诉我们,maximum cell size 必须由wavelength in the material 来确定,这也就是说,一开始在计算前,你心中要先有个你想达到的频率,然后再根据其波长在实际物质中的传播的波长来设定cell size。举个例子:
我们还是按照上面的例子,假设我们的geometry中就包含了permittivity=4的材料,我们的目的就是求解到f=3GHZ.那么我们该如何设置cell size和高斯波的width呢。我的思路如下:
所有f=3Ghz 的波长了L=10cm,那么其在物质中的波长为5cm,那么我们的cell size 应该照5cm的1/10来确定,也即0.5cm。在设置高斯波的width中一般设置为32*timestep,这里的timestep事按照0.5cm计算得到的(参考前面讲的timestep的计算),那么如何还按照32的话,实际上这个高斯波包含了6GHZ了,为什么呢,实际你想想如果不考虑permittivity,那么我们设定的0.5cm实际上求的就是6GHZ的频率,而现在我们想要的事3GHZ的频率,那么是不是相当于高斯波往低频移动,相应的其width是不是应该加宽了,这样我们必须把width由