有效折射率

ZephyrZephyr Member Posts: 2

您好,在FDTD中有没有计算有效折射率n_eff的例子?如果有,是根据反射率和透射率计算的吗?

Answers

  • gsungsun Posts: 579Ansys Employee

    有效折射率n_eff是指的波导结构还是超材料周期结构?

    如果是波导光源,你可以用User Select:

    点击Select Mode后就可以看到FDE的计算窗口,然后计算模式即可。


    如果是超材料,请参考这个例子 https://support.lumerical.com/hc/en-us/articles/360042097393-Metamaterial-parameter-extraction-Smith

  • ZephyrZephyr Posts: 11Member

    谢谢您的答复,我的结构是超材料周期结构。应该利用S参数计算等效折射率。

  • gsungsun Posts: 579Ansys Employee

    好的,请适当修改超材料分析组设置。

  • ZephyrZephyr Posts: 11Member

    老师你好,我看s参数分析组,反射率监视器放在光源前面,这是为什么呢?另外我也看到有一个案例,利用s参数分析组时,反射率监视器放在了光源的后面,有些不解。

  • gsungsun Posts: 579Ansys Employee

    放在光源背面最直接,但是有些情况为了得到更准确的结果,也可以仿真光源与结构之间.参见 Ansys Insight: 如果反射监视器位于光源与结构之间如何得到正确的反射率

  • ZephyrZephyr Posts: 11Member

    好的,看了您的回复,了解了原理。想问一下,如图,我根据s参数分析组提取的s参数计算的等效折射率实部呈锯齿状且有正有负。


    我将有效折射率添加为sampled 3D data材料时,提示说折射率有负数,会将其转化为正数,这样就不对了吧。看案例是说将其添加为 magnetic electric Lorentz (MEL) model,这个模型不是根据折射率添加的,那请问提取的有效折射率该如何使用呢?谢谢老师,有劳了!

  • gsungsun Posts: 579Ansys Employee

    锯齿状问题是因为反对数、余弦函数计算那里出了问题,请你把每一个变量都在分析组里画出来看看哪里出了问题。标准脚本仅对大多数情况适用,有些情况需要反复查找问题,可能要修改具体算法,也就是复平面选哪个象限的结果才合适;甚至需要采用其它的处理方法。Smith方法是最早的,后来又有好几个不同的算法,你可以找文献看看。

    sampled 3D data材料不能添加负折射率,需要使用Magnetic-electric 材料模型才可以实现负折射率,参见Smith例子中的反算。

    至于提取的有效折射率怎么使用,我个人看法不可以单独使用,比如曾经有人用这种等效折射率去设计特殊的结构,他们忘记了这种等效折射率是通过超材料结构得到的一种描述,不是真实的可以用于任意形状的材料。这个问题你可以琢磨一下。

  • ZephyrZephyr Posts: 11Member

    S参数如上图。另外,我提取S参数只是将其添加到长方体结构中做预测结果使用,并非想要设计一个任意的结构。我这个结构是是一块矩形聚合物里面有很多纳米级的空气小孔,不知道这种算法是否合适。

  • gsungsun Posts: 579Ansys Employee

    一般S参数并不是大问题,除非仿真时间不够长或者要发散了结果不对。主要的问题是从S参数计算等效折射率时的反对数计算以及过程中参数开方取复平面内哪个Branch的问题。示例脚本中的判断语句对该例子工作,不一定对每个器件都工作。就是这几句

    x = 1/(2*S21)*(1-S11^2+S21^2);

    n1 = (-1i*log( x+1i*sqrt(1-x^2) ) ) / (k*d);

    n2 = (-1i*log( x-1i*sqrt(1-x^2) ) ) / (k*d);

    n_eff = (imag(n1) >= 0)*n1 + (imag(n1) < 0)*n2;

    比如,1/(2*S21)与Conj(S21)/(2*abs(S21)^2) 可能给出不同的结果,这是复函数做除法、开方等情况下的特殊问题。请检查,此外还要从有无可能出现增益、阻抗的变化等判断。

  • ZephyrZephyr Posts: 11Member

    老师,我明白您的意思了。这是算法取哪个象限的问题,但我提取的有效折射率(上图)计算结果的虚部跟材料本身折射率的虚部相差无几(包括曲线形状和数值大小),但实部就差别很大,不仅呈锯齿状而且数值上差别也很大(材料本身在1.4左右),这种虚部正确实部错误的问题也是由于取哪个象限造成的吗?

  • gsungsun Posts: 579Ansys Employee

    锯齿状一般是由于位相变化引起的,所以需要分别提取不同的参数看看结果是否光滑,锯齿形状是从哪个参数或者哪部分计算引起的,需要耐心分析。到底是由神因素造成的需要多分析,也可以采用其它算法,Smith算法不一定适合所有情况。请斟酌。

  • ZephyrZephyr Posts: 11Member

    好的,谢谢老师的耐心解答。我仔细分析一下原因。

  • gsungsun Posts: 579Ansys Employee

    这种仿真的后处理是一个关键,需要不少工作,请耐心。

  • ZephyrZephyr Posts: 11Member

    老师,我在其他地方了解到的S参数反演,如图:

    这里在反余弦函数中,多了一个2πm,这里的m代表什么呢?是多少个2π相位吗?不过我的结构的宽度是入射光波长的4~5倍,是不是因为没考虑这一项导致实部呈锯齿状?毕竟实部与相位有关。另外,能简单的跟我说一下,为什么咱们的反余弦计算转化成了对数函数吗,fdtd不能直接计算反余弦吗?我将提取的S参数放在matlab中直接进行的是反余弦计算,结果也是一致的。所以反余弦函数为什么要转化为对数函数?

  • gsungsun Posts: 579Ansys Employee

    这个是理论问题原则上应该参考原文,不在技术支持范畴。不过我可以根据我的理解简单答复:

    这是考虑到了位相超过360度时的情况。m代表整数,在不同波段看需要选取不同的m来解决你的问题,即锯齿形的变化。我的建议是分段,先从第一个锯齿,段波段开始,比如长波段。如果结构不好也可以从段波段开始。因为一般缺省的记录是频率,从低频率开始可能合适。

    另外一个基本问题:你确认提取的是零级衍射波,不是直接用的近场吗? 会不会有高级衍射?仿真时间是否足够保证频域结果正确?直接算反余弦最容易出现360度的位相问题。转换为对数也是为了避免这个问题,你也可以大致估计一下这个波段内位相变化是不是有超过360度?请把S参数的位相画出来看看。如果S参数本身就有超过360度的位相,也可能你需要做更多的后处理工作。

  • ZephyrZephyr Posts: 11Member

    知道了,谢谢老师。S21的相位变化确实超过了2π,甚至有好几个2π。我仔细斟酌处理一下。

    最后,再次谢谢您的耐心解答。

  • gsungsun Posts: 579Ansys Employee

    好的,慢慢来吧,在创新的道路上总会遇到各种问题。

Sign In or Register to comment.