gausselim.m

来自「A very simple Gaussian elimination code 」· M 代码 · 共 39 行

M
39
字号
function [x] = gaussElim(A,b, verbose) N = max(size(A)); if verbose != 0   A   b end L = zeros(N,N); for j=2:N,   for i=j:N,     m = myRound(myRound(A(i,j-1))/myRound(A(j-1,j-1)));     L(i, j-1) = m;      for k=1:N,       A(i,k) = myRound(myRound(A(i,k)) - myRound(myRound(A(j-1,k))*myRound(m)));     end     b(i) = myRound(myRound(b(i)) - myRound(m)*myRound(b(j-1)));     if verbose != 0       printf("****** Eliminating %d, %d ******\n", i, j-1);       A       b     end   end end x = zeros(N,1); x(N) = myRound(myRound(b(N))/myRound(A(N,N)));  for j=N-1:-1:1,   x(j) = myRound(myRound((myRound(b(j))-myRound(A(j,j+1:N)*x(j+1:N))))/myRound(A(j,j))); end L=L+eye(N,N)U=AA1 = L*Uendfunction 

⌨️ 快捷键说明

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