1 / 8
文档名称:

数学实验“线性方程组的最速下降法与共轭梯度法解法”实验报告(内含matlab程序代码).doc

格式:doc   大小:162KB   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数学实验“线性方程组的最速下降法与共轭梯度法解法”实验报告(内含matlab程序代码).doc

上传人:63229029 2017/8/30 文件大小:162 KB

下载得到文件列表

数学实验“线性方程组的最速下降法与共轭梯度法解法”实验报告(内含matlab程序代码).doc

文档介绍

文档介绍:西京学院数学软件实验任务书
课程名称
数学软件实验
班级
数0901
学号
0912020107
姓名
李亚强
实验课题
线性方程组的最速下降法与共轭梯度法
实验目的
熟悉线性方程组的最速下降法与共轭梯度法
实验要求
运用Matlab/C/C++/Java/Maple/Mathematica等其中一种语言完成
实验内容
线性方程组的最速下降法
线性方程组的共轭梯度法
成绩
教师
实验五实验报告
实验名称:最速下降法与共轭梯度法解线性方程组。
实验目的:进一步熟悉理解掌握最速下降法与共轭梯度法解法思路,提高matlab编程能力。
实验要求:已知线性方程矩阵,应用最速下降与共轭梯度法在相关软件编程求解线性方程组的解。
实验原理:
最速下降法:
从某个初始点出发,沿在点处的负梯度方向

求得的极小值点, 即
然后从出发,重复上面的过程得到。如此下去,得到序列{}

可以证明,从任一初始点出发, 用最速下降法所得到的序列{}均收敛于问题使最小化的解,也就是方程组的解。其收敛速度取决于,其中,
分别为A的最小,最大特征值。最速下降法迭代格式:给定初值,按如下方法决定:

共轭梯度法
其基本步骤是在点处选取搜索方向, 使其与前一次的搜索方向关于共轭,即

然后从点出发,沿方向求得的极小值点, 即
如此下去, 得到序列{}。不难求得的解为

注意到的选取不唯一,我们可取

由共轭的定义可得:
共轭梯度法的计算过程如下:
第一步:取初始向量, 计算

第步:计算
实验内容:
%最速下降法
function [x,k]=fastest(A,b,eps);
x0=zeros(size(b),1);
x=x0;
k=0;
m=1000;
tol=1;
while tol>=eps
r=b-A*x0;
q=dot(r,r)/dot(A*r,r);
x=x0+q*r;
k=k+1;
tol=norm(x-x0);
x0=x;
if k>=m
disp('迭代次数太多,可能不收敛!');
return;
end
end
x
k
%共轭梯度法
function [k,x]=gong_e(A,b)