第8章非线性方程和迭代.docx

上传人:b****4 文档编号:5495420 上传时间:2023-05-08 格式:DOCX 页数:16 大小:115.19KB
下载 相关 举报
第8章非线性方程和迭代.docx_第1页
第1页 / 共16页
第8章非线性方程和迭代.docx_第2页
第2页 / 共16页
第8章非线性方程和迭代.docx_第3页
第3页 / 共16页
第8章非线性方程和迭代.docx_第4页
第4页 / 共16页
第8章非线性方程和迭代.docx_第5页
第5页 / 共16页
第8章非线性方程和迭代.docx_第6页
第6页 / 共16页
第8章非线性方程和迭代.docx_第7页
第7页 / 共16页
第8章非线性方程和迭代.docx_第8页
第8页 / 共16页
第8章非线性方程和迭代.docx_第9页
第9页 / 共16页
第8章非线性方程和迭代.docx_第10页
第10页 / 共16页
第8章非线性方程和迭代.docx_第11页
第11页 / 共16页
第8章非线性方程和迭代.docx_第12页
第12页 / 共16页
第8章非线性方程和迭代.docx_第13页
第13页 / 共16页
第8章非线性方程和迭代.docx_第14页
第14页 / 共16页
第8章非线性方程和迭代.docx_第15页
第15页 / 共16页
第8章非线性方程和迭代.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

第8章非线性方程和迭代.docx

《第8章非线性方程和迭代.docx》由会员分享,可在线阅读,更多相关《第8章非线性方程和迭代.docx(16页珍藏版)》请在冰点文库上搜索。

第8章非线性方程和迭代.docx

第8章非线性方程和迭代

第8章非线性方程和迭代

本章涉及非线性方程的求解、函数的迭代以及有关作图。

通过对MATLAB关于非线性方程(组)求解的命令的学习及应用,进而说明计算机与数学结合的重要性。

补充知识,以Logistic模型为例介绍由非线性方程迭代所产生的混沌现象。

8.1引例贷款的利率

现实生活中,许多人会向银行贷款,(比如为了买房或者买车),然后,在若干年内分期还款。

这必须按一定的贷款利率付给银行利息。

假如,某人向银行贷款25万,30年内每月按1435元还款。

那么,这例贷款的年利率是多少?

有人可能会这样计算

年利率=(30×12×0.1435-25)/30/25=3.55%

但这是错误的,因为你并不是等到30年后一次还款。

数学模型设xk为第k个月的欠款数,a为月还款数,r为月利率,R=12r为年利率。

我们得到如下迭代关系式

xk+1=(1+r)xk–a(8.1)

那么

xk=(1+r)xk-1-a=(1+r)2xk-2-(1+r)a-a=…

=(1+r)kx0-a[1+(1+r)+…+(1+r)k-1]

=(1+r)kx0-a[(1+r)k-1]/r

根据a=0.1435,x0=25,x360=0得到

25(1+r)360–0.1435[(1+r)360-1]/r(8.2)

这是一个关于r的高次代数方程。

从中解出r,年利率R=12r。

8.2非线性方程(组)简介

若方程是未知量x的多项式,称为高次代数方程;若方程包含x的超越函数,称为超越方程。

一元非线性方程的一般形式为

f(x)=0(8.3)

若对于数a有f(a)=0,则称a为方程(8.3)的解或根,也称为函数f(x)的零点。

方程的根可能是实数也可能是复数。

相应地称为实根和复根。

如果对于数a有f(a)=0,f(a)0,则a称为单根,如果有k>1,f(a)=f(a)=…=f(k-1)(a)=0但f(k)(a)≠0,称为k重根,对于高次代数方程,其根的个数与其次数相同(包括重数),至于超越方程,其解可能是一个或几个甚至无穷多,也可能无解。

常见的求解问题有如下两重要求:

一种是要求定出在给定范围内的某个解,而解的粗略位置事先从问题的物理背景或应用(作图等)其他方法得知;另一种是定出方程的全部解,或者给定区域内的所有解,而解的个数未知。

除少数特殊的方程可以利用公式直接求解(如4次以下代数方程),一般都没有解析求解方法,只能靠数值方法求得近似解。

n元非线性方程组的一般形式为

fi(x1,x2,…,xn)=0,i=1,…,m(8.4)

非线性方程组的解极少能用解析法求得。

常用的数值方法是Newton法、拟Newton法和最优化方法等。

8.3解方程和方程组的MATLAB命令

roots求多项式的根

fsolve方程(组)数值解

