资源描述:
《清华大学_计算方法(数学实验)实验2插值与拟合》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验2插值与拟合系班姓名学号【实验目的】1、掌握用MATLAB计算拉格朗日、分段线性、三次样条三种插值的方法,改变节点的数目,对三种插值结果进行初步分析。2、掌握用MATLAB作线性最小二乘的方法。3、通过实例学习如何用插值方法与拟合方法解决实际问题,注意二者的联系和区别。【实验内容】预备:编制计算拉格朗日插值的M文件:以下是拉格朗日插值的名为y_lagrl的M文件:functiony=y_lagr1(x0,y0,x)n=length(x0);m=length(x);fori=1:mz=x(i);s=0.0;fork=1:np=1.0;forj
2、=1:nifj~=kp=p*(z-x0(j))/(x0(k)-x0(j));endends=p*y0(k)+s;endy(i)=s;end第1题(d)选择函数y=exp(-x2)(-2≤x≤2),在n个节点上(n不要太大,如5~11)用拉格朗日、分段线性、三次样条三种插值方法,计算m个插值点的函数值(m要适中,如50~100)。通过数值和图形输出,将三种插值结果与精确值进行比较。适当增加n,在作比较,由此作初步分析。运行如下程序:n=7;m=61;x=-2:4/(m-1):2;y=exp(-x.^2);z=0*x;x0=-2:4/(n-1):2
3、;y0=exp(-x0.^2);y1=y_lagr1(x0,y0,x);y2=interp1(x0,y0,x);y3=interp1(x0,y0,x,'spline');[x'y'y1'y2'y3']plot(x,z,'w',x,y,'r--',x,y1,'b:',x,y2,'m',x,y3,'b')gtext('y=exp(-x^2)'),gtext('Lagr.'),gtext('Piece.-linear.'),gtext('Spline'),运行后,得到各节点和插值点的值如下:Xyy1y2y300.06670.13330.2000……0
4、.86670.93331.0000……1.60001.6667……1.93332.00001.00001.00001.00001.00000.99560.99580.96410.99470.98240.98310.92820.97970.96080.96240.89240.9561……0.47180.46260.49950.48360.41850.40620.45230.43290.36790.35310.40510.3837……0.07730.12920.10870.05340.06220.12710.09370.0347……0.02380.
5、06850.03340.01040.01830.01830.01830.0183将三种插值结果y1,y2,y3与精确值y项比较,显然y1在节点处不光滑,拉格朗日插值出现较大的振荡,样条插值得结果是最好的.增加n值(使n=11),再运行以上程序,得到的图形如右图所示,比较这两个图可发现,节点增加后,三种插值方法结果的准确度均有所提高,因此可近似地认为:增加节点个数可以提高插值结果的准确程度。第3题用给定的多项式,如y=x3-6x2+5x-3,产生一组数据(xi,yi,i=1,2,…,n),再在yi上添加随机干扰(可用rand产生(0,1)均匀分布
6、随机数,或用randn产生N(0,1)分布随机数),然后用xi和添加了随机干扰的yi作3次多项式拟合,与原系数比较。如果作2或4次多项式拟合,结果如何?解:2编制y_2_3.m文件n=15;x=0:8/(n-1):8;y=x.^3-6*x.^2+5*x-3;z=0*x;y0=y+rand(1,15);f=polyfit(x,y0,m);r=polyval(f,x)pl2ot(x,z,'k',x,y,'r:',x,r,'b')程序及运行结果如下:m=2,y_2_3f=5.9888-31.991617.6679m=3,y_2_3f=0.9850-5
7、.83264.5549-2.4273m=4,y_2_3f=0.00060.9950-6.03025.2801-2.8196运行后,比较拟合后多项式和原式的系数,发现三次多项式系数与原系数比较接近,四次多项式的四次项系数很小。作图后,发现二次多项式与原函数的差别比较大,而三次多项式和四次多项式符合得比较好。第6题解:分析:电容器充电的数学模型已经建立。由题目给的方程(已知V=10)可见,(t)与τ成指数变化关系,所以在通过曲线拟合的时候,使用指数曲线y=a1ea2x。(注:这是一种非线性拟合).首先进行变量代换(为了程序运行的方便,在程序中用v1
8、代替v(t),v2是拟合后的曲线方程):对变形后取对数,有。令y=ln(10-),a1=ln(10-),a2=-1/τ,则,τ=-1/a2(拟合图形与