关于不同区域使用不同的mesh大小


#1

如果设置simulation region的一部分为一种网格划分,另一部分为另一种网格划分,这样运行之后FDTD的grid划分好像是按照更小的网格划分那个来的?(我用getresult(“FDTD”,“x”)得到的),然后在两种网格的部分分别放一个monitor,然后用getdata(“monitor”,x),两种monitor得到的是一样的。

这么说来它在计算的时候直接按照更小的网格划分来做了吗?还是说还是两边不同划分,只是最后取结果的时候取的更小的划分来表示?


#2

应该取跟小的网格
左边是0.8
右边网格是0.02 (xyzfangx)
有一点交叉,但是显示的网格更细。



#3

mesh 还是是渐变的


#4

对,而且很奇怪的是尖角左边没有重叠的部分也是渐变的!!(话说你下面这个看网格的图是怎么看的?)

而且你看FDTD中的grid,即用getresult(“FDTD”,“x”)得到的值应该是以0.02增长的,然后如果你在两边分别放一个monitor,用getdata(“monitor”,x)得到的结果也是以0.02增长的!

当时我的问题其实是,即使不重叠,也会出现我第二段说的情况,所以我想问这时候的网格划分是不是就按照更小的来?那加几个不重叠的mesh区域还有什么用?


#5

Hi @leimi,

你好。根据我的测试,网格是不同的,监视器得到的增值也是不同的。你的FDTD背景网格设置是多少呢?有没有可能背景网格override了其他添加的网格所以你看起来结果才是一样的?我的测试文件test.fsp (3.4 MB),你可以看一下。

那个看网格的图是加了一个index监视器,你直接可以放大看边界的网格变化,但是结构要有一定的斜角度,不然就看不到网格的效果了。


#6

嗯,谢谢你的解答,可能就是背景网格的影响,我还有几个问题

  1. 背景网格的设置是mesh setting 里面的mesh accuracy吗?所以我无法定量的确定背景网格的宽度?而只能定性的定义这个mesh accuracy是多少么?

  2. 是背景网格跟mesh区域同时存在的时候就取更小吗?

  3. 我看了一下y方向的mesh size 好像比设置的0.01微米和0.02微米都小,大概是4微米,然后FDTD背景网格是6微米,所以我不知道这个网格划分到底遵从什么原则?


#7

Hi @leimi,

针对你的问题:

1.背景网格是solver里面设置的mesh accuracy,宽度可以用ruler量一下,具体的方法可以参考 Getting the mesh size 这个网页。如果你设置了光源的话(仿真的波长范围),我没记错的话,mesh accuracy 1是1/10最小波长,然后mesh accuracy 2是1/14最小波长,以此类推。

2.如果添加mesh-override,就会覆盖背景网格了,所以你可以选择粗化或者细化网格。如果同时添加了几个mesh,重叠的部分是会以最小的为准。

3.原则就是上面说的,但是注意网格的变化从一个精度到下一个精度是渐变的,所以有时候看起来不是很直观。

希望可以帮到你 :slight_smile:


#8

好的,非常感谢你!!!


#9

1:对于电介质材料,应该记住是用材料内最短波长
3:这种渐变的比值是1.414。mesh-override的网格是均匀的,背景网格在同一种材料中也是均匀的,但是中间的过渡是非均匀的,直到网格均匀。


#10

谢谢孙博的说明 :stuck_out_tongue: