光子带计算与散射分析的FDFD方法
1. 光子带计算
1.1 光子带图
在光子带计算中,会创建光子带图。虽然图7.5中的带图简单且具有功能性,但不太适合用于发表。在该图中,TE和TM带很难区分,需要调整字体大小和线宽以提高可见性,并且带图应显示布里渊区(BZ)、不可约布里渊区(IBZ)以及对称关键点。图7.7展示了一个更专业的带图,其中频率范围0.46 ≤ ωn ≤ 0.47内出现的小带隙在整个带图中以灰色突出显示。如果晶格没有在其他地方绘制,建议在带图中提供晶格的图片作为插图。
1.2 计算等频曲线(IFCs)的MATLAB代码
计算IFCs的MATLAB代码可以从https://empossible.net/fdfdbook/ 下载,文件名为Chapter7_IFCs.m。该代码本质上是之前计算光子带图代码的修改版本。
1.2.1 代码参数设置
- 初始化MATLAB的头部和描述光子晶体的参数与之前的代码相同。
- 从第19到24行有一组略有不同的参数来控制FDFD模拟:
- 在仪表板中直接定义Yee网格上的点数Nx和Ny。
- 通过变量NBx和NBy定义用于用带数据填充IBZ的离散点数,使用的点数越多,IFCs的解析就越准确。
- NBANDS定义存储在内存中的能带数量,通常只关注低阶能带,所以这个数字应保持较小。
1.2.2 代码执行步骤
graph
超级会员免费看
订阅专栏 解锁全文
48

被折叠的 条评论
为什么被折叠?



