南邮MATLAB数学实验精选(5)

2019-03-16 22:06

fprintf('%g,%g\\n',i,x0); end 1,0.6 2,-0.25 3,-1.66667 4,4 5,0.6 6,-0.25 7,-1.66667 8,4 9,0.6 10,-0.25 11,-1.66667 12,4 13,0.6 14,-0.25 15,-1.66667 16,4 17,0.6 18,-0.25 19,-1.66667 20,4

由此可以发现迭代数列不一定收敛,迭代中出现循环。

练习2 先分别求出分式线性函数f1(x)?x?1?x?15、f2(x)?的不动x?3x?1点,再编程判断它们的迭代序列是否收敛.

运用上节的收敛定理可以证明:如果迭代函数在某不动点处具有连续导数且导数值介于-1与1之间,那末取该不动点附近的点为初值所得到的迭代序列一定收敛到该不动点. (1)解方程x?x=(x-1)/(x+3) x =-1

f1=inline('(x-1)/(x+3)'); x0=-0.5; for i=1:2000 x0=f1(x0);

fprintf('%g,%g\\n',i,x0); end

1982,-0.999001 1983,-0.999001 1984,-0.999002 1985,-0.999002

x?1,得到x=-1,是函数f1(x)的不动点。 x?3

1986,-0.999003 1987,-0.999003 1988,-0.999004 1989,-0.999004 1990,-0.999005 1991,-0.999005 1992,-0.999006 1993,-0.999006 1994,-0.999007 1995,-0.999007 1996,-0.999008 1997,-0.999008 1998,-0.999009 1999,-0.999009 2000,-0.99901

(2)解方程x??x?15,得到x=-5和3,是函数f2(x)的不动点。 x?1x=(-x+15)/(x+1) x=-5,3;

format long;

f2=inline('(x-15)/(x+1)'); x0=6; for i=1:2000 x0=f2(x0);

fprintf('%g,%g\\n',i,x0); end

1980,-17.2814 1981,1.98272 1982,-4.36424 1983,5.75591 1984,-1.3683 1985,44.4431 1986,0.647912 1987,-8.70926 1988,3.07543 1989,-2.92597 1990,9.3075 1991,-0.552267 1992,-34.7356

1993,1.47428 1994,-5.46654 1995,4.58219 1996,-1.86626 1997,19.4703 1998,0.218379 1999,-12.1322 2000,2.43727

由此可见由于迭代序列虽有不动点x=-1,但在此处导数不在-1与1之间,所以迭代数序列不收敛。

练习4 能否找到一个分式线性函数

ax?b,使它产生的迭代序列收cx?d敛到给定的数?用这种办法近似计算2.

x0=1;stopc=1;eps=10^(-17); a=1;b=2; c=1; d=1; k=0; f=inline('(a*x+b)/(c*x+d)'); kmax=10;

while stopc>eps&k


南邮MATLAB数学实验精选(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:敏捷变频器专用出线电抗器 现货供应

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: