Está en la página 1de 16

Ecuaciones no Lineales

Métodos Abiertos

RBUM-2020
Métodos Abiertos
En los métodos cerrados la raíz se encuentra dentro de un intervalo predeterminado por un límite inferior y
otro superior. En contraste, los métodos abiertos se basan en fórmulas que requieren únicamente de un solo
valor de inicio x o que empiecen con un par de ellos, pero que no necesariamente encierran la raíz. éstos,
algunas veces, divergen o se alejan de la raíz verdadera a medida que se avanza en el cálculo.

• Representación gráfica de las diferencias


fundamentales entre los métodos a) cerrados, b) y c)
los métodos abiertos para el cálculo de raíces.

• En a) se ilustra el método de bisección. En contraste,


Eje de las abscisas
en los métodos abiertos, ilustrados en b) y c), se utiliza
una fórmula para dirigirse de xi a xi+1, con un esquema
iterativo.

• El método puede b) diverge o c) converger


rápidamente, dependiendo de los valores iniciales.

Eje de las abscisas


MÉTODO DE ITERACION SIMPLE DE PUNTO FIJO

El primer paso consiste en transformar


algebraicamente la ecuación a la
forma equivalente

Una vez que se tiene xo, se evalúa g


(x) en xo, denotándose el resultado de
esta evaluación como x1; esto es:

g (xo) = x1

Casos posibles de convergencia y divergencia en la iteración x = g (x)


Por ejemplo, para la ecuación:

(1)

Algunas posibilidades de x = g (x) son:


Si para la ecuación (1) se emplea xo= 2, como valor inicial, y las g (x) de
los incisos a) y b) de la anterior diapositiva, se obtiene, respectivamente:

Puede apreciarse que la sucesión diverge con la g (x) del inciso a), y converge a la raíz
1.850781059 con la g (x) del inciso b).
%punto fijo CÓDIGO MATLAB
clc,clear
xo=2
error=10
tol=0.0001

% funcion=2*x^2-x-5 inciso a
g=@(x) 2*x^2-5; Diverge

while error>tol
gx=g(xo);
fprintf('xo=%f gx=%f Error=%f \n',xo,gx,error)
error=abs(gx-xo);
xo=gx;
end
Puede apreciarse que la sucesión diverge con la g (x) del inciso
%punto fijo
clc,clear
xo=2
error=10
tol=0.0001

% funcion=sqrt ((x+5)/2) inciso b


g=@(x) sqrt((x+5)/2); Converge

while error>tol
gx=g(xo);
fprintf('xo=%f gx=%f Error=%f \n',xo,gx,error)
error=abs(gx-xo);
xo=gx;
end

Converge a la raíz de g (x) del inciso b)


MÉTODO DE NEWTON-RAPHSON
Método de segundo orden de convergencia cuando se trata de raíces reales no repetidas. Consiste en un
procedimiento que lleva la ecuación f (x) = 0 a la forma x = g (x).
Su formula general es:
Paso 1: Elegir el valor inicial xo, tolerancia y el error (controla aproximación a la raíz
verdadera)

Paso 2: Definimos la función con la que se trabajara.

Paso 3: Utilizamos el comando while con su condición de error>tol

Paso 4: Se calcula una aproximación de la raíz mediante :


h=0.00001;
tol=0.000001;
error=0.0001;
xo=1;
fun=@(x) x^3+2*x^2+10*x-20;
i=0;
while error>tol
fxi=fun(xo);
Dfxi=(fun(xo+h)-fun(xo-h))/(2*h);
xi=xo-fxi/Dfxi;
fprintf('i= %g x= %f error= %f Dfx=%f \n ',i,xi,error,Dfxi)
error=abs(xi-xo);
xo=xi;
i=i+1;
end
EL MÉTODO DE LA SECANTE
Un problema potencial en la implementación del método de Newton-Raphson es la evaluación de la
derivada. Aunque esto no es un inconveniente para los polinomios ni para muchas otras funciones, existen
algunas funciones cuyas derivadas en ocasiones resultan muy difíciles de calcular. En dichos casos, la
derivada se puede aproximar mediante una diferencia finita dividida hacia atrás, como en la figura

Paso 1: Elegir el valor inicial xo, tolerancia


y el error (controla aproximación a la raíz
verdadera)

Paso 2: Definimos la función con la que se


trabajara.

Paso 3: Utilizamos el comando while con


su condición de error>tol

Paso 4: Se calcula una aproximación de la


raíz mediante :
Practica 2 del Segundo Parcial
Ejercicio

Mediante x0 = 0 y x1 = 1
Resultado

Opcional realizar por el


método de NEWTON-
RAPHSON
Ecuaciones no Lineales
MÉTODOS CONVENCIONALES
MÉTODOS CONVENCIONALES
En particular, es posible desarrollar un código conciso que
comprenda deflación. Si se usa un lenguaje que permite
manipular variables complejas (como Fortran), entonces el
algoritmo localizará tanto raíces reales como complejas. Sin
embargo, como es de esperarse, podría ser susceptible a tener
problemas de convergencia. Por tal razón, se han desarrollado
métodos especiales para encontrar raíces reales y complejas de
polinomios. Se describen dos de estos métodos:
• El método de Müller
• El de Bairstow
MÉTODO DE MÜLLER
El método de Müller construye una parábola con tres
puntos

Comparación de dos métodos relacionados para encontrar raíces: a) el método de la


secante y b) el método de Müller.
clc,clear
xo=0;
x1=1;
x2=2;
error=10;
tol=1e-4
funcion=@(x) x^3+2*x^2+10*x-20;
while error>tol
fprintf('x1=%5.3f x2=%5.3f x3=%5.3f error=%5.3e \n',xo,x1,x2,error)
fo=funcion(xo);
f1=funcion(x1);
f2=funcion(x2);
f10=(f1-fo)/(x1-xo);
f21=(f2-f1)/(x2-x1);
f210=(f21-f10)/(x2-xo);
a2=f210;
a1=f21-(x2+x1)*a2;
ao=f2-x2*(f21-x1*a2);
den1=-a1+sqrt(a1^2-4*ao*a2);
den2=-a1-sqrt(a1^2-4*ao*a2);
% end
if abs(den1)>abs(den2)
x3=2*ao/den1;
else
x3=2*ao/den2;
end PASO 1: establecer valores iniciales
error=abs(x3-x2); PASO 2: definir la función mediante la creación de un archivo o usando función anónima
xo=x1; PASO 3: elegir el bucle a usarse de acuerdo a las condiciones dadas por el problema
x1=x2;
PASO 4: hallar la mejor forma de presentar los resultados y/o gráficos
x2=x3;
end

También podría gustarte