《拉格朗日插值法程序设计.pdf》由会员分享,可在线阅读,更多相关《拉格朗日插值法程序设计.pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、计算方法实验报告 第1页 拉格朗日插值法程序设计 一、实验目的 1)掌握常用的插值方法,求函数的近似表达式,解决实际问题。2)明确插值多项式和分段插值多项式的优缺点。3)学会插值方法的程序设计。二、实验设备和实验环境 操作系统:Windows XP Professional 软件:MATLAB7.0或Visual C+6.0 三、实验内容:已知实验数据如下表所示,试用拉格朗日插值多项式求 5645.0,5635.0,5625.0 x 的值。ix 0.56160 0.56280 0.56401 0.56521 iy 0.82741 0.82659 0.82577 0.82495 四、算法描述:已
2、 知(x),n),L,)(if(x及yx,x,xxniin10210为 不 超 过 次 多 项 式 且 满 足),1,0()(niyxLiin 易知 Ln(x)=l0(x)y0+ln(x)yn,其中 li(x)均为 n 次多项式,再由 xj(j i)为n次多项式 li(x)的 n 个根知nijjjixxAxl0k)(,其中 Ak为待定系数,由 1)(0nijjjkixxAxl)(,得到 nixxAnijjjk,1,0,10)(故:nijjjinijjjixxxxxl00)()()(对应每一节点 xi(0 i n),都能求出满足插值条件的 n 次插值多项式,从而可以求出 n+1 个计算方法实验报
3、告 第2页 n 次插值多项式 l0(x),l1(x),ln(x)。进而,根据插值节点 x 求出插值结果y。五、实验结果与分析(一)实验源程序 function f,f0=Languages(x,y,x0)%求已知数据点的拉格朗日插值多项式%x:已知数据点 x 坐标向量%y:已知数据点 y 坐标向量%x0:插值点 x 的坐标%f:求得的拉格朗日插值多项式%f0:x0 处的插值 syms t;if(length(x)=length(y)n=length(x);else disp(x 和 y 的维数不一样!);return;end%检错 f=0.0;for i=1:n p=y(i);for(j=1:
4、i-1)p=p*(t-x(j)/(x(i)-x(j);end;for(j=i+1:n)p=p*(t-x(j)/(x(i)-x(j);end;f=f+p;end f0=subs(f,t,x0)计算方法实验报告 第3页 (二)实验数据 x 0.5626 0.5636 0.5646 MATLAB 程序(1)如下:MATLAB 程序(2)如下:(二)实验结果分析 程序结果:运行结果(1):计算方法实验报告 第4页 运行结果(2):分析:Lagrange 插值公式是一个累加累乘的二重算法,结构紧凑,其各个节点地位对等,形式也很对称,从数学的角度讲,这个公式很漂亮。不过,Lagrange 插值公式也有很大的缺点,在实际应用中,如果临时需要增添一个节点,则其所有系数都要重算,这势必照成计算量的浪费。在利用 Lagrange 插值公式进行高次插值的时候,很容易出现龙格现象,这说明对于某些插值,并不是插值的次数越多,结果越精准。对待问题应该根据情况进行分析,才能合理求出自己需要的结果。