前面几天都在写下面的这个编程文档, 这个文档写起来东西真的多, 目前程序还没有调试对, 最后测试误差阶的时候出现了点问题, 不过没事, 东西还是得继续往下看的.
2021-5-20 有限元方法从0开始学习笔记 继续接第三天 (一维线性有限元, 二次元编程计算推导)
继续附上参考资料镇楼
Brenner S, Scott R. The mathematical theory of finite element methods[M]. Springer Science & Business Media, 2007.
在链接给出的上一次文章当中, 给出了一维的 Poisson 方程在 Dirichlet 以及Neumann 边界条件下线性元以及二次元的处理, 实际上, 会处理这两个, 其它元的基本处理也自然就会了, 只不过是写出来的程序效率的高低的问题了.后面会开始进入二维问题, 在此之前按照惯例首先需要介绍弱导数以及 Sobolev 空间方面的东西, 以及类似于 Lax-Milgram 定理之类的东西方便二维的分析. 由于前面已经学过了, 因此关于 Sobolev 空间之类的东西只是对定理进行一下罗列, 后面有时间再去补证明了,除了一些自己以前理解不清楚的地方,以及会有一些很好的例子, 会稍微证明一下.
L p L^{p} Lp 空间
定义 ∥ ⋅ ∥ p \| \cdot \|_{p} ∥⋅∥p ( 1 ≤ p ≤ ∞ ) (1 \leq p \leq \infty) (1≤p≤∞):
∥ f ∥ L p ( Ω ) = { ( ∫ Ω ∣ f ( x ) ∣ p d x ) 1 / p d x , p < ∞ ess sup x ∈ Ω ∣ f ( x ) ∣ , p = ∞ \| f\|_{L^{p}(\Omega)} = \begin{cases} \left(\int_{\Omega} |f(x)|^{p} dx\right)^{1/p} dx, \quad p< \infty \\ \text{ess sup}_{x \in \Omega} |f(x)|, \quad p = \infty \end{cases} ∥f∥Lp(Ω)={
(∫Ω∣f(x)∣pdx)1/pdx,p<∞ess supx∈Ω∣f(x)∣,p=∞
其中 Ω \Omega Ω 为欧式空间上的区域, 定义空间 L p ( Ω ) L^{p}\left( \Omega \right) Lp(Ω):
L p ( Ω ) : = { f : ∥ f ∥ L p ( Ω ) < ∞ } . L^{p}\left( \Omega \right):= \left\lbrace f: \|f\|_{L^{p}\left(\Omega\right)} < \infty \right\rbrace. Lp(Ω):={
f:∥f∥Lp(Ω)<∞}.
下面是 L p ( Ω ) L^{p}(\Omega) Lp(Ω) 的几个常用不等式
Minkowski : ∥ f + g ∥ L p ≤ ∥ f ∥ L p + ∥ g ∥ L p , Holder : ∥ f g ∥ L 1 ≤ ∥ f ∥ L p ∥ g ∥ L q . \begin{aligned} &\text{Minkowski}:\quad \|f + g\|_{L^{p}} \leq \|f\|_{L^{p}} + \|g\|_{L^{p}}, \\ &\text{Holder}: \quad \|fg\|_{L^{1}} \leq \|f\|_{L^{p}}\|g\|_{L^{q}}. \end{aligned} Minkowski:∥f+g∥Lp