下载此文档

数值分析实验报告(Matlab实现).doc


文档分类:高等教育 | 页数:约25页 举报非法文档有奖
1/25
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/25 下载此文档
文档列表 文档介绍
学生实验报告
实验课程名称数值分析
开课实验室数学与统计学院实验室
学院 2010 年级数学与应用数学专业班 01班
学生姓名学号
开课时间 2012 至 2013 学年第一学期
总成绩
教师签名
课程
名称
数值分析
实验项目
名称
Gauss消元法
实验项目类型
验证
演示
综合
设计
其他
指导
教师
何光辉
成绩

实验目的:
(1)高斯列主元消去法求解线性方程组的过程
(2)熟悉用迭代法求解线性方程组的过程
(3)设计出相应的算法,编制相应的函数子程序
实验内容
分别用高斯列主元消元法和直接消元法求解线性方程组:

实验原理
对于线性方程组
(1)
常记为矩阵形式
(2)
根据高等代数的知识,若,上式的解存在且唯一。
Gauss直接消元法
考虑上述线性方程组的增广矩阵,对增广矩阵进行行变换,将(2)式化为等价的三角形方阵,然后回代解之,这就是Gauss消元法。具体如下:
消元
①令;
②对k=1到n-1,若,进行
回代,若
Gauss列主元消元法
设列主元消元法已完成的第k-1()次消元,的到方程组
在进行第k次消元前,先进行2个步骤:
在至这一列内选出最大值,即,若,此时
方程组无确定解,应给出退出信息。
若,则交换第行和行,然后用Gauss消元法进行消元。
MATLAB软件实现
写出Gauss消元法和列主元消元法实现的MATLAB函数
根据以上的算法,写出如下程序:
%%%%%%%Gauss消元法%%%%%%%%%%%%
function y=Gauss1(A,b)
[m,n]=size(A);
%检查系数正确性
if m~=n
error('矩阵A的行数和列数必须相同');
return;
end
if m~=size(b)
error(' b的大小必须和A的行数或A的列数相同');
return;
end
%再检查方程是否存在唯一解
if rank(A)~=rank([A,b])
error(' A矩阵的秩和增广矩阵的秩不相同,方程不存在唯一解');
return;
end
%这里采用增广矩阵行变换的方式求解
c=n+1;
A(:,c)=b;
%%消元过程
for k=1:n-1
A(k+1:n, k:c)=A(k+1:n, k:c)-(A(k+1:n,k)/ A(k,k))*A(k, k:c);
end
%%回代结果
x=zeros(length(b),1);
x(n)=A(n,c)/A(n,n);
for k=n-1:-1:1
x(k)=(A(k,c)-A(k,k+1:n)*x(k+1:n))/A(k,k);
end
%显示计算结果
%disp('x=');
%disp(x);
y=x;
% %%%%%%%%%%%高斯列主元消元法求解线性方程组Ax=b%%%%%%%%%%%%%%
%A为输入矩阵系数,b为方程组右端系数
%方程组的解保存在x变量中
function y=Gauss_line(A,b)
format long;% 设置为长格式显示,显示15位小数
[m,n]=size(A);
%先检查系数正确性
if m~=n
error('矩阵A的行数和列数必须相同');
return;
end
if m~=size(b)
error(' b的大小必须和A的行数或A的列数相同');
return;
end
%再检查方程是否存在唯一解
if rank(A)~=rank([A,b])
error(' A矩阵的秩和增广矩阵的秩不相同,方程不存在唯一解');
return;
end
c=n+1;
A(:,c)=b; %(增广)
for k=1:n-1
[r,m]=max(abs(A(k:n,k))); %选主元
m=m+k-1; %修正操作行的值
if(A(m,k)~=0)
if(m~=k)
A([k m],:)=A([m k],:); %换行
end
A(k+1:n, k:c)=A(k+1:n, k:c)-(A(k+1:n,k)/ A(k,k))*A(k, k:c); %消去
end
end
x=zeros(length(b),1); %回代求解
x(n)=A(n,c)/A(n,n);
for k=n-1:-1:1
x(k)=(A(k,c)-A(k,k+1:n)*x(k+1:n))/A(k,k);
end
y=x;
format short;% 设置为默认格式显示,显示5位
建立MATLAB界面
利用M

数值分析实验报告(Matlab实现) 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数25
  • 收藏数0 收藏
  • 顶次数0
  • 上传人350678539
  • 文件大小440 KB
  • 时间2018-07-14