Modified Algorithm 5

This commit is contained in:
Sergiusz Warga 2021-03-13 13:33:13 +01:00
parent d4d323fd19
commit 302dc37f78

View File

@ -1,25 +1,28 @@
% Algorithm 5: Gauss-Jordan Elimination % Algorithm 5: Gauss-Jordan Elimination
% Input A is an augmented matrix % Argument A is an augmented matrix
function A = gauss_jordan_elimination(A) function A = gauss_jordan_elimination(A)
[n, m] = size(A); % M rows, N columns
if n + 1 ~= m
error('Matrix is not squared!')
end
[M, N] = size(A);
%
% if M + 1 ~= N
% error('Matrix is not squared!')
% end
%
% if det(A) == 0 % if det(A) == 0
% error('Matrix is not nonsingular!') % error('Matrix is not nonsingular!')
% end % end
for k = 1 : m-1 for m = 1 : M
row = A(k, :); row = A(m, :);
row = row/row(k); row = row/row(m);
A(k, :) = row; A(m, :) = row;
for l = 1 : m-1
if l ~= k for n = 1 : M
A(l, :) = A(l, :)-(A(l, k))*row; if n ~= m
A(n, :) = A(n, :)-(A(n, m))*row;
end end
end end
end end