fzero求一元函数实根

solve符号方程(组)求解

8.3.1多项式的根

roots(p)多项式p的所有复根。

例1:

求x3+2x2-5的根

>>roots([120-5])

ans=

-1.6209+1.1826i

-1.6209-1.1826i

1.2419

8.3.2一元函数零点

fzero(f,x,tol)

f为字符串表示的函数或M函数名;x为标量时,作为迭代初值;x为向量[a,b]时,返回f在[a,b]中的一个零点,这时要求x在a,b两点异号;tol为精度(缺损值1e-4)。

例2:

求y=sin(x)-0.1x的零点。

解:

由于-1

-10

>>fzero('sin(x)-0.1*x',6)

ans=

7.0682

>>fzero('sin(x)-0.1*x',[2,6])

ans=

3.8523

注:

fzero只能求零点附近变号的根,试用fzero求解(x-1)2=0,看看发生了什么?

8.3.3非线性方程组求解

fsolve用法与fzero类似。

例3:

解方程组

解写M函数eg8_1fun.m:

functiony=fun(x)

y

(1)=4*x

(1)-x

(2)+exp(x

(1))/10-1;

y

(2)=-x

(1)+4*x

(2)+x

(1)^2/8;

然后在命令窗口用

>>[x,y,f]=fsolve('eg8_1fun',[0,0])

x=

0.23260.0565

y=

1.0e-006*

0.09080.1798

f=

1

注:

x返回解向量,y返回误差向量,f>0则解收敛。

或直接用

>>[x,y,f]=fsolve('[4*x

(1)-x

(2)+exp(x

(1))/10-1,-x

(1)+4*x

(2)+x

(1).^2/8]',[0,0])

x=

0.23260.0565

y=

1.0e-006*

0.09080.1798

f=

1

注意:

fsolve采用最小二乘优化法,稳定性比fzero好,但fsolve可能陷入局部极小。

试用fsolve解x2+x+1=0,看会发生什么?

不要完全相信计算机。

8.3.4解析求解solve

例4:

解ax2+bx+c=0

>>solve('a*x^2+b*x+c','x')

ans=

[1/2/a*(-b+(b^2-4*a*c)^(1/2))]

[1/2/a*(-b-(b^2-4*a*c)^(1/2))]

>>[x,y]=solve('4*x-y+exp(x)/10=1','-x+4*y+y^2/8=0','x,y')

x=

.23297580773115396971569236570313

y=

.58138324907069742242891748561961e-1

注意所得的解与fsolve的不同。

注意:

虽然solve可用于求数值解,但速度很慢,且有很大的局限性,不提倡使用。

8.4数值解法:

图解法和迭代法

8.4.1图解法

利用作图的方法可以求一元或二元方程(组)的低精度解,或者寻找迭代初值。

例5:

解方程

sinx=0.1x(8.5)

解显然,解在[-10,10]内,函数y=sinx-0.1x的零点就是(8.5)的解,

出y=sinx-0.1x在[-10,10]范围内的图象(图8.1),可看出根的大致位置。

作图可使用如下MATLAB语句:

close;fplot('sin(x)-0.1*x',[-10,10]);grid;

可知±8.5,±7,±3,0附近各有一解。

(在figure窗口用matlab的zoom命令演示)

例6:

利用作图法解例3的方程组。

>>clear;close;

>>x1a=-1:

0.01:

1;x2a=-1:

0.01:

1;[x1,x2]=meshgrid(x1a,x2a);

>>f=4*x1-x2+exp(x1)/10-1;g=-x1+4*x2+x1.^2/8;

>>contour(x1,x2,f,[0,0]);%曲面与平面x2=0的交线

>>holdon;contour(x1,x2,g,[0,0]);holdoff;

>>gridon

可见在(0.25,0.05)附近有一个解。

8.4.2迭代法(牛顿法,切线法)

求f(x)=0的解,从几何上说xk+1为用f(x)在xk处的切线代替f(x)求得的解,故也称为切线法。

当初值x0与真解足够靠近,Newton迭代法敛。

单根快,重根慢。

迭代格式:

例6:

求如下方程的正根(要求精度=10-6)

x2-3x+ex=2

解令f(x)=x2-3x+ex-2,f(0)=-1<0,x>2,f(x)>0,f´(x)>0,即f(x)单调上升,根在[0,2]内,先用图解法找初值。

>>fplot('x^2-3*x+exp(x)-2',[0,2]);gridon;

再使用zoom按纽使得图像可用鼠标点击放大,以提高局部观察精度。

