matlab解非线性方程组的牛顿迭代法,非线性方程组求解的牛顿迭代法用MATLAB实现.docx...

I

I

二元函数的newton迭代法理论分析

设z = f(x,y)在点(Xo.Yo)的某一邻域内连续且有直到2阶的连续偏导 数,(X。 h,y。 h)为该邻域内任意一点,则有

X 二

X 二X。

y^o

其中 h=x_Xo, k = y_y°

于是方程f (X, y) = 0可近似表示为

「 df(

「 d

f(5+陀 f(X,y)

X=Xk

+ kH(X,y)

y=y*= 0

即 f(Xk,yk)(X- Xk)fx(Xk,yQ (y- yQfyX,yQ 二 0

同理,设z =g(x,y)在点(Xo.yo)的某一邻域内连续且有直到2阶的连续 偏导数,(X。h , yo h)为该邻域内任意一点,亦有

g(X0+h,y0+k)^g(x°, y°)+Jh . g(x,y)

XK + k . g(x, y)

y=y°

ex

其中 h = x_x°, k 二y _y。

于是方程g(x, y)= 0可近似表示为

-5?1

g(Xk,yQ +」h〒g(x,y)xw ★ 丁g(x,y)『撫=0

qxoy一

即 g(x,yQ (x- xQgx(Xk,yQ (y- yQgydk,yQ 二 0

于是得到方程组

:f (Xk,yQ + (x- Xk)fx(Xk,yQ+ (y— yk)fy(Xk,yQ二 0

.g(Xk,yk) + (x- xQgx(Xk, yQ+ (y- yQgy(Xk,yQ二 0

求解这个方程组,当

gx(Xk,yk)fy(Xk,yQ- fx(Xk,yk)gy(Xk,yQ0 时

X 二 Xky = yk从而f (Xk,yk)gy(Xk,yQ - g(Xk,yQ fy

X 二 Xk

y = yk

从而

gx(Xk,yk)fy(Xk,yQ 一 fx(Xk,yQgydk,yQ

g(Xk, yQ fx(Xk, yQ - f (Xk, yQgx(Xk, yQgx(x「yQ fy(x- yQ - fx(x— yQgy(Xk, yQ

丄 f (Xk, yk)gy(Xk,yk^ g(Xk, yk) fy(Xk, yk) x = Xk 十

(1)(gx(Xk, Yk) fy(Xk, Yk^ fx(Xk, Yk)gy(Xk, Yk)

(1)

y = yk . g(Xk, yk) fx(Xk, yk) - f (Xk, yk)gx(Xk, yj[gx(Xk, yj fy(Xk, yj — fx(Xk, yk)gy(Xk, yj

记符号

gfx- fgx 风从)=g(Xk,yk)fx(Xk,yk)- f (Xk, yk)gx(Xk, yk)

fgy —gfy 久心)=f (兀,ykMydk, yj 一 g(Xk, yk)fy(X—yj

gxfy - fxgy 伙,yk) = gxg『k) fy(Xk,『k) 一 fx(Xk, yk)9y(Xk ,『k )

于是(1)式可改写为

fg y gf y ( xk , yk)

=Xk +

gxfy- fxgy (Xk,yk)

gfx_ fg x (Xk ,yk )

=人 g f _ f g

g x T y T x g y (Xk ,y k )

迭代公式为:

fg y 一 gf y I (Xk ,yk )

xk+i = xk + —q

彳gxfy-fxgy(Xk,yk)

Igfx~ fgx(Xk,yk)⑶

yk+i = 丫八—f _ f

、gxfy — f x g y (xk, y k)

通过迭代公式(3)可以迭代出当k=12… 时,(Xk,yk)的值,当

(xk 1,yk 1) G 0为给定的误差控制项)时,原方程组的根即为

(Xk,yk)。

newton迭代法求解给定的线性方程组

方程组

其中

r /\丄1/3上 3/2 八 彳

』f (x, y) = a r c t 扫 n* y_4) _1

4_2

^(x, y) =ex ixf + y )—4

求解过程如下

x⑵33 1 (x1/33/2y -4)2 1 (x

x⑵3

3 1 (x1/3

3/2

y -4)

2 1 (x1/3

1/2

y

3/2

y

-4)

gx

gx = -2x^exp(x^ y^)

3,2

gy 二-2y exp(x y )

于是迭代公式为

fg y - gf y I ( Xk , yk )

X k十 =X k 十

gxfy — fxgy ( x k , y k ) gf x - fg x |(Xk,yk)

y k * = y k 十

gxfy — f X g y ( x k , y k )

为了解出正负轴的两个解,需要对函数 f进行变形

3

3

X

X

3

3

X

X

f =(tan(1)4 一 y2)3 _x

fx = -1

3 232

fy"tan(i)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值