Azzera filtri
Azzera filtri

Please help with the code for Gauss Seidel Method

1 visualizzazione (ultimi 30 giorni)
Please help with the code , I do not know what I am doing wrong. If you can please give me an advice. the first approximation should be x1=-0.2; x2=0.156 and x3=-.508. I have attached the code.
Please follow the format that I have already , because I will use it to do a bigger matrix 33 by 9

Risposta accettata

Walter Roberson
Walter Roberson il 4 Nov 2016
Your assigment to T should be within for loops where both sibscripts are changing
It is uncommon to call norm() passing in a single value. Also those subscripts imply the assigmnent to norm2 should be inside for loops.
  16 Commenti
Walter Roberson
Walter Roberson il 8 Nov 2016
You create T as length(b) by 6 in that last section, which is 249 x 6.

Accedi per commentare.

Più risposte (1)

Torsten
Torsten il 4 Nov 2016
Modificato: Torsten il 4 Nov 2016
L = [5 0 0; -3 9 0 ; 2 -1 -7];
U = [0 -2 3; 0 0 1 ; 0 0 0];
b = [-1 2 3];
epsilon = 1;
xold = [0 0 0];
while epsilon > 1e-5
xnew = L\(b-U*xold)
xnew
epsilon = norm((xnew-xold)./xold,1);
xold = xnew;
end
Best wishes
Torsten.
  2 Commenti
alberto ortiz
alberto ortiz il 4 Nov 2016
it has an error that code, thanks though
Torsten
Torsten il 7 Nov 2016
Try
L = [5 0 0; -3 9 0 ; 2 -1 -7];
U = [0 -2 3; 0 0 1 ; 0 0 0];
b = [-1;2;3];
epsilon = 1;
xold = [1;0;0];
while epsilon > 1e-5
xnew = L\(b-U*xold)
xnew
epsilon = norm((xnew-xold)./xold,1);
xold = xnew;
end
Best wishes
Torsten.

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by