jan52 发表于 2006-9-28 00:25

怎样编制能自动选取主元又能手动选取主元的求解线性方程组的Gauss消去过程

怎样编制一个能自动选取主元,又能手动选取主元的求解线性
方程组的Gauss消去过程?
麻烦写个程序!

[ 本帖最后由 lxq 于 2006-9-28 21:23 编辑 ]

AaronSpark 发表于 2006-9-29 02:19

function x=gauss(A,b)
%x=gauss(A,b)
n=length(A);
a=;
for k=1:n-1
    maxa=max(abs(a(k:n,k)));
    if maxa==0
      return;
    end
    for i=k:n
      if abs(a(i,k))==maxa
            y=a(i,k:n+1);a(i,k:n+1)=a(k,k:n+1);a(k,k:n+1)=y;
            break;
      end
    end
    for i=k+1:n
      l(i,k)=a(i,k)/a(k,k);
      a(i,k+1:n+1)=a(i,k+1:n+1)-l(i,k).*a(k,k+1:n+1);
    end
end

%回代
if a(n,n)==0
    return
end
x(n)=a(n,n+1)/a(n,n);
for i=n-1:-1:1
    x(i)=(a(i,n+1)-sum(a(i,i+1:n).*x(i+1:n)))/a(i,i);
end
页: [1]
查看完整版本: 怎样编制能自动选取主元又能手动选取主元的求解线性方程组的Gauss消去过程