In a computer simulation of the real world, physical quantities, which usually have continuous distributions governed by partial differential equations (PDEs), can be solved by numerical methods such as finite element method (FEM) and boundary element method (BEM). Whether the obtained solution is a good approximation of the reality and whether the numerical schemes can proceed properly under perturbations of different error sources, such as numerical quadrature error and round-off error, should be clarified before any code implementation. To answer these questions, this post will introduce the fundamental concepts of numerical stability, convergence and consistency according to the following figure.

Let \(u\) be the real solution of the following general variational problem for a PDE:
\[
\text{Solve $u \in U$: } a(u, v) = (f, v) \quad (\forall v \in W),
\]
where both \(U\) and \(W\) are Hilbert spaces, \(a(\cdot, \cdot): U \times W \rightarrow \mathbb{K}\) with \(\mathbb{K} \in \{\mathbb{R}, \mathbb{C}\}\) is a sesquilinear or bilinear form and \(f: W \rightarrow \mathbb{K}\) is a continuous linear functional on \(W\). The solution \(u\) belongs to the space \(U\) of continuous functions with infinite dimension. For ease of further analysis, priori assumption is usually adopted for such function space thus we have the assumed function space \(V\). For example, the countably normed spaces \(V = B_{\varrho}(\Gamma)\) used in the \(hp\)-BEM is defined as
\[
B_{\varrho}(\Gamma) = \{ v \in L^2(\Gamma): v \circ \kappa_K \in B_{\varrho}(K_0) \},
\]
where

  • \(\Gamma\) is the boundary manifold of the solution domain, which is covered by the mesh \(\{K_i\}_{i=1}^{N_M}\) with \(N_M\) as the number of mesh elements;
  • \(K_0\) is the reference cell and \(K\) is the real cell which may be curved;
  • \(\kappa_K: K_0 \rightarrow K\) is the mapping from the reference cell to the real cell;
  • \(B_{\varrho}(K_0)\) is the countably normed space restricted on the reference cell, which has constraints on the norm of all the derivatives of \(v\). Its formulation is given as below:
    \[
    B_{\varrho}(K_0) = \big\{ v \in L^2(K_0): \Norm{r_X^{k - \varrho} \left( \Pd{}{r_X} \right)^k \left( \vartheta (\alpha_X - \vartheta_X) \right)^{l - \varrho} \left( \Pd{}{\vartheta_X} \right)^l v}_{L^2(U_X)} \leq C d^{k+l+1} k! l!\big\},
    \]
    for which I do not provide more explanation in this post, but just give you an impression that the construction of the assumed solution function space can be quite complicated.

To solve the PDE on a computer, a finite dimensional subspace \(V^L\) of \(V\) must be constructed, in which a solution is to be sought as an approximation of the real solution by using some sort of numerical method. Then the stability condition means, for any function \(u\) in the real space \(U\) or the assumed space \(V\) of infinite dimension, whether there exists a function \(v\) in the finite dimensional space \(V^L\), such that the norm of their difference can be controlled to be arbitrarily small as \(N_L\), the dimension of space \(V^L\), increases. For example, in the \(hp\)-BEM, a subspace \(V^L\) can be constructed to have the following exponential stability condition:
\[
\begin{equation}
\label{eq:stability-condition}
\forall u \in B_{\varrho}(\Gamma): \inf_{v \in V^L} \norm{u - v}_{L^2(\Gamma)} \leq C \exp(-b N_L^{1/4}).
\end{equation}
\]

