Ejercicio Con Matlab Usando El Metodo De Newton
iter=0;
incr=tol+1;
while incr>tol & itertol
disp('Hacen falta mas iteraciones')
end
sol=x;
subplot(3,1,1)cl=v(2:end)./v(1:end-1); %Tasa de convergencia lineal
plot(cl);
subplot(3,1,2)
cc=v(2:end)./v(1:end-1).^2; %Tasa de convergencia cuadratica
plot(cc);
subplot(3,1,3)
cu=v(2:end)./v(1:end-1).^3; %Tasade convergencia cubica
plot(cu);
b) La representación gráfica
>> ezplot('exp(x)*exp(y)+x*cos(y)=0')
>> hold on
>> ezplot('x+y-1=0')
Nos da soluciones cerca de [-4,5], [3,-2] y [5,-4],además se intuye que habrá una solución por encima de y=6.
>> [sol,iter] = newtonptomedio('newtonprob4', [-4,5], 1e-14, 500)
sol =
-4.381619754756736 5.381619754756736
iter =
4
>>[sol,iter] = newton('newtonprob4', [-4,5], 1e-14, 500)
sol =
-4.381619754756736 5.381619754756736
iter =
5
El método de Newton tarda una iteración más con las mismas entradas.
[sol,iter] =newtonptomedio('newtonprob4', [3,-2], 1e-14, 500)
sol =
3.470630960031631 -2.470630960031631
iter =
4
>> [sol,iter] = newton('newtonprob4', [3,-2], 1e-14, 500)
sol =3.470630960031631 -2.470630960031631
iter =
5
Aquí Newton también necesita una iteración más.
>> [sol,iter] = newtonptomedio('newtonprob4', [5,-4], 1e-14, 500)
sol =
5.157225529975561-4.157225529975561
iter =
4
>> [sol,iter] = newton('newtonprob4', [5,-4], 1e-14, 500)
sol =
5.157225529975561 -4.157225529975561
iter =
5
De nuevo, Newton necesita una iteración más.
c) Lastasas de convergencia para cada una de las tres soluciones encontradas son:
Donde vemos que converge linealmente
El método converge cúbicamente.
Aquí vemos que también converge linealmented) El programa incluyendo el cálculo de p es:
function [sol,iter,p] = newtonptomedio(f, a, tol, maxiter)
iter=0;b=a;c=a;
incr=tol+1;
while incr>tol & itertol
disp('Hacen falta más...
Regístrate para leer el documento completo.