求解具有 TE 模式的 Neumann 边界条件的 2D 矩形波导 PDE

计算科学 有限差分 Python
2021-12-12 02:06:32

我试图通过求解方程找到二维矩形波导的可能模式, 其中将是,具体取决于要求解的模式是 TE 还是 TM。

(2x2+2y2+γ2)ψ=0
ψHzEz

我的方法是使用有限差分法来求解方程,从而将 PDE 转换为一组联立方程并求解特征值()。γ

边界条件是 Neumann,如果,其中 x 和 y 是波导的尺寸。ψn=0x=0,ay=0,b

我如何在我的代码中包含这个边界条件Hz=h(x,y)ei(kzωt)

如果可能,请提供参考。谢谢。

1个回答

如果您考虑您的解决方案,您最终会遇到以下问题

(2+γ2)h(x,y)=0.

边界条件是

h(x,y)n=0,

对于每个线段。这转化为

h(x,y)x=0,x=0 or x=a,h(x,y)y=0,y=0 or y=b.

由于您使用的是有限差分法,因此这些边界条件不会自然出现。一种常见的方法是使用幻像节点,即域外的节点,来获取这些边界条件。

假设您有一个矩形网格,首先在方向枚举,然后在方向枚举。因此,在处使用关于的导数的中心有限差分,您会得到xyxx=0

u1,ju1,j2Δx=0,

要么

u1,j=u1,j.

您对其他边界执行相同操作并得到: , ,之后,您修改您的矩阵,以使用虚拟节点以边界为中心的条目。um+1,j=um1,jui,1=ui,1un+1,i=un1,i