列主元高斯消去法

 时间:2024-10-25 20:28:54

本文主要介绍一下列主元高斯消去法的应用,用实例说明

列主元高斯消去法

工具/原料

电脑、Fortran软件

题目:

1、一、题目:

2、解法:1、程序A=[2,1,-3,-1;3,1,0,7;-1,2,4,-2;1,0,-1,5]b=[1;2;-1;5]n=4 ;A1=[A,b];for i = 1:n-1[XX,r] = max(abs(A1(i:n,i)));r = r + i - 1;if r>itemp=A1(i,:);A1(i,:)=A1(r,:);A1(r,:)=temp;endif A1(i,i)==0 endfor p = i+1:nA1(p,:)=A1(p,:)-A1(i,:)*A1(p,i)/A1(i,i);endendA = A1(:,1:n); b = A1(:,n+1);x(n) = b(n)/A(n,n);for i = n-1:-1:1x(i)=b(i);for p=n:-1:i+1x(i) = x(i)-A(i,p)*x(p);endx(i)=x(i)/A(i,i);endx

3、运行结果:X=-3.30588235294118 3.02352941176471 -1.95294117647059 1.27058823529412

4、程序a=input('请输入线性方程组的系数矩阵a=');b=input('请输入b=');[m,n]=size(a);if m~=n error('此矩阵非方阵,运行截止')endfor t=1:n-1 i=t;h=a(t,t); for s=t+1:n if abs(h)<abs(a(s,t)) h=a(s,t);i=s; end end if i~=t for j=1:n c=a(i,j);a(i,j)=a(t,j);a(t,j)=c; end c=b(i);b(i)=b(t);b(t)=c; end for i=t+1:n k=a(i,t)/a(t,t); for j=1:n a(i,j)=a(i,j)-k*a(t,j); end b(i)=b(i)-k*b(t); endendfprintf('经%1d次消元后的增广矩阵为\n',(n-1));disp([a,b])x(n)=b(n)/a(n,n);for i=n-1:-1:1 x(i)=b(i); for j=i+1:n x(i)=x(i)-x(j)*a(i,j); end x(i)=x(i)/a(i,i);endfprintf('线性方程组的解向量是');x

5、运行结果:经3次消元后的增广矩阵为 3.0000 1.0000 0 7.0000 2.0000 0 2.3333 4.0000 0.3333 -0.3333 0 -0.0000 -3.5714 -5.7143 -0.2857 0 0.0000 0 3.4000 4.3200线性方程组的解向量是x = -3.3059 3.0235 -1.9529 1.2706

  • 传感器确定拟合直线的方法
  • 学习通怎样查看云盘
  • Mathematica 连乘公式(数值/符号/多重乘积)
  • Mathematica基础——再谈素数
  • (1+x)^a的泰勒展开式是什么
  • 热门搜索
    六一儿童节手抄报图片 小学生文明礼仪手抄报 手抄报装饰小图案 身边的科学手抄报 清明节手抄报大全漂亮 端午节手抄报一等奖 关于童年的手抄报 红心向党手抄报 爱国手抄报图片大全 二年级最简单中秋节手抄报