当前位置 :
matlab迭代问题设方程4x^4-4x^2=02.用迭代法求的所有根,设迭代函数为f(x)=(3x^3-x)/(4x^2-2)1)验证取该迭代函数的正确性;2)分别取初值为-1.1,-1,-0.9,….,0.9,1,1.1,观察迭代结果,是否得到了原方程的
 更新时间:2024-04-27 19:58:44
1人问答
问题描述:

matlab迭代问题

设方程4x^4-4x^2=0

2.用迭代法求的所有根,设迭代函数为f(x)=(3x^3-x)/(4x^2-2)

1)验证取该迭代函数的正确性;

2)分别取初值为-1.1,-1,-0.9,….,0.9,1,1.1,观察迭代结果,是否得到了原方程的根;

3)由2),总结出使得迭代序列收敛到每个根时,初值的范围,比如要使迭代序列收敛到0(方程的一个根)初值应该在什么集合中选取,找出每个根的这样的初值集合.寻找的方法,可以是理论分析方法或数值实验方法

刘晓彬回答:
  用这两句代码   symsx   solve(4*x^4-4*x^2)   求得根:   ans=   1   -1   1)验证取该迭代函数的正确性   就是把根代进去,看是否能得到0   root=   01-1   牛顿法,初始值p0=0   误差限10^-6,结果误差|p-p0|=   用牛顿法求得方程的根为   牛顿法,初始值p0=1   误差限10^-6,结果误差|p-p0|=   用牛顿法求得方程的根为   1   牛顿法,初始值p0=-1   误差限10^-6,结果误差|p-p0|=   用牛顿法求得方程的根为   -1   plus=   01-1   故该函数正确.   代码:   root=[0,1,-1]   f=@(x)(3*x.^3-x)./(4*x.^2-2);   plus=zeros(1,size(root,2));   forcounter=1:size(root,2)   n0=80;   p0=root(counter);   disp(['牛顿法,','初始值p0=',num2str(p0)])   fori=1:n0   p=f(p0);   ifabs(p-p0)
数学推荐
最新更新
查询网(393r.com)汇总了汉语字典,新华字典,成语字典,组词,词语,在线查字典,中文字典,英汉字典,在线字典,康熙字典等等,是学生查询学习资料的好帮手,是老师教学的好助手。
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。

邮箱:  联系方式:

Copyright©2009-2021 查询网 393r.com 版权所有 闽ICP备2021002823号-6