数值分析报告某实验报告材料(matlab实现)

数值分析报告某实验报告材料(matlab实现)

ID:29446200

大小:439.00 KB

页数:25页

时间:2018-12-19

数值分析报告某实验报告材料(matlab实现)_第1页
数值分析报告某实验报告材料(matlab实现)_第2页
数值分析报告某实验报告材料(matlab实现)_第3页
数值分析报告某实验报告材料(matlab实现)_第4页
数值分析报告某实验报告材料(matlab实现)_第5页
资源描述:

《数值分析报告某实验报告材料(matlab实现)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实用标准文案学生实验报告实验课程名称数值分析开课实验室数学与统计学院实验室学院2010年级数学与应用数学专业班01班学生姓名学号开课时间2012至2013学年第一学期总成绩教师签名精彩文档实用标准文案课程名称数值分析实验项目名称Gauss消元法实验项目类型验证演示综合设计其他指导教师何光辉成绩√一、实验目的:(1)高斯列主元消去法求解线性方程组的过程(2)熟悉用迭代法求解线性方程组的过程(3)设计出相应的算法,编制相应的函数子程序二、实验内容分别用高斯列主元消元法和直接消元法求解线性方程组:三、实验原理对于线性方程组(1)常记为矩阵形式(2)根据高等代数的知识,若

2、,上式的解存在且唯一。(1)Gauss直接消元法考虑上述线性方程组的增广矩阵,对增广矩阵进行行变换,将(2)式化为等价的三角形方阵,然后回代解之,这就是Gauss消元法。具体如下:a)消元①令;②对k=1到n-1,若,进行精彩文档实用标准文案a)回代,若(1)Gauss列主元消元法设列主元消元法已完成的第k-1()次消元,的到方程组在进行第k次消元前,先进行2个步骤:a)在至这一列内选出最大值,即,若,此时方程组无确定解,应给出退出信息。b)若,则交换第行和行,然后用Gauss消元法进行消元。一、MATLAB软件实现(1)写出Gauss消元法和列主元消元法实现的M

3、ATLAB函数根据以上的算法,写出如下程序:%%%%%%%Gauss消元法%%%%%%%%%%%%functiony=Gauss1(A,b)[m,n]=size(A);%检查系数正确性ifm~=nerror('矩阵A的行数和列数必须相同');return;endifm~=size(b)error('b的大小必须和A的行数或A的列数相同');return;end%再检查方程是否存在唯一解ifrank(A)~=rank([A,b])error('A矩阵的秩和增广矩阵的秩不相同,方程不存在唯一解');return;精彩文档实用标准文案end%这里采用增广矩阵行变换的方式

4、求解c=n+1;A(:,c)=b;%%消元过程fork=1:n-1A(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);fork=n-1:-1:1x(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为方程

5、组右端系数%方程组的解保存在x变量中functiony=Gauss_line(A,b)formatlong;%设置为长格式显示,显示15位小数[m,n]=size(A);%先检查系数正确性ifm~=nerror('矩阵A的行数和列数必须相同');return;endifm~=size(b)error('b的大小必须和A的行数或A的列数相同');return;end%再检查方程是否存在唯一解ifrank(A)~=rank([A,b])error('A矩阵的秩和增广矩阵的秩不相同,方程不存在唯一解');return;endc=n+1;A(:,c)=b;%(增广)for

6、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([km],:)=A([mk],:);%换行endA(k+1:n,k:c)=A(k+1:n,k:c)-(A(k+1:n,k)/A(k,k))*A(k,k:c);%消去endendx=zeros(length(b),1);%回代求解x(n)=A(n,c)/A(n,n);fork=n-1:-1:1x(k)=(A(k,c)-A(k,k+1:n)*x(k+1:n))/A(k,k);endy=x;format

7、short;%设置为默认格式显示,显示5位(1)建立MATLAB界面利用MATLAB的GUI建立如下界面求解线性方程组:详见程序。一、计算实例、数据、结果、分析下面我们对以上的结果进行测试,求解:精彩文档实用标准文案输入数据后点击和,得到如下结果:更改以上数据进行测试,求解如下方程组:得到如下结果:精彩文档实用标准文案一、实验中遇到的问题及解决办法在本实验中,遇到的问题主要有两个:(1)如何将上述的Gauss消元法的算法在MATLAB中实现针对此问题我借鉴了网上以及课本上的算法的MATLAB实现的程序;(2)如何将建立界面使得可以随意输入想要求解的相关矩阵后就可以

8、直接求解针

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。