我正在为具有 Neumann 边界条件的 PDE 实施有限差分法。我将把我的问题简化为一个维度。
假设我有一个 PDE
在区间上。我在 PDE 上施加了 Neumann 边界条件
在和处。
在我的有限差分方案中,我需要在点和。我该怎么做?
我在网上找到的一种解决方案是引入虚拟点和和处使用中心方案。根据这些虚拟点的计算方式,得到的近似值往往会发生很大变化。有没有更好的方法来构建这些虚拟点?
我正在为具有 Neumann 边界条件的 PDE 实施有限差分法。我将把我的问题简化为一个维度。
假设我有一个 PDE
在区间上。我在 PDE 上施加了 Neumann 边界条件
在和处。
在我的有限差分方案中,我需要在点和。我该怎么做?
我在网上找到的一种解决方案是引入虚拟点和和处使用中心方案。根据这些虚拟点的计算方式,得到的近似值往往会发生很大变化。有没有更好的方法来构建这些虚拟点?
让我们为左边界点做它,为简单起见假设。要在 =0 处实现 = 0,假设函数偶数在 =0 附近,让网格点为、等。然后,利用函数处的标准二阶精确中心差计算的二阶导数变为
很容易看出,这个表达式只是 =0 处的泰勒展开式,其中 =0。另一种看待它的方式,我们正在创建一个虚拟(鬼)网格点。对于更高阶的方案,使用这种方法需要引入两个或多个鬼点。但是这里的鬼点的选择没有任意性(它们只是实际网格点的镜像),只要在网格上解决解决方案,结果应该按照形式精度收敛到确切的答案方案的顺序。