Once the solution \(u^L \in V^L\) for the finite dimensional problem is obtained from a general method such as the Galerkin method, i.e.
\[
\text{Solve $u^L \in V^L$: } a(u^L, v) = (f, v) \quad (\forall v \in V^L),
\]
the concept of convergence comes into play, which ensures that the difference between this \(u^L\) and the real solution \(u\) can be controlled. For example, if the following condition can be satisfied:
\[
\Norm{P_L A u^L} \geq C_s \Norm{u^L} \quad (\forall u^L \in V^L),
\]
where \(P_L: V \rightarrow V^L\) is the projection operator, \(A: V^L \rightarrow (V^L)'\) is the associated operator of the sesquilinear or bilinear form \(a(\cdot, \cdot)\) and \(C_s > 0\) is a constant, it can be proved that the solution obtained from the Galerkin method satisfies
\[
\begin{equation}
\label{eq:convergence-condition}
\norm{u - u^L} \leq C \inf_{v \in V^L} \Norm{u - v}.
\end{equation}
\]
This means the real solution can be properly approximated by the Galerkin solution with the error norm controlled by the approximation capability of the adopted finite dimensional space \(V^L\), and we say the method is convergent. In addition, combing equation \eqref{eq:stability-condition} and \eqref{eq:convergence-condition}, we know the solution has the exponential convergence property:
\[
\begin{equation}
\label{eq:exponential-convergence}
\norm{u - u^L} \leq C \exp(-b N_L^{1/4}).
\end{equation}
\]

Finally, we introduce the concept of consistency. During the discretization of the problem, the sesquilinear or bilinear form \(a(\cdot, \cdot)\), or rather, its associated operator \(A\), is to be approximated by its discrete version, i.e. the stiffness matrix \(A^L\). The evaluation of \(A^L\)'s coefficients usually needs numerical quadrature techniques, which introduces additional numerical error. Even though there is an analytical formula for integration, round-off error limited by the finite computer byte length is unavoidable. Hence, an operator \(\tilde{A}^L\) is obtained being different from \(A^L\). The error between \(A^L\) and \(\tilde{A}^L\) will perturb the adopted numerical method. If the error between the real and numerical solutions \(\Norm{u - \tilde{u}^L}\) can still be controlled, we say the method is consistent. For example, in the \(hp\)-BEM, if the stiffness matrix coefficient error satisfies the following consistent condition
\[
\abs{A^L_{ij} - \tilde{A}^L_{ij}} < \Phi(L) \quad (i,j = 1, \cdots, N_L)
\]
with
\[
\lim_{L \rightarrow \infty} N_L \Phi(L) = 0 \; \text{and} \; \Phi(L) = N_L^{-1} L \sigma^{\varrho L},
\]
the exponential convergence as shown in \eqref{eq:exponential-convergence} can be preserved.

Understanding about numerical stability, convergence and consistency的更多相关文章

  1. Softmax vs. Softmax-Loss VS cross-entropy损失函数 Numerical Stability(转载)

    http://freemind.pluskid.org/machine-learning/softmax-vs-softmax-loss-numerical-stability/ 卷积神经网络系列之s ...

  2. Softmax vs. Softmax-Loss: Numerical Stability

    http://freemind.pluskid.org/machine-learning/softmax-vs-softmax-loss-numerical-stability/ softmax 在 ...

  3. Understanding Convolution in Deep Learning

    Understanding Convolution in Deep Learning Convolution is probably the most important concept in dee ...

  4. [C4] Andrew Ng - Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization

    About this Course This course will teach you the "magic" of getting deep learning to work ...

  5. 【转】Artificial Neurons and Single-Layer Neural Networks

    原文:written by Sebastian Raschka on March 14, 2015 中文版译文:伯乐在线 - atmanic 翻译,toolate 校稿 This article of ...

  6. AP(affinity propagation)研究

    待补充…… AP算法,即Affinity propagation,是Brendan J. Frey* 和Delbert Dueck于2007年在science上提出的一种算法(文章链接,维基百科) 现 ...

  7. 提高神经网络的学习方式Improving the way neural networks learn

    When a golf player is first learning to play golf, they usually spend most of their time developing ...

  8. 【Caffe 测试】Training LeNet on MNIST with Caffe

    Training LeNet on MNIST with Caffe We will assume that you have Caffe successfully compiled. If not, ...

  9. MR for Baum-Welch algorithm

    The Baum-Welch algorithm is commonly used for training a Hidden Markov Model because of its superior ...

随机推荐

  1. 获取本地计算机名和IP地址

    WSADATA wsadata; != WSAStartup(MAKEWORD(, ), &wsadata)) { AfxMessageBox("初始化网络环境失败!"); ...

  2. java对图片进行透明化处理

    package utils; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.File; ...

  3. 使用OneNote2016发送博客

    本人使用的是博客园的博客,其他的博客设置应该大同小异,OneNote使用的是2016版本,系统为Win10家庭中文版. 传统的在web端编辑发布博客的方式是在是心累,图文编辑麻烦,不便于存储,编辑的时 ...

  4. mysql修改表、字段、库的字符集(转)

    原文链接:http://fatkun.com/2011/05/mysql-alter-charset.html MySQL中默认字符集的设置有四级:服务器级,数据库级,表级 .最终是字段级 的字符集设 ...

  5. Codeforces Educational Codeforces Round 57 题解

    传送门 Div 2的比赛,前四题还有那么多人过,应该是SB题,就不讲了. 这场比赛一堆计数题,很舒服.(虽然我没打) E. The Top Scorer 其实这题也不难,不知道为什么这么少人过. 考虑 ...

  6. swift 实践- 07 -- UISwitch 开关

    import UIKit class ViewController: UIViewController { var uiswitch: UISwitch? override func viewDidL ...

  7. Confluence 6 通过 SSL 或 HTTPS 运行 - 为 HTTPS 修改你的 Confluence 基础 URL

    在你的浏览器中,进入  > 基本配置(General Configuration). 单击 编辑(Edit). 修改服务器的基础 URL 为 HTTPS.请参考文档  configuring t ...

  8. Confluence 6 导入一个文本文件

    Confluence 允许你从 Confluence 服务器上的一个目录中导入一个文本文件,然后将这个文本文件转换为 Confluence 的页面.每一个文本文件将会在 Confluence 中创建一 ...

  9. Confluence 6 数据库支持的驱动

    数据库 驱动已捆绑? JDBC 驱动 备注 更多信息 PostgreSQL 9.4-1202 JDBC 41 driver download 我们推荐你使用 JDBC 4 的驱动. 如果你希望使用更新 ...

  10. pytorch 参数初始化

    https://blog.csdn.net/daydayjump/article/details/80899029