使用精确逻辑函数的误差范数进行网格误差量化

计算科学 误差估计
2021-12-16 20:47:10

考虑域的以下一维逻辑函数01.

f(x)=11+exp(50(x0.5))

假设我在两个网格上解决了这个问题:

  • 首先有 11 个等间距点 (0.0, 0.1, 0.2, ... 1.0)
  • 第二个有 101 个等间距点 (0.0, 0.01, 0.02, ... 1.0)

两个网格的图如下所示(蓝色是第一,绿色是第二):

在此处输入图像描述

如何计算两个网格的误差范数?我不知道 L2 规范是否是最佳选择,但可以说是。在这种情况下,L2 范数的离散版本通常表述如下:

||error||22=hi|fi,reffi,h|2

在哪里fi,h是网格点处给定网格的函数值i, 和fi,ref是用作参考的解析函数的值。

然而,这对于两种情况都会产生零误差范数,因为在网格点处评估的函数是精确的,即它直接来自解析表达式。但是我们可以在图中清楚地看到,对于具有 11 个点的网格,这是一个错误的答案,即在域中间附近的误差应该是非零的,从而导致非零误差范数。101 点的零错误答案也是错误的,但在图中错误不是很明显(但由于离散化/采样,它仍然存在)。换句话说,与第一个网格相比,第二个网格减少了误差。(我描述的是初学者的东西;只是把事情放在上下文中)。

对于正确的误差计算,一种可能的替代方法是通过求积计算范数。但在我们考虑求积之前,我们需要计算误差函数本身。但是我们该怎么做呢?我们是否使用高分辨率网格(如 1001 或 10001 点)来解决问题fi,ref以及插值fi,h(假设我们使用线性插值)?但这感觉非常草率/临时。有没有更好、更系统的方法?

(我只是想找出对网格分辨率进行此类错误分析的“标准”方法是什么,以便我可以证明与第一种情况相比,第二种情况的错误有所下降。任何提示对非结构化网格进行类似的二维分析也将受到高度赞赏)。

0个回答
没有发现任何回复~