第二章多项式与插值 来源于实际、又广泛用于实际。 多项式插值的主要目的是用一个多项式 拟合离散点上的函数值,使得可以用该 多项式估计数据点之间的函数值 可导出数值积分方法,有限差分近似 关注插值多项式的表达式、精度、选点 效果
第二章 多项式与插值 • 来源于实际、又广泛用于实际。 • 多项式插值的主要目的是用一个多项式 拟合离散点上的函数值,使得可以用该 多项式估计数据点之间的函数值。 • 可导出数值积分方法,有限差分近似 • 关注插值多项式的表达式、精度、选点 效果
21关于多项式 MATLAB命令 一个多项式的幂级数形式可表示为: y=C1x+C2x+…+Cnx+Cn+ 也可表为嵌套形式 y=(…(x+C2)x+C3)x…+Cn)x+CnH1 或因子形式 (x-71)(x-12)…(x-n) N阶多项式n个根,其中包含重根和复根。若多 项式所有系数均为实数,则全部复根都将以共轭对 的形式出现
2.1 关于多项式MATLAB命令 • 一个多项式的幂级数形式可表示为: • 也可表为嵌套形式 • 或因子形式 N阶多项式n个根,其中包含重根和复根。若多 项式所有系数均为实数,则全部复根都将以共轭对 的形式出现 1 1 2 1 n n n n y c x c x c x c − = + + + + + 1 2 3 1 ( (( ) ) )n n y c x c x c x c x c = + + + + + 1 1 2 ( )( ) ( )n y c x r x r x r = − − −
幂系数:在 MATLAB里,多项式用行向量表示,其 元素为多项式的系数,并从左至右按降幂排列。 例 y=2x2+x2+4x+5 被表示为>p=[2145] poly asym(p) ans≡ 2*x^3+X^2+4*x+5 Roots:多项式的零点可用命令 roots求的 例:>r= roots(p)得到 0.2500+1.5612 0.2500-1.5612i 1.0000 所有零点由一个列向量给出
• 幂系数:在MATLAB里,多项式用行向量表示,其 元素为多项式的系数,并从左至右按降幂排列。 例: 被表示为 >> p=[2 1 4 5] >> poly2sym(p) ans = 2*x^3+x^2+4*x+5 • Roots: 多项式的零点可用命令roots求的。 例: >> r=roots(p) 得到 r = 0.2500 + 1.5612i 0.2500 - 1.5612i -1.0000 所有零点由一个列向量给出。 3 2 y x x x = + + + 2 4 5
Poly:由零点可得原始多项式的各系数,但可能相差 个常数倍。 例:>poly( ans 1.00000.50002.00002.5000 注意:若存在重根,这种转换可能会降低精度。 例:y=(x-1=x6-6x3+15x1-20x3+15x2-6x+1 >> roots([1-615-2015-61] 1.0042+0.0025i 1.0042-0.00251 1.0000+0.0049i 1.0000-0.00491 0.9958+0.00241 0.9958-0.0024i 舍入误差的影响,与计算精度有关
• Poly: 由零点可得原始多项式的各系数,但可能相差 一个常数倍。 例: >> poly(r) ans = 1.0000 0.5000 2.0000 2.5000 注意:若存在重根,这种转换可能会降低精度。 例: >> r=roots([1 -6 15 -20 15 -6 1]) r = 1.0042 + 0.0025i 1.0042 - 0.0025i 1.0000 + 0.0049i 1.0000 - 0.0049i 0.9958 + 0.0024i 0.9958 - 0.0024i 舍入误差的影响,与计算精度有关。 6 6 5 4 3 2 y x x x x x x x = − = − + − + − + ( 1) 6 15 20 15 6 1
polyol:可用命令 polyol计算多项式的值。 例 +2x2+x+1计算y(25) >>C=[3,-7,2,1,1;xi=2.5,y= polyol(c,xi 23.8125 如果x是含有多个横坐标值的数组,则y也 为与xi长度相同的向量。 C=[3,-7,2,121,Xi=[25,3 yi=polyval(c, xi) yl 23.812576.0000
• polyval: 可用命令polyval计算多项式的值。 例: 计算y(2.5) >> c=[3,-7,2,1,1]; xi=2.5; yi=polyval(c,xi) yi = 23.8125 如果xi是含有多个横坐标值的数组,则yi也 为与xi长度相同的向量。 >> c=[3,-7,2,1,1]; xi=[2.5,3]; >> yi=polyval(c,xi) yi = 23.8125 76.0000 4 3 2 y x x x x = − + + + 3 7 2 1