Você está na página 1de 19

UNIVERSIDAD PERUANA DE CIENCIAS

APLICADAS
FACULTAD DE INGENIERÍA
CARRERA DE INGENIERÍA CIVIL

INTRODUCCIÓN A LOS MÉTODOS


COMPUTACIONALES
CI 171

Abril – 2018-01
CONTENIDO DE LA ASIGNATURA

UNIDAD I UNIDAD II UNIDAD III

HERRAMIENTA RAÍCES DE SISTEMA DE


COMPUTACIONAL ECUACIONES NO ECUACIONES
DE CÁLCULO LINEALES LINEALES

UNIDAD VI UNIDAD V UNIDAD IV

ECUACIONES INTEGRACIÓN INTERPOLACIÓN


DIFERENCIALES NUMÉRICA DE CURVAS
CONTENIDO

1. TEORÍA DE ERRORES

2. CREACIÓN DE FUNCIONES Y APLICACIONES CON


MATLAB

3. MÉTODO DE LA BISECCIÓN

4. MÉTODO DE REGULA-FALSI

5. MÉTODO DE LA SECANTE

6. MÉTODO DE NEWTON RAPHSON


MÉTODO DE LA SECANTE
Método iterativo que calcula, en cada paso, una aproximación de la
solución en lugar de un intervalo que la contiene.

