当前位置:文档之家› 第三章 插值

第三章 插值

第三章 插值
第三章 插值

3.1构造Lagrange 插值多项式p(x)逼近f(x)=3

x ,要求 (1) 取节点1,110=-=x x 作线性插值; (2) 取节点10,1210==-=x x x ,作抛物插值; (3) 取节点2,10,13210===-=x x x x ,作三次插值; 解:(1)将节点代入f(x)=3

x 得1y ,100-=-=x ,1,111==y x p(x)=)(00

10

10x x x x y y y ---+

代入1y ,100-=-=x ,1,111==y x p(x)=x

(2)将节点代入f(x)=3

x 得1y ,100-=-=x ,0,011==y x ,1,122==y x

2120210121012002010212)

)(())(())(())(())(()

)(()(y x x x x x x x x y x x x x x x x x y x x x x x x x x x p ----+----+----=

代入1y ,100-=-=x ,0,011==y x ,1,122==y x 得: p 2(x)=x

(3)将节点代入f(x)=3

x 得1y ,100-=-=x ,0,011==y x ,1,122==y x ,8,233==y x

323130331023212123101

31210132003020103213)

)()(())()(())()(())()(()

)()(()

)()(())()(())()(()(y x x x x x x x x x x x x y x x x x x x x x x x x x y x x x x x x x x x x x x y x x x x x x x x x x x x x p ------+------+------+------=

代入1y ,100-=-=x ,0,011==y x ,1,122==y x ,8,233==y x 得: p 3(x)= 3

x

3.2给定三个数据点(0,1),(1,2),(2,4),求过这些点的插值多项式p(x)。 解:由已知点数据有:1y ,000==x ,2,111==y x ,4,222==y x

2120210121012002010212)

)(())(())(())(())(()

)(()(y x x x x x x x x y x x x x x x x x y x x x x x x x x x p ----+----+----=

代入 1y ,000==x ,2,111==y x ,4,222==y x 得:

p 2(x)=

12

22++x x 3.3给定节点,

,4,31,13210===-=x x x x 试分别对下列函数导出Lagrange 插值余项: (1) f(x)=2x 343

+-x (2) f(x)=3

4

x 2-x 解:

(1)将节点代入f(x)得1y ,100=-=x ,3,111==y x ,101,322==y x ,246,433==y x

3

23130331023212123101

31210132003020103213)

)()(()

)()(())()(())()(()

)()(()

)()(())()(())()(()(y x x x x x x x x x x x x y x x x x x x x x x x x x y x x x x x x x x x x x x y x x x x x x x x x x x x x p ------+------+

------+------=

将1y ,100=-=x ,3,111==y x ,101,322==y x ,246,433==y x 代入上式得: p 3(x)=2x 343

+-x

所以: Lagrange 插值余项R(x)=f(x)-p 3(x)=0

(2)将节点代入f(x)得3y ,100=-=x ,1,111-==y x ,27,322==y x ,128,433==y x

3

23130331023212123101

31210132003020103213)

)()(()

)()(())()(())()(()

)()(()

)()(())()(())()(()(y x x x x x x x x x x x x y x x x x x x x x x x x x y x x x x x x x x x x x x y x x x x x x x x x x x x x p ------+------+

------+------=

将3y ,100=-=x ,1,111-==y x ,27,322==y x ,128,433==y x 代入上式得: p 3(x)=12711x 52

3

+--x x 所以: Lagrange 插值余项

R(x)=f(x)-p 3(x)=3

4

x 2-x -(12711x 52

3

+--x x )=1271172

3

4

-++-x x x x 3.5 依据数据表

试用线性插值和抛物插值分别计算的近似值并估计误差。

解:(a)线性插值公式为:10

10010

()()y y P x y x x x x -=+

-- (1)

其中01010.32,0.34,0.314567,0.333487x x y y ====,将其代入(1)式,

10

10010

()()0.3334870.314567

0.314567(0.32)

0.340.32

y y y P x y x x x x x -==+

---=+--

10.3334870.314567

(0.3367)0.314567(0.33670.32)

0.340.32

0.3303652

y P -==+

--= 线性插值误差计算公式为:101''()

()()()()2

f f x P x x x x x ξ-=

-- 01

1max ''()sin 0.3335x x x f x ξ≤≤==

所以估计误差为:

6101''()1

()()()()0.33350.01670.00339.21022

f f x P x x x x x ξ--=

--≤???=? (b)

线

公式

为:

2001

1

2

2

020

1

12012010210120001()()()()()()()()()()()()()()()()

P x l x y l x y l x y x x x x x x x x x x x x y y y x x x x x x x x x x x x =++------=

++------ (2) 其中0120120.32,0.34,0.36,0.314567,0.333487,0.352274,x x x y y y ======

代入得 012()1250(0.34)(0.36)

()2500(0.32)(0.36)()1250(0.32)(0.34)

l x x x l x x x l x x x =--=---=--

将012012,,,0.314567,0.333487,0.352274l l l y y y ===代入(2)可得:

2001122()()()()0.330374P x l x y l x y l x y =++=

抛物线插值误差计算公式为:2012'''()

()()()()()6

f f x P x x x x x x x ξ-=

---

02

0max '''()cos 0.949x x x f x ξ≤≤==

所以估计误差

20127

'''()

()()()()()61

0.9490.01670.00330.02336

2.0310f f x P x x x x x x x ξ--=

---≤????=?

3.7 证明:对于以01,x x 为节点的一次插值多项式()P x 。插值误差满足

012

10()()()max ''()8

x x x x x f x P x f x ≤≤--≤

。 证明:由定理3.1.5可知:

01

010101''()

()()()()[,]21

max ''()()()2x x x f f x P x x x x x x x f x x x x x ξξ≤≤-=

--∈≤--

因为:2

2

201010011()((222))x x x x x x x x x x x +--????

--≤ ? -??-???

= 从几何上解释上式成立!

所以:

01

0101012

012101

()()max ''()()()21max ''()22()max ''()

8

x x x x x x x x x f x P x f x x x x x x x f x x x f x ≤≤≤≤<<-≤

---??≤ ???-≤

3.11 依据数据表

用Neville 解:根据Neville 方法迭代公式有:

1'

1()

(0,1,

,)()()()n

n i

i i n i

x P n x y x x x ωω+=+=-∑,代入3x = 所以01

(0,1)010110

()3x x x x P x y y x x x x x --=

+==--

21(1,2)1212213231

()1 1.41421356 1.828427121221x x x x P x y y x x x x ----=

+=?+?=----

32(2,3)2323323432

() 1.414213562 1.707106782442x x x x P x y y x x x x ----=

+=?+?=----

34(3.4)3434433534

()2 2.23606798 1.763932024554

x x x x P x y y x x x x ----=

+=?+?=----

02(0,1,2)(0,1)(1,2)02203230

()3 1.82842712=1.242640680220x x x x P x P P x x x x ----=

+=?+?----

31(1,2,3)(1,2)(2,3)13313431

() 1.82842712 1.70710678=1.7475468931441

x x x x P x P P x x x x ----=

+=?+?----

42(2,3,4)(2,3)(3,4)24423532

() 1.70710678 1.76393202 1.7260485272552

x x x x P x P P x x x x ----=

+=?+?=----

30(0,1,2,3)(0,1,2)(1,2,3)03303430

() 1.24264068 1.747546893=1.621320340440

x x x x P x P P x x x x ----=

+=?+?----

41(1,2,3,4)(1,2,3)(2,3,4)14413531

() 1.747546893 1.726048527 1.736797711551

x x x x P x P P x x x x ----=

+=?+?=----

04(0,1,2,3,4)(0,1,2,3)(1,2,3,4)04403530

() 1.62132034 1.73679771 1.6906067620550

x x x x P x P P x x x x ----=

+=?+?=----

3.12设f(x)=7x x 323+++x ,试求差商f[1,2,3,4],f[1,2,3,4,5]的值。

解:由差商表得如下:由公式0

101010]

,,,[],,,[],,,[x x x x x f x x x f x x x f k k k k --=

212

5

89

15

123

41

59

12

64

31

35

9

29

2

17

12

1)(四阶差商三阶差商二阶差商一阶差商节点i x f

所以:差商f[1,2,3,4]=1

f[1,2,3,4,5]=0

3.25求满足条件p(0)=0,p(1)=1,p(2)=2,p(3)=3,p'(2)=0的插值多项式p(x).

解:由已知得:0y ,000==x ,1,111==y x ,2,222==y x ,3,333==y x

323130331023212123101

31210132003020103213)

)()(())()(())()(())()(()

)()(()

)()(())()(())()(()(y x x x x x x x x x x x x y x x x x x x x x x x x x y x x x x x x x x x x x x y x x x x x x x x x x x x x p ------+------+------+------=

将0y ,000==x ,1,111==y x ,2,222==y x ,3,333==y x 代入上式得:

p 3(x)=x

又p(x)-p 3(x)=c ))()()((3210x x x x x x x x ---- 所以p(x)=x x x x x c +-+-)6116(234

1)622184()('23+-+-=x x x c x p

代入0)2('=p 得: c=

2

1

所以该插值多项式为:p(x)=

21x x x x 22

11

3234-+- 3.34设分段多项式???≤≤≤≤-+++=2

110,12,

)(S 2

323x x cx bx x x x x 是以0,1,2为节点的三次样条函数,试确定系数b ,c 的值。 解:因为由S(x)组成的三次样条函数, 所以有以下性质:

0)(x 'S'0)-(x 'S'0)(x S'0)-(x S'0)

S(x 0)-S(x i i i i i i +=?+=+=b

2122626231

2222323+=+++=+-++=+x x c

bx x x x cx bx x x x

将节点x=1代入以上式子中可得方程组:

??

?

??-=-=+=+2121b c b c b

解之得:

?

??=-=32

c b

3.35确定a,b,c,d,e 的值,使得下列函数是一个三次样条:

??

?

??+∞∈-+-∈--∞∈-+-=)

,3[,)3()2(]3,1[,

)2(]1,(,)1()2()(f 32232x x e x d x x c x x b x a x

其次,确定这些参数的值,使得这三个样条插值为下列表值:

解:分别代入三个点,有:

4a 26(1)7

(2)4253b c d e -=??

=??+=?

() 又有S(x)的一阶导连续:)()(0

x S '0x S '33+=-i i )()()()()()(50

3S'03S'40

1S'01S'3333d c c a =?+=-=?+=-

联立求解(1)(2)(3)(4)(5)得:

72773

a b c d e =??=-??

=??=?=-??

3.36确定a,b,c 的值,使得下列函数是一个具有节点0,1,2的三次样条函数:

???≤≤≤≤-+++-+=2110,

)1(1)-c(x 1)-b(x a ,

93)(3

22x x x d x x x f 其次,确定d 使得

?

2

2)](''[dx x f 达到极小。

解:由是一个三次样条函数)(x f ,所以以下有性质:

??

???-+=--+-+=--+++=-+??????+=+=+=)

1(6218)1(3)1(2181)1(1)-c(x 1)-b(x a 930)(x 'S'0)-(x 'S'0)(x S'0)-(x S'0)

S(x 0)-S(x 2

322i i i

i i i x d c x d x c b x x d x x 将节点x=1代入以上式子中可得方程组:

??

?

??-=-==91715

c b a

要求解d 使得

?

2

02)](''[dx x f 达到极小,首先要求出该积分;

?2

2

)](''[dx x f =??+2

1

2

1

2

)](''[)](''[dx x f dx x f

=?

?

-+-+

2

1

21

2

)]1(69[18dx x d dx

=40554122

+-d d f(d)=40554122

+-d d 5424)('-=d d f 令0)('=d f ,可求得当4

9=d 时?202

)](''[dx x f 有最小值。

3.38

解:三次样条求解步骤:

根据给定的点以及相应的边界条件计算01,δδ,由题可知此题为自然边界条件,即:

''''00200n y y M M ==?==。由已知给出可知:11(1,2)i i i h x x i -=-==.对于自然边

界条件,用三弯矩方程求解较为简单。

1

1(1,2)

i i i i

y y i h δ---=

=, (1) 本题中给出了三个点,三弯矩方程可写为:

''

1212210102()6()h h M h M h y δδ++=-- (2)

代求未知数:0102,,,M M δδ。将11(1,2)i i i h x x i -=-==和已知j y 代入(1)可得:

012,2δδ==再将02010,2,2M M δδ====代入(2)式可得:

10M =。

将以上解代入下式可得三次样条函数:

()

231111111()[()]()()()i=0,16326i i i

i i i i i i i i i i M M M S x y M M h x x x x x x h δ++++-=+-+-+-+-

()

23010

0001010001

111()[()]()()()i=0632652((1))27

[1,0]

M M M S x y M M h x x x x x x h x x x δ-=+-+-+-+-=+--=+∈- 

()

23121

1112121112

111()[()]()()()i=1632672(0)27

[0,1]

M M M S x y M M h x x x x x x h x x x δ-=+-+-+-+-=+-=+∈ 

综上:满足条件三次样条函数为

01()27[1,0]()27

[0,1]

S x x x S x x x =+∈-=+∈

3.39确定是否存在系数a,b,c,d 的值,使得下列函数

??

???+∞∈-∈--∞∈-+++-=],4[]4,3[,]3,[3215721)(3

2x x x x dx cx bx a x x f

是区间[-3,4]上的一个自然三次样条。 解:

由)(x f 是自然三次样条曲线,所以有以下性质:

???????==+=+=0

)(x 'S'0)(x 'S'0)(x S'0)-(x S'0)S(x 0)-S(x n 0i

i i i ,

将节点x=-3和x=4代入得使得0)(x 'S'0)(x 'S'n 0==??

?=+=-+?04*6c 20

)3(*6c 2d d

解之得:??

?==?00d c

再由0)

(x S'0)-(x S'0)S(x 0)-S(x i i i i +=+=得:将x=-3、x=4和c=d=0代入得:

-2=b=-32(矛盾)

所以不存在a ,b ,c ,d 满足题目条件

第五章插值与拟合答案—牟善军

习题5.1: Matlab程序如下: clc,clear x=1:0.5:10; y=x.^3-6*x.^2+5*x-3; y0=y+rand; f1=polyfit(x,y0,1) y1=polyval(f1,x); plot(x,y,'+',x,y1); grid on title('一次拟合曲线'); figure(2); f2=polyfit(x,y0,2) y2=polyval(f2,x); plot(x,y,'+',x,y2); grid on title('二次拟合曲线'); figure(3); f4=polyfit(x,y0,4) y3=polyval(f4,x); plot(x,y,'+',x,y3); grid on title('四次拟合曲线'); figure(4); f6=polyfit(x,y0,6) y4=polyval(f6,x); plot(x,y,'+',x,y4); grid on title('六次拟合曲线'); 计算结果及图如下 f1 = 43.2000 -148.8307 f2 = 10.5000 -72.3000 90.0443

f4 = 0.0000 1.0000 -6.0000 5.0000 -2.3557 f6 = -0.0000 0.0000 -0.0000 1.0000 -6.0000 5.0000 -2.3557 5.2高程数据问题解答如下:matlab程序: clc,clear x0=0:400:5600 y0=0:400:4800 z0=[1350 1370 1390 1400 1410 960 940 880 800 690 570 430 290 210 150 1370 1390 1410 1430 1440 1140 1110 1050 950 820 690 540 380 300 210 1380 1410 1430 1450 1470 1320 1280 1200 1080 940 780 620 460 370 350 1420 1430 1450 1480 1500 1550 1510 1430 1300 1200 980 850 750 550 500

第三章系统的教学模型

3 系统的数学模型 3.1 概述 3.1.1 数学模型 在进行控制系统分析和设计时,通常首先需要建立系统的数学模型。所谓系统的数学模型,是用数学方程式来描述机械系统、电气系统、,, 以及生物系统、社会系统的动态特性,是一组能精确,或者至少是相当好地表示系统动态特性的微分方程式、差分方程式或其它数学方程表示式。 数学模型可以有多种形式,采取何种形式来建立数学模型取决于具体的系统及条件,如,一个单输入单输出简单系统的响应分析,可能采用传递函数形式比较简单方便,而如要进行最优控制,则采用状态空间表达式可能更为有利。 对于同一系统的描述,数学模型也可能具有不同的复杂程度。如以一个液压控制阀为例,如果是考虑它在一个复杂系统中的动作,可以用一个二阶微分方程式(基于牛顿第二运动定理)来做为其数学模型,而如果是为了设计这个控制阀并预测其性能,则需要考虑阀的泄漏,尺寸精度影响等更多因素,所建立的数学模型可能是一个6-7 阶的微分方程组。 另一方面,严格地说,任何实际中的电、机械系统、液压系统、气动系统等其变量间的关系都不是绝对性线的,有些甚至是严重非线性的。然而,由于至今非线性系统的求解依然存在着数学难关,比较常用的做法是用一个“等效”的或“近似”的线性系统代替实际上的非线性系统来分析和求解。这意味着,我们既要掌握在建立数学模型时的线性化方法,又要了解所取的“线性”数学模型有效的范围和条件。 3.1.2 数学模型表示形式 控制系统的数学模型通常采用以下几种表示形式: 1.传递函数模型 一个连续的SISO 系统,一般可用一个常定系数线性常微分方程来描述

若系统的输入为u(t),输出的y(t),其微分方程可表示为: a n 叩 …3^ 5) dt n dt n de 对该式进行Lap lace 变换,可得系统的传递函数模型 丫(s)二 b m S m b m 」s m — b o U(s) a n S n - a n j S n A ^ …宀a 。 离散时间动态系统一般以差分方程描述,对一个离散 SISO 系统,设采 样周期为T ,系统输入为u(i),输出为y(i),可描述为: g n y(i n) g n 4y(i n -1) g °y(i)= f m u(i m) f m 」u(i m -1) f o u(i) 对该方程进行Z 变换,可得离散SISO 系统的传递函数模型 m -1 m 4 Z n 4 n 洱 ? g o 对于多输入多输出系统,系统的传递函数模型为传递函数矩阵。 2.状态空间模型 状态方程是现代控制理论中最常用的数学模型表示形式, 它可以方便地 表示SISO 或MIMO S 统。 对于一个连续LTI 系统,其状态方程可描述为: ■ x(t)二 Ax(t) Bu(t) y(t)二Cx(t) Du(t) (3.1-5 ) 其中,第一个方程称为状态方程,第二个称为输出方程。 x(t) 状态变量 u(t) ------ 输入变量,或控制变量 y(t) ------ 输出变量 讥沪b m 」b o u(t) (3.1-1 ) (3.1-2) m - f n g n Z g (3.1-4)

数值分析拉格朗日插值法上机实验报告

课题一:拉格朗日插值法 1.实验目的 1.学习和掌握拉格朗日插值多项式。 2.运用拉格朗日插值多项式进行计算。 2.实验过程 作出插值点(1.00,0.00),(-1.00,-3.00),(2.00,4.00)二、算法步骤 已知:某些点的坐标以及点数。 输入:条件点数以及这些点的坐标。 输出:根据给定的点求出其对应的拉格朗日插值多项式的值。 3.程序流程: (1)输入已知点的个数; (2)分别输入已知点的X坐标; (3)分别输入已知点的Y坐标; 程序如下: #include #include #include float lagrange(float *x,float *y,float xx,int n) /*拉格朗日

插值算法*/ { int i,j; float *a,yy=0.0; /*a作为临时变量,记录拉格朗日插值多项*/ a=(float*)malloc(n*sizeof(float)); for(i=0;i<=n-1;i++) { a[i]=y[i]; for(j=0;j<=n-1;j++) if(j!=i) a[i]*=(xx-x[j])/(x[i]-x[j]); yy+=a[i]; } free(a); return yy; } int main() { int i; int n; float x[20],y[20],xx,yy; printf("Input n:");

scanf("%d",&n); if(n<=0) { printf("Error! The value of n must in (0,20)."); getch();return 1; } for(i=0;i<=n-1;i++) { printf("x[%d]:",i); scanf("%f",&x[i]); } printf("\n"); for(i=0;i<=n-1;i++) { printf("y[%d]:",i);scanf("%f",&y[i]); } printf("\n"); printf("Input xx:"); scanf("%f",&xx); yy=lagrange(x,y,xx,n); printf("x=%f,y=%f\n",xx,yy); getch(); } 举例如下:已知当x=1,-1,2时f(x)=0,-3,4,求f(1.5)的值。

第四章曲线拟合和多项式插值 - Hujiawei Bujidao

数值计算之美SHU ZHI JI SUAN ZHI MEI 胡家威 http://hujiaweibujidao.github.io/ 清华大学逸夫图书馆·北京

内容简介 本书是我对数值计算中的若干常见的重要算法及其应用的总结,内容还算比较完整。 本人才疏学浅,再加上时间和精力有限,所以本书不会详细介绍很多的概念,需要读者有一定的基础或者有其他的参考书籍,这里推荐参考文献中的几本关于数值计算的教材。 本书只会简单介绍下算法的原理,对于每个算法都会附上我阅读过的较好的参考资料以及算法的实现(Matlab或者其他语言),大部分代码是来源于参考文献[1]或者是经过我改编而成的,肯定都是可以直接使用的,需要注意的是由于Latex对代码的排版问题,导致中文注释中的英文字符经常出现错位,对于这种情况请读者自行分析,不便之处还望谅解。写下这些内容的目的是让自己理解地更加深刻些,顺便能够作为自己的HandBook,如有错误之处,还请您指正,本人邮箱地址是:hujiawei090807@https://www.doczj.com/doc/1a18478254.html,。

目录 第四章曲线拟合和多项式插值1 4.1曲线拟合 (1) 4.1.1使用线性方程进行曲线拟合 (1) 4.1.2非线性方程进行曲线拟合 (2) 4.1.3使用二次或者高次多项式进行曲线拟合[最小二乘问题].3 4.2多项式插值 (4) 4.2.1拉格朗日插值多项式 (4) 4.2.2牛顿插值多项式 (5) 4.2.3分段线性插值 (7) 4.2.4保形分段三次插值 (8) 4.2.5三次样条插值 (10) 4.3Matlab函数解析 (13) 参考文献14

插值与拟合(使用插值还是拟合)

利用matlab实现插值与拟合实验 张体强1026222 张影 晁亚敏 [摘要]:在测绘学中,无论是图形处理,还是地形图处理等,大多离不开插值与拟合的应用,根据插值与拟合原理,构造出插值和拟合函数,理解其原理,并在matlab平台下,实现一维插值,二维插值运算,实现多项式拟合,非线性拟合等,并在此基础上,联系自己所学专业,分析其生活中特殊例子,提出问题,建立模型,编写程序,以至于深刻理解插值与拟合的作用。 [关键字]: 测绘学插值多项式拟合非线性拟合 [ Abstract]: in surveying and mapping, whether the graphics processing, or topographic map processing and so on, are inseparable from the interpolation and fitting application, according to the interpolation and fitting theory, construct the fitting and interpolation function, understanding its principle, and MATLAB platform, achieve one-dimensional interpolation, two-dimensional interpolation, polynomial fitting, non-linear fitting, and on this basis, to contact their studies, analysis of their living in a special example, put forward the question, modeling, programming, so that a deep understanding of interpolation and fitting function. [ Key words]: Surveying and mapping interpolation polynomial fitting nonlinear

数值分析常用的插值方法

数值分析报告 班级: 专业: 流水号: 学号: 姓名:

常用的插值方法 序言 在离散数据的基础上补插连续函数,使得这条连续曲线通过全部给定的离散数据点。插值是离散函数逼近的重要方法,利用它可通过函数在有限个点处的取值状况,估算出函数在其他点处的近似值。 早在6世纪,中国的刘焯已将等距二次插值用于天文计算。17世纪之后,牛顿、拉格朗日分别讨论了等距和非等距的一般插值公式。在近代,插值法仍然是数据处理和编制函数表的常用工具,又是数值积分、数值微分、非线性方程求根和微分方程数值解法的重要基础,许多求解计算公式都是以插值为基础导出的。 插值问题的提法是:假定区间[a,b〕上的实值函数f(x)在该区间上n+1个互不相同点x0,x1……x n处的值是f(x0),……f(x n),要求估算f(x)在[a,b〕中某点的值。其做法是:在事先选定的一个由简单函数构成的有n+1个参数C0, C1,……C n的函数类Φ(C0,C1,……C n)中求出满足条件P(x i)=f(x i)(i=0,1,……n)的函数P(x),并以P(x)作为f(x)的估值。此处f(x)称为被插值函数,x0,x1,……xn 称为插值结(节)点,Φ(C0,C1,……C n)称为插值函数类,上面等式称为插值条件,Φ(C0,……C n)中满足上式的函数称为插值函数,R(x)=f(x)-P(x)称为插值余项。

求解这类问题,它有很多种插值法,其中以拉格朗日(Lagrange)插值和牛顿(Newton)插值为代表的多项式插值最有特点,常用的插值还有Hermit 插值,分段插值和样条插值。 一.拉格朗日插值 1.问题提出: 已知函数()y f x =在n+1个点01,,,n x x x L 上的函数值01,,,n y y y L ,求任意一点 x '的函数值()f x '。 说明:函数()y f x =可能是未知的;也可能是已知的,但它比较复杂,很难计算其函数值()f x '。 2.解决方法: 构造一个n 次代数多项式函数()n P x 来替代未知(或复杂)函数()y f x =,则 用()n P x '作为函数值()f x '的近似值。 设()2012n n n P x a a x a x a x =++++L ,构造()n P x 即是确定n+1个多项式的系数 012,,,,n a a a a L 。 3.构造()n P x 的依据: 当多项式函数()n P x 也同时过已知的n+1个点时,我们可以认为多项式函数 ()n P x 逼近于原来的函数()f x 。根据这个条件,可以写出非齐次线性方程组: 20102000 20112111 2012n n n n n n n n n n a a x a x a x y a a x a x a x y a a x a x a x y ?++++=?++++=?? ? ?++++=?L L L L L 其系数矩阵的行列式D 为范德萌行列式: ()20 0021110 2111n n i j n i j n n n n x x x x x x D x x x x x ≥>≥= = -∏L L M M M M L

数值分析常用的插值方法

数值分析 报告 班级: 专业: 流水号: 学号: 姓名:

常用的插值方法 序言 在离散数据的基础上补插连续函数,使得这条连续曲线通过全部给定的离散数据点。插值是离散函数逼近的重要方法,利用它可通过函数在有限个点处的取值状况,估算出函数在其他点处的近似值。 早在6世纪,中国的刘焯已将等距二次插值用于天文计算。17世纪之后,牛顿、拉格朗日分别讨论了等距和非等距的一般插值公式。在近代,插值法仍然是数据处理和编制函数表的常用工具,又是数值积分、数值微分、非线性方程求根和微分方程数值解法的重要基础,许多求解计算公式都是以插值为基础导出的。 插值问题的提法是:假定区间[a,b〕上的实值函数f(x)在该区间上 n+1 个互不相同点x 0,x 1 (x) n 处的值是f(x ),……f(x n ),要求估算f(x)在[a,b〕 中某点的值。其做法是:在事先选定的一个由简单函数构成的有n+1个参数C , C 1,……C n 的函数类Φ(C ,C 1 ,……C n )中求出满足条件P(x i )=f(x i )(i=0,1,…… n)的函数P(x),并以P(x)作为f(x)的估值。此处f(x)称为被插值函数,x 0,x 1 ,……xn 称为插值结(节)点,Φ(C 0,C 1 ,……C n )称为插值函数类,上面等式称为插值条件, Φ(C 0,……C n )中满足上式的函数称为插值函数,R(x)= f(x)-P(x)称为 插值余项。

求解这类问题,它有很多种插值法,其中以拉格朗日(Lagrange)插值和牛顿(Newton)插值为代表的多项式插值最有特点,常用的插值还有Hermit 插值,分段插值和样条插值。 一.拉格朗日插值 1.问题提出: 已知函数()y f x =在n+1个点01,, ,n x x x 上的函数值01,, ,n y y y ,求任意一点 x '的函数值()f x '。 说明:函数()y f x =可能是未知的;也可能是已知的,但它比较复杂,很难计算其函数值()f x '。 2.解决方法: 构造一个n 次代数多项式函数()n P x 来替代未知(或复杂)函数()y f x =,则 用()n P x '作为函数值()f x '的近似值。 设()2012n n n P x a a x a x a x =+++ +,构造()n P x 即是确定n+1个多项式的系数 012,,,,n a a a a 。 3.构造()n P x 的依据: 当多项式函数()n P x 也同时过已知的n+1个点时,我们可以认为多项式函数 ()n P x 逼近于原来的函数()f x 。根据这个条件,可以写出非齐次线性方程组: 20102000 201121112012n n n n n n n n n n a a x a x a x y a a x a x a x y a a x a x a x y ?+++ +=?++++=??? ?+++ +=? 其系数矩阵的行列式D 为范德萌行列式: () 200021110 2 111n n i j n i j n n n n x x x x x x D x x x x x ≥>≥= = -∏

实验四 插值法与曲线拟合

计算方法实验报告 专业班级:医学信息工程一班姓名:陈小芳学号:201612203501002 实验成绩: 1.【实验题目】 插值法与曲线拟合 2.【实验目的】 3.【实验内容】 4. 【实验要求】

5. 【源程序(带注释)】 (1)拉格朗日插值 #include #include #include #include #include #define n 4 //插值节点的最大下标 main() { double x1[n+1]={0.4,0.55,0.65,0.8,0.9}; double y1[n+1]={0.4175,0.57815,0.69657,0.88811,1.02652}; double Lagrange(double x1[n+1],double y1[n+1],float t); int m,k;float x,y;float X;double z; printf("\n The number of the interpolation points is m ="); //输入插值点的个数 while(!scanf("%d",&m)) { fflush(stdin); printf("\n输入错误,请重新输入:\n"); printf("\n The number of the interpolation points is m ="); } for(k=1;k<=m;k++) { printf("\ninput X%d=",k); while(!scanf("%f",&X)) { fflush(stdin); printf("\n输入错误,请重新输入:\n"); printf("\ninput X%d=",k); } z=Lagrange(x1,y1,X); printf("P(%f)=%f\n",X,z); } getch(); return (0); } double Lagrange(double x[n+1],double y[n+1],float X) { int i,j;

数值分析 插值法

第二章插值法 2.在区间[-1,1]上分别取n=10,20用两组等距节点对龙哥函数f(x)=1/(1+25*x^2)做多项式插值及三次样条插值,对每个n值,分别画出插值函数及f(x)的图形。 (1)多项式插值 ①先建立一个多项式插值的M-file; 输入如下的命令(如牛顿插值公式): function [C,D]=newpoly(X,Y) n=length(X); D=zeros(n,n) D(:,1)=Y' for j=2:n for k=j:n D(k,j)=(D(k,j-1)- D(k-1,j-1))/(X(k)-X(k-j+1)); end end C=D(n,n); for k=(n-1):-1:1 C=conv(C,poly(X(k))) m=length(C); C(m)= C(m)+D(k,k); end ②当n=10时,我们在命令窗口中输入以下的命令: clear,clf,hold on; X=-1:0.2:1; Y=1./(1+25*X.^2); [C,D]=newpoly(X,Y); x=-1:0.01:1; y=polyval(C,x); plot(x,y,X,Y,'.'); grid on; xp=-1:0.2:1; z=1./(1+25*xp.^2); plot(xp,z,'r') 得到插值函数和f(x)图形:

③当n=20时,我们在命令窗口中输入以下的命令:clear,clf,hold on; X=-1:0.1:1; Y=1./(1+25*X.^2); [C,D]=newpoly(X,Y); x=-1:0.01:1; y=polyval(C,x); plot(x,y,X,Y,'.'); grid on; xp=-1:0.1:1; z=1./(1+25*xp.^2); plot(xp,z,'r') 得到插值函数和f(x)图形:

第4、5讲 插值与拟合 作业参考答案

第四、五讲作业题参考答案 一、填空题 1、拉格朗日插值基函数在节点上的取值是( 0或1 )。 2、当1,1,2x =-,时()034f x =-, ,,则()f x 的二次插值多项式为 ( 2527 633 x x +- )。 3、由下列数据 所确定的唯一插值多项式的次数为( 2次 )。 4、根据插值的定义,函数()x f x e -=在[0,1]上的近似一次多项式1()P x = ( 1(1)1e x --+ ),误差估计为( 18 )。 5、在做曲线拟合时,对于拟合函数x y ax b = +,引入变量变换y =( 1 y ),x =( 1 x )来线性化数据点后,做线性拟合y a bx =+。 6、在做曲线拟合时,对于拟合函数Ax y Ce =,引入变量变换( ln()Y y = )、 X x =和B C e =来线性化数据点后,做线性拟合Y AX B =+。 7、设3()1f x x x =+-,则差商[0,1,2,3]f =( 1 )。 8、在做曲线拟合时,对于拟合函数()A f x Cx =,可使用变量变换(ln Y y =)(ln X x = )和B C e =来线性化数据点后,做线性拟合Y AX B =+。 9、设(1)1,(0)0,(1)1,(2)5,()f f f f f x -====则的三次牛顿插值多项式为 ( 3211 66x x x +-),其误差估计式为( 4()(1)(1)(2),(1,2)24f x x x x ξξ+--∈-) 10、三次样条插值函数()S x 满足:()S x 在区间[,]a b 内二阶连续可导, (),,0,1,2,,,k k k k S x y x y k n ==(已知)且满足()S x 在每一个子区间1[,] k k x x +上是( 三次多项式 )。

插值和拟合区别

插值和拟合区别 运输1203黎文皓通过这个学期的《科学计算与数学建模》课程的学习,使我掌握了不少数学模型解决实际问题的方法,其中我对于插值与拟合算法这一章,谈一谈自己的看法可能不是很到位,讲得不好的地方也请老师见谅。 首先,举一个简单的例子说明一下这个问题。 如果有100个平面点,要求一条曲线近似经过这些点,可有两种方法:插值和拟合。 我们可能倾向于用一条(或者分段的多条)2次、3次或者说“低次”的多项式曲线而不是99次的曲线去做插值。也就是说这条插值曲线只经过其中的3个、4个(或者一组稀疏的数据点)点,这就涉及到“滤波”或者其他数学方法,也就是把不需要90多个点筛选掉。如果用拟合,以最小二乘拟合为例,可以求出一条(或者分段的多条)低次的曲线(次数自己规定),逼近这些数据点。具体方法参见《数值分析》中的“线性方程组的解法”中的“超定方程的求解法”。经过上面例子的分析,我们可以大致的得到这样一个结论。插值就是精确经过,拟合就是逼近。 插值和拟合都是函数逼近或者数值逼近的重要组成部分。他们的共同点都是通过已知一些离散点集M上的约束,求取一个定义在连续集合S(M包含于S)的未知连续函数,从而达到获取整体规律目的,即通过"窥几斑"来达到"知全豹"。 所谓拟合是指已知某函数的若干离散函数值{f1,f2,…,fn},通过调

整该函数中若干待定系数f(λ1, λ2,…,λ3), 使得该函数与已知点集的差别(最小二乘意义)最小。如果待定函数是线性,就叫线性拟合或者线性回归(主要在统计中),否则叫作非线性拟合或者非线性回归。表达式也可以是分段函数,这种情况下叫作样条拟合。 而插值是指已知某函数的在若干离散点上的函数值或者导数信息,通过求解该函数中待定形式的插值函数以及待定系数,使得该函数在给定离散点上满足约束。 从几何意义上将,拟合是给定了空间中的一些点,找到一个已知形式未知参数的连续曲面来最大限度地逼近这些点;而插值是找到一个(或几个分片光滑的)连续曲面来穿过这些点。 不过是插值还是拟合都是建立在一定的数学模型的基础上进行的。多项式插值虽然在一定程度上解决了由函数表求函数的近似表达式的问题,但是在逼近曲线上有明显的缺陷,很可能不能很好的表示函数的走向,存在偏差,在实际问题中我们往往通过函数近似表达式的拟合法来得到一个较为准却的表达式。

数值分析实验插值与拟合

《数值分析》课程实验一:插值与拟合 一、实验目的 1. 理解插值的基本原理,掌握多项式插值的概念、存在唯一性; 2. 编写MATLAB 程序实现Lagrange 插值和Newton 插值,验证Runge 现象; 3. 通过比较不同次数的多项式拟合效果,理解多项式拟合的基本原理; 4. 编写MATLAB 程序实现最小二乘多项式曲线拟合。 二、实验内容 1. 用Lagrange 插值和Newton 插值找经过点(-3, -1), (0, 2), (3, -2), (6, 10)的三次插值公式,并编写MATLAB 程序绘制出三次插值公式的图形。 2. 设 ]5,5[,11 )(2 -∈+= x x x f 如果用等距节点x i = -5 + 10i /n (i = 0, 1, 2, …, n )上的Lagrange 插值多项式L n (x )去逼近它。不妨取n = 5和n = 10,编写MATLAB 程序绘制出L 5(x )和L 10(x )的图像。 3. 在某冶炼过程中,根据统计数据的含碳量与时间关系如下表,试求含碳量与时间t 的拟合曲线。

(1) 用最小二乘法进行曲线拟合; (2) 编写MATLAB 程序绘制出曲线拟合图。 三、实验步骤 1. (1) Lagrange 插值法:在线性空间P n 中找到满足条件: ?? ?≠===j i j i x l ij j i , 0,, 1)(δ 的一组基函数{}n i i x l 0)(=,l i (x )的表达式为 ∏ ≠==--= n i j j j i j i n i x x x x x l ,0),,1,0()( 有了基函数{}n i i x l 0)(=,n 次插值多项式就可表示为 ∑==n i i i n x l y x L 0)()( (2) Newton 插值法:设x 0, x 1, …, x n 是一组互异的节点,y i = f (x i ) (i = 0, 1, 2, …, n ),f (x )在处的n 阶差商定义为 1102110] ,,,[],,,[],,,[x x x x x f x x x f x x x f n n n n --= - 则n 次多项式 ) ())(](,,[) )(](,,[)](,[)()(11010102100100----++--+-+=n n n x x x x x x x x x f x x x x x x x f x x x x f x f x N 差商表的构造过程:

常州大学数值分析课后习题答案第二章第三章第四章节

数值分析作业 第二章 1、用Gauss消元法求解下列方程组: 2x 1-x 2 +3x 3 =1, (1) 4x 1+2x 2 +5x 3 =4, x 1+2x 2 =7; (2) 解: A=[2 -1 3 1;4 2 5 4;1 2 0 7] n=size(A,1);x=zeros(n,1);flag=1; % 消元过程 for k=1:n-1 for i=k+1:n if abs(A(k,k))>eps A(i,k+1:n+1)= A(i,k+1:n+1)-A(k,k+1:n+1)*A(i,k)/A(k,k); else flag=0; return end end end % 回代过程 if abs(A(n,n))>eps x(n)=A(n,n+1)/A(n,n); else flag=0; return end for i=n-1:-1:1 x(i)=(A(i,n+1)-A(i,i+1:n)*x(i+1:n))/A(i,i); end return x A = 2 -1 3 1 4 2 5 4 1 2 0 7

x = 9 -1 -6 11x1-3x2-2x3=3, (2)-23x 1+11x 2 +1x 3 =0, x 1+2x 2 +2x 3 =-1; (2) 解: A=[11 -3 -2 3;-23 11 1 0;1 2 2 -1] n=size(A,1);x=zeros(n,1);flag=1; % 消元过程 for k=1:n-1 for i=k+1:n if abs(A(k,k))>eps A(i,k+1:n+1)= A(i,k+1:n+1)-A(k,k+1:n+1)*A(i,k)/A(k,k); else flag=0; return end end end % 回代过程 if abs(A(n,n))>eps x(n)=A(n,n+1)/A(n,n); else flag=0; return end for i=n-1:-1:1 x(i)=(A(i,n+1)-A(i,i+1:n)*x(i+1:n))/A(i,i); end return x A = 11 -3 -2 3 -23 11 1 0 1 2 2 -1 x = 0.2124 0.5492 -1.1554 4、用Cholesky分解法解方程组 3 2 3 x1 5 2 2 0 x2 3 3 0 12 x3 7

《系统工程》第三章系统模型与模型化知识点

第三章系统模型与模型化 1、模型是实现系统的理想化抽象或简洁表示,描绘了现实系统的某些 主要特点,是为了客观地研究系统而发展起来的。 模型的三个特点:(1)它是现实世界部分的抽象或模仿 (2)它是由那些与分析的问题有关的因素构成的 (3)它表明了有关因素间的互相关系 2、模型的作用与地位 P36 作用:(1)模型本身是人们对客体系统一定程度研究结果的表达。这种表达是简洁的、形式化的。 (2)模型提供了脱离具体内容的逻辑演绎和计算的基础,这会导致对科学规律、理论、原理的发现。 (3)利用模型可以进行“思想”试验。 3、模型的分类P36 4、构造模型的一般原则 书P37:(1)建立方框图(2)考虑信息相关性(3)考虑准确性(4)考虑集结性 课件:1.现实性 2.简洁性 3.适应性 4.强壮性 5、建模的基本步骤P38 (1)明确建模的目的和要求,以便使模型满足实际要求,不致产生太大偏差。 (2)对系统进行一般语言描述。 (3)弄清系统中的主要因素(变量)及其相互关系(结构关系和函数关系),以便使模型准确地表示现实系统。 (4)确定模型的结构 (5)估计模型的参数 (6)实验研究 (7)必要修改 课件:1.形成问题 2.选定变量 3.变量关系的确定 4.确定模型的数学结构及参数辨识 5.模型真实性检验 6、模型的简化方法 P40

(1)减少变量,减去次要变量 (2)改变变量性质 (3)合并变量(集结) (4)改变函数关系 (5)改变约束条件 7、系统结构模型化------计算题P41-54 结构模型是定性表示系统构成要素以及它们之间存在着的本质上相互依 赖,相互制约和关联情况的模型。 邻接矩阵(A)是表示系统要素间基本二元关系或直接联系情况 的方阵。 邻接矩阵A的元素a ij可以定义如下: a ij= 1 S i R S j R表示S i与S j有关系 0 S i R S j R表示S i与S j没关系 可达矩阵R是指用矩阵形式来描述有向连接图各节点之间,经过 一定长度的通路后可以到达的程度。 :它主要用于变量不多(2-3个)而欣喜也不充分的条件下分析变量之间 的定性关系。 具体作用有两方面:1.平衡点分析 2.稳定性分析 拟合法:数据建模两种方法------拟合法和经验法。 拟合法:偏重“理论”导向。经验法:以“数据”为导向。最小二乘法:根据偏差的平方和为最小的条件来选择常数的方法,叫做最小二乘法。 机理法:机理法是在研究系统运行机理的基础上提出建设,然后建构模型。 书后题:P81-23 第五章系统评价方法计算题 1、系统评价原理P112 系统评价问题是由评价对象(What)、评价主体(Who)、评价目的 (Why)、评价时期(When)、评价地点(Where)及评价方法 (How)等要素(5W1H)构成的问题复合体。

第三章 系统模型与模型化

第三章 系统模型与模型化 21. 给定描述系统基本结构的有向图,如图3-16a 、b 所示。要求: (1)写出系统要素集合S 及S 上的二元关系集合Rb 。 (2)建立邻接矩阵A 、可达矩阵M 及缩减矩阵M ’。 解:a)(1) 51234{S ,,,,}S S S S S = 55551212334234{(S ,),(,),(,),(,),(,),(,),(,S )}b R S S S S S S S S S S S S = (2)010010 01000 0010000000111 0A ??????????????? ? = 1 1001011000 01100001001111A I ?? ??????+=?? ?????? 2 31111101110()()0 0110000100 1110A I A I M ?? ???? ??+==+=?? ?????? 具有强连接要素用一个要素来代替得'M M = b) (1) {1,2,3,4,5,6}S = {(1,3),(1,5),(2,4),(4,2),(4,6),(5,2),(5,1)}b R = 2 S 3 4 S a) b) 图3-16 题21图

(2) 001010 000100 000000 010001 110000 000000 A ?? ?? ?? ?? =?? ?? ?? ?? ?? 101010 010100 001000 010101 110010 000001 A I ?? ?? ?? ?? +=?? ?? ?? ?? ??2 111010 010101 001000 () 010101 111110 000001 A I ?? ?? ?? ?? +=?? ?? ?? ?? ?? 34 111111 11111 001000 ()() 00000 010101 010101 1 1 A I A I M ?? ?? ?? ?? +==+= ?? ?? ?? ?? ?? 1111 0101 ' 0010 0001 M ?? ?? ?? = ?? ?? ?? 22. 请依据图3-17 1 P 9 解:V表示行要素直接影响列要素,A表示列要素直接影响行要素,X表示行列两要素相互影响。 根据要素间二元关系的传递性,逻辑推断要素间递推二元关系: 768 P P P →→;548 P P P →→;724 P P P →→ 写出可达矩阵

第四章 插值法与函数逼近

第四章 插值法与函数逼近 A 插值法 1. 根据( 2.2)定义的范德蒙行列式,令 证明 是n 次多项式,它的根是,且 . 2. 当x = 1 , -1 , 2 时, f (x)= 0 , -3 , 4 ,求f (x )的二次插值多项式. 3. 4. 给出cos x ,0°≤x ≤90°的函数表,步长h =1′=(1/60)°,若函数表具有5位有效数字, 研究用线性插值求cos x 近似值时的总误差界. 5. 设,k =0,1,2,3,求. 6. 设 为互异节点(j =0,1,…,n ),求证: i) ii) 7. 设 且,求证 8. 在上给出的等距节点函数表,若用二次插值求的近似值,要使截 断误差不超过,问使用函数表的步长应取多少? 9. 若,求 及. 10. 如果是次多项式,记,证明的阶差分 是次多项式,并且为正整数). 11. 证明. 12. 证明 13. 证明 14. 若 有个不同实根,证明 2000 0112111 21 ()(,, ,,)11 n n n n n n n n n x x x V x V x x x x x x x x x x ----== ()n V x 01, ,n x x -101101()(,, ,)() ()n n n n V x V x x x x x x x ---=--0k x x kh =+032max ()x x x l x ≤≤j x 0()(0,1, ,); n k k j j j x l x x k n =≡=∑0 ()()1,2,,). n k j j j x x l x k n =-≡0(=∑[] 2(),f x C a b ∈()()0f a f b ==21 ()()(). 8max max a x b a x b f x b a f x ≤≤≤≤≤-"44x -≤≤()x f x e =x e 6 10-h 2n n y =4n y ?4 n y δ()f x m ()()()f x f x h f x ?=+-()f x k ()(0)k f x k m ?≤≤m k -()0(m l f x l +?=1()k k k k k k f g f g g f +?=?+?1 1 0010 . n n k k n n k k k k f g f g f g g f --+==?=--?∑∑1 2 00 . n j n j y y y -=? =?-?∑1011()n n n n f x a a x a x a x --=++++n 12,,,n x x x

第4章_插值法(数值分析)

4.1 设(0.4)0.38942,(0.5)0.47943,(0.6)0.56464f f f ===,使用一次、二次 Lagrange 插值多项式计算(0.5789)f 的近似值. 解:(0.4)0.38942,(0.5)0.47943,(0.6)0.56464f f f === 一次Lagrange 插值多项式公式 05338.08521.06 .05.06 .0)5.0(5.06.05.0) 6.0()(1+=--+--=x x f x f x P 故 546669.005338.057891.08521.0)57891 .0(1≈+?=P . 二次Lagrange 插值多项式公式: ) 5.04.0)( 6.04.0() 5.0)( 6.0() 4.0()4.0 5.0)( 6.05.0()4.0)(6.0()5.0()4.06.0)(5.06.0()4.0)(5.0() 6.0()(2----+----+----=x x f x x f x x f x P 即 01862.01161.124.0)(22-+-=x x x P 故 5470686 .001862.057891.01161.157891.024.0)57891.0(2 2=-?+?-=P 4.2 设01(),(), ,()n l x l x l x 是以为节点的01,,,n x x x 的n 次Lagrange 插值基函数,试 证明; (),0,1, ,n j j k k k x l x x j n ===∑ 证:假设在对应于01,,,n x x x 节点的函数值为,...)1,0(=i y i ,则应有: ),...,1,0()()(1 n i x l y x P n i i i ==∑= 取n j x y j i i ,...,1,0,==,由插值条件有: j i i j x y x P ==)( 故0 ()n j j i i i i x x l x ==∑,即0 ()n j j k k i x x l x ==∑

相关主题
文本预览
相关文档 最新文档