Borrar filtros
Borrar filtros

Please help with the code for Gauss Seidel Method

1 visualización (últimos 30 días)
alberto ortiz
alberto ortiz el 4 de Nov. de 2016
Comentada: alberto ortiz el 8 de Nov. de 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

Respuesta aceptada

Walter Roberson
Walter Roberson el 4 de Nov. de 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 comentarios
Walter Roberson
Walter Roberson el 8 de Nov. de 2016
You create T as length(b) by 6 in that last section, which is 249 x 6.
alberto ortiz
alberto ortiz el 8 de Nov. de 2016
Thank you very much

Iniciar sesión para comentar.

Más respuestas (1)

Torsten
Torsten el 4 de Nov. de 2016
Editada: Torsten el 4 de Nov. de 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 comentarios
alberto ortiz
alberto ortiz el 4 de Nov. de 2016
it has an error that code, thanks though
Torsten
Torsten el 7 de Nov. de 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.

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by