𝒇(𝒙𝒏 ) ∗ (𝒙𝒏−𝟏 − 𝒙𝒏 )
𝒙𝒏+𝟏 = 𝒙𝒏 −
𝒇(𝒙𝒏−𝟏 ) − 𝒇(𝒙𝒏 )
MÉTODO DE LA SECANTE
Proceso MetodoSecante
Leer f,x0,x1,tol
xrn=x1-((x1-x0)/(f(x1)-f(x0)))*f(x1)
Mientras abs(ea)>=tol Hacer
X1n+1=xrn 𝒇(𝒙𝒏 ) ∗ (𝒙𝒏−𝟏 − 𝒙𝒏 )
𝒙𝒏+𝟏 = 𝒙𝒏 −
𝒇(𝒙𝒏−𝟏 ) − 𝒇(𝒙𝒏 )
X0n+1=x1n
Xrn+1=x1n+1-((x1n+1-x0n+1)/(f(x1n+1)-f(x0n+1)))*f(x1n+1)
ea=abs((xrn+1-xrn)/(xrn+1)*100);
Fin Mientras
Escribir "La raíz es:",xrn+1
FinProceso
MÉTODO DE LA SECANTE
function secaF(f,x0,x1,tol)
fprintf('It. X0 X1 Xr
f(x0) f(xr) ea\n');
disp('---------------------------------------------------
---------------------------------------------')
f=inline(f);
i=1;
ea(1)=100;
xr(i)=x1-((x1-x0)/(f(x1)-f(x0)))*f(x1);
while abs(ea(i)) >= tol
fprintf('%2d\t %11.7f\t %11.7f\t %11.7f\t %11.7f\t
%11.7f\t %11.7f\n',...
i,x0(i),x1(i),xr(i),f(x0(i)),f(xr(i)),ea(i));
x1(i+1)=xr(i);
x0(i+1)=x1(i);
xr(i+1)=x1(i+1)-((x1(i+1)-x0(i+1))/(f(x1(i+1))-f(x0(i+1))))*f(x1(i+1));
ea(i+1)=abs((xr(i+1)-xr(i))/(xr(i+1))*100);
i=i+1;
end
EJECUTANDO EL CÓDIGO M. SECANTE

Raíz aproximada es: 4.3811133


MÉTODO DE LA SECANTE

Ejemplo:
𝑭 𝒙 = 𝒙𝟒 − 𝟖𝒙𝟑 + 𝟐𝟎𝒙 + 𝟏𝟎𝟎, 𝒙 ∈ −𝟐, 𝟕

x0 = -2,
x1 = 7
n = 1, 2, 3, …
F[ xn-1 ] = 140
F[ xn ] = -103
xn+1 = ( xn-1 * F[ xn ] - xn*F[ xn-1 ] )
/ ( F[ xn ] - F[ xn-1 ])
xn+1 = 3.1852
MÉTODO DE LA SECANTE CON MATLAB
Determinar el valor de “x” para
que F(x) = 0:

𝑭 𝒙 = 𝒙𝟒 − 𝟖𝒙𝟑 + 𝟐𝟎𝒙 + 𝟏𝟎𝟎

Para los puntos iniciales:

𝒙𝟎 = −𝟐 𝒚 𝒙𝟏 = 𝟕
MÉTODO DE NEWTON RAPHSON
Método que lleva al límite el método de la secante. Por cada
iteración considerar la recta tangente a f(x) en (xn , f(xn)) y
tomar como siguiente aproximación, xn+1 , la intersección de
tal tangente con el eje de las abscisas.

𝒇(𝒙𝒏 )
𝒙𝒏+𝟏 = 𝒙𝒏 −
𝒇´(𝒙𝒏 )

Más rápido. Requiere de f ’( xn ) y


la elección de x0 es importante.
MÉTODO DE NEWTON RAPHSON

𝒇(𝒙𝒏 )
𝒙𝒏+𝟏 = 𝒙𝒏 −
𝒇´(𝒙𝒏 )
CONVERGENCIA DEFICIENTE DEL
MÉTODO NEWTON R.
CONVERGENCIA DEFICIENTE DEL
METODO NEWTON R.
MÉTODO DE NEWTON RAPHSON

Proceso MetodoNewton
𝒇(𝒙𝒏 )
𝒙𝒏+𝟏 = 𝒙𝒏 −
Leer f,x0,tol 𝒇´(𝒙𝒏 )
i=1
Mientras abs(ea)>=tol Hacer

x1= x0-(f(x0)/f’(x0))
ea=abs((xr1-xr0)/(xr1)*100);
x0=x1
i=i+1
Fin Mientras
Escribir "La raíz es:",x2
Fin Proceso
MÉTODO DE NEWTON RAPHSON
syms x;
f=input('Ingrese la función: ');
x0=input('Ingrese el valor inicial: ');
tol=input('Ingrese el porcentaje de error: ');
i=1;
xr(i)=x0;

f1=subs(f,x,xr(i));
z=diff(f);
df=subs(z,x,xr(i));
ea(1)=100;
fprintf('i xr(i) Error aprox (i) \n');

while abs(ea(i))>=tol
fprintf('%2d \t %11.7f \t %7.3f \n’,i,xr(i),ea(i));

xr(i+1)=xr(i)-f1/df;
f1=subs(f,x,xr(i+1));
df=subs(z,x,xr(i+1));
ea(i+1)=abs((xr(i+1)-xr(i))/xr(i+1)*100);
i=i+1;
end
EJECUCIÓN DEL CÓDIGO NEWTON
RAPHSON

Raíz aproximada es: 4.3811464


MÉTODO DE NEWTON RAPHSON

Ejemplo:
𝑭 𝒙 = 𝒙𝟒 − 𝟖𝒙𝟑 + 𝟐𝟎𝒙 + 𝟏𝟎𝟎, 𝒙𝟎 = 𝟒

𝑭 ′ 𝒙 = 𝟒𝒙𝟑 − 𝟐𝟒𝒙𝟐 + 𝟐𝟎
x0 = 4
n = 0, 1, 2, 3, …
F[ xn ] = -76
F’ [ xn ] = -108
xn+1 = xn - F[ xn ] / F’ [ xn ]
xn+1 = 4 - 76/108 = 3.2963
MÉTODO DE NEWTON R. CON MATLAB
Ejemplo:
Determinar el valor de “x” para
que F(x) = 0:

𝑭 𝒙 = 𝒙𝟒 − 𝟖𝒙𝟑 + 𝟐𝟎𝒙 + 𝟏𝟎𝟎

Para el punto inicial:


𝒙𝟎 = 𝟒
ERROR RELATIVO PORCENTUAL

f ( x)  x 4  2 x3  12 x 2  16 x  40

Métodos Raíz Aprox n.Inter.


Bisección 4.3818359 11
R.Falsi 4.3808513 6
Secante 4.3811133 5
Newton R. 4.3811464 4

Você também pode gostar