Borrar filtros
Borrar filtros

Formatting code to display multiple results.

1 visualización (últimos 30 días)
David
David el 29 de Oct. de 2013
Comentada: sixwwwwww el 29 de Oct. de 2013
So, I'd like to alter the following code which I have written (Newton's Method), so that it not only outputs the final approximation of the root but each approximation for each iteration of the method. See what I'm saying? How would you suggest that I do this so that it's displayed somewhat neatly in the command window?
function xn = Newton (f, df, xi, tol)
xo = xi;
xn = xo - f(xo)/df(xo);
k = 0;
while ((abs(xn - xo))/(abs(xn)) > tol)
if (k <= 100)
xn = xo - f(xo)/df(xo);
k = k + 1;
else
warning('Maximum number of iterations has been reached')
break;
end
end
  2 comentarios
David
David el 29 de Oct. de 2013
Using fprintf would be best, apparently. However, I have no clue how to use this for data formatting and the help section didn't do much to clear it up.
sixwwwwww
sixwwwwww el 29 de Oct. de 2013
just make a matrix like this
fprintf('Iteration #: %f and approximation value:%f\n', k, xn);

Iniciar sesión para comentar.

Respuesta aceptada

sixwwwwww
sixwwwwww el 29 de Oct. de 2013
Dear David, you can output iteration number and iteration values as follows:
function [xn, iterations] = Newton (f, df, xi, tol) % output parameter "iteration" store iteration number and iteration values in cell array
xo = xi;
xn = xo - f(xo)/df(xo);
k = 0;
while ((abs(xn - xo))/(abs(xn)) > tol)
if (k <= 100)
xn = xo - f(xo)/df(xo);
k = k + 1;
iteration{k, 1} = k;
iteration{k, 2} = xn;
else
warning('Maximum number of iterations has been reached')
break;
end
end
I hope it helps. Good luck!
  4 comentarios
David
David el 29 de Oct. de 2013
Fixed, Thanks.
sixwwwwww
sixwwwwww el 29 de Oct. de 2013
You are welcome

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Argument Definitions en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by