月度归档:2020年02月

Rsoft 入门

科研向的光学仿真通常使用以Lumerical和COMSOL,分别基于 时域有限差分 (Finite-difference time-domain method, FDTD) 和 有限单元法( Finite Element Method,FEM)。

对于计算周期性结构的散射场,采用 严格耦合波分析法(Rigorous Coupled Wave Analysis, RCWA) 更具优势,是一种结合了 传输矩阵法(Transfer Matrix Method, TMM) 和 平面波展开发(Plane Wave Expansion Method, PWEM) 的半解析方法。 也被称为 傅里叶模式法(Fourier Modal Method, FMM) 。

Rsoft中diffractMOD采用了RCWA算法,所以又开了一个新坑,学习Rsoft。

在Youtube上发现了 CYBERNET SYSTEMS TAIWAN 思渤科技 的相关视频,并向B站搬运了其中两个播放列表,分别是 基础教学,和 Hologram AR Design(包括diffractMOD + MOST 这两个模块的教学)。

除了商业的软件,还有一些基于MATLAB 编写的程序,用于RCWA的计算。

注意点

Rsoft总体的使用并不难,在Symbol Table Editor中输入参数,在CAD绘制图形。注意点是材料参数的选取,和仿真的设置。所用的版本为8.0.2.1。

材料参数

在Material Editor 采用了解析的方式,通过拟合Drude-Lorentzian-Debye Resonance 描述材料性质,但是十分繁琐。
可以采用从已有文本文件中导入,需要遵循Standard RSoft File Format,详见Appendix B:File Formats。

示例:这一段包含两列数据,分别表示 实部和虚部 ,自变量范围为0~1,共11个点。

/rn,a,b/nx0/ls1
 11 0 1 0 OUTPUT_REAL_IMAG
 0.00 0.000
 0.01 0.001
 0.04 0.008
 0.09 0.027
 0.16 0.064
 0.25 0.125
 0.36 0.216
 0.49 0.343
 0.64 0.512
 0.89 0.729
 1.00 1.000

仿真设置

Rsoft仿真设置在Perform Simulation中,通过Output options选择输出观察的物理量。通过prefix修改文件名,可以在同一个CAD模型下,进行不同仿真。

参考:

  1. Wikipedia/Rigorous coupled-wave analysis
  2. EMpy Electromagnetic Python
  3. zhaonat/Python Rigorous-Coupled-Wave-Analysis PACKAGE

0

Matlab 从字符串中提取数字

今天学到了一个从字符串中提取数字的方法

对于字符串中数字出现格式相对固定的,可以使用’sscanf’函数, 功能为Read formatted data from string 。

我从文本文件中读取到文件名字符串,

str='R_topAu_hspacer=0.1[um],period=0.3[um].txt'
A = sscanf(str, 'R_topAu_hspacer=%f[um],period=%f[um].txt');

就可以提取出其中的0.1和0.3

参考:Matlab – sscanf从字符串读取格式化数据

0

LiveLink™ for MATLAB®(COMSOL Multiphysics)

由于需要经常变换结构参数,进行电磁仿真,通常使用comsol内的sweep功能进行波长扫描,手动输入结构参数十分繁琐,所以开发使用LiveLink™ for MATLAB的功能,实现自动化仿真。

最好的参考依旧是官方手册, 基于Client-Server架构,使用 MATLAB Client和Comsol Server。。

基本的连接操作如下:

  • 打开 COMSOL x.x with MATLAB,其中x.x为版本号
    (首次打开填入用户名和密码,密码输入时不显示)
  • comsol server 命令行窗口和 MATLAB 桌面软件被打开
  • 在MATLAB 命令行中使用mphload(‘xxx.mph’)加载文件夹下已有的mph文件
  • 同时也可以使用Comsol desktop中COMSOL Multiphysics Server>Connect to Server,再Import Application from Server

参考:

LiveLink™ for MATLAB® User’s Guide

0

V2ray开启局域网共享功能

为了让Nintendo Switch可以用twitter社交帐号发布屏幕截图和录像,使用了V2ray开启局域网共享的功能。

  • 电脑安装V2ray客户端 ,勾选 V2ray设置中的“允许来自局域网的连接”,并可以科学上网。
  • 手机或其他移动设备,与电脑连接在同一局域网内,例如连接同一个无线路由器。
  • 在手机或其他移动设备的代理设置中,填入电脑在局域网中的IP,端口为 1081

参考:
V2ray和SSR开启局域网共享功能

0