唯一正根在1附近,取x0=1,迭代格式:

M脚本eg2_2.m

clear,e=1e-6;formatlong;

x1=1

x0=x1+2*2;%使while成立

while(abs(x0-x1)>e)

x0=x1,x1=x0-(x0^2-3*x0+exp(x0)-2)/(2*x0-3+exp(x0))

end;format

得x1=1.44623868596643

 

8.5贷款利率问题求解

考虑方程(8.2).常识上,r应比当时活期存款月利率略高。

用活期存款月利率0.0198/12作为迭代初值,用fzero求解。

(使用Matlab)

>>r=fzero('25.2*(1+x)^360-((1+x)^360-1)/x*0.1436',0.0198/12),R=12*r

r=

0.0046

R=

0.0553

8.6养老保险

某保险公司的一份材料指出:

在每月交费200元至60岁开始领取养老金的约定下,男子若从25岁起投保,届时月领养老金2282元;若35岁起投保,届时月领养老金1056元;若45岁起投保,届时月领养老金420元。

我们来考察这三种情况所交保险非获得的利率。

设投保人在投保后第k个月所交保险费急利息的累计总额为Fk,易得数学模型:

其中p,q分别为60岁前所交月保险费和60岁起所领月养老金的数目(单位:

元),r是所交保险金获得的月利率,N,M分别是自投保起至停交保险费和停领养老金的时间(单位:

月)。

显然M依赖于投保人的寿命,我们取为该公司养老计划所在地男性寿命的统计平均值75岁。

以25岁起投保为例,则有

p=200,q=2282,N=420,M=600

而初值F0=0,易得

在前一式中取k=N而在后一式中取k=M并注意到FM=0,这样只要消去FN,就导出关于r的方程:

记x=1+r,且将已知数据代入,则只须求解方程

显然,1是上述方程的的解,但我们要求的根显然略大于1。

利用Newton法借助计算机编程或用数学软件能很方便的求出方程的实根,只是要注意选择合理的初始值,例如在MATLAB中,应用图解法求解:

>>close;

>>fplot('x^600-12.41*x^180+11.41',[0.8,1.2]);

>>axis([0.95,1.01,-0.5,0.5]);

>>gridon;zoomon

易得略大于1的根

x=1.00485,

所以

r=0.00485

对于35岁起和45岁起投保的情况,同样可得保险金所获得的月利率分别为0.00461和0.00413。

由于银行利率和投保人寿命等随机因素,保险费的计算是比较复杂的,但通过分析,我们对总体的利率还是可以得到大致的估计。

 

8.7习题

1、作出f(x)=xsin(1/x)在[-0.1,0.1]内的图象,可见在x=0附近f(x)=0有无穷多个解,并设法求出它的解。

2、(月还款额)作为房产公司的代理人,你要迅速准确回答用户各方面的问题。

现在有个客户看中了贵公司一套建筑面积为120m2,单价5200元/m2的房子。

他计划首付30%,其余70%用20年按揭贷款(年利率5.58%)。

请你提供下列信息:

房屋总价格、首付款额、月付还款额。

 

8.8补充:

混沌

线性迭代要么收敛于它的不动点,要么趋于无穷大;而不收敛的非线性迭代可能会趋于无穷大,也可能趋于一个周期解,但也可能在一个有限区域内杂乱无章地游荡,由确定性运动导致的貌似随机的现象称为混沌现象。

下面就Logistic迭代研究这一现象。

8.8.1昆虫数量的Logistic模型

xk表示第k代昆虫数量(1表示最大值)。

(8.7)式反映了下一代对上一代的既依赖又竞争的关系。

当上一代很少,繁殖能力不够,从而后代很少;当上一代很多,会吃掉很多食物,后代难以存活,从而后代很少。

a为资源系数,0≤a≤4保证了xk在区间(0,1)上封闭。

8.8.2平衡与稳定

称a为映射g(x)的平衡解或不动点,若g(x)=ax(1-x).解方程

x=ax(1-x)

得(8.7)式两个不动点0和1-1/a.若初始值恰好为不动点,迭代式(8.7)的值永不改变。

如果对于不动点x0附近的初始值,(8.7)收敛与此不动点,我们称这一不动点是稳定的。

当0x<1,在[0,1]内只有一个不动点0,且由|g(0)|=a<1,可知它是稳定的。

说明资源匮乏时,昆虫趋于死亡。

当a>1,不动点0不再稳定,而由|g′(1-1/a)|=|2-a|<1可知1

