Please help with the code for Gauss Seidel Method
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
alberto ortiz
am 4 Nov. 2016
Kommentiert: alberto ortiz
am 8 Nov. 2016
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
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 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 Kommentare
Walter Roberson
am 8 Nov. 2016
You create T as length(b) by 6 in that last section, which is 249 x 6.
Weitere Antworten (1)
Torsten
am 4 Nov. 2016
Bearbeitet: Torsten
am 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 Kommentare
Torsten
am 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.
Siehe auch
Kategorien
Mehr zu Assumptions finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!