当前位置:文档之家› 微积分的数值计算方法

微积分的数值计算方法

微积分的数值计算方法
微积分的数值计算方法

第七章 微积分的数值计算方法

7.1 微积分计算存在的问题/数值积分的基本概念 1. 微分计算问题

求函数的导数(微分),原则上没有问题。当然,这是指所求函数为连续形式且导数存在的情形。但如果函数一表格形式给出,要求函数在某点的导数值;或者是希望某点的导数值只用其附近离散点上的函数值近似地表示,这就是新问题了,它称为微分的数值计算,或称为数值微分。 2.定积分计算问题

计算函数f 在],[b a 上的定积分 dx x f I b

a

?=

)(

当被积函数f 的原函数能用有限形式)(x F 给出时,可用积分基本公式来计算:

)()()(a F b F dx x f I b

a -==?

然而,问题在于:① f 的原函数或者很难找到,或者根本不存在;②f 可能给出一个函数表;③仅仅知道f 是某个无穷级数的和或某个微分方程的解等等。这就迫使人们不得不寻求定积分的近似计算,也称数值积分。 3.数值积分的基本形式

数值积分的基本做法是构造形式如下的近似公式

∑?=≈n

k k

k

b

a

x f A dx x f 0

)()( (7.1.1)

或记成

∑?=+=n

k n

k

k

b

a

f R x f A dx x f 0

][)()( (7.1.2)

∑==n

k k k x f A I 0

*

)( 和 ][f R n 分别成为],[b a 上的f 的数值求积公式及其

余项(截断误差),k x 和k A ),,1,0(n k =分别称为求积节点和求积系数(求积系数与被积函数无关)。

这种求积公式的特点是把求积过(极限过程)程转化为乘法与加法的代数运算。构造这种求积公式需要做的工作是:确定节点k x 及系数

k A ),,1,0(n k =,估计余项][f R n 以及讨论*

I 的算法设计及其数值稳定

性。

4.插值型求积公式

如何构造求积公式呢?基本的技术是用被积函数f 的Lagrange 插值多项式

)(x L n 近似代替f ,也即对],[b a 上指定的1+n 个节点

b

x n ≤

)()()!

1(1)()()()()()1()

1(0

x f

n x f x l x R x L x f n n k n

k k n n ++=++

=+=∑ωξ

代入(7.1.2)式等号左边有

???+=b

a

n

b a

n

b a

dx x R dx x L dx x f )()()(

?∑?++=++

=

b

a n n k n

k b

a k dx x x f

n x f dx x l )())(()!

1(1)(])([)1()

1(0

ωξ

或写成形如(7.1.2)式的一般形式: ∑?=+=n

k n

k

k

b

a

f R x f A dx x f 0

][)()( (7.1.4)

其中 ?=

b

a

k

k dx x l A )( ),,1,0(n k = (7.1.5)

?+++=

b

a n n n dx x x f

n f R )())(()!

1(1][)1()

1(ωξ (7.1.6)

称(7.1.4)为插值型求积公式。下面将要介绍的几种实用求积公式无不都是插值型公式的某种具体形式。

由上述定义,用余项公式可以衡量数值求积公式的精确程度。不过,由余项公式(7.1.6)可见,如果f 为次数n ≤的多项式,则][f R n 中有0)

1(=+n f

,故

0][=f R n ,从而公式(7.1.4)成为等式 ∑?==n

k k k b

a x f A dx x f 0

)()(,这就是说,

当被积函数f 为次数n ≤的多项式时,其相应的插值型求积公式不是近似公式,而是准确公式。据此,人们引入了另一个衡量数值求积公式近似程度好坏的“代数精度” 概念。

5. 代数精度

定义7.1.1 如果数值求积公式∑?=≈

n

k k

k

b

a x f A dx x f 0

)()(,当)(x f 是m ~0次

多项式(可表示为m

x x x f ,,,1)( =)时,均有∑?==

n

k k

k

b

a x f A dx x f 0

)()(,也

即有0][=f R n ,便称求积公式∑=n

k k k x f A 0

)(至少具有m 次代数精度;如果当

)(x f 是1+m 次多项式(可表示为1

)(+=m x

x f )时,只能是∑?=≈n k k

k

b

a

x f A dx x f 0)()(,

也即有0][≠f R n ,便称求积公式∑=n

k k

k x f A 0

)(具有 m 次代数精度。

定理 7.1.1 有1+n 个节点的插值型求积公式(7.1.4),至少具有n 次代数精度。 例7.1.1 确定节点321,,x x x 和系数A ,使得下列形式的求积公式

)]()()([)(3

2

1

1

1

x f x f x f A dx x f ++=?-

具有3次代数精度。

解 利用代数精度定义 取 3

2

,,,1)(x x x x f =令

???????++=++=++=++=????----11

3

332313112

322212

1

13211

1)()()

()

111(1x x x A dx x x x x A dx x x x x A xdx A dx 计算得 2

1,0,21,3

2321=

=-

==

x x x A

即得至少具有3次代数精度的求积公式为

)]2

1(

)0()2

1([3

2)(1

1

f f f dx x f ++-

?-

验证上式两端对4

)(x x f =,有

左边=2/5 ,右边=1/3

两者不相等,故可知所得公式正好为3次代数精度。

7.2 Newton-Cotes 型求积公式

构造具体形式的插值型求积公式(6.1.4)的第一个想法是考虑求积节点为等距节点的情况(这时公式可能比较简单,而且节点也就定下来了),这就是Newton-Cotes(牛顿-柯特斯公式),而Newton-Cotes 型公式当节点只有两点和三点时,就是熟知的梯形公式和Simpson(辛普生)公式。 1. Newton-Cotes 求积公式

考虑积分区间

]

,[b a 上的节点为等距节点

),,1,0,(n k n

a b h kh a x k =-=

+= (7.2.1 )

由(7.1.5)式可得插值型求积系数 ?∏

?

≠=--=

=

b

a

n

k

j j j

k j b

a

k k dx x x x x dx x l A 0)( (通过变换th a x +=)

?---+-----=-n

)()1)(1()1()!

(!)

1()

(dt

n t k t k t t t k n nk a b k

n 记

?---+----=

-n 0

)

()()1)(1()1()!

(!)

1(dt n t k t k t t t k n nk C

k

n n k

(7.2.2)

并称它为Cotes 系数,从而得等距节点的插值型的n 阶Newton-Cotes 求积公式*

NC I ,

*

)

()()()(NC

n

k k n k

b

a

I x f C a b dx x f 记为∑?

=-=。(7.2.3)

显然,对不同的n 以及n k ,,1,0 =,按公式(7.2.2)算出)

(n k

C ,按公式可构造出不同

阶的Newton-Cotes 公式。

下面是Cotes 系数表 (7.2.1)

n )

(n k C n k ,,1,0 =

1 1/

2 1/2

2 1/6 4/6 1/6

3 1/8 3/8 3/8 1/8

4 7/90 16/4

5 2/15 16/45 7/90

…… …… …… …… …… ……

8 989/28350 5888/28350 -928/28350 10496/28350 -4540/28350 …… 989/28350

2. 梯形公式/Simpson 公式

当1=n ,即两个节点,取积分区间],[b a 两个端点b a ,为节点时,由上表(7.2.1)可构造求积公式 T

b f a f a b dx x f b

a

记为)]()([2

)(+-≈

?

(7.2.4)

称为梯形公式。

当2=n ,即3个等距节点,取积分区间],[b a 两端点b a ,及区间中点2

b a +为节

点时,由表7.2.1可构造求积公式

S

b f b a f a f a b dx x f b

a

记为)]()2

