我有兴趣在某个域中解决二维情况下的静电问题,其中导体放置在域内。从数学的角度来看,我必须求解
具有用户定义边界条件的泊松方程(为简单起见,让我们考虑一个矩形域)和域中具有恒定用户定义势的某个区域(见图)。

我使用有限差分法对泊松方程进行数值求解,这意味着我必须在域中构建一个网格,然后尝试找到网格节点处的势值。回想一下,在有限差分法中,我们为网格的每个节点处的未知电位编写了一个方程。这些方程组合在一起形成了一个线性方程组。该系统的解是该域中泊松方程的近似解。
我知道如何在没有任何“内部对象”的情况下构造和求解矩形域中未知潜力的线性方程组。我的问题是:当有一些“内部对象”时,我应该如何解决这个问题?
我目前的想法是记录对象占据的每个节点(图中橙色),然后从线性系统中划掉相应的方程。我还必须修改与恰好位于对象边界附近的节点相对应的方程。完成后,应该可以解决系统问题。然后,使用此解决方案和用户定义的导体上的电位值,可以恢复整个域中的电位。
这是唯一可能的策略还是有更简单的方法可以做到这一点?我对这种方法很感兴趣,从编程的角度来看是最合理的。
顺便说一句:我使用 PETSc 来解决线性系统。对于这种情况,它可能具有某种功能吗?
