FEniCS:电介质静电问题的边界条件

计算科学 芬尼克斯 边界条件 电磁学
2021-12-10 14:23:51

我仔细阅读了大约 70 页的 FEniCS 教程,当我拥有不同介电常数的材料时,我仍然不明白如何解决静电问题。静电中的自包含方程组

divD=4πρ,D=εE,E=φ.
仅适用于函数可微且平滑的区域。在具有不同材料的两个区域之间的界面处,这些方程必须通过以下边界条件进行扩充:
φ1=φ2,ε1φ1n=ε2φ2n.
如何指定第二个边界条件?本教程中的示例仅考虑了一个简单的案例
φn=0
两个区域之间。

2个回答

由于在subdomains-poisson网格与界面对齐的情况下处理了该问题,因此我在下面假设在您的情况下,跳转可以发生在任何地方。

我认为这里的第一步不是考虑实现 FEniCS,而是为这个问题找到一个适当的变分形式,其中适当地结合了接口条件。该问题看起来可以使用以下方法的变体进行处理:

Hansbo, A. 和 Hansbo, P.基于 Nitsche 方法的非拟合有限元方法,用于椭圆界面问题(Comp. Meth. in Appl. Mech. and Eng.,第 191 卷,第 47-48 期,2002 年 11 月 22 日,第 5537–5552 页)

免责声明:对于您的具体情况,可能还有其他选择,也许还有更好的选择,但我最熟悉 Nitsche 类型的技术。

一旦你知道如何离散化你的问题,你就可以考虑在 FEniCS 中实现。据我所知,在 vanilla FEniCS 中直接实现此方法是不可能的。dolfin-olm可以用来实现这个方法。到目前为止我还没有使用它,我不知道它是否适用于当前版本的 FEniCS,我不知道他们是否同时将它(部分)合并到 dolfin 中。

再次注意,在标准有限元方法中,可以通过将网格与界面对齐来考虑界面条件。如果这是一个选择,你应该这样做。

Poisson 问题的 Vatiational 公式化εL

两种界面条件都包含在以下变分问题中。给定

  • ΩLipschitz 域
  • Ω=ΓDΓN
  • V={vH1(Ω);v|ΓD=0}
  • εL(Ω)
  • gL2(ΓN)

寻找φV这样

Ωεφψdx=Ωρψdx+ΓNgψdSψV

这里g表示 Neumann 条件εφn=gΓN. 此公式会自动处理您的两种界面条件。你通过划分来检查它Ω进入子域ε取两个不同的值,并通过接近这些子域的特征函数的东西进行测试。而且ε可以更加任意 - 基本有界就足够了。请注意,我扔掉了4π对应于 SI 单位。如果您想从物理学家的角度推导出这个公式,只需在适当的(考虑到狄利克雷条件)空间中取场能的 Gateaux 导数减去电荷能。

为了在 FEniCS 中实现,只需选择符合条件的 FE 空间,即任意顺序的拉格朗日/CG 元素。问题在subdomains-poisson演示中实现,假设不连续ϵ匹配网格面。


不连续性ε与网格不匹配

如果您需要不连续的不匹配网格,您可以尝试DOLFIN-PUM实现 XFEM/PUM 方法的库。它现在没有维护,Garth 说有计划直接在 FEniCS 中更好地实施。图书馆能够准确地整合这种类型的不连续性ϵ. 但是还有一个问题是 XFEM/PUM 方法也会在您的解决方案中引入不连续性,您需要以某种方式强制执行连续性。它可以用拉格朗日乘数、惩罚等来解决,但如果我成功了,我就不记得了。

您还可以使用标准公式解决网格不匹配的问题并增加正交度或插值ε在计算之前到一些高阶空间。我也用Ck近似于 Heaviside 函数k=0,1,2定义材料不连续性。您可以使用conditional. 这些方法都不能集成ε确切地说,但它可以以某种方式增强解决方案。