全主元消去法_第1页
全主元消去法_第2页
全主元消去法_第3页
全主元消去法_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、全主元消去法1. 通过编制全主元消去法的MATLAB程序(见文件),并用验证,程序给出的结果为x = 4.4164 2.3523 -1.7651,这与原方程的解相同,说明程序是有效的。2. 全主元消去法的运算保证是能稳定收敛的,并不会出现分母为零的现象,其误差来源于数据的舍入误差,而这个误差与采用普通高斯消去法和列主元消去法相比大大减小。3. 当主元素选定后,要对选择出的第一个主元素变为1,这就需要将第一行元素都除以主元素,共需要次乘除法运算,而要使第二行至最后一行的第一列元素都为零,则需要进行次乘除法运算,所以第一步共需要次乘除法运算,同理可算得进行第二步到最后一步所进行的乘除法运算为可得消

2、元过程中乘除法总和为次乘除法运算,回带过程中则产生次乘除法运算,所以运用全主元消去法共会产生次乘除法运算,这也就是方程组的规模与计算量的关系。4. 矩阵高度稀疏的情况下可以考虑对矩阵进行重新排列,使非零元素聚集在主对角线附近,可以减少运算量。function x=gaussq(a,b)%x为解,qa为全主元变换后的矩阵ad=a b;RA=rank(a);RD=rank(d);L=length(b);n=size(a);pos=1:n(1)if RA=RD %根据增广矩阵判断有解条件 fprintf('无解')else if RA=L fprintf('无穷多解'

3、) else fprintf('有唯一解') for q=1:n big=max(max(abs(a(q:n,q:n); for r=q:n %在右下角矩阵中找到绝对值最大的值 for t=q:n if big=abs(a(r,t) zhuh=r; %记录最大值所在的行列 zhul=t; end end end p=a(q,:);%换主行 a(q,:)=a(zhuh,:)%a矩阵中换行 a(zhuh,:)=p; bb=b(q);%b矩阵中也进行换行 b(q)=b(zhuh) b(zhuh)=bb; p=a(:,q);%换主列 a(:,q)=a(:,zhul); a(:,zhul)=p; p=pos(q);%记录位置变化,调换列后对求解x的影响 pos(q)=pos(zhul); pos(zhul)=p; end c=a b for j=1:L-1%变换后将所在矩阵的下面行的第一个元素变为0 for i=(j+1):L m=c(i,j)/c(j,j) c(i,:)=c(i,:)-c(j,:)*m end end x(L,1)=c(L,L+1)/c(L,L); for k=L-1:-1:1 x(k,1)=(c(k,L+1)-c(k,k+1:L)*x(k+1:L)/c(k,k); end y=1:n(1);%交换被列调换打乱的位置 for w

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论