Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Análisis Numérico Grupo: 13 UNAM / FI / DCB(DIE) Semestre 2021-1 Tarea 2 Métodos de Newton Raphson, Secante y Factores Cuadráticos Carlos Rincón, Araiza Alfredo, Sánchez Axel 1. Resultados para la función f (x) = xex − 2 1. Método Newton-Raphson Raíz: x = 0.8526 Iteraciones: 4 2. Método de la secante Raíz: x = 0.8526 Iteraciones: 5 2. Resultados para la función f (x) = 230x4+18x3+9x2−221x−9 1. Método Newton-Raphson Raíz: x = −0.0407 Iteraciones: 2 2. Método de la secante Raíz: x = −0.0407 Iteraciones: 3 Para función 1 Iteración Newton−Raphson Secante 1 0.9754 0.7358 2 0.8634 0.8395 3 0.8527 0.8538 4 0.8526 0.8526 5 - 0.8526 Para función 2 Iteración Newton−Raphson Secante 1 -0.0407 -0.0204 2 -0.0407 -0.0407 3 - -0.0407 4 - - 5 - - AN21-1x13: Tarea 2 Araiza Alfredo, Rincón Mejía, Sánchez Axel 3. Resultados para la función f (x) = x5−10x4+11x3+46x2−48x 1. Método Factores Cuadráticos Raíz x1 = 0.00 Raíz x2 = 1.00 Raíz x3 = 3.00 Raíz x4 = −2.00 Raíz x5 = 8.00 Iteraciones: -Para primer par de raíces: 4 -Para segundo para de raíces: 9 4. Descripción de trabajo en equipo Para obtener los resultados de las raíces, nos repartimos equitativamente todo el desarrollo, Alfredo se encargó de realizar los programas que posteriormente nos explicó, mientras que Carlos y Axel desarrollaron los ejercicios a mano y capturaron la información en LATEX, comparando los resultados con los programas realizados. 2 AN21-1x13: Tarea 2 Araiza Alfredo, Rincón Mejía, Sánchez Axel 5. Desarrollo 3 AN21-1x13: Tarea 2 Araiza Alfredo, Rincón Mejía, Sánchez Axel 4 AN21-1x13: Tarea 2 Araiza Alfredo, Rincón Mejía, Sánchez Axel 5 AN21-1x13: Tarea 2 Araiza Alfredo, Rincón Mejía, Sánchez Axel 6 AN21-1x13: Tarea 2 Araiza Alfredo, Rincón Mejía, Sánchez Axel 6. Códigos utilizados Código Principal 1 x1=0.5; %Valor inicial para método newton en Función 1 2 3 % Intervalo para método secante en Función 1 4 a=0; 5 b=1; 6 7 8 x2=0; %Valor inicial para método newton en Función 2 9 10 % Intervalo para método secante en Función 2 11 a2=-1; 12 b2=0; 13 14 15 epsilon = 0.0001; %Tolerancia 16 kmax=20; %Iteraciones maximas 17 18 % Datos para resolución de f3 por método de 19 % Factores cuadráticos 20 p0=0; 21 q0=0; 22 size=4; 23 sum=1; 24 25 syms x 26 f1 = @(x) x*exp(x) - 2; %Función 1 27 f2 = @(x) 230*x^4+ 18*x^3+ 9*x^2- 221*x -9 ; % Función 2 28 29 df1=inline(diff(f1,x)); %Derivada Función 1 30 df2=inline(diff(f2,x)); %Derivada Función 2 31 32 33 f3= [1 -10 3 46 -48 0]; %Función 3 34 35 36 [xn,sig,iter,dif] = newton(df1,f1,epsilon,x1,kmax); %Método newton 37 %Función 1 38 [xn1,sig1,ssig1,iter1,dif1] = secante(f1,epsilon,a,b,kmax); 39 % Método secante Función 1 40 41 42 [xn2,sig2,iter2,dif2] = newton(df2,f2,epsilon,x2,kmax); %Método 43 %newton Función 2 7 AN21-1x13: Tarea 2 Araiza Alfredo, Rincón Mejía, Sánchez Axel 44 [xn22,sig22,ssig22,iter22,dif22] = secante(f2,epsilon,a2,b2,kmax); 45 % Método secante Función 2 46 47 disp("Primera Función resultados: ") 48 disp("-------------------------------------") 49 disp(’Newton : ’) 50 disp(’xn’) 51 disp(xn) 52 disp(’xn1’) 53 disp(sig) 54 disp(’Diferencia’) 55 disp(dif) 56 disp(’Iteraciones: ’) 57 disp(iter) 58 disp(’Raíz: ’) 59 disp(sig(iter)) 60 disp(’---------------------’) 61 disp(’Secante: ’) 62 disp(’xn’) 63 disp(xn1) 64 disp(’xn1’) 65 disp(sig1) 66 disp(’xn2’) 67 disp(ssig1) 68 disp(’Diferencia’) 69 disp(dif1) 70 disp(’Iteraciones: ’) 71 disp(iter1) 72 disp(’Raíz: ’) 73 disp(ssig1(iter1)) 74 disp("-------------------------------------") 75 76 disp("Segunda Función resultados: ") 77 disp("-------------------------------------") 78 disp(’Newton : ’) 79 disp(’xn’) 80 disp(xn2) 81 disp(’xn1’) 82 disp(sig2) 83 disp(’Diferencia’) 84 disp(dif2) 85 disp(’Iteraciones: ’) 86 disp(iter2) 87 disp(’Raíz: ’) 88 disp(sig2(iter2)) 89 disp(’---------------------’) 90 disp(’Secante: ’) 8 AN21-1x13: Tarea 2 Araiza Alfredo, Rincón Mejía, Sánchez Axel 91 disp(’xn’) 92 disp(xn22) 93 disp(’xn1’) 94 disp(sig22) 95 disp(’xn2’) 96 disp(ssig22) 97 disp(’Diferencia’) 98 disp(dif22) 99 disp(’Iteraciones: ’) 100 disp(iter22) 101 disp(’Raíz: ’) 102 disp(ssig22(iter22)) 103 disp("-------------------------------------") ’Codigo Método de Newton-Raphson’ 1 function [raiz,sig,iter,dif] = newton(dfx,fx,epsilon,x,kmax) 2 xn(1)=x; % Se asigna x a xn para iniciar el mtodo 3 4 for i = 1:kmax 5 if dfx(xn(i))==0 % Se pregunta para que no haya una indefinicin 6 raiz=xn; 7 iter=i; 8 return 9 end 10 xn1(i)= xn(i) -fx(xn(i))/dfx(xn(i)); %Ecuación del método 11 diferencia(i) = abs(xn1(i)-xn(i)); 12 13 if diferencia(i)<epsilon %Se verifica la tolerancia 14 raiz=xn; 15 sig=xn1; 16 dif=diferencia; 17 iter=i; 18 return 19 else 20 xn(i+1)=xn1(i); %Se actualiza xn 21 end 22 end 23 raiz=xn; 24 sig=xn1; 25 dif=diferencia; 26 iter=i; 27 end 9 AN21-1x13: Tarea 2 Araiza Alfredo, Rincón Mejía, Sánchez Axel ’Código Método de la secante’ 1 function [xn,xn1,xn2,iter,dif] = secante(fx,epsilon,a,b,kmax) 2 xn(1)=a; 3 xn1(1)=b; % Se asigna a y b a xn y xn1 para iniciar el método 4 5 for i = 1:kmax 6 7 xn2(i)= xn1(i) - ((xn1(i)-xn(i))/(fx(xn1(i))-fx(xn(i))))*(fx(xn1(i))); 8 %Ecuación del método 9 diferencia(i) = abs(xn2(i)-xn1(i)); 10 11 if diferencia(i)<epsilon %Se verifica la tolerancia 12 xn=xn; 13 xn1=xn1; 14 xn2=xn2; 15 dif=diferencia; 16 iter=i; 17 return 18 else 19 xn(i+1)=xn1(i); %Se actualiza xn 20 xn1(i+1)=xn2(i); %Se actualiza xn1 21 end 22 end 23 xn=xn; 24 xn1=xn1; 25 xn2=xn2; 26 dif=diferencia; 27 iter=i; 28 end 10
Compartir