8.8.3周期解、分叉和混沌

称a为映射g(x)的周期k点,若gk(a)=a,而对任意j

并称a,g(a),…,gk-1(a)为周期k轨道。

我们来求(8.7)的周期2轨道:

解x-a2x(1-x)(1-ax(1-x))=0

>>solve('x-a*a*x*(1-x)*(1-a*x*(1-x))=0')

ans=

[0]

[(-1+a)/a]

[(1/2*a+1/2+1/2*(a^2-2*a-3)^(1/2))/a]

[(1/2*a+1/2-1/2*(a^2-2*a-3)^(1/2))/a]

可见当a2-2a-3>0,即a>3,出现两个周期2解,可以证明3

迭代开始发生倍周期分岔,从周期2,周期4,…,周期2n,…,直到a∞=3.569945672…。

说明a在[3,a∞]取值时昆虫数量呈现规律性振荡。

当a>a∞,(8.4)是的迭代序列几乎杂乱无章,即所谓混沌。

下列例子可形象地显示上述现象。

例:

(分叉图)对a在[0,4]的不同值,画出Logistic迭代的极限形态图。

如下M文件对于每一个a值,随机产生一个初值。

文件显示前20步迭代的变化。

最后用第180~200步迭代值表示极限形态,最后结果见图8-3。

 

%M脚本8_3.m

clear;close;a=0:

0.01:

4;

M=length(a);K=200;X=zeros(K,M);x(1,:

)=rand(1,M);

form=1:

M,fork=1:

K-1

x(k+1,m)=a(m)*x(k,m)*(1-x(k,m));

end,end

fork=1:

20,

plot(a,x(k,:

),'.');title(['k=',int2str(k)]);pause

(2);

end;

plot(a,x(180:

K,:

),'.');xlabel('a');ylabel('x');holdoff;

8.8.3混沌的特征

混沌是由确定性系统产生的貌似随机的现象。

一般认为混沌有如下几个特征

(i)初值的敏感性:

两个任意近的点出发的两条轨迹迟早会分得很开;

(ii)遍历性:

任意点出发的轨迹总会进入[0,1]内任意小的开区间。

例:

(初值的敏感性)如下M文件eg8_4.m验证了Logistic迭代序列的初值敏感性。

对于靠得很近的两个初值(相差仅1e-4),画出了两个序列50步内的误差图(图8-4)。

可见10步以后,差异增大,有时甚至接近1。

 

%M脚本eg8-4.m

clear;close;a=4;e=1e-4;

x=zeros(50,2);x(1,:

)=[0.4,0.4+e];

fori=2:

50

x(i,:

)=a*x(i-1,:

).*(1-x(i-1,:

));

end

y=x(:

1)-x(:

2);plot(y)

例:

(蛛网图)混沌的遍历性

昆虫数量的Logistic模型:

xk表示第k代昆虫的数量(1表示最大可能数量)。

平面迭代式:

蛛网图正好显示迭代计算x0,y0,x1,y1,…的一系列变化过程。

如下M函数eg8_5.m是一个通用的logistic蛛网图函数。

做出系数为a,初值为x0,从第m步到第n步的迭代过程:

functionf=eg8_5(a,x0,m,n)

x=0:

0.01:

1;y=a*x.*(1-x);

plot(x,x,'r',x,y,'r');holdon;

clearx,y;x

(1)=x0;y

(1)=a*x

(1)*(1-x

(1));x

(2)=y

(1);

ifm<2,plot([x

(1),x

(1),x

(2)],[0,y

(1),y

(1)]);end

fori=2:

n

y(i)=a*x(i)*(1-x(i));

x(i+1)=y(i);

ifi>m,plot([x(i),x(i),x(i+1)],[y(i-1),y(i),y(i)]);end

end

holdoff

在命令窗口执行

>>subplot(2,2,1);eg8_5(2.7,0.1,1,100);%收敛迭代

>>subplot(2,2,2);eg8_5(3.4,0.1,50,500);%周期2

>>subplot(2,2,3);eg8_5(3.5,0.1,50,500);%周期4

>>subplot(2,2,4);eg8_5(4,0.1,50,500);%混沌

可见混沌迭代对于初值为0.1,轨迹遍历了[0,1]区间(图8-5)

8.9补充习题

(Henon吸引子)混沌和分形的著名例子,迭代模型为

取初值x0=0,y0=0,进行3000次迭代,对于k>1000,在(xk,yx)处亮一点(注意不要连线)可得所谓Henon引力线图。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 初中教育 > 英语

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2