Photonics – Chinese

Photonics – Chinese

圆偏振光下求相位变化

    • 1766756937
      Subscriber

      各位老师,同学好。我建立了圆偏振光求相位随着矩阵快角度变化的关系图。以下是我设立的结构,

    • Guilin Sun
      Ansys Employee
      你在用脚本前,可能需要:

      1: 学习如何使用平面波和PML,一般情况平面波不能用PML,必须用周期边界,也就是周期结构

      2:圆偏振光如何计算位相?你有数学表示式吗? 仅仅用一个术语无法进一步工作。

      3:你的结构是悬空的吗? 是否有基底?

      关于扫描,请参见 Parameter sweep utility
    • 1766756937
      Subscriber
      您好,谢谢您的解答!1.我使用两个线偏振光来组成圆偏振光,我设计的是超透镜的单元结构,xy是周期性,z方向pml.
      2.圆偏振光来计算相位,是要结合正交偏振态,我有用S分析组来计算。以下是我计算单个旋转角度求相位的脚本:
      sname = "s_param";
      # Run simulation with x-polarized source (E_x)
      switchtolayout;
      setnamed(sname,"polarization angle",0);
      run;
      S_pol = getresult(sname,"S_polarization");
      f = S_pol.f;
      S21_x= S_pol.S21_Gn; # size = [length(f),2] (First column: s(y)-polarization component, second colum: p(x)-polarization component)
      # Run simulation with y-polarized source (E_y)
      switchtolayout;
      setnamed(sname,"polarization angle",90);
      run;
      S_pol = getresult(sname,"S_polarization");
      S21_y= S_pol.S21_Gn;
      # Construct the response to an LCP and RCP input: E_R = (E_x - 1i*E_y)/sqrt(2), E_L = (E_x + 1i*E_y)/sqrt(2)
      S21_L = (S21_x + 1i*S21_y)/sqrt(2);
      S21_R = (S21_x - 1i*S21_y)/sqrt(2);
      # Extract the LCP and RCP components in S21_L and S21_R
      S21_LR = (S21_R(:,2) + 1i*S21_R(:,1))/sqrt(2); # RCP input --> LCP output
      S21_RR = (S21_R(:,2) - 1i*S21_R(:,1))/sqrt(2); # RCP input --> RCP output
      S21_LL = (S21_L(:,2) + 1i*S21_L(:,1))/sqrt(2); # LCP input --> LCP output
      S21_RL = (S21_L(:,2) - 1i*S21_L(:,1))/sqrt(2); # LCP input --> RCP output
      # plot result
      plot(f/1e12,unwrap(angle(S21_LR)-angle(S21_LR(1))),"Frequency (THz)","Phase (rad)","","linewidth=2");
      可我计算出来的相位一直为0,
      3.我的结构基地是SiO2,上面一层Au膜,然后Au膜挖空一个长方体,我计算的是那个长方体的旋转角度的。
      还有一个问题:就是我的S分析组监视器是否得换成点监视器来查看相位。
    • Guilin Sun
      Ansys Employee
      脚本看起来没有问题,但是你的仿真设置有问题,而且之前我问你的你没有答复,所以不好回复。
      XY是周期的,说明你在仿真单元(长方体)而不是器件(超透镜);但是图中显示你用的是PML边界。
      如果结果有问题,那就要一步一步追溯,S 21有没有问题?如果S21的X或者Y几乎为零,结果就有可能出现你说的情况,当然还有可能是其它原因。最主要的可能是你的结构了,结构是需要优化的。有基底没有,仿真结束场是否彻底衰减了?透射率有没有问题,选择的衍射级是否正确,等等。
    • 1766756937
      Subscriber
      谢谢您的解答!您说的没有答复的问题,是圆偏振光计算相位的公式吗?我刚开始接触,所以没有计算的公式。
      1,非常抱歉我发的的结构没有改,
      2.因为我的光是从+z打到-z,所以我看S12,您说的X或者Y为0,我可能没有理解,

      3.我的结构有基地,SiO2为基地. 您说的(1)仿真结束场是否彻底衰减了?从哪里看呢?(2)选择的衍射级是否正确,怎么看才是正确呢?
    • Guilin Sun
      Ansys Employee
      A2: 你的脚本里有这个  s(y)-polarization component, second colum: p(x)-polarization component

      S12的位相有吗?特别是有虚部吗?

      (1)仿真结束场是否彻底衰减了?请查看log 文件, autoshutofff 的值是否达到FDTD Advanced那里设置的最小值

      你的结构哪个衍射级最强?

      我的建议是你将S12显示出来,看看有无异常。查找问题就需要一步一步倒找,把中间结果显示出来。

      请阅读里面的脚本文件,看看每个脚本是怎么工作的,不知道的话请参考这个查找其说明: Ansys Insight: Lumerical脚本命令Script列
    • 1766756937
      Subscriber
      您好,
      1您一个说的s(y)和p(x)是组成圆偏振的两个线偏振吗?我在脚本中有提到,执行了两个文件.
      S12的位相和虚部都有:
      2.仿真结束场彻底衰减了,您说的哪个结构的衍射级数最大,我刚学习FDTD,对这一个知识点还没有了解。
      3.我直接用angle1=angle(S12_LR);来查看相位可以吗?
    • Guilin Sun
      Ansys Employee


      比较要计算圆偏振的量



      你可以自己从理论上推导一下,什么情况下这两个式子的结果相等?如果不相等不可能没有位相差。这个你需要琢磨一下。

      请学习一下衍射分析: Ansys Insight: 关于光栅衍射级及其计算

      可以使用angle1=angle(S12_LR);来查看相位。  
Viewing 7 reply threads
  • You must be logged in to reply to this topic.