我目前正在使用以下具有混合边界条件的泊松方程,包括诺依曼边界条件。
Δu=fu(x,0)=g1(x),0<x<1u(0,y)=g2(y),0<y<1∂nu(x,1−x)=0,0<x<1
在域上Ω:={(x,y):R2+:x+y<1}
据我所理解,∂nu(x,1−x)=∇u⋅n. 现在我对如何离散化感到有些困惑。如何获得法线向量n? 我想我已经看到了使用中心有限差分的离散化,它看起来像这样:
∂nui,j=ui+1,j−ui−1,j+ui,j+1−ui,j−12Δx
但是这种离散化如何解释法线向量n在公元前诺伊曼?
另外,在这里我不仅∂nu(x,y)=0但∂nu(x,1−x)=0. 所以我很困惑如何离散化这个。建议使用 Shortley-Weller 近似来这样做,但我还不太了解它是如何工作的(还没有看到它的实际效果,也找不到关于这种方法在数学上究竟是如何工作的好的文献)。
因此,据我了解,这可能如下所示:
∂nu(x,1−x)|Δx=∂nui,1−i=ui+1,1−i−ui−1,1−i2Δx+ui,2−i−ui,−i2(1−Δx)
它是否正确?这如何在算法中实现?
将不胜感激一些帮助。