COMSOL软件的折叠功能演示及其动态应用体验
Comsol能带折叠演示。打开COMSOL的时候总想吃点零食——这软件启动时间够我啃完半包薯片了。今天咱们用光子晶体玩个骚操作把能带结构折叠起来观察模式简并顺便验证下周期性结构的对称性对电磁波传播的影响。先随便画个六边形晶格晶格常数设500nm这个数值随便填的毕竟只是演示。材料参数别纠结直接给介质柱介电常数设12背景是空气就行。重点来了在周期边界条件设置里勾选Folded Brillouin zone选项这时候系统会自动把k点路径从常规的第一布里渊区映射到折叠后的路径。建模时有个坑要注意边界模式研究必须勾选Store full solution否则后处理会读不到电场分布。这里贴段参数设置的脚本其实手动点选也一样model.param.set(a, 500[nm]); //晶格常数 model.component(comp1).mesh(mesh1).autoMeshSize(3); //偷懒用自动网格 study.step(bnd).set(storeallsol, on); //关键不打开这个看不到模式场跑完计算后在结果里添加能带图节点。重点观察Γ点附近的简并模式分裂——原本在常规能带图中重合的曲线会像被刀切过一样突然分开。这是因为折叠操作强行把高阶布里渊区的信息塞进了第一布里渊区。Comsol能带折叠演示。举个例子原本在M点出现的模式现在会出现在Γ点旁边。这时候用切片图看电场分布特别带感明明是同一个位置的点却同时存在顺时针和逆时针旋转的涡旋场。这种现象在拓扑光子学里其实挺常见不过用能带折叠可以更直观地看到模式劈裂过程。处理数据时有个小技巧导出能带数据后用Python做个简单的坐标变换import numpy as np def fold_k(kx, ky): return np.mod(kx ky/2, 1), np.mod(ky, 1) # 注意这里的归一化处理 transformed_k [fold_k(kx,ky) for kx,ky in original_k]这种操作本质上是在倒格子空间做镜像对称。有意思的是当结构存在缺陷时折叠后的能带会出现明显的模式局域化——就像把平整的桌布突然揉皱一块。最后说个实战技巧如果计算资源有限可以把k点采样间隔从默认的0.1调到0.2。虽然会丢失部分细节但折叠产生的能带交叉特征依然清晰可见。不过要注意频率范围别设太小建议覆盖0.4-0.8c/a这个区间c是光速否则可能错过重要的模式劈裂点。记得保存项目时别用中文路径这忠告值三杯奶茶——别问我怎么知道的。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2415260.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!