您所在位置:网站首页 > 海量文档
 > 计算机 > matlab
数学实验“非线性方程二分法,迭代法,Aitken迭代法,Steffensen迭代法”实验报告(内含matlab程序代码).doc10页
本文档一共被下载:次,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
西京学院数学软件实验任务书
课程名称数学软件实验班级数0901学号0912020107姓名李亚强实验课题非线性方程的二分法,迭代法,松弛迭代法,Aitken迭代法,Steffensen迭代法实验目的熟悉非线性方程的二分法,迭代法,松弛迭代法,Aitken迭代法,Steffensen迭代法实验要求运用Matlab/C/C++/Java/Maple/Mathematica等其中一种语言完成实验内容非线性方程的二分法
非线性方程的迭代法
非线性方程的松弛迭代法
非线性方程的Aitken迭代法
非线性方程的Steffensen迭代法成绩教师实验六实验报告
实验名称:非线性方程的二分法,迭代法,松弛迭代法,Aitken迭代法,Steffensen迭代法。
实验目的:进一步熟悉理解掌握最速下降法与共轭梯度法解法思路熟悉非线性方程的二分法,迭代法,松弛迭代法,Aitken迭代法,Steffensen迭代法,提高matlab编程能力。
实验要求:非线性方程,应用二分法,迭代法,松弛迭代法,Aitken迭代法,Steffensen迭代法编程求解非线性方程的数值解。
实验原理:
二分法:
设函数在区间上连续,而且,则在区间上至少有一个根。
首先确定有限区间:依据零点定理。设 ,且,则方程 在区间上至少有一个根。如果在上恒正或恒负,则此根唯一。
令若,则为有根区间,否则为有根区间。记新的有根区间为,
则且;对重复上述做法得:且
设所求的根为,则,即,由得
取为的近似解。
不动点迭代法
对于非线性方程:常常可以化成等价的方程可以选取一个初始近似值,构造迭代序列
如此产生序列。这种迭代方法称为不动点迭代,或Picard 迭代。这个原理看似很容易直观理解,但是却有相当深刻的数学内涵,数学系的学生在泛函分析与微分方程理论等多门专业课程里都会遇到。如果连续,而且,则是的一个不动点。因此为方程的一个根。
Aitken加速迭代
由初值出发,计算出后,便可在曲线上找到两个点。将这两点所在的直线与直线的交点设为,则点满足:解得:,将视为新的初值,重复上述步骤可得,由此产生迭代公式,。
Steffensen迭代法
该迭代法解方程可以看成是另一种不动点迭代:其中迭代函数为得到迭代公式为:
;
实验内容:
%二分法解非线性方程
function er_fen(f,a,b,esp);
f1=subs(f,a);
f2=subs(f,b);
if f1*f2>0
disp('该方程在【a,b】上无解!');
elseif f1==0
root=a;
elseif f2==0
root=b;
else
a0=a;
b0=b;
A=[];
while abs((b0-a0)/2)>=esp
half=(a0+b0)/2;
fa=subs(f,a0);
fb=subs(f,b0);
fhalf=subs(f,half);
if fhalf==0
root=half;
break;
elseif fa*fhalf<0
b0=half;
else
a0=half;
end
A=[A,half];
end
root=(b0+a0)/2;
end
root
A
%不动点迭代(Picard迭代)
function [x,time]=Picard(f,x0,tol)
%结果给出迭代次数
%x0 为迭代初值
%tol 为误差容限
if(nargin==2)
tol=1.0e-5;
end
wucha=0.5; %设置误差初值
x1=x0; %x1 与x0 为前后两次计算结果
time=0; %用于记录迭代次数
while(wucha>tol)
x1=subs(f,x0)+x0;
%迭代计算
wucha=abs(x1-x0);
x0=x1; % 更新x0的值在循环中这一句非常重要
time=time+1;
%记下迭代次数
end
x=x1;
%Aitken加速收敛方法
function [gen,time]=Aitken(func,x0,tol)
if(nargin==2)
tol=1.0e-5;
end
gen=x0;
x(1:2)=[0,0];
t=0; %记录迭代次数
m=0;
x2=x0;
wucha=0.1; %设置误差初值
while(wucha>tol)
t=t+1; %记下累
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名:
验证码:
匿名?
发表评论