整理一下数值分析的笔记~
目录:1. 误差
2. 多项式插值与样条插值
3. 函数逼近(THIS)
4. 数值积分与数值微分
5. 线性方程组的直接解法
6. 线性方程组的迭代解法
7. 非线性方程求根
8. 特征值和特征向量的计算
9. 常微分方程初值问题的数值解
1. 基本概念及其理论
设f∈C[a,b]f\in C[a,b]f∈C[a,b],在Hn=spanH_n=spanHn=span{1,x,...,xn1,x,...,x^n1,x,...,xn}中求多项式Pn∗(x)P_n^*(x)Pn∗(x)使其误差∣∣f−Pn∗∣∣∞=maxa≤x≤b∣f(x)−Pn∗(x)∣=minPn∈Hnmaxa≤x≤b∣f(x)−Pn(x)∣||f-P_n^*||_{\infty}=max_{a\leq x\leq b}|f(x)-P_n^*(x)|=min_{P_n \in H_n}max_{a\leq x \leq b}|f(x)-P_n(x)|∣∣f−Pn∗∣∣∞=maxa≤x≤b∣f(x)−Pn∗(x)∣=minPn∈Hnmaxa≤x≤b∣f(x)−Pn(x)∣,其中HnH_nHn表示由所有次数不超过nnn的代数多项式构成的线性空间,这就是C[a,b]C[a,b]C[a,b]空间中的最佳一致逼近或切比雪夫逼近问题。
定义1:设Pn∈Hn,f(x)∈C[a,b]P_n \in H_n,f(x) \in C[a,b]Pn∈Hn,f(x)∈C[a,b],称Δf(,Pn)=∣∣f−Pn∣∣∞=maxa≤x≤b∣f(x)−Pn(x)∣\Delta f(,P_n)=||f-P_n||_{\infty}=max_{a\leq x\leq b}|f(x)-P_n(x)|Δf(,Pn)=∣∣f−Pn∣∣∞=maxa≤x≤b∣f(x)−Pn(x)∣为f(x)f(x)f(x)与Pn(x)P_n(x)Pn(x)在[a,b][a,b][a,b]上的偏差,Δ(f,Pn)\Delta(f,P_n)Δ(f,Pn)的全体组成一个集合,记为{Δ(f,Pn)\Delta(f,P_n)Δ(f,Pn)},下界为0.
若记集合的下确界为:En=infPn∈HnE_n=inf_{P_n\in H_n}En=infPn∈Hn{Δ(f,Pn)\Delta(f,P_n)Δ(f,Pn)}=infPn∈Hnmaxa≤x≤b∣f(x)−Pn(x)∣=inf_{P_n \in H_n}max_{a\leq x \leq b}|f(x)-P_n(x)|=infPn∈Hnmaxa≤x≤b∣f(x)−Pn(x)∣,称为f(x)f(x)f(x)在[a,b][a,b][a,b]上的最小偏差。
定义2:假定f∈C[a,b]f \in C[a,b]f∈C[a,b]若存在Pn∗∈HnP_n^* \in H_nPn∗∈Hn使得Δ(f,Pn∗)=En\Delta(f,P_n^*)=E_nΔ(f,Pn∗)=En则称Pn∗P_n^*Pn∗是f(x)f(x)f(x)在[a,b][a,b][a,b]上的nnn次最佳一致逼近多项式或最小偏差逼近多项式,简称最佳逼近多项式。
定理1:若f∈[a,b]f\in [a,b]f∈[a,b]则总存在Pn∗∈HnP_n^* \in H_nPn∗∈Hn使得∣∣f(x)−Pn∗(x)∣∣∞=En||f(x)-P_n^*(x)||_{\infty}=E_n∣∣f(x)−Pn∗(x)∣∣∞=En。{最佳逼近多项式的存在性定理(Borel定理)}
定义3:设f∈[a,b],P(x)∈Hnf\in [a,b],P(x)\in H_nf∈[a,b],P(x)∈Hn,若存在x=x0x=x_0x=x0上有∣P(x0)−f(x0)∣=maxa≤x≤b∣P(x)−f(x)∣=μ|P(x_0)-f(x_0)|=max_{a \leq x \leq b}|P(x)-f(x)|=\mu∣P(x0)−f(x0)∣=maxa≤x≤b∣P(x)−f(x)∣=μ,就称x0x_0x0为P(x)P(x)P(x)的偏差点,若P(x)−f(x)=μP(x)-f(x)=\muP(x)−f(x)=μ,正偏差点,否则,负偏差点。由于P(x)−f(x)P(x)-f(x)P(x)−f(x)在[a,b][a,b][a,b]上连续,所以至少存在一个点使得∣P(x0)−f(x0)∣=μ|P(x_0)-f(x_0)|=\mu∣P(x0)−f(x0)∣=μ,有引理”设f(x)∈C[a,b],Pn∗(x)f(x) \in C[a,b],P_n^*(x)f(x)∈C[a,b],Pn∗(x)是f(x)f(x)f(x)的nnn次最佳一致逼近多项式,则f(x)−Pn∗(x)f(x)-P_n^*(x)f(x)−Pn∗(x)必同时存在正负偏差点。“
定理2:P(x)∈HnP(x) \in H_nP(x)∈Hn是f∈C[a,b]f\in C[a,b]f∈C[a,b]的最佳逼近多项式的充分必要条件是P(x)P(x)P(x)在[a,b][a,b][a,b]上至少有n+2n+2n+2个轮流正负的偏差点,即有n+2n+2n+2个点$ a \leq x_1 <x_2<…<x_{n+2} \leq b$使:
P(xk)−f(xk)=(−1)kσ∣∣P(x)−f(x)∣∣∞,σ=±1 P(x_k)-f(x_k)=(-1)^k \sigma||P(x)-f(x)||_{\infty},\\ \sigma=\pm1 P(xk)−f(xk)=(−1)kσ∣∣P(x)−f(x)∣∣∞,σ=±1
这样的点组称为切比雪夫交错点组。
定理3:在区间[−1,1][-1,1][−1,1]上所有最高次项系数为1的n次多项式中ωn(x)=12n−1Tn(x)\omega_n(x)=\frac{1}{2^{n-1}}T_n(x)ωn(x)=2n−11Tn(x)与零的偏差最小,为12n−1\frac{1}{2^{n-1}}2n−11。{ωn(x)=xn−Pn−1∗(x)\omega_n(x)=x^n-P^*_{n-1}(x)ωn(x)=xn−Pn−1∗(x)}
例:求f(x)=2x3+x2+2x−1f(x)=2x^3+x^2+2x-1f(x)=2x3+x2+2x−1在[-1,1]上的最佳2次逼近多项式。
解:所求最佳逼近多项式P2∗(x)P_2^*(x)P2∗(x)应满足max−1≤x≤1∣f(x)−P2∗(x)∣=minmax_{-1\leq x \leq 1}|f(x)-P_2^*(x)|=minmax−1≤x≤1∣f(x)−P2∗(x)∣=min,由定理3可知f(x)−P2∗(x)=12T3(x)=2x3−32xf(x)-P_2^*(x)=\frac{1}{2}T_3(x)=2x^3-\frac{3}{2}xf(x)−P2∗(x)=21T3(x)=2x3−23x时多项式f(x)−P2∗(x)f(x)-P_2^*(x)f(x)−P2∗(x)与零偏差最小,故P2∗(x)−f(x)=12T3(x)=x2+72−1P_2^*(x)-f(x)=\frac{1}{2}T_3(x)=x^2+\frac{7}{2}-1P2∗(x)−f(x)=21T3(x)=x2+27−1,就是f(x)f(x)f(x)在[-1,1]上的最佳2次逼近多项式。
2. 最佳一次逼近多项式
定理2给出了P(x)的特性,当n=1时至少存在三个点x1,x2,x3x_1,x_2,x_3x1,x2,x3满足定理中的条件,设最佳一次逼近多项式为P1(x)=a0+a1xP_1(x)=a_0+a_1xP1(x)=a0+a1x,推导得:
a0=f(a)+f(x2)2−f(b)−f(a)b−a(x−a+x22) a_0=\frac{f(a)+f(x_2)}{2}-\frac{f(b)-f(a)}{b-a}\left(x-\frac{a+x_2}{2}\right) a0=2f(a)+f(x2)−b−af(b)−f(a)(x−2a+x2)
a1=f(b)−f(a)b−a=f′(x2) a_1=\frac{f(b)-f(a)}{b-a}=f'(x_2) a1=b−af(b)−f(a)=f′(x2)
例:求f(x)=1+x2在区间[0,1]f(x)=\sqrt{1+x^2}在区间[0,1]f(x)=1+x2在区间[0,1]上的最佳一次逼近多项式。
解:a1=2−1≈0.414a_1=\sqrt{2}-1\approx 0.414a1=2−1≈0.414,又f′(x)=x1+x2所以x21+x22=2−1f'(x)=\frac{x}{\sqrt{1+x^2}}所以\frac{x_2}{\sqrt{1+x_2^2}}=\sqrt2-1f′(x)=1+x2x所以1+x22x2=2−1,解得x2=2−12=≈0.4551,f(x2)=1+x22≈1.0986,得a0=1+1+x222−a1x22≈0.955x_2=\sqrt{\frac{\sqrt2-1}{2}}=\approx 0.4551,f(x_2)=\sqrt{1+x_2^2}\approx 1.0986,得a_0=\frac{1+\sqrt{1+x^2_2}}{2}-a_1\frac{x_2}{2}\approx 0.955x2=22−1=≈0.4551,f(x2)=1+x22≈1.0986,得a0=21+1+x22−a12x2≈0.955。所以f(x)得最佳一次逼近多项式为:P1(x)=0.955+0.414xf(x)得最佳一次逼近多项式为:P_1(x)=0.955+0.414xf(x)得最佳一次逼近多项式为:P1(x)=0.955+0.414x。
根据例题的1结论令x=ba≤1有1+(ba)2=0.955+0.414(ba),即a2+b2≈0.955a+0.414bx=\frac{b}{a}\leq1有\sqrt{1+(\frac{b}{a})^2}=0.955+0.414(\frac{b}a),即\sqrt{a^2+b^2}\approx 0.955a+0.414bx=ab≤1有1+(ab)2=0.955+0.414(ab),即a2+b2≈0.955a+0.414b
3. 最佳平方逼近的计算
f(x)∈C[a,b]f(x) \in C[a,b]f(x)∈C[a,b],记其最佳平方逼近多项式为:S∗(x)=a0∗+a1∗x+a2∗x2+....+an∗xnS^*(x)=a_0^*+a_1^*x+a_2^*x^2+....+a_n^*x^nS∗(x)=a0∗+a1∗x+a2∗x2+....+an∗xn,HHH表示希尔伯特矩阵:
[11/2...1/(n+1)1/21/3...1/(n+2)............1/(n+1)1/(n+2)...1/(2n+1)] \left[\begin{matrix} 1 & 1/2 & ... & 1/(n+1) \\ 1/2 & 1/3 & ... &1/(n+2) \\ ...&...&...&...\\ 1/(n+1)&1/(n+2) &... & 1/(2n+1) \end{matrix}\right] ⎣⎢⎢⎡11/2...1/(n+1)1/21/3...1/(n+2)............1/(n+1)1/(n+2)...1/(2n+1)⎦⎥⎥⎤
又系数a=(a0,a1,...,an)T,d=(d0,d1,...,dn)T,其中dk=∫01f(x)xkdxa=(a_0,a_1,...,a_n)^T,d=(d_0,d_1,...,d_n)^T,其中d_k=\int_0^1f(x)x^kdxa=(a0,a1,...,an)T,d=(d0,d1,...,dn)T,其中dk=∫01f(x)xkdx,解方程:Ha=dHa=dHa=d得系数aaa。
令δ(x)=f(x)−S∗(x)\delta(x)=f(x)-S^*(x)δ(x)=f(x)−S∗(x)则平方误差为:
∣∣δ(x)∣∣22=(f(x)−S∗(x),f(x)−S∗(x))=(f(x),f(x))−(S∗(x),f(x))=∣∣f(x)∣∣22−∑k=0nak∗(∅k(x),f(x)). ||\delta(x)||_2^2=(f(x)-S^*(x),f(x)-S^*(x))\\ =(f(x),f(x))-(S^*(x),f(x))\\ =||f(x)||_2^2-\sum_{k=0}^na_k^*(\empty_k(x),f(x)). ∣∣δ(x)∣∣22=(f(x)−S∗(x),f(x)−S∗(x))=(f(x),f(x))−(S∗(x),f(x))=∣∣f(x)∣∣22−k=0∑nak∗(∅k(x),f(x)).
例:设f(x)=1+x2f(x)=\sqrt{1+x^2}f(x)=1+x2,求[0,1]上得一次最佳平方逼近多项式。
解:得d0=∫011+x2dx=12ln(1+2)≈1.147d_0=\int_0^1\sqrt{1+x^2}dx=\frac1{2}ln(1+\sqrt2) \approx 1.147d0=∫011+x2dx=21ln(1+2)≈1.147,d1=∫01x1+x2dx≈0.609d_1=\int_0^1x\sqrt{1+x^2}dx \approx 0.609d1=∫01x1+x2dx≈0.609,得方程组:
[11/21/21/3][a0a1]=[1.1470.609] \left[\begin{matrix} 1&1/2\\ 1/2&1/3 \end{matrix}\right]\left[\begin{matrix} a_0\\ a_1 \end{matrix}\right]=\left[\begin{matrix} 1.147\\ 0.609 \end{matrix}\right] [11/21/21/3][a0a1]=[1.1470.609]
解得a0=0.934,a1=0.426,故S1∗(x)=0.934+0.426xa_0=0.934,a_1=0.426,故S_1^*(x)=0.934+0.426xa0=0.934,a1=0.426,故S1∗(x)=0.934+0.426x,平方误差:
∣∣δ(x)∣∣22=(f(x),f(x))−(S1∗(x),f(x))=∫01(1+x2)dx−0.426d1−0.934d0=0.0026 ||\delta(x)||_2^2=(f(x),f(x))-(S^*_1(x),f(x))\\ =\int_0^1(1+x^2)dx-0.426d_1-0.934d_0=0.0026 ∣∣δ(x)∣∣22=(f(x),f(x))−(S1∗(x),f(x))=∫01(1+x2)dx−0.426d1−0.934d0=0.0026
最大误差:∣∣δ(x)∣∣∞=max0≤x≤1∣1+x2−S1∗(x)∣≈0.066||\delta(x)||_{\infty}=max_{0 \leq x \leq1}|\sqrt{1+x^2}-S_1^*(x)|\approx 0.066∣∣δ(x)∣∣∞=max0≤x≤1∣1+x2−S1∗(x)∣≈0.066
但是n较大时系数矩阵高度病态。
4. 用正交函数族作最佳平方逼近
f(x)∈C[a,b]在φf(x)\in C[a,b]在\varphif(x)∈C[a,b]在φ中得最佳平方逼近函数为:
S∗(x)=∑k=0n(f(x),φ(x))∣∣φ(x)∣∣22φ(x) S^*(x)=\sum_{k=0}^n\frac{(f(x),\varphi(x))}{||\varphi(x)||_2^2}\varphi(x) S∗(x)=k=0∑n∣∣φ(x)∣∣22(f(x),φ(x))φ(x)
其中φk(x)\varphi_k(x)φk(x)是正交函数族,均方误差:
∣∣δn(x)∣∣2=∣∣f(x)−Sn∗(x)∣∣2=(∣∣f(x)∣∣22−∑k=0n[f(x),φk(x)∣∣φk(x)∣∣2]2)12 ||\delta_n(x)||_2=||f(x)-S_n^*(x)||_2\\ =\left(||f(x)||_2^2-\sum_{k=0}^n\left[\frac{f(x),\varphi_k(x)}{||\varphi_k(x)||_2} \right]^2\right)^{\frac{1}{2}} ∣∣δn(x)∣∣2=∣∣f(x)−Sn∗(x)∣∣2=(∣∣f(x)∣∣22−k=0∑n[∣∣φk(x)∣∣2f(x),φk(x)]2)21
由此可得贝塞尔不等式:∑k=1n(ak∗∣∣φk(x)∣∣2)2≤∣∣f(x)∣∣−22\sum_{k=1}^n(a_k^*||\varphi_k(x)||_2)^2\leq ||f(x)||-2^2∑k=1n(ak∗∣∣φk(x)∣∣2)2≤∣∣f(x)∣∣−22,
其中ak∗=(f(x),φ(x))/(φk(k),φk(x)),k=0,1,2,...,na_k^*=(f(x),\varphi(x))/(\varphi_k(k),\varphi_k(x)),k=0,1,2,...,nak∗=(f(x),φ(x))/(φk(k),φk(x)),k=0,1,2,...,n
∑k=0∞ak∗φk(x)\sum_{k=0}^{\infty}a_k^*\varphi_k(x)∑k=0∞ak∗φk(x)称为广义傅里叶级数,ak∗a_k^*ak∗为广义傅里叶系数,若正交函数族可以由1,x,x2,...,xn1,x,x^2,...,x^n1,x,x2,...,xn正交化得到,有如下收敛定理:
定理4:设f(x)∈C[a,b],S∗(x)f(x)\in C[a,b],S^*(x)f(x)∈C[a,b],S∗(x)是f(x)的最佳平方逼近多项式,其中{φk(x),k=0,1,...,n\varphi_k(x),k=0,1,...,nφk(x),k=0,1,...,n}是正交多项式族,则又limn→∞∣∣f(x)−Sn∗(x)∣∣2=0lim_{n \rarr \infty}||f(x)-S_n^*(x)||_2=0limn→∞∣∣f(x)−Sn∗(x)∣∣2=0,按勒让德多项式{P0(x),...,Pn(x)P_0(x),...,P_n(x)P0(x),...,Pn(x)}展开得:
Sn∗(x)=a0∗P0(x)=...+an∗Pn(x) S_n^*(x)=a_0^*P_0(x)=...+a_n^*P_n(x) Sn∗(x)=a0∗P0(x)=...+an∗Pn(x)
其中
ak∗(x)=(f(x),Pk(x))(Pk(x),Pk(x))=2k+12∫−11f(x)Pk(x)dx a_k^*(x)=\frac{(f(x),P_k(x))}{(P_k(x),P_k(x))}\\ =\frac{2k+1}{2}\int_{-1}^1f(x)P_k(x)dx ak∗(x)=(Pk(x),Pk(x))(f(x),Pk(x))=22k+1∫−11f(x)Pk(x)dx
平方误差为:
∣∣δk(x)∣∣22=∫−11f2(x)dx−∑k=0n22k+1a∗2 ||\delta_k(x)||_2^2=\int_{-1}^1f^2(x)dx-\sum_{k=0}^n\frac{2}{2k+1}a^{*2} ∣∣δk(x)∣∣22=∫−11f2(x)dx−k=0∑n2k+12a∗2
定理5:设f(x)∈C2[−1,1],Sn∗f(x)\in C^2[-1,1],S_n^*f(x)∈C2[−1,1],Sn∗勒让德展开得,则对任意x∈[−1,1]和所有的ε>0x \in [-1,1]和所有的\varepsilon >0x∈[−1,1]和所有的ε>0,当n充分大时有∣f(x)−Sn∗(x)∣≤εn|f(x)-S_n^*(x)| \leq \frac{\varepsilon}{\sqrt n}∣f(x)−Sn∗(x)∣≤nε。
定理6:在所有最高次项系数为1 的n次多项式中,勒让德多项式Pˉn(x)\bar P_n(x)Pˉn(x)在[-1,1]上与零的 平方误差最小。
例:求f(x)=exf(x)=e^xf(x)=ex在[-1,1]上的三次最佳平方逼近多项式。
解:先计算(f(x),Pˉk(x))(勒让德多项式),k=0,1,2,3(f(x),\bar P_k(x))(勒让德多项式),k=0,1,2,3(f(x),Pˉk(x))(勒让德多项式),k=0,1,2,3,有:
(f(x),P0(x))=∫−11exdx=≈2.3504(f(x),P1(x))=∫−11xexdx=≈0.7358(f(x),P2(x))=∫−11(32x2−12)exdx=≈0.1431(f(x),P3(x))=∫−11(52x3−32x)exdx=≈0.02013 (f(x),P_0(x))=\int_{-1}^1e^xdx= \approx 2.3504\\ (f(x),P_1(x))=\int_{-1}^1xe^xdx=\approx 0.7358\\ (f(x),P_2(x))=\int_{-1}^1(\frac{3}{2}x^2-\frac{1}{2})e^xdx=\approx 0.1431\\ (f(x),P_3(x))=\int_{-1}^1(\frac{5}{2}x^3-\frac{3}{2}x)e^xdx=\approx 0.02013 (f(x),P0(x))=∫−11exdx=≈2.3504(f(x),P1(x))=∫−11xexdx=≈0.7358(f(x),P2(x))=∫−11(23x2−21)exdx=≈0.1431(f(x),P3(x))=∫−11(25x3−23x)exdx=≈0.02013
可知:
a0∗=(f(x),P0(x))/2=1.1752a1∗=3(f(x),P1(x))/2=1.1036a2∗=5(f(x),P2(x))/2=0.3578a3∗=7(f(x),P3(x))/2=0.07046 a_0^*=(f(x),P_0(x))/2=1.1752\\ a_1^*=3(f(x),P_1(x))/2=1.1036\\ a_2^*=5(f(x),P_2(x))/2=0.3578\\ a_3^*=7(f(x),P_3(x))/2=0.07046 a0∗=(f(x),P0(x))/2=1.1752a1∗=3(f(x),P1(x))/2=1.1036a2∗=5(f(x),P2(x))/2=0.3578a3∗=7(f(x),P3(x))/2=0.07046
由此知三次最佳平方逼近多项式:
S∗(x)=0.9963+0.9979x+0.5367x2+0.1761x3S^*(x)=0.9963+0.9979x+0.5367x^2+0.1761x^3S∗(x)=0.9963+0.9979x+0.5367x2+0.1761x3,均方误差为:∣∣δn(x)∣∣2=∣∣ex−S3∗(x)∣∣2=∫−11e2x−∑k=0322k+1ak∗2≤0.0084||\delta_n(x)||_2=||e^x-S^*_3(x)||_2=\sqrt{\int_{-1}^1e^{2x}-\sum^3_{k=0} \frac{2}{2k+1}a_k^{*2}}\leq0.0084∣∣δn(x)∣∣2=∣∣ex−S3∗(x)∣∣2=∫−11e2x−∑k=032k+12ak∗2≤0.0084
最大误差∣∣δn(x)∣∣2=∣∣ex−S3∗(x)∣∣∞≤0.0112||\delta_n(x)||_2=||e^x-S_3^*(x)||_{\infty}\leq0.0112∣∣δn(x)∣∣2=∣∣ex−S3∗(x)∣∣∞≤0.0112。
{持续更新}
欢迎扫描二维码关注微信公众号 深度学习与数学 [每天获取免费的大数据、AI等相关的学习资源、经典和最新的深度学习相关的论文研读,算法和其他互联网技能的学习,概率论、线性代数等高等数学知识的回顾]