when I clicked the run button, the system shows
The matrix is not strictly diagonally dominant at row 1
The matrix is not strictly diagonally dominant at row 2
The matrix is not strictly diagonally dominant at row 3
The matrix is not strictly diagonally dominant at row 4
What dose this mean?? what's the matter with my input??
clear;clc
format compact
%% Read or Input any square Matrix
A = [-8.7673 9.4736 0 0 0;
4.7368 -8.4736 4.7368 0 0;
0 4.7368 -8.4736 4.7368 0;
0 0 4.7368 -8.4736 4.7368;
0 0 0 -9.4736 10.4736];% coefficients matrix
C = [20;20;20;20;20];% constants vector
n = length(C);
X = zeros(n,1);
Error_eval = ones(n,1);
%% Check if the matrix A is diagonally dominant
for i = 1:n
j = 1:n;
j(i) = [];
B = abs(A(i,j));
Check(i) = abs(A(i,i)) - sum(B); % Is the diagonal value greater than the remaining row values combined?
if Check(i) < 0
fprintf('The matrix is not strictly diagonally dominant at row %2i\n\n',i)
end
end
%% Start the Iterative method
iteration = 0;
while max(Error_eval) > 0.001
iteration = iteration + 1;
Z = X; % save current values to calculate error later
for i = 1:n
j = 1:n; % define an array of the coefficients' elements
j(i) = []; % eliminate the unknow's coefficient from the remaining coefficients
Xtemp = X; % copy the unknows to a new variable
Xtemp(i) = []; % eliminate the unknown under question from the set of values
X(i) = (C(i) - sum(A(i,j) * Xtemp)) / A(i,i);
end
Xsolution(:,iteration) = X;
Error_eval = sqrt((X - Z).^2);
end
%% Display Results
GaussSeidelTable = [1:iteration;Xsolution]'
MaTrIx = [A X C]