数值分析(3) |
您所在的位置:网站首页 › 多项式近似算法公式推导方法是什么 › 数值分析(3) |
整理一下数值分析的笔记~ 目录: 1. 误差 2. 多项式插值与样条插值(THIS) 3. 函数逼近 4. 数值积分与数值微分 5. 线性方程组的直接解法 6. 线性方程组的迭代解法 7. 非线性方程求根 8. 特征值和特征向量的计算 9. 常微分方程初值问题的数值解 1. 差商(均差)及其性质定义1.设 f ( x ) f(x) f(x)在互异节点 x i x_i xi处的函数值为 f i , i = 0 , 1 , . . . , n f_i,i=0,1,...,n fi,i=0,1,...,n,称 f [ x i , x j ] = f i − f j x i − x j f[x_i,x_j]=\frac{f_i-f_j}{x_i-x_j} f[xi,xj]=xi−xjfi−fj为 f ( x ) f(x) f(x)关于节点 x i , x j x_i,x_j xi,xj的一阶差商, f [ x i , x j , x k ] = f [ x i , x k ] − f [ x i , x j ] x k − x j f[x_i,x_j,x_k]=\frac{f[x_i,x_k]-f[x_i,x_j]}{x_k-x_j} f[xi,xj,xk]=xk−xjf[xi,xk]−f[xi,xj]为 f ( x ) f(x) f(x)关于 x i , x j , x k x_i,x_j,x_k xi,xj,xk的二阶差商,以此类推k阶差商: f [ x 0 , x 1 , . . . , x k − 1 , x k ] = f [ x 0 , x 1 , . . . , x k − 1 ] − f [ x 0 , x 1 , . . . , x k − 2 , x k ] x k − 1 − x k f[x_0,x_1,...,x_{k-1},x_k]=\frac{f[x_0,x_1,...,x_{k-1}]-f[x_0,x_1,...,x_{k-2},x_k]}{x_{k-1}-x_k} f[x0,x1,...,xk−1,xk]=xk−1−xkf[x0,x1,...,xk−1]−f[x0,x1,...,xk−2,xk] 差商的性质: 差商具有对称性,任意调换节点的次序,差商的值不变 当 f k ( x ) f^{k}(x) fk(x)在包含节点 x 0 , x 1 , . . . , x k x_0,x_1,...,x_k x0,x1,...,xk的区间存在时,在 x 0 , x 1 , . . . , x k x_0,x_1,...,x_k x0,x1,...,xk之间必存在一点 ξ \xi ξ使得: f [ x 0 , x 1 , . . . , x k ] = f k ( ξ ) k ! f[x_0,x_1,...,x_k]=\frac{f^{k}(\xi)}{k!} f[x0,x1,...,xk]=k!fk(ξ) eg.给出函数y=f(x)的函数表,写出函数的查商表。 i0123 x i x_i xi-2-112 f ( x i ) f(x_i) f(xi)531721如下: x i x_i xi f ( x i ) f(x_i) f(xi)一阶差商二阶差商三阶差商-25-13-2117732214-1-1 2. 牛顿基本插值公式定义2.称多项式: N n ( x ) = a 0 + a 1 ( x − x 0 ) + a 2 ( x − x 0 ) ( x x 1 ) + . . . + a n ( x − x 0 ) ( x − x 1 ) . . . ( x − x n − 1 ) = f 0 + ∑ k = 1 n f [ x 0 , x 1 , . . . , x k ] ω k ( x ) 其 中 ω k ( x ) = ∏ j = 0 k − 1 ( x − x j ) N_n(x)=a_0+a_1(x-x_0)+a_2(x-x_0)(x_x1)+...+\\ a_n(x-x_0)(x-x_1)...(x-x_{n-1})\\ =f_0+\sum^{n}_{k=1}f[x_0,x_1,...,x_k]\omega_k(x)\\ 其中\omega_k(x)=\prod^{k-1}_{j=0}(x-x_j) Nn(x)=a0+a1(x−x0)+a2(x−x0)(xx1)+...+an(x−x0)(x−x1)...(x−xn−1)=f0+k=1∑nf[x0,x1,...,xk]ωk(x)其中ωk(x)=j=0∏k−1(x−xj) 为 f ( x ) f(x) f(x)关于节点 x i x_i xi的n次Newton基本插值多项式,由于插值多项式具有唯一性,所以牛顿基本插值公式余项为: R n ( x ) = f ( x ) − N n ( x ) = f ( n + 1 ) ( ξ ) ( n + 1 ) ! ω n + 1 ( x ) R_n(x)=f(x)-N_n(x)=\frac{f^{(n+1)}(\xi)}{(n+1)!}\omega_{n+1}(x) Rn(x)=f(x)−Nn(x)=(n+1)!f(n+1)(ξ)ωn+1(x) eg.给出f(x)的函数表,求四次牛顿插值多项式。 x i x_i xi f ( x k ) f(x_k) f(xk)一阶均差二阶均差三阶均差四阶均差0.400.410750.550.578151.116000.650.696751.186000.280000.800.888111.275730.358930.197330.901.026521.384100.433480.213000.03134(五次均差较小近似0),按四次牛顿插值公式带入数据: N 4 ( x ) = 0.41075 + 1.116 ( x − 0.4 ) + 0.28 ( x − 0.4 ) ( x − 0.55 ) + 0.19733 ( x − 0.4 ) ( x − 0.55 ) ( x − 0.65 ) + 0.03134 ( x − 0.4 ) ( x − 0.55 ) ( x − 0.65 ) ( x − 0.8 ) N_4(x)=0.41075+1.116(x-0.4)+0.28(x-0.4)(x-0.55)\\ +0.19733(x-0.4)(x-0.55)(x-0.65)\\ +0.03134(x-0.4)(x-0.55)(x-0.65)(x-0.8) N4(x)=0.41075+1.116(x−0.4)+0.28(x−0.4)(x−0.55)+0.19733(x−0.4)(x−0.55)(x−0.65)+0.03134(x−0.4)(x−0.55)(x−0.65)(x−0.8) 3. 差分及其性质定义3.设f(x)在等距节点 x k = x 0 + k h x_k=x_0+kh xk=x0+kh处的函数值为 f k , k = 0 , 1 , , . . . , n f_k,k=0,1,,...,n fk,k=0,1,,...,n,称: Δ f k = f k + 1 − f k , k = 0 , 1 , . . . , n − 1 为 f ( x ) 在 x k 处 的 一 阶 向 前 差 分 ∇ f k = f k − f k − 1 , k = 1 , 2 , . . . , n 为 f ( x ) 在 x k 处 的 一 阶 向 后 差 分 Δ 2 f k = Δ f k + 1 − Δ f k , k = 0 , 1 , . . . , n − 1 为 f ( x ) 在 x k 处 的 二 阶 向 前 差 分 ∇ 2 f k = ∇ f k − ∇ f k − 1 , k = 1 , 2 , . . . , n 为 f ( x ) 在 x k 处 的 二 阶 向 后 差 分 . . . 以 此 类 推 : Δ m f k = Δ m − 1 f k + 1 − Δ m − 1 f k − 1 为 f ( x ) 在 x k 处 的 m 阶 向 前 差 分 ∇ m f k = ∇ m − 1 f k − ∇ m − 1 f k − 1 为 f ( x ) 在 x k 处 的 m 阶 向 后 差 分 。 可 以 证 明 Δ m f k = ∇ m f k + m \Delta f_k=f_{k+1}-f_k,k=0,1,...,n-1 \\ 为f(x)在x_k处的一阶向前差分\\ \nabla f_k=f_k-f_{k-1},k=1,2,...,n\\ 为f(x)在x_k处的一阶向后差分\\ \Delta ^2 f_k=\Delta f_{k+1}-\Delta f_k,k=0,1,...,n-1 \\ 为f(x)在x_k处的二阶向前差分\\ \nabla^2f_k=\nabla f_k-\nabla f_{k-1},k=1,2,...,n\\ 为f(x)在x_k处的二阶向后差分\\ ...\\ 以此类推:\\ \Delta ^mf_k=\Delta^{m-1}f_{k+1}-\Delta^{m-1}f_{k-1}\\ 为f(x)在x_k处的m阶向前差分\\ \nabla ^mf_k=\nabla^{m-1}f_k-\nabla^{m-1}f_{k-1}\\ 为f(x)在x_k处的m阶向后差分。\\ 可以证明\Delta ^mf_k=\nabla^mf_{k+m} Δfk=fk+1−fk,k=0,1,...,n−1为f(x)在xk处的一阶向前差分∇fk=fk−fk−1,k=1,2,...,n为f(x)在xk处的一阶向后差分Δ2fk=Δfk+1−Δfk,k=0,1,...,n−1为f(x)在xk处的二阶向前差分∇2fk=∇fk−∇fk−1,k=1,2,...,n为f(x)在xk处的二阶向后差分...以此类推:Δmfk=Δm−1fk+1−Δm−1fk−1为f(x)在xk处的m阶向前差分∇mfk=∇m−1fk−∇m−1fk−1为f(x)在xk处的m阶向后差分。可以证明Δmfk=∇mfk+m 在等距节点的前提下,差商和差分有如下关系: f [ x i , x i + 1 , . . . , x i + m ] = Δ m f i m ! ⋅ h m = ∇ m f i + m m ! ⋅ h m f[x_i,x_{i+1},...,x_{i+m}]=\frac{\Delta^mf_i}{m!\cdot h^m}=\frac{\nabla^mf_{i+m}}{m! \cdot h^m} f[xi,xi+1,...,xi+m]=m!⋅hmΔmfi=m!⋅hm∇mfi+m 4. 牛顿向前向后插值公式牛顿前插公式: N n ( x 0 + t h ) = f 0 + t Δ f 0 + t ( t − 1 ) 2 ! Δ 2 f 0 + . . . + t ( t − 1 ) . . . ( t − n + 1 ) n ! Δ n f 0 N_n(x_0+th)=f_0+t\Delta f_0+\frac{t(t-1)}{2!}\Delta^2f_0+...+\\ \frac{t(t-1)...(t-n+1)}{n!}\Delta^nf_0\\ Nn(x0+th)=f0+tΔf0+2!t(t−1)Δ2f0+...+n!t(t−1)...(t−n+1)Δnf0 前插公式余项: R n ( x ) = t ( t − 1 ) . . . ( t − n ) ( n + 1 ) ! h n + 1 f ( n + 1 ) ( ξ ) , ξ ∈ ( x 0 , x n ) R_n(x)=\frac{t(t-1)...(t-n)}{(n+1)!}h^{n+1}f^{(n+1)}(\xi),\xi \in(x_0,x_n) Rn(x)=(n+1)!t(t−1)...(t−n)hn+1f(n+1)(ξ),ξ∈(x0,xn) 牛顿后插公式: N n ( x 0 + t h ) = f n + t ∇ f n + t ( t + 1 ) 2 ! ∇ 2 f n + . . . + t ( t + 1 ) . . . ( t + n − 1 ) n ! ∇ n f n N_n(x_0+th)=f_n+t\nabla f_n+\frac{t(t+1)}{2!}\nabla^2f_n+...+\\ \frac{t(t+1)...(t+n-1)}{n!}\nabla^nf_n\\ Nn(x0+th)=fn+t∇fn+2!t(t+1)∇2fn+...+n!t(t+1)...(t+n−1)∇nfn 后插公式余项: R n ( x ) = t ( t + 1 ) . . . ( t + n ) ( n + 1 ) ! h n + 1 f ( n + 1 ) ( ξ ) , ξ ∈ ( x 0 , x n ) R_n(x)=\frac{t(t+1)...(t+n)}{(n+1)!}h^{n+1}f^{(n+1)}(\xi),\xi \in(x_0,x_n) Rn(x)=(n+1)!t(t+1)...(t+n)hn+1f(n+1)(ξ),ξ∈(x0,xn) eg.给出 f ( x ) = c o s x f(x)=cosx f(x)=cosx在 x k = k h , k = 0 , 1 , . . . , 6 , h = 0.1 x_k=kh,k=0,1,...,6,h=0.1 xk=kh,k=0,1,...,6,h=0.1处的函数值,用四次等距节点插值公式计算f(0.048)及f(0.566)的近似值并估计误差。 解: 根据题意插值条件为 x k x_k xk00.10.20.30.40.50.6 f ( x k ) f(x_k) f(xk)1.000000.995000.980070.955340.921060.877580.82534 1. 构造差分表 一阶二阶三阶四阶五阶-0.005-0.00993-0.014930.00013-0.00980.00012-0.024730.00025-0.00002-0.009550.00010-0.034280.00035-0.00001-0.009200.00009-0.043480.00044-0.00876-0.05224差分表中斜体数字是 x 0 x_0 x0处的各阶向前差分,黑体是 X 6 X_6 X6处的各阶向后差分。 2.应用牛顿前插公式计算 f ( 0.048 ) f(0.048) f(0.048)的近似值取 x = 0.048 , x 0 = 0 , h = 0.1 , 则 t = x − x 0 h = 0.48 , 用 差 分 表 中 的 各 阶 向 前 差 分 , 得 : f ( 0.048 ) = c o s 0.048 ≈ N 4 ( 0.048 ) = f 0 + t Δ f 0 + t ( t − 1 ) 2 ! Δ 2 f 0 + . . . + t ( t − 1 ) . . . ( t − n + 1 ) n ! Δ n f 0 = 1.000 + 0.48 × ( − 0.00500 ) + ( 0.48 ) ( 0.48 − 1 ) 2 ! ( − 0.00993 ) + ( 0.48 ) ( 0.48 − 1 ) ( 0.48 − 2 ) 3 ! ( 0.00013 ) + ( 0.48 ) ( 0.48 − 1 ) ( 0.48 − 2 ) ( 0.48 − 3 ) 4 ! ( 0.00012 ) = 0.99885 取x=0.048,x_0=0,h=0.1,则t=\frac{x-x_0}{h}=0.48,\\ 用差分表中的各阶向前差分,得:\\ f(0.048)=cos0.048\approx N_4(0.048)\\ =f_0+t\Delta f_0+\frac{t(t-1)}{2!}\Delta^2f_0+...+\\ \frac{t(t-1)...(t-n+1)}{n!}\Delta^nf_0\\ =1.000+0.48 \times (-0.00500)+\frac{(0.48)(0.48-1)}{2!}(-0.00993)\\ +\frac{(0.48)(0.48-1)(0.48-2)}{3!}(0.00013)\\ +\frac{(0.48)(0.48-1)(0.48-2)(0.48-3)}{4!}(0.00012)=0.99885 取x=0.048,x0=0,h=0.1,则t=hx−x0=0.48,用差分表中的各阶向前差分,得:f(0.048)=cos0.048≈N4(0.048)=f0+tΔf0+2!t(t−1)Δ2f0+...+n!t(t−1)...(t−n+1)Δnf0=1.000+0.48×(−0.00500)+2!(0.48)(0.48−1)(−0.00993)+3!(0.48)(0.48−1)(0.48−2)(0.00013)+4!(0.48)(0.48−1)(0.48−2)(0.48−3)(0.00012)=0.99885 根据牛顿前插余项公式的误差估计: ∣ R 4 ( x ) ∣ ≤ M 5 5 ! ∣ t ( t − 1 ) ( t − 2 ) ( t − 3 ) ( t − 4 ) ∣ h 5 , 其 中 x = 0.048 , h = 0.1 , t = 0.48 , M 5 是 c o s x 的 五 次 导 函 数 在 区 间 [ 0 , 0.6 ] 上 绝 对 值 的 最 大 值 , 有 ∣ M 5 ∣ ≤ ∣ s i n 0.6 ∣ ≤ 0.565 可 知 ∣ R 4 ( 0.048 ) ∣ ≤ 1.5845 × 1 0 − 7 [ 0.5 × 1 0 − 6 |R_4(x)| \leq \frac{M_5}{5!}|t(t-1)(t-2)(t-3)(t-4)|h^5,\\ 其中x=0.048,h=0.1,t=0.48,\\ M_5是cosx的五次导函数在区间[0,0.6]上绝对值的最大值,有|M_5|\leq|sin0.6| \leq0.565\\ 可知|R_4(0.048)|\leq1.5845 \times 10^{-7} [0.5 \times 10^{-6} ∣R4(x)∣≤5!M5∣t(t−1)(t−2)(t−3)(t−4)∣h5,其中x=0.048,h=0.1,t=0.48,M5是cosx的五次导函数在区间[0,0.6]上绝对值的最大值,有∣M5∣≤∣sin0.6∣≤0.565可知∣R4(0.048)∣≤1.5845×10−7[0.5×10−6 3. 应用牛顿后插公式计算f(0.566)的近似值x = 0.566 , x 6 = 0.6 , h = 0.1 , 则 t = x − x 6 h = − 0.34 用 差 分 表 中 下 半 部 的 各 阶 向 后 差 分 得 : f ( 0.566 ) = c o s 0.0566 ≈ N 4 ( 0.566 ) = f n + t ∇ f n + t ( t + 1 ) 2 ! ∇ 2 f n + . . . + t ( t + 1 ) . . . ( t + n − 1 ) n ! ∇ n f n = 0.82534 + ( − 0.34 ) × ( − 0.05224 ) + − 0.34 ( − 0.34 + 1 ) 2 ! × ( − 0.00867 ) + − 0.34 ( − 0.34 + 1 ) ( − 0.34 + 2 ) 3 ! × ( − 0.00044 ) + − 0.34 ( − 0.34 + 1 ) ( − 0.34 + 2 ) ( − 0.34 + 3 ) 4 ! × ( 0.00009 ) = 0.84405 于 是 f ( 0.566 ) = c o s 0.566 ≈ 0.84405 x=0.566,x_6=0.6,h=0.1,则t=\frac{x-x_6}{h}=-0.34\\ 用差分表中下半部的各阶向后差分得: f(0.566)=cos0.0566\approx N_4(0.566)\\ =f_n+t\nabla f_n+\frac{t(t+1)}{2!}\nabla^2f_n+...+\\ \frac{t(t+1)...(t+n-1)}{n!}\nabla^nf_n\\ =0.82534+(-0.34)\times(-0.05224)\\ +\frac{-0.34(-0.34+1)}{2!}\times(-0.00867)\\ +\frac{-0.34(-0.34+1)(-0.34+2)}{3!}\times(-0.00044)\\ +\frac{-0.34(-0.34+1)(-0.34+2)(-0.34+3)}{4!}\times(0.00009)\\ =0.84405\\ 于是f(0.566)=cos0.566\approx0.84405 x=0.566,x6=0.6,h=0.1,则t=hx−x6=−0.34用差分表中下半部的各阶向后差分得:f(0.566)=cos0.0566≈N4(0.566)=fn+t∇fn+2!t(t+1)∇2fn+...+n!t(t+1)...(t+n−1)∇nfn=0.82534+(−0.34)×(−0.05224)+2!−0.34(−0.34+1)×(−0.00867)+3!−0.34(−0.34+1)(−0.34+2)×(−0.00044)+4!−0.34(−0.34+1)(−0.34+2)(−0.34+3)×(0.00009)=0.84405于是f(0.566)=cos0.566≈0.84405 根据牛顿后插公式余项得: ∣ R 5 ( x ) ∣ ≤ M 5 5 ! ∣ t ( t + 1 ) ( t + 2 ) ( t + 3 ) ( t + 4 ) ∣ h 5 其 中 x = 0.566 , x 6 = 0.6 , h = 0.1 t = x − x 6 h = − 0.34 ∣ M 5 ∣ ≤ ∣ s i n 0.6 ∣ ≤ 0.565 得 ∣ R 5 ( 0.566 ) ∣ ≤ 1.7064 × 1 0 − 7 [ 0.5 × 1 0 − 6 ] |R_5(x)|\leq\frac{M_5}{5!}|t(t+1)(t+2)(t+3)(t+4)|h^5\\ 其中x=0.566,x_6=0.6,h=0.1\\ t=\frac{x-x_6}{h}=-0.34\\ |M_5|\leq|sin0.6|\leq0.565\\ 得|R_5(0.566)|\leq1.7064 \times 10^{-7} [0.5 \times 10^{-6}] ∣R5(x)∣≤5!M5∣t(t+1)(t+2)(t+3)(t+4)∣h5其中x=0.566,x6=0.6,h=0.1t=hx−x6=−0.34∣M5∣≤∣sin0.6∣≤0.565得∣R5(0.566)∣≤1.7064×10−7[0.5×10−6] 5. 牛顿插值多项式小结优点:计算简单 缺点:和拉格朗日插值方法相同,插值曲线在节点处有尖点,不光滑,节点处不可导 {持续更新} 欢迎扫描二维码关注微信公众号 深度学习与数学 [每天获取免费的大数据、AI等相关的学习资源、经典和最新的深度学习相关的论文研读,算法和其他互联网技能的学习,概率论、线性代数等高等数学知识的回顾] |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |