数值分析---函数逼近与曲线拟合
- 格式:ppt
- 大小:1.58 MB
- 文档页数:109
曲线拟合实验报告[优秀范文5篇]第一篇:曲线拟合实验报告数值分析课程设计报告学生姓名学生学号所在班级指导教师一、课程设计名称函数逼近与曲线拟合二、课程设计目的及要求实验目的: ⑴学会用最小二乘法求拟合数据的多项式,并应用算法于实际问题。
⑵学会基本的矩阵运算,注意点乘与叉乘的区别。
实验要求: ⑴编写程序用最小二乘法求拟合数据的多项式,并求平方误差,做出离散函数与拟合函数的图形;⑵用MATLAB 的内部函数polyfit 求解上面最小二乘法曲线拟合多项式的系数及平方误差,并用MATLAB的内部函数plot作出其图形,并与(1)结果进行比较。
三、课程设计中的算法描述用最小二乘法多项式曲线拟合,根据给定的数据点,并不要求这条曲线精确的经过这些点,而就是拟合曲线无限逼近离散点所形成的数据曲线。
思路分析 : 从整体上考虑近似函数)(x p 同所给数据点)(i iy x , 误差i i iy x p r -=)(的大小,常用的方法有三种:一就是误差i i iy x p r -=)(绝对值的最大值im ir≤≤ 0max ,即误差向量的无穷范数;二就是误差绝对值的与∑=miir0,即误差向量的 1成绩评定范数;三就是误差平方与∑=miir02的算术平方根,即类似于误差向量的 2 范数。
前两种方法简单、自然,但不便于微分运算,后一种方法相当于考虑 2 范数的平方,此次采用第三种误差分析方案。
算法的具体推导过程: 1、设拟合多项式为:2、给点到这条曲线的距离之与,即偏差平方与:3、为了求得到符合条件的 a 的值,对等式右边求偏导数,因而我们得到了:4、将等式左边进行一次简化,然后应该可以得到下面的等式5、把这些等式表示成矩阵的形式,就可以得到下面的矩阵:⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∑∑∑∑∑∑∑∑∑∑∑=====+==+====niininiiknikinikinikinikiniiniinikiniiyyyaax x xx x xx x11i11012111111211 1an MMΛM O M MΛΛ 6.将这个范德蒙得矩阵化简后得到⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡n kkn nkkyyyaaax xx xx x M MΛM O M MΛΛ21102 21 1111 7、因为 Y A X = * ,那么 X Y A / = ,计算得到系数矩阵,同时就得到了拟合曲线。
《数值分析》课程设计实验报告实验二函数逼近与曲线拟合一、问题提出从随机的数据中找出其规律性,给出其近似表达式的问题,在生产实践和科学实验中大量存在,通常利用数据的最小二乘法求得拟合曲线。
在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量与时间t 的拟合曲线。
二、实验步骤先写出线性最小二乘法的M文件function c=lspoly(x,y,m)% x是数据点的横坐标组成的向量,y是纵坐标组成的向量% m是要构成的多项式的次数,c是多项式由高到低次的系数所组成的向量n=length(x);b=zeros(1:m+1);f=zeros(n,m+1);for k=1:m+1f(:,k)=x.^(k-1);enda=f'*f;b=f'*y';c=a\b;c=flipud(c);方法一:近似解析表达式为:y(t)=a1t+a2t2+a3t3第二步在命令窗口输入:lspoly([0,5,10,15,20,25,30,35,40,45,50,55],[0,1.27,2.16,2.86,3.44 ,3.87,4.15,4.37,4.51,4.58,4.02,4.64],2)回车得到:ans =0.0000-0.00520.26340.0178即所求的拟合曲线为y=-0.0052t2+0.2634t+0.0178在编辑窗口输入如下命令:>>x=[0,5,10,15,20,25,30,35,40,45,50,55];y=[0,1.27,2.16,2.86,3.44, 3.87,4.15,4.37,4.51,4.58,4.02,4.64];>> t=0:0.1:55;>> z=-0.0052*t.^2+0.2634*t+0.0178;>> plot(x,y,'ro',t,z);grid命令执行得到如下图(图2-1)0102030405060拟合多项式与数据点的关系方法二:假设近似表达式为:y(t)=c0+c1t+c2t2第一步在命令窗口输入:>>lspoly([0,5,10,15,20,25,30,35,40,45,50,55],[0,1.27,2.16,2.86,3. 44,3.87,4.15,4.37,4.51,4.58,4.02,4.64],2)回车得到:ans =-0.00240.20370.2305即所求的拟合曲线为y=-0.0024t2+0.2037t+0.2305在编辑窗口输入如下命令:>>x=[0,5,10,15,20,25,30,35,40,45,50,55];y=[0,1.27,2.16,2.86,3.44,3.87,4.15,4.37,4.51,4.58,4.02,4.64];>> t=0:0.1:55;>> z=-0.0024*t.^2+0.2037*t+0.2305;>> plot(x,y,'ro',t,z);grid命令执行得到如下图(图2-2)拟合多项式与数据点的关系三、实验结论在利用数据的最小二乘法求拟合曲线时,选取合适的近似表达式很重要,应通过不断的试验找出较为合适的近似表达式,这样才能尽可能的提高拟合精度。
第5章函数逼近与曲线拟合上一章讨论的是函数插值问题,通常都是用一个多项式来代替一个已知的函数,它们在 给定的插值基点上有相同的函数值,是对原函数的一-种近似。
然而,在实际应用中插值问题 仍有明显的缺点:对于有解析式的函数而言,在其它点上误差可能很大,如龙格现象;对于 离散(表)函数而言,给定的数据点本身是有误差的,刚性地让插值函数通过这些点不仅没 有意义,而且会影响对原函数的近似程度。
另外,泰勒展示也是对连续函数的一种低阶近似, 它在展开点附近误差较小,但在展开点远处,误差会很大。
本章讨论在新的函数谋旁度最条件下的函数近似问题,对连续函数称之为函数逼近问题, 对于离散函数称之为dii 线拟合问题。
主要内容有:函数最佳逼近的概念,正交多项式,最佳 均方逼近少最小二乘曲线拟合问题等。
5.1函数最佳逼近的概念希望能有一种方法寻求出一个近似多项式,使它在整个区间上既均匀的逼近/(%),所需 的计算呆又小,这就是函数逼近要解决的问题。
为了刻划“均匀逼近”,设P n (x)是定义在区 间[a,b ]上原函数/(x)的近似多项式。
我们用||/(x) -p n (x)||来度量p n (x)与/(x)近似逼近 程度。
这样,自然地会有下面两种不同的度暈标准:fM- p n (x)使丿IJ 这个度量标准的函数逼近称为均方逼近或平方逼近;/W 一 p n (x) = max f(x) 一 p n (x) 使用这个度量标准的函数逼近称为一致逼近或均匀逼近o关于一致逼近的问题,在数学分析中有以下结论。
设函数/(X )在区间[a,b ]上连续,若£>0,则存在多项式P(x)使|/(x)-P(x)|<£,在区间[a,b ]上一致成立。
对于函数插值而 言,如果插值余项也能满足对任意的£〉0, \R n (x)\ = \f(x)-p n M\<e 都成立的话,贝闹 值多项式P n M 是/(Q 的一致逼近多项式。
实验指导书_函数逼近与曲线拟合曲线拟合:由一组实验数据},,2,1),,{(n i y x i i =,选择一个较简单的函数)(x f (如多项式),在一定准则下,最接近这组数据.函数逼近:已知一个较为复杂的连续函数],[),(b a x x y ∈,要求选择一个较简单的函数)(x f ,在一定准则下最接近)(x y .掌握内容:切比雪夫零点插值、最佳平方逼近、曲线拟合的最小二乘法的Matlab 实现一、切比雪夫零点插值1.算法原理设1[,],()+∈n n f C a b L x 是以,0,1,,22-+=+= k k b a a bx t k n 为插值节点的Lagrange 插值多项式,其中21cos,0,1,,2(1)π+==+ k k t k n n 是Chebyshev 多项式1()n T x +的零点,此时插值误差最小,误差(余项)估计公式为:1(1)21()()()()max ()2(1)!+++≤≤-=-≤+n n n n n a x bb a R x f x L x f x n2.实例例1(P64例4) 求()x f x e =在[0,1]上的四次Lagrange 插值多项式4()L x ,插值节点用5()T x 的零点,并估计误差401max ().x x e L x ≤≤-首先编写Lagrange 插值主程序,并保存为lagrange.mfunction[L ,C, l ,L1]= lagrange (X,Y)%输入的量:n+1个节点(xi,yi)的横坐标向量X ,纵坐标向量Y ;%输出的量:n 次拉格朗日插值多项式L 及其系数向量C ,基函数l 及其系数矩阵L1 m=length(X); L=ones(m,m); for k=1: m V=1; for i=1:m if k~=iV=conv(V ,poly(X(i)))/(X(k)-X(i)); end endL1(k,:)=V; l(k,:)=poly2sym (V); endC=Y*L1; L=Y*l; l=vpa(l,4); L=vpa(L,4);然后编写如下程序,并保存为lc_P64eg4.m%P64eg4求Lagrange- Chebyshev 多项式的程序lc_P64eg4.m %X 为插值节点%L 为Lagrange- Chebyshev 多项式的表达式%C 为按降幂排列的Lagrange- Chebyshev 多项式的系数 %R 为误差限 clear;format short g s=1;for k=0:4X(k+1)=(1+cos((2*k+1)*pi/10))/2; Y(k+1)=exp(X(k+1)); s=s*(k+1); end X,[L ,C, l ,L1]= lagrange(X,Y); L, C,R=2.71828/(s*2^9)x=linspace(X(1), X(5),50); y=polyval(C,x); y1=exp(x);plot(X,Y,'r*',x,y,'r-') figure,plot(X,Y,'r*',x,y1,'b-') figure,plot(X,Y,'r*',x,y,'r-',x,y1,'b-')在Matlab 窗口中运行程序lc_P64eg4.m >> lc_P64eg4 X =0.97553 0.79389 0.5 0.20611 0.024472 L =.9988*x+.1403*x^3+.6942e-1*x^4+.5098*x^2+1.000 C =0.069416 0.14028 0.50978 0.99876 1 R =4.4243e-005图1.()xf x e 在[0,1]上的四次Lagrange- Chebyshev 插值多项式例2 (P65例5)设211()f x x =+,在[-5,5]上利用11()T x 的零点作插值点,构造10次拉格朗日插值多项式 10()L x ,并与等距节点的10()L x 近似()f x 作比较. 首先编写如下程序,并保存为lc_P65eg5.m%P64eg4求Lagrange- Chebyshev 多项式的程序lc_P65eg5.m%X 为Chebyshev 零点%L 为Lagrange- Chebyshev 多项式的表达式%C 为按降幂排列的Lagrange- Chebyshev 多项式的系数 %L1为等距节点多项式的表达式%C1为按降幂排列的等距节点多项式的系数 clear;format short for k=0:10X(k+1)=(10*cos((2*k+1)*pi/22))/2; Y(k+1)=1/(1+X(k+1)^2); end X,[L ,C, l ,L1]= lagrange(X,Y); L,C,x=linspace(X(1), X(11),100); y=polyval(C,x); y1=1./(1+x.^2);X1=linspace(-5,5,11); Y1=1./(1+X1.^2);[L1 ,C1, l1 ,L11]= lagrange(X1,Y1); L1,C1,X2=-5:0.1:5;Y2=polyval(C1,X2);plot(X,Y ,'r*',x,y,'r-',x,y1,'b-',X1,Y1,'O',X2,Y2,'k-') gtext('切比雪夫插值点r*') gtext('切比雪夫插值曲线r-') gtext('被插函数曲线b-') gtext('等距节点插值点o')gtext('等距节点插值多项式k-')在Matlab 窗口中运行程序lc_P65eg5.m,得如下图形结果(这里,数值结果略,请自己运行观察)图2. 211()f x x=+在[-5,5]上的插值多项式 10()L x 与10()L x二、最佳平方多项式逼近1.求定义在区间[a ,b ]上的已知函数最佳平方逼近多项式的算法(1)设已知函数()f x 的最佳平方逼近多项式为01()n n p x a a x a x =+++ ,由最佳平方逼近的定义有:010012(,,)(,,,,)n iF a a a i n a ∂==∂其中()20101(,,)()()b nn n aF a a a f x aa x a x dx =-+++⎰(2)求多项式()p x 系数的法方程:Ca D =,其中1211222111212()(),()(b bb bbn na aa a a bbb b b n n a aa aa b bb b b n n n n n a aa aa bbb bn n n n naaa a dx xdx x dx x dx f x dx xdx x dx x dx x dx xf x dx C D x dx x dxx dx x dx x f x dx x dx x dx x dx x dx x f x -+----+-⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰⎰)b a dx ⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎰2.求定义在区间[a ,b ]上的已知函数最佳平方逼近多项式的主程序function [coff,d]=ZJPF(func,n,a,b) %func:已知函数%n:最佳平方逼近多项式的最高次数 %a:逼近区间的左端点 %b:逼近区间的右端点%coff:按升幂排列的逼近多项式的系数 % d:法方程的右端项 C = zeros(n+1,n+1);var = findsym(sym(func)); func = func/var; for i=1:n+1C(1,i)=(power(b,i)-power(a,i))/i; %算法中的C 矩阵的第一行 func = func*var;d(i,1)=int(sym(func),var,a,b); %算法中的D 向量的第一行 endfor i=2:n+1C(i,1:n)=C(i-1,2:n+1); f1 = power(b,n+i); f2 = power(a,n+i);C(i,n+1)=(f1-f2)/(n+i); %形成C 矩阵 endcoff = C\d; %求解逼近多项式的系数3.例题(教材P68例6)设211()f x x =+,求[0,1]上的一次最佳平方逼近多项式.首先编写被逼近函数的M 文件,并保存为funcp68eg6.m function f=funcp68eg6() syms xf=sqrt(1+x^2);然后编写如下程序,并保存为p68_eg6.m %p68_eg6.m clear;[coff,d]=ZJPF(funcp68eg6,1,0,1); coff=vpa(coff)x = findsym(sym(funcp68eg6)); func=funcp68eg6*funcp68eg6;PFWC=vpa(int(sym(func),x,0,1)-coff'*d,4)运行结果>> p68_eg6 coff =[ .9343200492928959528618412015402] [ .4269470508068461683106156461091] PFWC = .12e-2三、曲线拟合的最小二乘法1. 多项式拟合及其MATLAB 程序面对一组数据,,,2,1),,(n i y x i i = 用线性最小二乘法作曲线拟合时,如果选取一组函数02(),(),,()m x x x ϕϕϕ 为)(,,,,12n m x x x m < ,则拟合曲线为多项式11++++=m m m a x a x a y .一般m = 2,3, 不宜过高.对于指数曲线,拟合前需作变量代换,化为系数参数的线性函数.2. 用MATLAB 作线性最小二乘拟合的多项式拟合用MATLAB 作线性最小二乘拟合的多项式拟合有现成程序. 调用格式为: a=polyfit(x,y,m)其中输入参数 x ,y 为要拟合的数据,是长度自定义的数组,m 为拟合多项式的次数,输出参数a 为拟合多项式:11++++=m m m a x a x a y的系数向量a ),,,(11+=m m a a a .(注意:按降幂排列)3. 多项式在x 处的值y 的计算: y=polyval(a,x)例 给出一组数据点),(i i y x 列入下表中,试用线性最小二乘法求拟合曲线,.解(1)首先根据给出的数据点),(i i y x ,用下列MATLAB 程序画出散点图. 在MATLAB 工作窗口输入程序>> x=[-2.9 -1.9 -1.1 -0.8 0 0.1 1.5 2.7 3.6];y=[53.94 33.68 20.88 16.92 8.79 8.98 4.17 9.12 19.88]; plot(x,y,'r*'), legend('数据点(xi,yi)') xlabel('x'), ylabel('y'),title('例7.4.1的数据点(xi,yi)的散点图')运行后屏幕显示数据的散点图,见图3.(2)因为数据的散点图3的变化趋势与二次多项式很接近,所以选取一组函数2,,1x x ,令3221)(a x a x a x f ++=,其中k a 是待定系数)3,2,1(=k .(3)用作线性最小二乘拟合的多项式拟合的MATLAB 程序求待定系数k a)3,2,1(=k .输入程序>> a=polyfit(x,y,2)运行后输出按拟合多项式的系数a =2.8302 -7.3721 9.1382故拟合多项式为2138.91372.72830.2)(2+-=x x x f .(4)编写下面的MATLAB 程序估计其误差,并做出拟合曲线和数据的图形.输入程序>> xi=[-2.9 -1.9 -1.1 -0.8 0 0.1 1.5 2.7 3.6];y=[53.94 33.68 20.88 16.92 8.79 8.98 4.17 9.12 19.88]; n=length(xi); f=2.8302.*xi.^2-7.3721.*xi+9.1382 x=-2.9:0.001:3.6;F=2.8302.*x.^2-7.3721.*x+8.79; fy=abs(f-y); fy2=fy.^2; Er=sqrt((sum(fy2)/n)), plot(xi,y,'r*', x,F,'b-'),legend('数据点(xi,yi)','拟合曲线y=f(x)') xlabel('x'), ylabel('y'), 运行后屏幕显示数据),(i i y x 与拟合函数f 的均方根误差E 2及其数据点(x i ,y i )和拟合曲线y =f (x )的图形,见图4.图3图4。
实验类别:数值分析专业:信息与计算科学班级:学号:姓名:中北大学理学院实验二 函数逼近与曲线拟合【实验内容】从随机的数据中找出其规律性,给出其近似表达式的问题,在生产实践和科学实验中大量存在,通常利用数据的最小二乘法求得拟合曲线。
在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量y 与时间t 的拟合曲线。
【实验方法或步骤】1、用最小二乘法进行曲线拟合;2、近似解析表达式为;33221)(t a t a t a t ++=ϕ3、打印出拟合函数)(t ϕ,并打印出)(j t ϕ与)(j t y 的误差,12,,2,1 =j ;4、另外选取一个近似表达式,尝试拟合效果的比较;5、* 绘制出曲线拟合图。
#include "stdio.h" #include "conio.h" #include "stdlib.h" #include "math.h"#define N 12//N 个节点 #define M 2//M 次拟合 #define K 2*Mvoid zhuyuan (int k,int n,float a[M+1][M+2]) {int t,i,j;float x,y;x=fabs(a[k][k]);t=k;for (i=k+1;i<=n;i++)if (fabs(a[i][k])>x){x=fabs(a[i][k]);t=i;}for (j=k;j<=n+1;j++){y=a[k][j];a[k][j]=a[t][j];a[t][j]=y;}}void xiaoyuan(int n,float a[M+1][M+2]){int k,i,j;for(i=0;i<n;i++){zhuyuan(i,n,a);for (j=i+1;j<=n;j++)for (k=i+1;k<=n+1;k++)a[j][k]=a[j][k]-a[j][i]*a[i][k]/a[i][i];}}void huidai(int n,float a[M+1][M+2],float x[M+1]){int i,j;x[n]=a[n][n+1]/a[n][n];for (i=n-1;i>=0;i--){ x[i]=a[i][n+1];for (j=i+1;j<=n;j++)x[i]=x[i]-a[i][j]*x[j];x[i]=x[i]/a[i][i];}}void main(){float x_y[N][2],A[N][K+1],B[N][M+1],AA[K+1],BB[M+1],a[M+1][M+2],m[M+1]; int i,j,n;printf("请输入%d个已知点:\n",N);for(i=0;i<N;i++){printf("(x%d y%d):",i,i);scanf("%f %f",&x_y[i][0],&x_y[i][1]);}for(i=0;i<N;i++){A[i][0]=1;for(j=1;j<=K;j++)A[i][j]=A[i][j-1]*x_y[i][0];for(j=0;j<=M;j++)B[i][j]=A[i][j]*x_y[i][1];}for(j=0;j<=K;j++)for(AA[j]=0,i=0;i<N;i++)AA[j]+=A[i][j];for(j=0;j<=M;j++)for(BB[j]=0,i=0;i<N;i++)BB[j]+=B[i][j];for(i=0;i<M+1;i++){a[i][M+1]=BB[i];for(j=0;j<=M;j++)a[i][j]=AA[i+j];}n=M;printf("正规系数矩阵为:\n");for(i=0;i<=n;i++){for(j=0;j<=n+1;j++)printf("%f ",a[i][j]);printf("\n");}xiaoyuan(n,a);huidai(n,a,m);printf("拟合曲线方程为:\ny(x)=%g",m[0]); for(i=1;i<=n;i++){printf(" + %g",m[i]);for(j=0;j<i;j++){printf("*X");}}}p3=polyfit(x,y,3);y3=polyval(p3,x);e3=norm(y-y3);t=0:5:60;pt3=polyval(p3,t);plot(t,pt3);plot(t,pt3);title('3次拟合函数')>>3次拟合函数实验三 数值积分与数值微分【实验内容】选用复合梯形公式,复合Simpson 公式,Romberg 算法高斯算法计算(1) )5343916.1(sin 44102≈-=⎰I dx x I(2) )9460831.0,1)0((sin 10≈==⎰I f dx xxI (3) dx x e I x⎰+=1024 ;(4) dx x x I ⎰++=1021)1ln( 【实验前的预备知识】1、 深刻认识数值积分法的意义;2、 明确数值积分精度与步长的关系;3、 根据定积分的计算方法,可以考虑二重积分的计算问题。
数值分析课程设计报告学生姓名学生学号所在班级指导教师一、课程设计名称函数逼近与曲线拟合二、课程设计目的及要求实验目的:⑴学会用最小二乘法求拟合数据的多项式,并应用算法于实际问题。
⑵学会基本的矩阵运算,注意点乘和叉乘的区别。
实验要求:⑴编写程序用最小二乘法求拟合数据的多项式,并求平方误差,做出离散函数( )和拟合函数的图形;⑵用MATLAB 的内部函数polyfit 求解上面最小二乘法曲线拟合多项式的系数及平方误差,并用MATLAB 的内部函数plot 作出其图形,并与(1)结果进行比较。
三、课程设计中的算法描述用最小二乘法多项式曲线拟合,根据给定的数据点,并不要求这条曲线精确的经过这些点,而是拟合曲线无限逼近离散点所形成的数据曲线。
思路分析:从整体上考虑近似函数)(x p 同所给数据点)(i i y x ,误差i i i y x p r -=)(的大小,常用的方法有三种:一是误差i i i y x p r -=)(绝对值的最大值i mi r ≤≤0max ,即误差向量的无穷范数;二是误差绝对值的和∑=mi i r 0,即误差向量的1范数;三是误差平方和∑=mi i r 02的算术平方根,即类似于误差向量的2范数。
前两种方法简单、自然,但不便于微分运算,后一种方法相当于考虑2范数的平方,此次采用第三种误差分析方案。
算法的具体推导过程: 1.设拟合多项式为:2.给点到这条曲线的距离之和,即偏差平方和:3.为了求得到符合条件的a 的值,对等式右边求 偏导数,因而我们得到了:4.将等式左边进行一次简化,然后应该可以得到下面的等式5.把这些等式表示成矩阵的形式,就可以得到下面的矩阵:⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∑∑∑∑∑∑∑∑∑∑∑=====+==+====n i i n i n i i k n i k i ni k ini k i n i k i ni in i ini k ini iy y y a a x xx x xxx x 11i 110121111112111a n6. 将这个范德蒙得矩阵化简后得到⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡n k k n n k k y y y a a a x x x x x x 21102211111 7.因为Y A X =*,那么X Y A /=,计算得到系数矩阵,同时就得到了拟合曲线。
函数逼近与曲线拟合3.1函数逼近的基本概念3.1.1 函数逼近与函数空间在数值计算中常要计算函数值,如计算机中计算基本初等函数及其他特殊函数;当函数只在有限点集上给定函数值,要在包含该点集的区间上用公式给出函数的简单表达式,这些都涉及到在区间上用简单函数逼近已知复杂函数的问题,这就是函数逼近问题.上章讨论的插值法就是函数逼近问题的一种.本章讨论的函数逼近,是指“对函数类A中给定的函数,记作,要求在另一类简单的便于计算的函数类B中求函数,使与的误差在某种度量意义下最小”.函数类A通常是区间上的连续函数,记作,称为连续函数空间,而函数类B通常为n次多项式,有理函数或分段低次多项式等.函数逼近是数值分析的基础,为了在数学上描述更精确,先要介绍代数和分析中一些基本概念及预备知识.数学上常把在各种集合中引入某些不同的确定关系称为赋予集合以某种空间结构,并将为样的集合称为空间.例如将所有实n维向量组成集合,按向量加法及向量与数的乘法构成实数域上的线性空间,记作,称为n维向量空间.类似地,对次数不超过n(n为正整数)的实系数多项式全体,按通常多项式与多项式加法及数与多项式乘法也构成数域上的一个线性空间,用表示,称为多项式空间.所有定义在上的连续函数集合,按函数加法和数与函数乘法构成数域上的线性空间,记作.类似地,记为具有p阶的连续导数的函数空间.定义1设集合S是数域P上的线性空间,元素,如果存在不全为零的数,使得, (3.1.1)则称线性相关.否则,若等式(3.1.1)只对成立,则称线性无关.若线性空间S是由n个线性无关元素生成的,即对都有则称为空间S的一组基,记为,并称空间S为n维空间,系数称为x在基下的坐标,记作,如果S中有无限个线性无关元素,…,则称S为无限维线性空间.下面考察次数不超过n次的多项式集合,其元素表示为, (3.1.2)它由个系数唯一确定.线性无关,它是的一组基,故,且是的坐标向量,是维的.对连续函数,它不能用有限个线性无关的函数表示,故是无限维的,但它的任一元素均可用有限维的逼近,使误差(为任给的小正数),这就是著名的Weierstrass定理.定理1(Weierstrass)设,则对任何,总存在一个代数多项式,使在上一致成立.这个定理已在“数学分析”中证明过.这里需要说明的是在许多证明方法中,伯恩斯坦1912年给出的证明是一种构造性证明.他根据函数整体逼近的特性构造出伯恩斯坦多项式, (3.1.3)其中,其中,并证明了在上一致成立;若在上阶导数连续,则.这不但证明了定理1,而且由(3.1.3)给出了的一个逼近多项式.它与拉格朗日插值多项式很相似,对,当=1时也有关系式. (3.1.4)这只要在恒等式中令就可得到.但这里当时还有,于是是有界的,因而只要对任意成立,则有界,故是稳定的.至于拉格朗日多项式,由于无界,因而不能保证高阶插值的稳定性与收敛性.相比之下,多项式有良好的逼近性质,但它收敛太慢,比三次样条插值效果差得多,实际中很少被使用.更一般地,可用一组在上线性无关的函数集合来逼近,元素,表示为. (3.1.5) 函数逼近问题就是对任何,在子空间中找一个元素,使在某种意义下最小.3.1.2 范数与赋范线性空间为了对线性空间中元素大小进行衡量,需要引进范数定义,它是空间中向量长度概念的直接推广.定义2.1.2 设为线性空间,,若存在唯一实数,满足条件:(1)正定性:,(2)当且仅当时,(3);(4)齐次性:,(5);(6)三角不(7)等式:,(8).则称为线性空间上的范数,与一起称为赋范线性空间,记为.例如,在上的向量,三种常用范数为类似地对连续函数空间,若可定义三种常用范数如下:可以验证这样定义的范数均满足定义3.1.2中的三个条件.3.1.3 内积与内积空间在线性代数中,中两个向量及的内积定义为.若将它推广到一般的线性空间,则有下面的定义.定义3.1.3设是数域上的线性空间,对,有中一个数与之对应,记为,它满足以下条件:(1);(2);(3);(4),当且仅当时,.则称为上与的内积.定义了内积的线性空间称为内积空间.定义中(1)的右端称为的共轭,当为实数域时.如果=0,则称与正交,这是向量相互垂直的概念的推广.关于内积空间性质有以下重要定理.定理3.1.2设为一个内积空间,对,有(3.1.6) 称为Cauchy-Schwarz不等式.[证明]当时(3.1.6)式显然成立.现设,则,且对任何数有.取,代入上式右端,得,即得时.定理证毕定理3.1.2设为一个内积空间,,矩阵(3.1.7)称为Gram矩阵,则G非奇异的充分必要条件是线性无关.[证明]G非奇异等价于,其充分必要条件是齐次方程组(3.1.8) 只有零解.而(3.1.9) 从以上的等价关系可知,等价于从(3.1.8)推出.而后者等价于从(3.1.9)推出,即线性无关.定理证毕在内积空间上可以由内积导出一种范数,即对于,记(3.1.10) 容易验证它满足范数定义的三条性质,其中三角不等式(3.1.11)可由定理3.1.2直接得出,即两端开方即得(3.1.11).例1与的内积.设,,,则其内积定义为(3.1.12)由此导出的向量2-范数为.若给定实数,称为权系数,则在上可定义加权内积为(3.1.13)相应的范数为.不难验证(3.1.13)给出的满足内积定义的4条性质,当时,(3.1.13)就是(3.1.12).如果,带权内积定义为(3.1.14) 这里仍为正实数序列,为的共轭.在上也可以类似定义带权内积,为此先给出权函数的定义.定义3.1.4 设是有限或无限区间,在上的非负函数满足条件:(1)存在且为有限值;(2)对上的非负连续函数,如果,则.则称为上的一个权函数.例2上的内积.设,是上给定的权函数,则可定义内积. (3.1.15)容易验证它满足内积定义的4条性质,由此内积导出的范数为. (3.1.16)称(3.1.15)和(3.1.16)为带权的内积和范数.特别常用的是的情形,即若是中的线性无关函数族,记,它的Gram矩阵为(3.1.17)根据定理3.1.3可知线性无关的充分必要条件是.3.2 正交多项式正交多项式是函数逼近的重要工具,在数值积分中也有着重要的应用.3.2.1 正交函数族与正交多项式定义3.2.1 若,为上的权函数且满足, (3.2.1)则称与在上带权正交.若函数族满足关系(3.2.2)则称是上带权的正交函数族;若,则称之为标准正交函数族.例如,三角函数族就是在区间上的正交函数族.因为对有,而对,当时有定义3.2.2 设是上首项系数的次多项式,为上权函数,如果多项式序列满足关系式(3.2.2),则称多项式序列为在上带权正交,称为上带权的次正交多项式.只要给定区间及权函数,均可由一族线性无关的幂函数,利用逐个正交化手续构造出正交多项式序列;,(3.2.3) 这样得到的正交多项式序列有以下性质:(1)是具有最高次项系数为1的次多项式.(2)任何次多项式均可表示为的线性组合.(3)当时,,且与任一次数小于的多项式正交.(4)成立递推关系.其中这里.(5)设是在上带权的正交多项式序列,则的个根都是在区间内的单重实根.3.2.2 勒让德多项式当区间为[-1,1],权函数时,由正交化得到的多项式就称为勒让德(Legendre)多项式,并用表示.这是勒让德于1785年引进的,1814年罗德利克(Rodrigul)给出了简单的表达式由于是2次的多项式,求阶导数后得,于是得首项系数为,显然最高项系数为1的勒让德多项式为.(3.2.6) 勒让德多项式有下述几个性质:性质1正交性(3.2.7) [证明]令,则.设是在区间[-1,1]上的阶连续可微的函数,由分部积分知下面分两种情况讨论:(1)若是次数小于的多项式,则,故得(2)若,则,于是由于,故,于是(3.2.7)得证.性质2奇偶性(3.2.8)[证明]由于是偶次多项式,经过偶次求导仍为偶次多项式,经过奇次求导则为奇次多项式,故为偶数时为偶函数,为奇数时为奇函数,于是(3.2.8)成立.性质3递推关系(3.2.9) [证明]考虑+1次多项式,它可表示为两边乘以,并从-1到1积分,得.当时,的次数小于-1,上式左端积分为0,故得.当时.为奇函数,左端积分仍为0,故.于是.其中,代入上式整理可得(3.2.9).例1由利用性质3可得性质4在区间[-1,1]内有个不同的实零点.3.2.3 切比雪夫多项式当权函数,区间为[-1,1]时,由序列正交化得到的多项式就称为切比雪夫(Chebyshev)多项式,它可表示为(3.2.10)若令,则.切比雪夫多项式有很多重要性质:性质1递推关系(3.2.11) 这只要由三角不等式.令即得.由(3.2.11)就可推出由递推关系(3.2.11)还可得到的最高次项系数是.性质6切比雪夫多项式在区间[-1,1]上带权正交,且(3.2.12) 事实上,令,则,于是性质7只含的偶次幂,只含有的奇次幂.这性质由递推关系直接得到.性质8在区间[-1,1]上的个零点此外,实际计算中时常要求用的线性组合,其公式为. (3.2.13) 例如:结果如下:3.2.4 其他常用的正交多项式一般说,如果区间及权函数不同,则得到的正交多项式也不同.除上述两种最重要的正交多项式外,下面再给出三种较常用的正交多项式.第二类切比雪夫多项式在区间[-1,1]上带权的正交多项式称为第二类切比雪夫多项式,其表达式为. (3.2.14)令,可得即是[-1,1]上带权的正交多项式族.还可得到递推关系式.拉盖尔多项式在区间上带权的正交多项式称为拉盖尔(Laguerre)多项式,其表达式为. (3.2.15)其正交性为和递推关系.3. 埃尔米特多项式在区间上带权的正交多项式称为埃尔米特多项式.其表达式为, (3.2.16)其正交性为递推关系为.3.3 最佳一致逼近多项式3.3.1 基本概念及其理论本节讨论,在中求多项式,使其误差.这就是通常所谓最佳一致逼近或切比雪夫逼近问题.为了说明这一概念,先给出以下定义.定义3.3.1 设,,称. (3.3.1) 为与在上的偏差.显然,的全体组成一个集合,记为{},它有下界0.若记集合的下确界为(3.3.2)则称之为在上的最小偏差.定义3.3.2 假定,若存在,使得, (3.3.3)则称是在上的最佳一致逼近多项式或最小偏差逼近多项式,简称最佳逼近多项式.注意,定义并未说明最佳逼近多项式是否存在,但可证明下面的存在定理.定理4若,则总存在,使.为了研究最佳逼近多项式的特性,先引进偏差点的定义.定义3.3.3设,,若在上有,就称是的偏差点.若,称为“正”偏差点.若,称为“负”偏差点.由于函数在上连续,因此,至少存在一个点,使,也就是说的偏差点总是存在的.下面给出反映最佳逼近多项式特征的切比雪夫定理.定理3.3.2是的最佳逼近多项式的充分必要条件是在上至少有个轮流为“正”、“负”的偏差点,即有个点,使. (3.3.4) 这样的点组称为切比雪夫交错点组.[证明]只证充分性.假定在上有个点使(3.3.4)成立,要证明是在上的最佳逼近多项式.用反证法,若存在,使.由于在点上的符号与一致,故也在个点上轮流取“+”、“-”号.由连续性质,它在内有个零点,但因是不超过次的多项式,它的零点不超过.这矛盾说明假设不对,故就是所求最佳逼近多项式.充分性得证,必要性证明略,可参看[5].定理5说明用逼近的误差曲线是均匀分布的.由这定理还可得以下重要推论.推论1若,则在中存在唯一的最佳逼近多项式.证明略.利用定理5可直接得到切比雪夫多项式的一个重要性质,即定理3.3.3 在区间[-1,1]上所有最高次项系数为1的次多项式中与零的偏差最小,其偏差为.[证明]由于,且点是的切比雪夫交错点组,由定理5可知,区间[-1,1]上在中最佳逼近多项式为,即是与零的偏差最小的多项式.定理证毕例3求在[-1,1]上的最佳2次逼近多项式.解由题意,所求最佳逼近多项式应满足由定理3.3.3可知,当时,多项式与零偏差最小,故就是在[-1,1]上的最佳2次逼近多项式.3.3.2 最佳一次逼近多项式定理3.3.2给出了最佳逼近多项式的特性,但要求出却相当困难.下面讨论的情形.假定,且在内不变号,我们要求最佳一次逼近多项式.根据定理3.3.2可知至少有3个点,使由于在内不变号,故单调,在内只有一个零点,记为,于是,即.另外两个偏差点必是区间端点,即,且满足由此得到(3.3.5) 解出, (3.3.6) 代入(3.3.5)得. (3.3.7)这就得到了最佳一次逼近多项式,其几何意义如图3-3所示.直线与弦MN平行,且通过MQ的中点D,其方程为.图3-3一次最佳一致逼近多项式几何意义例4 求在上的最佳一次逼近多项式。
数值分析第五版答案 第一章 绪论1.设0x >,x 的相对误差为δ,求ln x 的误差。
解:近似值*x 的相对误差为*****r e x xe x x δ-=== 而ln x 的误差为()1ln *ln *ln **e x x x e x =-≈进而有(ln *)x εδ≈2.设x 的相对误差为2%,求nx 的相对误差。
解:设()nf x x =,则函数的条件数为'()||()p xf x C f x = 又1'()n f x nx-=, 1||n p x nx C n n-⋅∴== 又((*))(*)r p r x n C x εε≈⋅且(*)r e x 为2((*))0.02n r x n ε∴≈3.下列各数都是经过四舍五入得到的近似数,即误差限不超过最后一位的半个单位,试指出它们是几位有效数字:*1 1.1021x =,*20.031x =, *3385.6x =, *456.430x =,*57 1.0.x =⨯解:*1 1.1021x =是五位有效数字; *20.031x =是二位有效数字; *3385.6x =是四位有效数字; *456.430x =是五位有效数字; *57 1.0.x =⨯是二位有效数字。
4.利用公式(2.3)求下列各近似值的误差限:(1) ***124x x x ++,(2) ***123x x x ,(3) **24/x x .其中****1234,,,x x x x 均为第3题所给的数。
解:*41*32*13*34*151()1021()1021()1021()1021()102x x x x x εεεεε-----=⨯=⨯=⨯=⨯=⨯***124***1244333(1)()()()()1111010102221.0510x x x x x x εεεε----++=++=⨯+⨯+⨯=⨯ ***123*********123231132143(2)()()()()1111.10210.031100.031385.610 1.1021385.6102220.215x x x x x x x x x x x x εεεε---=++=⨯⨯⨯+⨯⨯⨯+⨯⨯⨯≈**24****24422*4335(3)(/)()()110.0311056.430102256.43056.43010x x x x x x xεεε---+≈⨯⨯+⨯⨯=⨯=5计算球体积要使相对误差限为1,问度量半径R 时允许的相对误差限是多少? 解:球体体积为343V R π=则何种函数的条件数为23'4343p R V R R C V R ππ===(*)(*)3(*)r p r r V C R R εεε∴≈=又(*)1r V ε=故度量半径R 时允许的相对误差限为1(*)10.333r R ε=⨯≈6.设028Y =,按递推公式1n n Y Y -= (n=1,2,…)计算到100Y 27.982≈(5位有效数字),试问计算100Y 将有多大误差?解:1n n Y Y -=10099Y Y ∴=9998Y Y =9897Y Y =……10Y Y =依次代入后,有1000100Y Y =-即1000Y Y =,27.982≈, 100027.982Y Y ∴=-*310001()()(27.982)102Y Y εεε-∴=+=⨯100Y ∴的误差限为31102-⨯。
数值分析知识点大全总结一、数值计算方法数值计算方法是数值分析的基础,它涵盖了数值逼近、数值积分、插值与拟合、数值微分与数值积分、解线性方程组、求解非线性方程与方程组、解常微分方程等内容。
下面我们将逐一介绍这些方面的知识点。
1. 数值逼近数值逼近是研究如何用简单的函数来近似一个复杂的函数的方法。
常见的数值逼近方法包括多项式逼近、三角函数逼近、曲线拟合等。
其中,最为重要的是多项式逼近,它可以用来近似任意函数,并且具有较好的数学性质。
2. 数值积分数值积分是研究如何用离散的数据来估计连续函数的积分值的方法。
常见的数值积分方法包括梯形公式、辛普森公式、龙贝格公式等。
其中,辛普森公式是一种较为精确的数值积分方法,它可以用来估计任意函数的积分值,并且具有较好的数值稳定性。
3. 插值与拟合插值与拟合是研究如何用离散的数据来构造连续函数的方法。
常见的插值方法包括拉格朗日插值、牛顿插值等。
而拟合方法则是研究如何用简单的函数来拟合复杂的数据,常见的拟合方法包括最小二乘法、最小二乘多项式拟合等。
4. 数值微分与数值积分数值微分与数值积分是研究如何用差分方法来估计导数与积分的值的方法。
常见的数值微分方法包括向前差分、向后差分、中心差分等。
而数值积分方法则可以直接用差分方法来估计积分的值。
5. 解线性方程组解线性方程组是研究如何用迭代法或直接法来求解线性方程组的方法。
常见的迭代法包括雅各比迭代法、高斯-赛德尔迭代法等。
而直接法则是指用消元法来求解线性方程组的方法。
6. 求解非线性方程与方程组求解非线性方程与方程组是研究如何用迭代法来求解非线性方程与方程组的方法。
常见的迭代法包括牛顿法、割线法等。
其中,牛顿法是一种非常高效的求解非线性方程与方程组的方法,它具有收敛速度快的特点。
7. 解常微分方程值积分方法包括龙格-库塔法、变步长欧拉法、变步长龙格-库塔法等。
其中,龙格-库塔法是一种较为精确的数值积分方法,它可以用来求解各种类型的常微分方程。