【精品】数值分析实验六.doc

【精品】数值分析实验六.doc

ID:51891582

大小:429.50 KB

页数:18页

时间:2020-03-18

【精品】数值分析实验六.doc_第1页
【精品】数值分析实验六.doc_第2页
【精品】数值分析实验六.doc_第3页
【精品】数值分析实验六.doc_第4页
【精品】数值分析实验六.doc_第5页
资源描述:

《【精品】数值分析实验六.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、数值分析实验六MATLAB数值分析实验目的1、掌握应用MATLAB基本运算和函数进行数值分析的方法。2、能通过编写MATLAB程序进行数值分析。3、能调用自己编写的MATLAB函数进行数值分析。4、能进行数值问题的可视化分析。实验内容(-)求解线性方程组1、应用矩阵运算求方程组的根。实验6.1.1:计算2X]+x2-3x3=5<3Xj—2x2+2x3=5一3x2-x3=16解:要解上述线性方程组,可以使用矩阵的左除即X=ABo»A=[2,1,-3;3,-2,2;5,-3,-1];>>B=[5;5;16];%列向量»X=ABX=1-3-2指

2、出:线性方程组A嗨B有两种解法:或冶inv⑴咗但一般用第一种解法,在MMXB中,第二种解法所用时间是第一种解法的50倍。2、编写MATLAB程序求解线性方程纽。用MATLAB程序进行高斯消元法运算可以采取两种方式,一种是编写针对具体方程组的MATLAB脚本m文件或直接在命令窗口屮输入命令进行运算,另一-种是编写通用的MATLAB函数,通过调用求解具体的方程组。利用MATLAB进行高斯消兀法解方程计算的程序(函数)如下:functionx=nagauss(a,b,flag)%用途:高斯消元法解方程ax=b%格5^:x=nagauss(a,b,f

3、lag)a系数矩阵,b右端向量,flag若为0显示屮间过程,否则不显示,默认为0,x解向量.ifnargin<3,flag=0;endn=length(b);a=[a,b];%将增广矩阵赋值给矩阵a.%消元fork=l:(n-l)a((k+1):n,(k+l):(n+l))=a((k+1):n,(k+1):(n+l))-a((k+l):n,k)/a(k,k)*a(k,(k+1):(n+1));a((k+1):n,k)=zeros(n-k,l);ifflag==0,a,endend%回代x=zeros(nj);x(n)=a(n,n+l)/a(n

4、,n);fork=n-l:-l:lx(k,:)=(a(k,n+1)・a(k,(k+l):n)*x((k+l):n))/a(k,k);end指出:关于程序说明如下几点:1、参数fla&flag在函数中起开关作用,当fS萨0时,显示消元的具体过程,否则仅显示方程组的解。例如»a=[l,1,1;-1,3,1;2,-6,1];»启伍;4;-3;»x=nagauss@b,Q)a=1116042100-8-1-17a=1116042100033上述调用过程中口2萨0,显示了增广矩阵在消元过程中的变形。这种用法可以用于编制习题和习题答案。乂如»x=naga

5、uss@b,1)x=321此时仅显示方程组的解。Z参数narginnargin是一个MHLAB特殊变量名,在m函数内,用于表示该函数的输入变量的个数。相关地,nargout表示该函数输岀变量的个数。在本程序屮规定,如果nargin<3,即输入变量小于3个,则认定口暗屯显示完整的消元过程。算法设计程序设计的核心与基础是算法设计。程序的消元过程中,%1尸国切鳩增广矩阵赋值给矩阵為这样便于后面统一符号,对增广矩阵统一地进行消元变换。%1消元的基本计算公式是:a(仗十1):n,好1):(n+1))=a(好1):n,好1):(n+1))—a(仗十1)

6、:n,1^/a(k,k)*a&k+1):(n+l))其中,a((k+l):n,(k+1):(n+l))表示系数矩阵中从第好1行到第n行,第k+1列到第n+l列的元索。a((k+1):n,k)表示系数矩阵中从第k+1行到第n行,第k列的元素。a(k,专表示系数矩阵的第k行到第k列的元索。a(k,(k+1):(n+l))表示系数矩阵中从第k行到第k+1行第n+l列的元索。例如,当曰吋,a(2:n,2:(h+1))f0:n,2:(n+l))—a(2:n,l)/a(1,1)(1,2:(h+l))具体计算一个值,a(2,2)^(2,2)p(2,1)匕(

7、1,1)乜(1,2)即aQ2)的新值是aQ©的原值减去aQ1)除以a(1,1)的商再加上a(1,刀的结果,这和具体计算是一致的。这个式子实际上是消元过程三个公式的合并:即由叫/期(i=R+1,・・・,斤)4如)叫硝)(i,j=k+,k+2,…,n)曙―曙+叫明(i=R+1,…/)合并得到a⑷严―些UkkkJ其中右端向量的计算统一到一个表达式屮,也即统一到一个过程中。%1^length©)语句限定了未知数的个数必须与方程的个数相同。%1上面的计算实际上是计算出了增广矩阵化三角矩阵的上三角部分,而a((k+1):n,l^=zerosfri-k,

8、1)则规定了下三角部分都是Q%1ifflag=O,end指出,当flag=O时输出&%1forAl:(n-1)规定了循环次数。回代过程就是套公式,当然首先要给x赋初

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

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

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