简介
流体力学数值方法 中介绍的方法
流程
考虑算子方程 L(u) = f u \(\in\) D
定义域D是满足齐次边界条件的,具有和微分算子L先适应的连续可微性要求的函数空间。如果微分方程具有非齐次边界条件,则需要现寻找一个满足非齐次边界条件的特解,然后将微分方程转化为齐次边界条件的算子方程。
Ritz--Galerkin法解题基本步骤如下:
- 写出积分表达式
根据上两节的分析,不论是从变分原理导出的变分表达式,还是采用Galerkin法导出的的加权余量几分式,都可以归结于下面的积分表达式
\[\begin{equation*}
\int_{\Omega} \left[ L(u) - f \right]\delta ud\Omega = 0 \, (1-83)
\end{equation*}
\]
- 在D内选取基函数序列{\(\phi_i\)}(i=1,2...)。这个基函数的线性组合可以任意精度地逼近D中任何一个函数。
- 将方程的近似解表示为n个基函数的线性组合,构成n级近似解
\[u_n = \sum_{j=1}^{n} \alpha_j \phi_j \,(1-84)
\]
式中\(\alpha_j\)(j=1,2...n)是待定系数。积分式中的变分量 \(\delta u\) 是积分式中的权函数
\[\delta u = \phi_i (i=1,2...n) \,(1-85)
\]
- 将式(1-84)和式(1-85)代入式(1-83),即构成以 \(\alpha_1 、\alpha_2 ... \alpha_n\) 为未知量的n个代数方程
\[\begin{equation*}
\int_{\Omega} L \left( \sum^{n}_{j=1} \alpha_{j} \phi_{j} \right) \phi_{i} d \Omega = \int_{\Omega} f\phi_i d\Omega \, (1-86) (i = 1,2,...n)
\end{equation*}
\]
如果L是线性算子,则式(1-86)是n阶线性代数方程组
\[A_{ij}\alpha_j = b_i (i=1,2,...n) \, (1-87a) \\
A_{ij} = \int_{\Omega} L(\phi_j)\phi_jd\Omega \, (1-87b) \\
b_i = \int_{\Omega} f \phi_i d\Omega \, (1-87c)
\]
- 求解代数方程组式(1-86)或(1-87),即可获得近似解式(1-84)中的各个系数\(\alpha_1 、\alpha_2 ... \alpha_n\)。带入(1-84)中获得近似解 \(u_n\) 的表达式。
---------------------------我的天空里没有太阳,总是黑夜,但并不暗,因为有东西代替了太阳。虽然没有太阳那么明亮,但对我来说已经足够。凭借着这份光,我便能把黑夜当成白天。我从来就没有太阳,所以不怕失去。
--------《白夜行》