SkillAgentSearch skills...

PyFDTD

A fast simulation program based on python and ansys-lumerical-FDTD for optical simulation, allowing users to quickly model, run and read simulation results for analysis

Install / Use

/learn @Unrealfancy/PyFDTD
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

pyFDTD

A fast simulation program based on python and ansys-lumerical-FDTD for optical simulation, allowing users to quickly model, run and read simulation results for analysis

本程序主要用于实现计算周期性结构的光学仿真计算,通过lumerical-FDTD提供的pothon API,实现对FDTD的建模控制,同时通过可以对计算结果进行快速分析.

2022.11.22更新V2.21:
修复3D仿真bug

2022.11.02更新V2.10: 1.材料栏现在按照首字母顺序排序
2.修复扫描步长四舍五入位数问题
3.修复优化缩放问题

2022.10.30更新V2.0:
1.打开文件时自动读取文件上次设置的参数
2.添加材料吸收层选项,可以选择观看部分层的吸收
3.添加优化功能,基于PSO优化算法获取对于目标最优解

2022.10.11更新:
添加选择吸收层的区域选项
添加查看材料光参功能
打开文件时可以自动查看文件参数(如果已经建模好)

2022.0922更新:
修复一些Bug

实现的功能:
1,一键建模,打开文件后会自动读取fsp文件中的材料光参(如果需要添加材料可以预先在fsp文件中添加),添加层数,设置层的厚度,最后点击建模即可一键完成建模,点击运行会进入计算,勾选表格中场可以选择需要观察场的结构层
2,重叠建模,在建模表右边重叠层处选择除0选项后,会将该层往下平移至与上一层顶端齐平,可用于灵活设置包括刻蚀,十字,包覆层等特异结构。
3,参数扫描,在添加完材料后选择下方标签中的扫描,可以进入扫参数模板,选中上方表格宽度厚度深度及周期中的任意参数,点击添加参数即可将所选参数添加进被扫描参数,下方输入起点终点及点数,选择扫描点数后点击开始扫描即会自动计算设置的扫描范围(为减少计算量,建议关闭场分布后再扫描),扫描完毕后光谱数据会保存,点击分析面板扫描图即可看到参数扫描结果
4,光谱查看,文件计算完后可以在右边分析面板中选择查看反射透射光谱,程序会根据光谱自动算出吸收,可以选择展示选定线段,点击作图即可观看, 同时如果打开的文件已经有计算结果,也可以直接在分析面板中查看,默认的监视器名称为'R','T','A',点击暂存可以将当前新建窗口将当前图片暂存,如果是扫参数可以点扫描图观看多条谱线。
5,场分布,设置面板处可以勾选想看的层的场,右边分析面板可以获得分布图,输入monitor的名字,点击作图,可以获得场分布图,自动获得该monitor的点数,通过point条可以看不同的波长,下面的Interp可以实现场图的插值, 使图片更清晰。
6,数据保存,所有图片可以在上方toolbar中直接保存,光谱数据可以在分析面板中点击保存,即会弹出保存窗口,支持单点和扫参数保存
7,优化,在标签栏第三项选择优化,在优化参数处选择点击上方表格中想选的参数再点击添加参数,然后再目标函数栏选择目标函数,可选择设置对应权重(目前设置为选择波长范围内对应反射/透射/吸收谱的平均值,权重因子为多个目标函数前的系数),选择迭代次数和样本数量,点击开始优化即可, 优化结果在右方文字框显示,计算结束后可以点击优化图观看迭代优化谱线图和对应参数。

image image 屏幕截图 2022-09-15 231029

Related Skills

View on GitHub
GitHub Stars25
CategoryDevelopment
Updated28d ago
Forks4

Security Score

75/100

Audited on Mar 3, 2026

No findings