(

4)()[6

(

)(++-≈?

(7.2.5)

称为Simpson(辛普生)公式或抛物线求积公式。

类似地,当3=n 可构造出所谓Simpson3/8公式;当4=n 可构造出Milne(米尔尼)

公式(有时也称Cotes 公式)等等。 3. 误差分析

关于Simpson-Cotes 型求积公式的截断误差或称余项

*

)(][NC b

a I dx x f f R -=?

的分析,计算数学家为我们证明了一个一般性定理。 定理 7.2.1 Newton-Cotes 公式(7.2.3)的余项][f R n 可表示为: (1) 对n 为奇数的情形,设],[)

1(b a C

f n +∈,则

)(][)

1(2

η++=n n n n f

h

r f R ]),([b a ∈η

?--+=

n

n d n n r 0

)()1()!

1(1μμμμ

(2)

n 为偶数的情形,设],[)

2(b a C

f n +∈,则

)(][)

2(3

η++=n n n n f

h

r f R ]),([b a ∈η

?--+=

n

n d n n r 02

)()1()!

2(1μμμμ

由定理可知,Newton-Cotes 公式作为插值型公式的特例,当n 为奇数时,保持至少

n 次代数精度不变,只在n 为偶数时,代数精度才略加1次。

梯形公式具有1次代数精度,余项为 ]),([)(12

)(]['

'3

b a f a b f R T ∈--

=ηη (7.2.6)

Simpson 公式具有3次代数精度,余项为

]),([)()2

(901][s )

4(5

b a f

a b f R ∈--

=ηη (7.2.7)

当n 为较大数时,Newton-Cotes 公式的数值稳定性还可能有问题,正因为如此,

对2>n 的公式我们不感兴趣。

例 7.2.1 用不同的方法计算并比较下列积分: 用传统的方法

)71828.2(71828.11|1

01

0 ==-==?e e e dx e x x

用梯形公式

8591401

.1][2

11

01

0=+≈

?e e dx e x

2265235

.012

1)01(12

1||][|3=≤

--

=e e f R T η

用Simpson 公式

7188612.1]4[6

11

21

1

0=++≈

?e e e dx e x

00094385

.02880

1

)21

(901

||][|5

=≤-

=e e f R S η

4. 数值的稳定性

若取1=f ,可推出()1(≥n )

∑∑?==-=-??-=n

k n

k n k n k b

a C a

b a b C a b dx 0

)

()

()(1)(1

10

)

(=?∑=n

k n k

C

假设用n 阶的Newton-Cotes 公式做实际计算,而且)(k x f 可能使用近似值)(k x f ,这

反映到计算上就有误差

∑∑∑===--=---n

k k k n k n

k k n k

n

k k n k x f x f C a b x f C a b x f C a b 0

)

(0

)

(0

)()]

()([)()()()()(记 |)()(|max 0k k n

k x f x f -=≤≤ε 则有

∑∑∑∑====≤-≤-n

k n k

n

k k k n k

n

k k n k

n

k k n k C x f x f C x f C x f C 0

)

(0

)

(0

)

(0

)

(||)]()([|||)()(|ε

由此可见

(1) 若 0>n

k C ),,1,0(n k =,则

1||0

)

(0

)(==∑∑==n

k n k

n

k n k

C C

,于是有

ε≤-∑∑==|)()(|0

)

(0

)

(n

k k n k

n

k k n k x f C x f C

即计算公式是稳定的。

(2) 若存在0

k C ,则有

1||0

)

(0

)

(=>∑∑==n

k n k

n

k n k C C

这样的话,初始数据误差有可能引起计算结果误差的增大,即计算的数值稳定性得不到保证。

为了方便以后应用,把上面的论证归结为更一般的结果: 定理 7.2.2 插值型求积

∑=n

k k k

x f A

)

(中的求积系数k A 之和为

∑=-=n

k k

a b A 0

(7.2.11)

定理 7.2.3 若插值型求积∑=n

k k k x f A 0

)(中的求积系数0>k A ),,1,0(n k =

则该求积公式公式是稳定的。

5. 复化梯形公式/复化Simpson 公式 现在,在每个子区间上利用梯形公式,有

∑?

?

-=+-=+≈

=

+1

11

)]()([2

)()(1

n k k k n k x x b

a

x f x f h dx x f dx x f k k

n n n k k T x f x f x f h 记为)]()(2)([2

1

1

0++=

∑-=

(7.2.12)

n T 称为复化梯形公式。其余n

T R 由(7.2.6)式当],[2

b a C f ∈,有

∑-=-

=1

3

)(''12

n k k

T f h

R n

η ],[1

+∈k k k x x η

=--

=n

k k n

f h a b 02

)(''12)(η

)(''12

)(2

ηf h a b --= ],[b a ∈η (7.2.13)

如果在每个区间上利用Simpson 公式,有

∑?

?-=++-=++≈=+1

11

1

)]()2

