matlab 数学实验 迭代 _ 蛛网图(免积分)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数学实验—实验报告(免积分)

一、实验项目:Matlab实验三—迭代

二、实验目的和要求

a.熟悉MATLAB软件的用户环境,掌握其一般目的命令和MATLAB数组操作与

运算函数;

b.掌握MATLAB软件的绘图命令,能够熟练应用循环和选择结构实现各种循环

选择功能;

c.借助MATLAB软件的绘图功能,对函数的特性进行探讨,广泛联想,大胆猜

想,发现进而证实其中的规律。

三、实验内容

问题一:将方程53

x x x

+-+=改写成各种等价的形式进行迭代

5210

观察迭代是否收敛,并给出解释。

问题二:迭代以下函数,分析其收敛性。

4

f(x)=x-a

使用线性连接图、蛛网图或费根鲍姆图对参数a进行讨论和观察,会得到什么结论?

问题一:

(1)画图

x1=-6:0.01:6;

x2=-3:0.01:3;

x3=-1:0.01:1;

x4=-0.8:0.01:-0.75;

y1=x1.^5 +5*x1.^3-2*x1+1;

y2=x2.^5 +5*x2.^3-2*x2+1;

y3=x3.^5 +5*x3.^3-2*x3+1;

y4=x4.^5 +5*x4.^3-2*x4+1;

subplot(2,2,1),plot(x1,y1)

,title('图(1)') ,grid on,

subplot(2,2,2),plot(x2,y2)

,title('图(2)'),grid on,

subplot(2,2,3),plot(x3,y3)

,title('图(3)'),grid on,

subplot(2,2,4),plot(x4,y4)

,title('图(4)') ,grid on,

-10

-5

05

10

-1-0.5

00.51x 10

4

图 (1)

-4

-2

024

-400

-200

0200

400图 (2)

-1

-0.500.51

-50

5图 (3)

-0.8

-0.78-0.76-0.74-0.72

图 (4)

有图可知x 的初值在(-0.78,0.76)之间 (2)构造迭代函数

()x f x =

53

51

2

x x x ++=

1()x f x =

2

2

21

5x x x x

-+-=

2()x f x =

2

4

521

x x x x

-+-=

3()x f x =

(3)迭代 设定初值

x =-

函数1()n n x f x -= 用MA TLAB 编程:

x(1)=-0.77;y(1)=-0.77;z(1)=-0.77; for i=2:20

x(i)=(x(i-1)^5+5*x(i-1)^3+1)/2;

y(i)=(-y(i-1)^5+2*y(i-1)-1)/(5*y(i-1)^2); z(i)=(-5*z(i-1)^3+2*z(i-1)-1)/(z(i-1)^4); end

n=1:20

subplot(221), plot(n,x), title('f(1)'); subplot(222), plot(n,y), title('f(2)'); subplot(223), plot(n,z), title('f(3)'); 结果显示:

5

1015

20

-6

-4

-2

0x 10

249

f(1)

5

10

15

20

00.5

1

1.5

62

f(2)

5

10

15

20

-4-20

24f(3)

如图显示,显然不收敛。

(4)利用加速迭代收敛法变形后: 5

3

4

2

41012515x x x x x

--+=

-- 1()x f x =

6

23

5

2435322x x x x x x x --=

++- 2()x f x =

2

5

3

28561

x x

x x x x -+=

++- 3()x f x =

再次迭代: 设定初值

x =-

函数1()n n x f x -= 用MA TLAB 编程:

x(1)=-0.77;y(1)=-0.77;z(1)=-0.77;

for i=2:30

x(i)=(-4*x(i-1)^5-10*x(i-1)^3+1)/(2-5*x(i-1)^4-15*x(i-1)^2);

y(i)=(2*y(i-1)^6+4*y(i-1)^2-3*y(i-1))/(5*y(i-1)^3+3*y(i-1)^5+2*y(i-1)-2); z(i)=(8*z(i-1)^2-2*z(i-1))/(z(i-1)^5+5*z(i-1)^3+6*z(i-1)-1); end n=1:30

subplot(221), plot(n,x), title('f(1)'); subplot(222), plot(n,y), title('f(2)'); subplot(223), plot(n,z), title('f(3)'); 结果显示:

010

2030

-0.77

-0.769-0.768

-0.767f(1)

0102030

-0.77

-0.769

-0.768

-0.767f(2)

0102030

-0.77

-0.769

-0.768

-0.767f(3)

如图显示,收敛。

问题二:

(1)用matlab 编程: x1=[ ]; a=1; x=-6:0.01:6;

y=x.^4-a;

subplot(221), plot(x,y); hold on %画二次函数曲线 ezplot('x',[-6,6]) %画直线 x1(1)=1; %初始点 for i=2:50

x1(i)=x1(i-1)^4-a;

plot([x1(i-1),x1(i-1)],[x1(i-1),x1(i)]),grid on; plot([x1(i-1),x1(i)],[x1(i),x1(i)]), grid on; end x1=[ ]; a=2; x=-6:0.01:6;

相关文档
最新文档