地球科学与技术学院地球探测与信息技术研11—6班孙殿强s1***
实验2.1迭代法、初始值与收敛性。
实验目的:初步认识非线性问题的迭代法与线性问题的迭代法的差别,**迭代法及初始值与迭代收敛性的关系。
问题提出:迭代法是求解非线性方程(组)的基本方法,与线性方程的情况一样,其构造方法多种多样,但关键是怎样才能使迭代收敛且有较快的收敛速度。
实验内容:考虑一个简单的代数方程。
12=x x 针对上述方程,可以构造多种迭代法,如1,11,11121+=+n n n
n n n x x x x x x 等。在实轴上取初始值0x ,分别用以上迭代法做实验,记录各算法的迭代过程。
实验要求:1)取定某个初始值,按如上迭代格式进行计算,它们的收敛性如何?重复选取不同的初始值,反复实验。
请读者自行设计一种比较形象的记录方式(如利用matlab 的图形功能),分析3种迭代法的收敛性与初始值选取的关系。
2)对3种迭代法中的某一个,取不同的初始值进行迭代,结果如何?试分析不同初始值的迭代结果是否有差异。迭代法程序如下(matlab 编程处理):
function [x]=diedai(g,x0,tol,nmax)
g 表示给定的迭代函数。
x0表示给定的初始值。
tol 表示允许的误差。
nmax 表示最大允许迭代次数。
x 是输出的迭代值。
x(1)=x0;
for i=2:nmax
x(i)=feval('g',x(i-1));
i;if (abs(x(i)-x(i-1))break ;
endif(i==nmax)
disp('the method failed after nmax iterations');
endend
x分别编辑如下格式迭代函数:
1)function y=g(x)
y=x^2-1;
2)function y=g(x)
y=1+1./x;
3)function y=g(x)
y=sqrt(x+1);
在matlab中运行如下**:
fplot('[x.^2-x-1]',23]);grid
可得如下图形:
从图中可以得知方程的两个解分别位于【-1,-0.5】及【1.5,2】这两个区间内。实验时分别选取初始值为代入。
1)迭代格式1,a.选取处置为1.
diedai('g',1,10^(-5),20)
the method failed after nmax iterations
x=columns1through16
columns17through20
b.选取初值为1.5代入。
diedai('g',1.5,10^(-5),20)
the method failed after nmax iterations
x=columns1through9
columns10through18
columns19through20
c.选取初值为5代入。
diedai('g',5,10^(-5),20)
the method failed after nmax iterations
x=1.0e+176*
columns1through9
columns10through18
inf inf inf inf inf inf inf inf inf
columns19through20
inf inf
从以上迭代过程可见采用第一种迭代格式不满足收敛要求。
2)迭代格式2
a.选取初值为1代入。
diedai('g',1,10^(-5),20)i=
x=columns1through9
columns10through15
b.选取初值为1.5代入。
diedai('g',1.5,10^(-5),20)i=
x=columns1through9
columns10through13
c.选取初值为5代入。
diedai('g',5,10^(-5),20)i=
x=columns1through9
columns10through15
3)采用迭代格式3处理。
a.选取初值为1代入。
diedai('g',1,10^(-5),20)i=
x=columns1through9
columns10through12
b.选取初值为1.5代入。
diedai('g',1.5,10^(-5),20)i=
x=columns1through9
column10
c.选取初值为5代入。
diedai('g',5,10^(-5),20)i=
x=columns1through9
columns10through13
综合观察发现迭代格式3的收敛性较好,收敛速度较快,而迭代格式1收敛性很差,不能满足要求。
综合比较个方法及初始值选取对迭代收敛性影响的示意图如下:
3在初始值选取为1.5时的收敛性好于另外两个初始值。
计算方法上机作业
计算方法上机报告。姓名 学号 班级 上课班级 1 算法思想。2 算法结构。3 matlab源程序。clear 清除工作空间变量。clc 清除命令窗口命令。m input 请输入有效数字的位数m输入有效数字的位数。s 0for n 0 50 t 1 16 n 4 8 n 1 2 8 n 4 1 8 n...
计算方法上机作业
表2 新算法迭代结果1 初值 0,精度ep 初始选择因子p 修正因子 0.1,最大迭代次数n 0,局部修正次数m分别取1,2,3次,f 49881192646492934000000000000.000000 表3 新算法迭代法结果2 初值 0,精度ep 初始选择因子p 修正因子 0.05,最大迭代...
计算方法上机作业
计算方法第四次上机报告。2.用欧拉方法解初值。y 10x 1 y 0 x 1 y 0 0 取步长h 0.1,保留5位有效数字,并与准确解相比较。分析 该题目考察欧拉方法解初值问题。程序如下 function heun a,b,y0,n h b a n x a h b y y0 ones 1,n 1 ...