(

4)([6

)()(1

n k k k k k n k x x b

a

x f x x f x f h dx x f dx x f k k

n n n k k n k k S x f x f x

f x f h 记为)]()(2)(4)([6

1

1

1

2

10+++=

∑∑-=-=+

(7.2.14)

其中 2

2

1h x x

k k +

=+

,其余n

S R 由(7.2.7)式当],[4

b a C f ∈,类似地可得

)()2

(180)()

4(4

ηf

h a b R n

S

--= ],[b a ∈η (7.2.15a)

或 )(2880

)()

4(4

ηf

h a b --= ],[b a ∈η (7.2.15b)

6. 复化公式的收敛性

复化求积方法带来新的收敛性问题,即随着子区间越分越细,也即理论上

∞→n 时,复化公式的值是否越来越接近积分的准确值?

事实上,只需

],[b a C f ∈,由n T 公式(7.2.12)显然有

?

??

∑=

+

??→?+

=

→=-=b

a

b

a

b

a

n

k k n k k n dx x f dx x f dx x f h x f h x f T )(])()([2

1])()([2

1n 1

1

即复化

梯形公式n T 的收敛性是有保证的。类似地,复化Simpson 公式的收敛性也是有保证的。

定义 7.2.1 如果一种复化求积公式*

n I ,当)0(→∞→h n

时有渐进关系式

)0(l i m

*

≠=-∞

→C C h

I I p

n

n

则称求积公式*

n I 是p 阶收敛的。

对复化梯形公式

))(''12

1

(lim lim

1

h 2*

h ∑-=→→-

=-n k k n h f h

I I η

)](')('[12

1)(''12

1

a f

b f dx x f b a

--

=-

=?

可知复化梯形公式有2阶收敛性,且在h 很小时有误差估计式

)](')('[12

12

b f a f h T I n --

≈-

对于复化Simpson 公式有4阶收敛性,且在h 很小时有误差估计式

)](''')('''[)2(1801

4

b f a f h S I n --

≈-

例 7.2.2 求 x

x x f sin )(=

在]1,0[上的积分 ?

=

1

sin dx x

x I ,要求

(1) 利用复化梯形公式计算上述积分,要求截断误差不超过3

10)2/1(-?

(2) 利用(1)中复化梯形公式所用的节点,改用复化 Simpson 公式做积分积分计算,并估计截断误差。

解 (1) 要使用复化梯形公式计算上述积分的截断误差不超过3

10)2/1(-?,即

要求 []3

2

2

10

2

1|)(''|12

1|)(''12

||f |-?≤

--

=ηηf h f h a b R N

T

对此,先估计|)(''|ηf 。注意到

?==

1

0)cos(sin )(dt xt x

x x f 因而有 ??+

==1

10)

()2

cos()cos()(dt k xt t dt xt dx

d

x f

k

k

k

k π

于是可得 1

1|)2

cos(||)(|1010)

(+≤

≤+

=??k dt t dt k xt t x f

k

k

k π

利用此结果得,可知要求

3

2

2

10

2

11

2112

1|)(''12

1|

][|-?≤+≤

≤h

f h f R N T η

只需1342.0≤h 或 4516.71342

.011342

.0==

-≥

a b n

可知只需取8个等分节点的复化梯形公式计算上述积分: 9456911.08=≈T I

(2)利用同样的点做复化Simpson 公式计算,这时可取4

1=

h ,则

9460832.04=≈S I

6

4)

4(4

10271.01

41)41(28801

|)(2880

1|

][|-?≤+≤

≤ηf

h f R N S

数值计算方法试题及答案

【 数值计算方法试题一 一、 填空题(每空1分,共17分) 1、如果用二分法求方程043=-+x x 在区间]2,1[内的根精确到三位小数,需对分( )次。 2、迭代格式)2(2 1-+=+k k k x x x α局部收敛的充分条件是α取值在( )。 3、已知?????≤≤+-+-+-≤≤=31)1()1()1(211 0)(2 33x c x b x a x x x x S 是三次样条函数, 则 a =( ), b =( ), c =( )。 4、)(,),(),(10x l x l x l n 是以整数点n x x x ,,,10 为节点的Lagrange 插值基函数,则 ∑== n k k x l 0)(( ), ∑== n k k j k x l x 0 )(( ),当2≥n 时 = ++∑=)()3(20 4x l x x k k n k k ( )。 ; 5、设1326)(2 47+++=x x x x f 和节点,,2,1,0,2/ ==k k x k 则=],,,[10n x x x f 和=?07 f 。 6、5个节点的牛顿-柯特斯求积公式的代数精度为 ,5个节点的求积公式最高代数精度为 。 7、{}∞ =0)(k k x ?是区间]1,0[上权函数x x =)(ρ的最高项系数为1的正交多项式族,其中1)(0=x ?,则?= 1 4)(dx x x ? 。 8、给定方程组?? ?=+-=-2211 21b x ax b ax x ,a 为实数,当a 满足 ,且20<<ω时,SOR 迭代法收敛。 9、解初值问题 00 (,)()y f x y y x y '=?? =?的改进欧拉法 ??? ??++=+=++++)],(),([2),(] 0[111] 0[1n n n n n n n n n n y x f y x f h y y y x hf y y 是 阶方法。

081数值计算方法—常微分方程(组)

科学计算—理论、方法 及其基于MATLAB 的程序实现与分析 微分方程(组)数值解法 §1 常微分方程初值问题的数值解法 微分方程(组)是科学研究和工程应用中最常用的数学模型之一。如揭示质点运动规律的Newton 第二定律: ()()()?????'='==0 00022x t x x t x t F dt x d m (1) 和刻画回路电流或电压变化规律的基尔霍夫回路定律等,但是,只有一些简单的和特殊的常微分方程及常微分方程组,可以求得用公式给出的所谓“解析解”或“公式解”,如一阶线性微分方程的初值问题: () ()0 0y y t f ay dt dy =+= (2) 的解为: ()()()τττd f e y e t y t t a at ?-+=00 (3) 但是,绝大多数在实际中遇到的常微分方程和常微分方程组得不到“解析解”,因此,基于如下的事实:

1、绝大多数的常微分方程和常微分方程组得不到(有限形式的)解析解; 2、实际应用中往往只需要知道常微分方程(组)的解在(人们所关心的)某些点处的函数值(可以是满足一定精度要求的近似值); 如果只需要常微分方程(组)的解在某些点处的函数值,则没有必要非得通过求得公式解,然后再计算出函数值不可,事实上,我们可以采用下面将介绍的常微分方程(组)的初值问题的数值解法,就可以达到这一目的。 一般的一阶常微分方程(组)的初值问题是指如下的一阶常微分方程(组)的定解问题: ()()0 00,y t y t t t y t F dt dy f =≤≤= (7) 其中 ()()()()???? ?? ? ??=t y t y t y t y n 21 (8) ()()()()???? ?? ? ??=y t f y t f y t f y t F n ,,,,21 (9) 常微分方程(组)的初值问题通常是对一动态过程(动态系统、动力系统)演化规律的描述,求解常微分方程(组)的初值问题就是要了解和掌握动态过程演化规律。 §1.1 常微分方程(组)的Cauch 问题数值解法概论

数值分析实验报告1

实验一误差分析 实验1.1(病态问题) 实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。通过本实验可获得一个初步体会。 数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。 问题提出:考虑一个高次的代数多项式 显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。现考虑该多项式的一个扰动 其中ε(1.1)和(1.221,,,a a 的输出b ”和“poly ε。 (1(2 (3)写成展 关于α solve 来提高解的精确度,这需要用到将多项式转换为符号多项式的函数poly2sym,函数的具体使用方法可参考Matlab 的帮助。 实验过程: 程序: a=poly(1:20); rr=roots(a); forn=2:21 n form=1:9 ess=10^(-6-m);

ve=zeros(1,21); ve(n)=ess; r=roots(a+ve); -6-m s=max(abs(r-rr)) end end 利用符号函数:(思考题一)a=poly(1:20); y=poly2sym(a); rr=solve(y) n

很容易的得出对一个多次的代数多项式的其中某一项进行很小的扰动,对其多项式的根会有一定的扰动的,所以对于这类病态问题可以借助于MATLAB来进行问题的分析。 学号:06450210 姓名:万轩 实验二插值法

现代数值计算方法习题答

现代数值计算方法习题答案 习 题 一 1、解:根据绝对误差限不超过末位数的半个单位,相对误差限为绝对误差限除以 有效数字本身,有效数字的位数根据有效数字的定义来求.因此 49×10 -2 :E = 0.005; r E = 0.0102; 2位有效数字. 0.0490 :E = 0.00005;r E = 0.00102; 3位有效数字. 490.00 :E = 0.005; r E = 0.0000102;5位有效数字. 2、解: 7 22 = 3.1428 …… , π = 3.1415 …… , 取它们的相同部分3.14,故有3位有效数字. E = 3.1428 - 3.1415 = 0.0013 ;r E = 14 .3E = 14 .30013.0 = 0.00041. 3、解:101的近似值的首位非0数字1α = 1,因此有 |)(*x E r |) 1(10 1 21--??=n < = 2 1× 10 -4 , 解之得n > = 5,所以 n = 5 . 4、证:) ()(1)()(1)(* 1 1* * 1 1 * * x x x n x E x n x E n n n -= ≈ -- )(11)()(1) ()(* * * * * 1 1 ** * * x E n x x x n x x x x n x x E x E r n n n n n r = -= -≈ = - 5、解:(1)因为=20 4.4721…… , 又=)(*x E |*x x -| = |47.420-| = 0.0021 < 0.01, 所以 =*x 4.47. (2)20的近似值的首位非0数字1α = 4,因此有 |)(*x E r |) 1(10 4 21--??= n < = 0.01 , 解之得n > = 3 .所以,=*x 4.47. 6、解:设正方形的边长为x ,则其面积为2x y =,由题设知x 的近似值为*x = 10 cm . 记*y 为y 的近似值,则

数值计算方法试题及答案

数值计算方法试题一 一、填空题(每空1分,共17分) 1、如果用二分法求方程在区间内的根精确到三位小数,需对分()次。 2、迭代格式局部收敛的充分条件是取值在()。 3、已知是三次样条函数,则 =( ),=(),=()。 4、是以整数点为节点的Lagrange插值基函数,则 ( ),( ),当时( )。 5、设和节点则 和。 6、5个节点的牛顿-柯特斯求积公式的代数精度为,5个节点的求积公式最高代数精度为。 7、是区间上权函数的最高项系数为1的正交多项式族,其中,则。 8、给定方程组,为实数,当满足,且时,SOR迭代法收敛。 9、解初值问题的改进欧拉法是 阶方法。 10、设,当()时,必有分解式,其中为下三角阵,当其对角线元素满足()条件时,这种分解是唯一的。 二、二、选择题(每题2分) 1、解方程组的简单迭代格式收敛的充要条件是()。(1), (2) , (3) , (4) 2、在牛顿-柯特斯求积公式:中,当系数是负值时,公式的稳定性不能保证,所以实际应用中,当()时的牛顿-柯特斯求积公式不使用。 (1),(2),(3),(4), (1)二次;(2)三次;(3)四次;(4)五次 4、若用二阶中点公式求解初值问题,试问为保证该公式绝对稳定,步长的取值范围为()。 (1), (2), (3), (4)

三、1、 2、(15 (1)(1) 试用余项估计其误差。 (2)用的复化梯形公式(或复化 Simpson公式)计算出该积分的近似值。 四、1、(15分)方程在附近有根,把方程写成三种不同的等价形式(1)对应迭代格式;(2)对应迭代格式;(3)对应迭代格式。判断迭代格式在的收敛性,选一种收敛格式计算附近的根,精确到小数点后第三位。选一种迭代格式建立Steffensen迭代法,并进行计算与前一种结果比较,说明是否有加速效果。 2、(8分)已知方程组,其中 , (1)(1)列出Jacobi迭代法和Gauss-Seidel迭代法的分量形式。 (2)(2)求出Jacobi迭代矩阵的谱半径,写出SOR 迭代法。 五、1、(15分)取步长,求解初值问题用改进的欧拉法求的值;用经典的四阶龙格—库塔法求的值。 2、(8分)求一次数不高于4次的多项式使它满足 ,,,, 六、(下列2题任选一题,4分) 1、1、数值积分公式形如 (1)(1)试确定参数使公式代数精度尽量高;(2)设,推导余项公式,并估计误差。 2、2、用二步法 求解常微分方程的初值问题时,如何选择参数使方法阶数尽可能高,并求局部截断误差主项,此时该方法是几阶的。 数值计算方法试题二 一、判断题:(共16分,每小题2分) 1、若是阶非奇异阵,则必存在单位下三角阵和上三角阵,使唯一成立。()

太原理工大学数值计算方法实验报告

本科实验报告 课程名称:计算机数值方法 实验项目:方程求根、线性方程组的直接解 法、线性方程组的迭代解法、代数插值和最 小二乘拟合多项式 实验地点:行勉楼 专业班级: ******** 学号: ********* 学生姓名: ******** 指导教师:李誌,崔冬华 2016年 4 月 8 日

y = x*x*x + 4 * x*x - 10; return y; } float Calculate(float a,float b) { c = (a + b) / 2; n++; if (GetY(c) == 0 || ((b - a) / 2) < 0.000005) { cout << c <<"为方程的解"<< endl; return 0; } if (GetY(a)*GetY(c) < 0) { return Calculate(a,c); } if (GetY(c)*GetY(b)< 0) { return Calculate(c,b); } } }; int main() { cout << "方程组为:f(x)=x^3+4x^2-10=0" << endl; float a, b; Text text; text.Getab(); a = text.a; b = text.b; text.Calculate(a, b); return 0; } 2.割线法: // 方程求根(割线法).cpp : 定义控制台应用程序的入口点。// #include "stdafx.h" #include"iostream"

心得体会 使用不同的方法,可以不同程度的求得方程的解,通过二分法计算的程序实现更加了解二分法的特点,二分法过程简单,程序容易实现,但该方法收敛比较慢一般用于求根的初始近似值,不同的方法速度不同。面对一个复杂的问题,要学会简化处理步骤,分步骤一点一点的循序处理,只有这样,才能高效的解决一个复杂问题。

现代数值分析

研硕16《化工数值方法及Matlab应用》试题 班级姓名成绩 1.(15分)数值计算方法的主要研究对象有哪些?其常用基本算法主要包括哪三个方面?举例说明Matlab在解决化工数值计算问题方面有什么样实用价值?答:(1)数值计算方法的主要研究对象为非线性方程求根,插值法、曲线拟合、数值积分、常微分方程(组)、初值问题求解、线性和非线性方程组求解。(2)基本算法包括①离散化方法:用差商代替导数、差分代替微分等,将连续的数学问题转化为离散问题。②逼近方法:用简单函数的值近似代替求解困难或形式未知的复杂函数的值。③迭代法:用一个固定公式反复计算,对较为粗糙的根的近似值进行加工直到满足精度要求的方法。 (3)Matlab在解决化工数值计算问题的实用价值有:数值计算和符号计算功能;图形功能;MATLAB语言;功能性和学科性工具箱。 2.(10分)数值计算中的“曲线拟合”,一般有哪些方法?请至少指出四种,并简述各自的基本特点。 答:(1)拉格朗日插值:,优点在于不要求数据点事等间隔的,缺点是数据点不易过多,当数据比较多时,差值函数有偏离原函数的风险; (2)牛顿插值法:它不仅克服了“增加一个节点时整个计算工作必须重新开始”的缺点,而且可以节省乘、除法运算次数。同时,在牛顿插值多项式中用到的差分与差商等概念,又与数值计算的其他方面有着密切的关系。

(3)牛顿迭代法:牛顿迭代法是求方程根的重要方法之一,其最大优点是在方程f(x) = 0的单根附近具有平方收敛,而且该法还可以用来求方程的重根、复根,此时线性收敛,但是可通过一些方法变成超线性收敛。 (4)区间二分法:优点:算法简单,容易理解,且总是收敛的。缺点:收敛速度太慢,浪费时间,二分法不能求复根跟偶数重根。 (5)最小二乘法:通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。 3. (15分)在298K 下,化学反应 2OF 2=O 2+2F 2 的平衡常数为0.410 atm ,如在298K 下将OF 2 通入容器,当t=0 时为1 atm ,问最后总压是多少?取计算精度为10-3 。 解:首先写出求解问题的数学方程式。 假设气体是理想气体,由反应的化学计量式可知, 22222F O OF += 设氧的分压为p ,平衡时有p 21- p p 2。 平衡时,有()410.02142 3=-p p 整理得 0410.064.1640.1423=-+-p p p 函数关系为 ()0410.064.1640.1423=-+-=p p p p f

数值计算实验报告

(此文档为word格式,下载后您可任意编辑修改!) 2012级6班###(学号)计算机数值方法 实验报告成绩册 姓名:宋元台 学号: 成绩:

数值计算方法与算法实验报告 学期: 2014 至 2015 第 1 学期 2014年 12月1日课程名称: 数值计算方法与算法专业:信息与计算科学班级 12级5班 实验编号: 1实验项目Neton插值多项式指导教师:孙峪怀 姓名:宋元台学号:实验成绩: 一、实验目的及要求 实验目的: 掌握Newton插值多项式的算法,理解Newton插值多项式构造过程中基函数的继承特点,掌握差商表的计算特点。 实验要求: 1. 给出Newton插值算法 2. 用C语言实现算法 二、实验内容 三、实验步骤(该部分不够填写.请填写附页)

1.算法分析: 下面用伪码描述Newton插值多项式的算法: Step1 输入插值节点数n,插值点序列{x(i),f(i)},i=1,2,……,n,要计算的插值点x. Step2 形成差商表 for i=0 to n for j=n to i f(j)=((f(j)-f(j-1)(x(j)-x(j-1-i)); Step3 置初始值temp=1,newton=f(0) Step4 for i=1 to n temp=(x-x(i-1))*temp*由temp(k)=(x-x(k-1))*temp(k-1)形成 (x-x(0).....(x-x(i-1)* Newton=newton+temp*f(i); Step5 输出f(x)的近似数值newton(x)=newton. 2.用C语言实现算法的程序代码 #includeMAX_N) { printf("the input n is larger than MAX_N,please redefine the MAX_N.\n"); return 1; } if(n<=0) { printf("please input a number between 1 and %d.\n",MAX_N); return 1; } printf("now input the (x_i,y_i)i=0,...%d\n",n); for(i=0;i<=n;i++) { printf("please input x(%d) y(%d)\n",i,i);

数值分析习题与答案

第一章绪论 习题一 1.设x>0,x*的相对误差为δ,求f(x)=ln x的误差限。解:求lnx的误差极限就是求f(x)=lnx的误差限,由公式(1. 2.4)有 已知x*的相对误差满足,而 ,故 即 2.下列各数都是经过四舍五入得到的近似值,试指出它们有几位有效数字,并给出其误差限与相对误差限。 解:直接根据定义和式(1.2.2)(1.2.3)则得 有5位有效数字,其误差限,相对误差限 有2位有效数字, 有5位有效数字, 3.下列公式如何才比较准确? (1) (2)

解:要使计算较准确,主要是避免两相近数相减,故应变换所给公式。 (1) (2) 4.近似数x*=0.0310,是 3 位有数数字。 5.计算取,利用:式计算误差最小。 四个选项: 第二、三章插值与函数逼近 习题二、三 1. 给定的数值表 用线性插值与二次插值计算ln0.54的近似值并估计误差限. 解:仍可使用n=1及n=2的Lagrange插值或Newton插值,并应用误差估计(5.8)。线性插值时,用0.5及0.6两点,用Newton插值 误差限,因

,故 二次插值时,用0.5,0.6,0.7三点,作二次Newton插值 误差限 ,故 2. 在-4≤x≤4上给出的等距节点函数表,若用二次插值法求的近似值,要使误差不超过,函数表的步长h 应取多少? 解:用误差估计式(5.8), 令 因 得 3. 若,求和.

解:由均差与导数关系 于是 4. 若互异,求 的值,这里p≤n+1. 解:,由均差对称性 可知当有 而当P=n+1时 于是得 5. 求证. 解:解:只要按差分定义直接展开得 6. 已知的函数表

数值分析实验报告1

实验一 误差分析 实验(病态问题) 实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。通过本实验可获得一个初步体会。 数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。 问题提出:考虑一个高次的代数多项式 )1.1() ()20()2)(1()(20 1∏=-=---=k k x x x x x p 显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。现考虑该多项式的一个扰动 )2.1(0 )(19=+x x p ε 其中ε是一个非常小的数。这相当于是对()中19x 的系数作一个小的扰动。我们希望比较()和()根的差别,从而分析方程()的解对扰动的敏感性。 实验内容:为了实现方便,我们先介绍两个Matlab 函数:“roots ”和“poly ”。 roots(a)u = 其中若变量a 存储n+1维的向量,则该函数的输出u 为一个n 维的向量。设a 的元素依次为121,,,+n a a a ,则输出u 的各分量是多项式方程 01121=+++++-n n n n a x a x a x a 的全部根;而函数 poly(v)b =

的输出b 是一个n+1维变量,它是以n 维变量v 的各分量为根的多项式的系数。可见“roots ”和“poly ”是两个互逆的运算函数。 ;000000001.0=ess );21,1(zeros ve = ;)2(ess ve = ))20:1((ve poly roots + 上述简单的Matlab 程序便得到()的全部根,程序中的“ess ”即是()中的ε。 实验要求: (1)选择充分小的ess ,反复进行上述实验,记录结果的变化并分析它们。 如果扰动项的系数ε很小,我们自然感觉()和()的解应当相差很小。计算中你有什么出乎意料的发现表明有些解关于如此的扰动敏感性如何 (2)将方程()中的扰动项改成18x ε或其它形式,实验中又有怎样的现象 出现 (3)(选作部分)请从理论上分析产生这一问题的根源。注意我们可以将 方程()写成展开的形式, ) 3.1(0 ),(1920=+-= x x x p αα 同时将方程的解x 看成是系数α的函数,考察方程的某个解关于α的扰动是否敏感,与研究它关于α的导数的大小有何关系为什么你发现了什么现象,哪些根关于α的变化更敏感 思考题一:(上述实验的改进) 在上述实验中我们会发现用roots 函数求解多项式方程的精度不高,为此你可以考虑用符号函数solve 来提高解的精确度,这需要用到将多项式转换为符号多项式的函数poly2sym,函数的具体使用方法可参考Matlab 的帮助。

数值计算方法》试题集及答案

《计算方法》期中复习试题 一、填空题: 1、已知3.1)3(,2.1)2(,0.1)1(===f f f ,则用辛普生(辛卜生)公式计算求得 ?≈3 1 _________ )(dx x f ,用三点式求得≈')1(f 。 答案:2.367,0.25 2、1)3(,2)2(,1)1(==-=f f f ,则过这三点的二次插值多项式中2 x 的系数为 ,拉 格朗日插值多项式为 。 答案:-1, )2)(1(21 )3)(1(2)3)(2(21)(2--------= x x x x x x x L 3、近似值*0.231x =关于真值229.0=x 有( 2 )位有效数字; 4、设)(x f 可微,求方程)(x f x =的牛顿迭代格式是( ); 答案 )(1)(1n n n n n x f x f x x x '--- =+ 5、对1)(3 ++=x x x f ,差商=]3,2,1,0[f ( 1 ),=]4,3,2,1,0[f ( 0 ); 6、计算方法主要研究( 截断 )误差和( 舍入 )误差; 7、用二分法求非线性方程 f (x )=0在区间(a ,b )内的根时,二分n 次后的误差限为 ( 1 2+-n a b ); 8、已知f (1)=2,f (2)=3,f (4)=5.9,则二次Newton 插值多项式中x 2系数为( 0.15 ); 11、 两点式高斯型求积公式?1 d )(x x f ≈( ?++-≈1 )] 321 3()3213([21d )(f f x x f ),代数精度 为( 5 ); 12、 为了使计算 32)1(6 )1(41310-- -+-+ =x x x y 的乘除法次数尽量地少,应将该表达 式改写为 11 ,))64(3(10-= -++=x t t t t y ,为了减少舍入误差,应将表达式1999 2001-

数值分析论文

题目:论数值分析在数学建模中的应用 学院: 机械自动化学院 专业: 机械设计及理论 学号: 学生姓名: 日期: 2011年12月5日

论数值分析在数学建模中的应用 摘要 为了满足科技发展对科学研究和工程技术人员用数学理论解决实际的能力的要求,讨论了数值分析在数学建模中的应用。数值分析不仅应用模型求解的过程中,它对模型的建立也具有较强的指导性。研究数值分析中插值拟合,解线性方程组,数值积分等方法在模型建立、求解以及误差分析中的应用,使数值分析作为一种工具更好的解决实际问题。 关键词 数值分析;数学建模;线性方程组;微分方程 the Application of Numerical Analysis in Methmetical Modeling Han Y u-tao 1 Bai Y ang 2 Tian Lu 2 Liu De-zheng 2 (1 College of Science ,Tianjin University of Commerce ,Tianjin ,300134 2 College of Science ,Tianjin University of Commerce ,Tianjin ,300134) Abstract In order to meet the technological scientific researchers who use mathematical theory to solve practical problems, the use of numerical analysis in mathematical modeling is discussed.Numerical analysis not only solve the model,but also relatively guide the model.Research on some numerical methods in numerical analysis which usually used in mathmetical modeling and error analysis will be a better way to solve practical problems. Key Words Numerical Analysis ;Mathematical Modeling; Linear Equations ;differential equation 1. 引言 数值分析主要介绍现代科学计算中常用的数值计算方法及其基本原理,研究并解决数值问题的近似解,是数学理论与计算机和实际问题的有机结合[1]。随着科学技术的迅速发展,运用数学方法解决科学研究和工程技术领域中的实际问题,已经得到普遍重视。数学建模是数值分析联系实际的桥梁。在数学建模过程中,无论是模型的建立还是模型的求解都要用到数值分析课程中所涉及的算法,如插值方法、最小二乘法、拟合法等,那么如何在数学建模中正确的应用数值分析内容,就成了解决实际问题的关键。 2. 数值分析在模型建立中的应用 在实际中,许多问题所研究的变量都是离散的形式,所建立的模型也是离散的。例如,对经济进行动态的分析时,一般总是根据一些计划的周期期末的指标值判断某经济计划执行的如何。有些实际问题即可建立连续模型,也可建立离散模型,但在研究中,并不能时时刻刻统计它,而是在某些特定时刻获得统计数据。例如,人口普查统计是一个时段的人口增长量,通过这个时段人口数量变化规律建立离散模型来预测未来人口。另一方面,对常见的微分方程、积分方程为了求解,往往需要将连续模型转化成离散模型。将连续模型转化成离散模型,最常用的方法就是建立差分方程。 以非负整数k 表示时间,记k x 为变量x 在时刻k 的取值,则称k k k x x x -=?+1为k x 的一阶差分,称k k k k k x x x x x +-=??=?++1222)(为k x 的二阶差分。类似课求出k x 的n 阶差分k n x ?。由k ,k x ,及k x 的差分给出的方程称为差分方程[2]。例如在研究节食与运动模型时,发现人们往往采取节食与运动方式消耗体内存储的脂肪,引起体重下降,达到减肥目的。通常制定减肥计划以周为时间单位比较方便,所以采用差分方程模型进行讨论。记第k 周末体重为)(k w ,第k 周吸收热量为)(k c ,热量转换系数α,代谢消耗系数β,在不考虑运动情况下体重变化的模型

现代数值分析复习题

复习题(一) 一、填空题: 1、求方程0.5x2 101x 1 0的根,要求结果至少具有6位有效数字。已知 V10203 101.0099,贝卩两个根为x1 _____________________________ , X2 ________________________________ .(要有计算过程和结果) 4 1 0 A A 1 4 1 2、0 1 4,则A的LU分解为。 1 2 A 3、 3 5,贝卩(A) ____________ ,A __________ . 4、已知f(1)「Q f(2)「2,f(3) =3,则用抛物线(辛卜生)公式计算求 3 得1 f(x)dx -------------------- ,用三点式求得f (1) ________________ . 5、f(1) 1,f(2) 2,f(3) 1,则过这三点的二次插值多项式中x2的系数 为_____ ,拉格朗日插值多项式为 _________________________ . 二、单项选择题: 1、Jacobi迭代法解方程组Ax b的必要条件是( ). A. A的各阶顺序主子式不为零 B. (A) 1 C a ii 0,i 1,2, ,n D|| A 1 2、设f(x) 3x99 5x 7,均差f[1,2,22, ,299]=(). D. 3

4、三点的高斯求积公式的代数精度为 ( ). A.3 B. -3 C. 5 D.0 2 2 3 A 0 5 1 3、设 0 0 7 ,则 (A )为( ). A. 2 B. 5 C. 7

分别用拉格朗日插值法和牛顿插值法求 f (x )的三次插值多项式P 3(x ),并 求f (2)的近似值(保留四位小数). 4、 取步长h 0.2,用预估-校正法解常微分方程初值问题 y 2x 3y y (0) 1 (0 x 1) 5、 已知 A. 2 B.5 C. 3 D. 4 5、幕法的收敛速度与特征值的分布 A.有关 B.不一定 C. 无关 三、计算题: 1、用高斯-塞德尔方法解方程组 4X ! 2X 2 X 3 11 X 1 4X 2 2X 3 18 2X ! X 2 5X 3 22 (°) /c c c\T ,取 x (°,°,°),迭 四次(要求按五位有效数字计算 ). 1 2、求A 、B 使求积公式 1 f (X )dX A[f( 1) f (1)] 1 B [f (2)f (2)] 的代数精 度尽量高,并求其代数精度;利用此公式求 I 21dx 1 x (保留四位小 数)。 3、已知

数值分析作业答案

数值分析作业答案 插值法 1、当x=1,-1,2时,f(x)=0,-3,4,求f(x)的二次插值多项式。 (1)用单项式基底。 (2)用Lagrange插值基底。 (3)用Newton基底。 证明三种方法得到的多项式是相同的。 解:(1)用单项式基底 设多项式为: , 所以: 所以f(x)的二次插值多项式为: (2)用Lagrange插值基底 Lagrange插值多项式为: 所以f(x)的二次插值多项式为: (3) 用Newton基底: 均差表如下: xk f(xk) 一阶均差二阶均差 1 0 -1 -3 3/2 2 4 7/ 3 5/6 Newton插值多项式为: 所以f(x)的二次插值多项式为: 由以上计算可知,三种方法得到的多项式是相同的。 6、在上给出的等距节点函数表,若用二次插值求ex的近似值,要使截断误差不超过10-6,问使用函数表的步长h应取多少? 解:以xi-1,xi,xi+1为插值节点多项式的截断误差,则有 式中 令得 插值点个数

是奇数,故实际可采用的函数值表步长 8、,求及。 解:由均差的性质可知,均差与导数有如下关系: 所以有: 15、证明两点三次Hermite插值余项是 并由此求出分段三次Hermite插值的误差限。 证明:利用[xk,xk+1]上两点三次Hermite插值条件 知有二重零点xk和k+1。设 确定函数k(x): 当或xk+1时k(x)取任何有限值均可; 当时,,构造关于变量t的函数 显然有 在[xk,x][x,xk+1]上对g(x)使用Rolle定理,存在及使得 在,,上对使用Rolle定理,存在,和使得 再依次对和使用Rolle定理,知至少存在使得 而,将代入,得到 推导过程表明依赖于及x 综合以上过程有: 确定误差限: 记为f(x)在[a,b]上基于等距节点的分段三次Hermite插值函数。在区间[xk,xk+1]上有 而最值 进而得误差估计: 16、求一个次数不高于4次的多项式,使它满足,,。

郑州大学研究生课程数值分析复习---第八章 常微分方程数值解法

郑州大学研究生课程(2012-2013学年第一学期)数值分析 Numerical Analysis 习题课 第八章常微分方程数值解法

待求解的问题:一阶常微分方程的初值问题/* Initial-Value Problem */: ?????=∈=0 )(] ,[),(y a y b a x y x f dx dy 解的存在唯一性(“常微分方程”理论):只要f (x , y ) 在[a , b ] ×R 1 上连续,且关于y 满足Lipschitz 条件,即存在与x , y 无关的常数L 使 对任意定义在[a , b ] 上的y 1(x ) 和y 2(x ) 都成立,则上述IVP 存在唯一解。 1212|(,)(,)||| f x y f x y L y y ?≤?一、要点回顾

§8.2 欧拉(Euler)法 通常取(常数),则Euler 法的计算格式 h h x x i i i ==?+1?? ?=+=+) (),(001x y y y x hf y y i i i i i =0,1,…,n ( 8.2 )

§8.2 欧拉(Euler)法(1) 用差商近似导数 )) (,()()()()(1n n n n n n x y x hf x y x y h x y x y +=′+≈+?? ?=+=+) (),(01a y y y x hf y y n n n n 差分方程初值问题向前Euler 方法h x y x y x y n n n ) ()()(1?≈ ′+)) (,() ()(1n n n n x y x f h x y x y ≈?+))(,()(n n n x y x f x y =′

数值分析学习方法

第一章 1霍纳(horner)方法: 输入=c + bn*c bn?1*c b3*c b2*c b1*c an an?1 an?2 ……a2 a1 a0 bn bn?1 bn?2 b2 b1 b0 answer p(x)=b0 该方法用于解决多项式求值问题=anxn+an?1xn?1+an?2xn?2+……+a2x2+a1x+a0 ? 2 注:p为近似值 p(x) 绝对误差: ?|ep?|p?p ?||p?p rp? |p| 相对误差: ?|101?d|p?p rp?? |p|2 有效数字: (d为有效数字,为满足条件的最大整数) 3 big oh(精度的计算): o(h?)+o(h?)=o(h?); o(hm)+o(hn)=o(hr) [r=min{p,q}]; o(hp)o(hq)=o(hs) [s=q+p]; 第二章 2.1 求解x=g(x)的迭代法用迭代规则 ,可得到序 列值{}。设函数g 满足 y 定义在得 。如果对于所有 x ,则函数g 在 ,映射y=g(x)的范围 内有一个不动点; 此外,设 ,存在正常数k<1,使 内,且对于所有x,则函数g 在 内有唯一的不动点p。 ,(ii)k是一个正常数, 。如果对于所有 定理2.3 设有(i)g,g ’(iii ) 如果对于所有x在

这种情况下,p成为排斥不动点,而且迭代显示出局部发散 性。波理 尔 查 . 诺 二 分 法 ( 二 分 法 定) <收敛速度较慢> 试值(位)法:<条件与二分法一样但改为寻求过点(a,f(a))和(b,f(b))的割线l与 x轴的交点(c,0)> 应注意 越来越 小,但可能不趋近于0,所以二分法的终止判别条件不适合于试值法 . f(pk?1) 其中k=1,2,……证明:用 f(pk?1) 牛顿—拉夫森迭代函数:pk?g(pk?1)?pk?1? 泰勒多项式证明 第三章线性方程组的解法对于给定的解线性方程组ax=b a11x1 ? a12x2 ? ? ? a1nxn ? b1 a21x1 ? a22x2 ? ? ? a2nxn ? b2 ? an1x1 ? an2x2 ? ? ? annxn ? bn 一gauss elimination (高斯消元法第一步forward elimination 第二步 substitution 二lu factorization 第一步 a = lu 原方程变为lux=y ; 第二步令ux=y,则ly = b由下三角解出y;第三步 ux=y,又上三角解出x ; 三iterative methods(迭代法) a11x1 ? a12x2 ? ? ? a1nxn ? b1 a21x1 ? a22x2 ? ? ? a2nxn ? b2? ) back 初始值 0,x0,?,x0x1n2 四 jacobi method 1.选择初始值 2.迭代方程为 0,x0,?,x0x1n2 k?1? x1k?1 ? x2

数值分析_第五章_常微分方程数值解法

图5畅2 令珔h =h λ,则y n +1=1+珔 h +12珔h 2 +16珔h 3+124 珔 h 4y n .由此可知,绝对稳定性区域在珔h =h λ复平面上满足 |1+珔 h +12珔h 2+16珔h 3+124珔h 4 |≤1的区域,也就是由曲线 1+珔h + 12珔h 2+16珔h 3+124 珔h 4=e i θ 所围成的区域.如图5畅2所示. 例22 用Euler 法求解 y ′=-5y +x ,y (x 0)=y 0,  x 0≤x ≤X . 从绝对稳定性考虑,对步长h 有何限制? 解 对于模型方程y ′=λy (λ<0为实数)这里λ=抄f 抄y =-5.由 |1+h λ|=|1-5h |<1 得到对h 的限制为:0<h <0畅4. 四、习题 1畅取步长h =0畅2,用Euler 法解初值问题 y ′=-y -x y 2 , y (0)= 1.  (0≤x ≤0畅6), 2畅用梯形公式解初值问题 y ′=8-3y ,  (1≤x ≤2),

取步长h=0畅2,小数点后至少保留5位. 3畅用改进的Euler公式计算初值问题 y′=1x y-1x y2, y(1)=0畅5,  1<x<1畅5, 取步长h=0畅1,并与精确解y(x)= x 1+x比较. 4畅写出用梯形格式的迭代算法求解初值问题 y′+y=0, y(0)=1 的计算公式,取步长h=0畅1,并求y(0畅2)的近似值,要求迭代误差不超过10-5. 5畅写出用四阶经典Runge唱Kutta法求解初值问题 y′=8-3y, y(0)=2 的计算公式,取步长h=0畅2,并计算y(0畅4)的近似值,小数点后至少保留4位. 6畅证明公式 y n+1=y n+h9(2K1+3K2+4K3). K1=f(x n,y n), K2=f x n+h2,y n+h2K1, K3=f x n+34h,y n+34h K2, 至少是三阶方法. 7畅试构造形如 y n+1=α(y n+y n-1)+h(β0f n+β1f n-1)

(完整版)哈工大-数值分析上机实验报告

实验报告一 题目:非线性方程求解 摘要:非线性方程的解析解通常很难给出,因此线性方程的数值解法就尤为重要。本实验采用两种常见的求解方法二分法和Newton法及改进的Newton法。 前言:(目的和意义) 掌握二分法与Newton法的基本原理和应用。 数学原理: 对于一个非线性方程的数值解法很多。在此介绍两种最常见的方法:二分法和Newton法。 对于二分法,其数学实质就是说对于给定的待求解的方程f(x),其在[a,b]上连续,f(a)f(b)<0,且f(x)在[a,b]内仅有一个实根x*,取区间中点c,若,则c恰为其根,否则根据f(a)f(c)<0是否成立判断根在区间[a,c]和[c,b]中的哪一个,从而得出新区间,仍称为[a,b]。重复运行计算,直至满足精度为止。这就是二分法的计算思想。

Newton法通常预先要给出一个猜测初值x0,然后根据其迭代公式 产生逼近解x*的迭代数列{x k},这就是Newton法的思想。当x0接近x*时收敛很快,但是当x0选择不好时,可能会发散,因此初值的选取很重要。另外,若将该迭代公式改进为 其中r为要求的方程的根的重数,这就是改进的Newton法,当求解已知重数的方程的根时,在同种条件下其收敛速度要比Newton法快的多。 程序设计: 本实验采用Matlab的M文件编写。其中待求解的方程写成function的方式,如下 function y=f(x); y=-x*x-sin(x); 写成如上形式即可,下面给出主程序。 二分法源程序: clear %%%给定求解区间 b=1.5; a=0;

%%%误差 R=1; k=0;%迭代次数初值 while (R>5e-6) ; c=(a+b)/2; if f12(a)*f12(c)>0; a=c; else b=c; end R=b-a;%求出误差 k=k+1; end x=c%给出解 Newton法及改进的Newton法源程序:clear %%%% 输入函数 f=input('请输入需要求解函数>>','s') %%%求解f(x)的导数 df=diff(f);

数值计算方法试题集及答案要点

《数值计算方法》复习试题 一、填空题: 1、 ?? ??? ?????----=410141014A ,则A 的LU 分解为 A ? ???????? ???=????????? ?? ?。 答案: ?? ????????--??????????--=1556141501 4115401411A 2、已知3.1)3(,2.1)2(, 0.1)1(===f f f ,则用辛普生(辛卜生)公式计算求 得?≈3 1 _________ )(dx x f ,用三点式求得≈')1(f 。 答案:2.367,0.25 3、1)3(,2)2(, 1)1(==-=f f f ,则过这三点的二次插值多项式中2x 的系数 为 ,拉格朗日插值多项式为 。 答案:-1, )2)(1(21 )3)(1(2)3)(2(21)(2--------= x x x x x x x L 4、近似值*0.231x =关于真值229.0=x 有( 2 )位有效数字; 5、设)(x f 可微,求方程)(x f x =的牛顿迭代格式是( ); 答案 )(1)(1n n n n n x f x f x x x '--- =+ 6、对 1)(3++=x x x f ,差商=]3,2,1,0[f ( 1 ),=]4,3,2,1,0[f ( 0 ); 7、计算方法主要研究( 截断 )误差和( 舍入 )误差; 8、用二分法求非线性方程f (x )=0在区间(a ,b )内的根时,二分n 次后的误差限为( 1 2+-n a b ); 9、求解一阶常微分方程初值问题y '= f (x ,y ),y (x 0)=y 0的改进的欧拉公

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