JCMsuite应用:空心光子晶体光纤

[复制链接]
cherryjhy 发表于 2023-4-6 08:35:18 | 显示全部楼层 |阅读模式
JCMsuite布局描述提供了许多设置复杂几何图形的方法。例如,在多核光子晶体光纤示例中,我们使用晶格副本来创建固体核光子晶体光纤的空气孔的排列。然而,在某些应用中,可能需要描述几何图形,这些图形不能用简单的圆、平行四边形等表示,或者类似物体的复杂阵列非周期排列在规则网格中,需要晶格复制来实现。在这种情况下,通常需要用任意边界曲线来描述几何对象,即一般多边形。这就是本例的情况,其中光子晶体包层的内部孔和中心孔形成复杂的形状。其几何结构为中空光子晶体光纤,如下图所示:


显然,这个描述很难“手工”完成,输入所有点的坐标。相反,在JCMsuite的Matlab®接口的帮助下,建立一个复杂的几何图形和模拟运行完成。

JCMsuite的Matlab®接口允许使用所谓的模板文件生成这样复杂的文件。因此,可以将JCMsuite语句和Matlab语句进行混合,例如,计算孔隙的点位置。Matlab循环允许在位移位置或修改形状生成多个对象。关于该机制的完整描述可以在Matlab®Interface中找到,并且超出了本例的范围,本例仅用于演示嵌入式脚本的能力。
这个例子的project.jcmp、 layout.jcm 和 materials.jcm文件包含了模板文件 ,就要添加一个“t”作为对应模板的后缀。模板被设计成这样一种方式,只需要定义几个用户定义的参数,如圆角、周期、包层环的数量等,就可以生成复杂的布局描述。这些主要的输入参数是在run_project中设置的。m脚本。当它在Matlab中执行时,命令:
results = jcmwave_solve('project.jcmp', keys);
在run_project.m脚本内将模板转换为常规的JCMsuite输入文件,网格划分并布局,并运行模拟。此外,脚本将结果结构中存储的特征值写入控制台。

计算得到的空心模式是双重简并的。下图显示了计算得出的模态强度(第一行)和相应的向量场分布(第二行)。


回复

使用道具 举报

全部回复0 显示全部楼层
暂无回复,精彩从你开始!

快速回帖

您需要登录后才可以回帖 登录 | 立即注册 手机动态码快速登录

本版积分规则

关于楼主

高级会员
  • 主题

    820
  • 回答

    812
  • 积分

    821
联系客服 关注微信 访问手机版 返回顶部 返回列表