谱方法的正交多项式为 Chebyshev 多项式,为 Chebyshev 谱方法。这里介绍一维问题的 Chebyshev 谱方法,然后 MATLAB 编程算出数值解以及误差。
两点边值问题
考虑两点边值问题:
Chebyshev-Galerkin 方法
Chebyshev 多项式的权函数 $\omega=\left(1-x^{2}\right)^{-1 / 2}$.
令 $\phi_{k}(x)=T_{k}(x)+a_{k} T_{k+1}(x)+b_{k} T_{k+2}(x)$ 满足边界条件,[Shen2011, P146] 可得 $a_{k}=0$, $b_{k}=-1$,所以
设 $\{\phi_{k}\}_{k=0}^{N-2}$ 是 $X_{N}$ 的一组基函数,我们将逼近解展开为
谱格式:
将 $u_{N}(x)$ 的展开式代入谱格式方程。令
取 $v_N=\phi_{k}$,可得到以下方程组
质量矩阵 $M=(m_{jk})$ 是一个对称正定的五对角矩阵 [P149-4.29],它的非零元素为
其中 $c_0=2$,当 $k \geq 1$ 时,$c_k=1$.
刚度矩阵 $S=(s_{jk})$ 是一个上三角矩阵 [P149-4.30],其元素如下:
数值例子
对于前面提到的两点边值问题,取 $\alpha=1$,如果取精确解为 $\sin (k \pi x)$,则右端项为 $f=k^2 \pi^2 \sin(k\pi x)+\sin(k\pi x)$.
1 | % ChebSM1.m |
参考书籍
- Spectral Methods: Algorithms, Analysis and Applications