实验目的: (1)由函数的个节点处函数值得出次Lagrange插值函数; (2)由函数的个节点处函数值得出次Newton插值函数; (3)由函数的个节点处函数值得出Hermite插值函数或分段三次Hermite函数; (4)由未知函数的离散数据得出最小二乘拟合函数。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
实验仪器: 1、支持Intel Pentium Ⅲ及其以上CPU,内存256MB以上、硬盘1GB以上容量的微机; 软件配有Windows98/2000/XP操作系统及MATLAB软件等。 2、了解MATLAB等软件的特点及系统组成,在电脑上操作MATLAB等软件。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
实验内容、步骤及程序: 一、Lagrange插值函数 程序: function yi=lg201541110131(x,y,xin) n=length(x); p=zeros(1,n); for k=1:n t=ones(1,n); for j=1:n if j~=k t(j)=(xin-x(j))/(x(k)-x(j)); end end p(k)=prod(t); end yi=sum(y.*p); 题目:设f(x)=lnx并已知f(x)的数据如下表:
试用Lagrange插值多项式来计算ln(0.6)的近似值并估计误差。 运行结果: format long x=[0.40 0.50 0.70];y=[-0.916291 -0.693147 -0.356675];xin=0.6;yi=lg201541110131(x,y,xin) 代谢yi = -0.50660833333333 jqz=log(0.6) jqz = -0.51082562376599 wc=yi-jqz wc = 0.00421729043266 x=[0.70 0.80 0.90];y=log(x);xin=0.6;yi=lg201541110131(x,y,xin)钚239 yi = -0.50595469353139 wc=yi-jqz wc = 0.00487093023460 数据分析: 表:ln(0.6)
小结: 根据以上的数据分析得内插的误差较小,要使x的结果更接近真实值,则要选择内插进行插值,并且插值区间[a,b]越小更接近真实值。运用插值法时要注意几个问题:(1)如果f(x)本身是次数不超过n的多项式,那么满足n+1个插值条件多项式就是它自身;(2)如果插值区间[a,b]很大,那么对给定的x,|wn+1(x)|的值一般会很大,因此,误差可能很大;(3)插值多项式一般仅用来估计插值区间内点的函数值。 二、Newton插值函数 程序: function [ndcz,Y]=nd201541110131(x,y,xin) n=length(x);Y=zeros(n);Y(:,1)=y'; for k=1:n-1 for i=1:n-k Y(i,k+1)=(Y(i+1,k)-Y(i,k))/(x(i+k)-x(i)); end end ndcz=0; for i=1:n z=1; for k=1:i-1 z=z*(xin-x(k)); end ndcz=ndcz+Y(1,i)*z; End 题目:设f(x)=lnx并已知f(x)的数据如下表:
试用Newton插值多项式来计算ln(0.6)的近似值并估计误差。 运行结果: x=[0.40 0.50 0.70];y=[-0.916291 -0.693147 -0.356675];xin=0.6;[ndcz,Y]=nd201541110131(x,y,xin) ndcz = -0.50660833333333 Y = -0.91629100000000 2.23144000000000 -1.83026666666667 -0.69314700000000 1.68236000000000 0 -0.35667500000000 0 0 大头蚁属jsz=log(0.6) jsz = -0.51082562376599 wc=ndcz-jsz wc = 0.00421729043266 数据分析:
表:ln(0.6)
小结: 根据以上的数据分析得Newton插值和Lagrange插值对于计算函数的值是相同的,误差也是相同的,这就说明Newton插值和Lagrange插值在一定程度上近似值相同。 Newton插值多项式便于逐步增加节点,并且计算过程中能估计误差,带导数的插值多项式适合于已知导数情形,当n较大时,这些方法都有数值不稳定的缺陷。 三、Hermite插值函数 程序: function f=Hermite201541110131(x,y,dy,xin) syms s;f=0.0;n=length(x); for i=1:n la=1;lp=0.0; for j=1:n if j~=i la=la*(s-x(j))/(x(i)-x(j)); lp=lp+1/(x(i)-x(j)); end end temp1=1-2*(s-x(i))*lp; %lp即为拉格朗基函数在当前节点xi处的倒数值 temp2=y(i)*temp1*la^2; temp3=dy(i)*(s-x(i))*la^2; f=f+temp2+temp3; end f=simplify(f); %合并同类项化简 if nargin==3 f=subs(f,s,'x');f=vpa(f,4); end if nargin==4 f=subs(f,s,xin); end 题目: 已知函数y=lnx的数据如下表:
试用Hermite插值多项式来计算ln(0.64)的近似值并估计误差。 运行结果: x=[0.5 0.6 0.7];y=[-0.693147 -0.510826 -0.356675];dy=[2 1.666667 1.428571];xin=0.64; f=Hermite201541110131(x,y,dy,xin) f = -0.44628695753600 jqz=log(0.64) jqz = -0.44628710262842 wc=f-jqz wc = 1.450924181356506e-007 数据分析: 表:ln(0.64)
小结: 根据以上的数据分析得Hermite插值函数误差比Newton插值函数和Lagrange插值 函数都要小,误差在十万分之一以上。当同时知道函数和导数值时,可以采用分段3次Hermite插值,3次样条插值函数不仅在内节点处二阶导数是连续的,而且具有很好的逼近性和收敛性。 四、最小二乘拟合函数 程序: function S=nihe201541110131(x,y,n,w) global i;global j;xsjz=zeros(n+1); for i=0:n for j=0:n; xsjz(i+1,j+1)=sum(w.*jhs(x,i).*jhs(x,j)); end end csx=zeros(n+1,1); for i=0:n csx(i+1)=sum((w.*jhs(x,i)).*y); end S=xsjz\csx; function jihanshu=jhs(x,k) jihanshu=x.^k; 题目: 用多项式拰合表中的离散数据,做最小二乘拟合函数拰合。
运行结果: x=[0.00 0.25 0.50 0.75 1.00];y=[0.10 0.35 0.81 1.09 1.96];n=2;w=1;S=nihe201541110131(x,y,n,w) S = 0.12142857142857 0.57257142857143 1.21142857142857 plot(x,y,'*') hold on xni=0:0.1:1;yni=S(1)+S(2)*xni+S(3)*xni.^2;plot(xni,yni,'g-') hold on x 化学战争 x=[0.00 0.25 0.50 0.75 1.00];y=[0.10 0.35 0.81 1.09 1.96];n=3;w=1;S=nihe201541110131(x,y,n,w) S = .0834******** -1.82857142857162 2.02666666666679 plot(x,y,'*') hold on xni=0:0.1:1;yni=S(1)+S(2)*xni+S(3)*xni.^2+S(4)*xni.^3;plot(xni,yni,'r-') hold on x 数据分析: n=3时,f(x)图像 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
n=2时,f(x)图像 小结: 根据以上的数据分析得当n=3时拟合度较高,最小二乘法在应用科学中有重要的应用,最佳平方逼近和曲线拟合分别要求误差平方的积分和误差平方之和最小。但在许多实际问题中,变量之间的关系不一定能用多项式很好的拟合。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
教师评语: 1.实验结果及解释:( 准确合理、 较准确、 不合理 ); 2.实验步骤的完整度:( 完整、 中等、 不完整 ); 3.实验程序的正确性:( 很好、 较好、 中等、 较差、 很差 ); 4.卷面整洁度:( 很好、 较好、 中等、 较差、 很差 ); 评定等级:( ) 教师签名: 日期: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
本文发布于:2024-09-20 17:26:26,感谢您对本站的认可!
本文链接:https://www.17tex.com/xueshu/633825.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |