We’re putting the final touches on our new badges platform. Badge issuance remains temporarily paused, but all completions are being recorded and will be fulfilled once the platform is live. Thank you for your patience.
Photonics – Chinese

Photonics – Chinese

Topics related to Lumerical and more, in Chinese language.

如何将polarimage显示的farfield数据导出

    • zhuzhm7
      Subscriber

      老师好。我在Script中通过函数farfield3d和farfieldux以两个余弦向量为坐标显示了远场分布,即我们熟悉的image(ux,uy,data,"ux","uy","Image plot");  

      而把相同的变量导入FDTD另一个图像显示函数我们可以得到球坐标系下的投影(或者直接右键监视器也可以),

      polarimage(ux,uy,data,"ux","uy","Polar Image plot");

      现在我想在matlab中进一步分析处理polarimage中的数据,于是在想办法从软件中把这个数据导出。

      我在官网介绍中看到使用farfieldspherical和reshape进行处理,将远场图数据从ux、uy的函数变成theta、phi的函数?但这个显示看起来好像不太一样,不知道具体应该怎么操作,麻烦老师帮忙指点一下。

      theta = linspace(-90,90,10);
      phi = linspace(0,45,11);
      Theta = meshgridx(theta,phi);
      Phi = meshgridy(theta,phi);
      E2_angle = farfieldspherical(E2,ux,uy,Theta,Phi);
      E2_angle = reshape(E2_angle, [length(theta), length(phi)]);
      image(theta, phi, E2_angle, "theta","phi","E2");
    • Guilin Sun
      Ansys Employee

      你的脚本是将远场球坐标结果换算为直角坐标,当然显示的结果就与球坐标不一样了。

      你已经有远场数据,还要这么导出呢?如果想保存为Matlab格式,可以使用 matlabsave: https://optics.ansys.com/hc/en-us/articles/360034928113-matlabsave-Script-command

       

       

    • zhuzhm7
      Subscriber

      老师可能不太明白我的意思,我结合我的脚本说明一下。

      我通过脚本导出了远场数据:

      filename = currentfilename;
      farfieldMon="T_PlanCavity";
      ux = farfieldux(farfieldMon,1);
      uy = farfielduy(farfieldMon,1);
      E2_FF_1 = farfield3d(farfieldMon,1);
      matlabsave(filename, ux, uy, E2_FF_1);


      ux, uy, E2_FF_1在matlab中用imagesc()作图得到:

      而在FDTD软件中用极坐标显示查看的结果是:

      我理解的是这是一个极坐标二维图像,半径对应phi,角度对应theta。我想在matlab上显示这个极坐标二维图像。

      所以这里我想问孙老师的是,我该如何正确在matlab上显示这个结果:是应该将E2_FF_1从关于ux, uy的函数转换成关于phi和theta的函数呢,还是可以直接在ux, uy, E2_FF_1的图中画同心圆标定phi和theta?

    • Guilin Sun
      Ansys Employee

      Matlab显示的是二维直角坐标结果,你用Lumerical的image也会得到同样的结果,这就是为什么用polarimage - Script command。它不同于前者: image

      你测试一下。

    • zhuzhm7
      Subscriber

      好的孙老师,我好像明白了。我在二维坐标中画出不同偏转角φ和不同半径为sinθ的同心圆,也能表示出polarimage这种效果,对吗?

    • Guilin Sun
      Ansys Employee

      有可能吧。直角坐标和球坐标不一样,前者是矩形,后者是圆形。Matlab应该也有PolarImage之类的命令,你找找。

Viewing 5 reply threads
  • The topic ‘如何将polarimage显示的farfield数据导出’ is closed to new replies.