gaussxqlinemain.m

来自「Matlab语言常用算法程序集.rar 里面有很多有用的Matlab数值运」· M 代码 · 共 35 行

M
35
字号
function [x,XA]=GaussXQLineMain(A,b) 
N = size(A);
n = N(1);
index = 0;

for i=1:(n-1)
    me = max(abs(A(1:n,i)));       %选取列主元
    for k=i:n
        if(abs(A(k,i))==me)
            index = k;             %保存列主元所在的行
            break;
        end
     end
     temp = A(i,1:n);
     A(i,1:n) =  A(index,1:n);
     A(index,1:n) = temp;
     bb = b(index);
     b(index)=b(i);
     b(i) = bb;                    %交换主行
     
     for j=(i+1):n
        if(A(i,i)==0)
            disp('对角元素为0!');
            return;
        end
        l = A(j,i);
        m = A(i,i);
        A(j,1:n)=A(j,1:n)-l*A(i,1:n)/m;     
        b(j)=b(j)-l*b(i)/m;         %消元
    end
end

x=SolveUpTriangle(A,b);             
XA = A;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?