Está en la página 1de 3

Mtodo de Muller

f(x)

Parbola
0

Este es un mtodo para encontrar las races de


ecuaciones polinomiales de la forma general:

f n ( x ) a 0 a1 x a 2 x 2 ....... a n x n

Donde n es el orden del polinomio y las


son
coeficientes constantes. Continuando con los
polinomios, estos cumplen con las siguientes reglas:
Para la ecuacin de orden n, hay n races reales o
complejas. Se debe notar que esas races no son
necesariamente distintas.
Si n es impar, hay al menos una raz real.
Si las races complejas existen, existe un par
conjugado.
Antecedentes
Los polinomios tienen muchas aplicaciones en ciencia
e ingeniera, como es el caso de su utilizacin en
ajuste de curvas. Sin embargo, se considera que una
de las aplicaciones mas interesantes y potentes es en
los sistemas dinmicos, particularmente en los
lineales.
El polinomio mas conocido en el mundo cientfico, es
el denominado, ecuacin caracterstica, que es de la
forma:

a 2 x 2 a1 x a 0 0
a1 a 4a 2 a 0
2
1

x x
X2
X1
Raz
estimada

2a 0

El mtodo
Un predecesor del mtodo de Muller, es el mtodo de
la secante, el cual obtiene races, estimando una
proyeccin de una lnea recta en el eje x, a travs de
dos valores de la funcin (Figura 1). El mtodo de
Muller toma un punto de vista similar, pero proyecta
una parbola a travs de tres puntos (Figura 2).
El mtodo consiste en obtener los coeficientes de los
tres puntos, sustituirlos en la frmula cuadrtica y
obtener el punto donde la parbola intercepta el eje x.
La aproximacin es fcil de escribir, en forma
conveniente esta sera:

f ( x 0 ) a ( x0 x 2 ) 2 b( x 0 x 2 ) c

f ( x1 ) a( x1 x 2 ) 2 b( x1 x 2 ) c
f ( x 2 ) a ( x 2 x 2 ) 2 b( x 2 x 2 ) c
La ltima ecuacin genera que, f ( x 2 ) c , de esta
forma, se puede tener un sistema de dos ecuaciones
con dos incgnitas:

h0 x1 x 0

Lnea recta

f ( x1 ) f ( x 2 )
x1 x 0
f ( x 2 ) f ( x1 )
1
x 2 x1

Sustituyendo en el sistema:

( h0 h1 )b ( h0 h1 ) 2 a h0 0 h1 1

h1b h1 a h1 1
2

Teniendo como resultado los coeficientes:

1 0
h1 h0

x3 x 2

x
Raz
estimada

x3 x 2
x

b ah1 1

c f ( x2 )

2c

b b 2 4ac
2c

despejando

b b 2 4ac

La gran ventaja de este mtodo es que se pueden


localizar tanto las races reales como las imaginarias.
Hallando el error este ser:

Figura 1

h1 x 2 x1

Hallando la raiz, se implementar la solucin


convencional, pero debido al error de redondeo
potencial, se usar una formulacin alternativa:

f 2 ( x ) a ( x x 2 ) 2 b( x x 2 ) c

Raz

Figura 2
As, se busca esta parbola para intersectar los tres
puntos [x0, f(x0)], [x1, f(x1)] y [x2, f(x2)]. Los coeficientes
de la ecuacin anterior se evalan al sustituir uno de
esos tres puntos para dar:

Definiendo de esta forma:

X1

X0

f ( x1 ) f ( x 2 ) a ( x1 x 2 ) 2 b( x1 x 2 )

Tambin denominados eigenvalores del sistema. Los


eigenvalores pueden utilizarse para analizar un
sistema, para nuestro caso es muy til en lo
concerniente a la estabilidad. Con base en lo anterior,
encontrar las races en sistemas de segundo orden es
prcticamente sencillo, pero para sistemas de orden
superior, puede resultar en un arduo trabajo.

f(x)

f ( x 0 ) f ( x 2 ) a ( x0 x 2 ) 2 b( x 0 x 2 )

Donde las races de este polinomio satisfacen:

x1, 2

Raz

X0

Ea

x3 x 2
100%
x3

Al ser un mtodo de aproximacin, este se realiza de


forma secuencial e iterativamente, donde x1, x2, x3
reemplazan los puntos x0, x1, x2 llevando el error a un
valor cercano a cero

x2 = 3,9765 x1 = 5 x0 =5,5
Programa
Por ser un mtodo que trabaja de forma lineal, es
posible una aplicacin computacional en forma
sencilla, la cual sera:
SubMuller (xr, h, eps, maxit)
x2 = xr
x1 = xr + h*xr
x0 = xr h*xr
Do
iter = iter + 1
h0 = x1 + x0
h1 = x2 x1
d0 = (f(x1)-f(x0))/h0
d1 = (f(x2)-f(x1))/h1
a = (d1 d0)/(h1 + h0)
b = a*h1 +d1
c = f(x2)
rad = sqrt (b*b 4*a*c)
if I b+ rad I > l b - rad l then
den = b + rad
Else
den = b rad
End if
dxr = -2*c/den
xr = x2 + dxr
Print iter, xr
IF (Idxrl<eps*xr or iter>maxit) exit
x0 = x1
x1 = x2
x2 = xr
End do
End Muller
Ejemplo

f ( x) x 3 13 x 12

h = 0,1

Haciendo uso de un programa y realizando diferentes


iteraciones:
i
xr
Ea %
0

3,9465

25,740

4,0011

0,614

4,0000

0,026

4,0000

0,000

Mtodo de Newton
Es una tcnica para encontrar el valor ptimo (mximo
o mnimo), de una funcin de una variable, f(x). Para
esta clase de anlisis se debe tener cuidado con los
sistemas multimodal, en los cuales existen valores
ptimos globales y locales. Para la gran mayora de
los casos, los estudios se centran en los globales.
El mtodo
Como antecedente para la explicacin del mtodo, se
tiene el mtodo de Newton-Raphson, el cual es un
mtodo abierto que encuentra la raz de x, tal que f(x)
= 0, el mtodo se resume as:

xi 1 xi

f ( xi )
f (xi )

Haciendo uso de este planteamiento para hallar un


ptimo de f(x), al definir una nueva funcin g(x) = f(x),
as, como el mismo valor ptimo x*, satisface:

f (x*) g ( x*) 0

Se utilizar la siguiente formulacin, para hallar


mximos o mnimos:

f (xi )
f (xi )

x2 = 5 x1 = 5,5 x0 =4,5
Con un anlisis previo, las races son 3, -1 y 4

xi 1 xi

Solucin

Este es un mtodo abierto y similar al NewtonRaphson, ya que no requiere valores iniciales que
contengan el ptimo. Adems, comparte la desventaja
de poder ser divergente.

f (4,5) 20,625
f (5,5) 82,875
f (5) 48
Calculando

h0 5,5 4,5 1 h1 5 5,5 0,5


82,875 20,625
0
62,25
5,5 4,5
48 82,875
1
69,75
5 5,5

Hallando los coeficientes

69,75 62,25
15
0,5 1
b 15( 0,5) 69,75 62,25
a

c 48
La raz cuadrada del discriminante es:

62, 25 2 4 15 48 31,544
As

x3 5

2 48
3,9765
62,25 31,544

Y el error estimado

Ea
Ahora

1,0235
100% 25,74%
x3

Como anotacin, es conveniente verificar que la


segunda derivada tenga el signo correcto, para
confirmar que la tcnica converge sobre el valor
deseado.
Programa
El mayor problema a afrontar es la no-linealidad que
involucra la derivada, la ventaja es que algunas
herramientas computacionales tienen directamente la
funcin de la derivada, por lo cual el seudocdigo es
de muy fcil implementacin
SubNewton (xi, xr, eps, maxit)
xr = xi
Do
iter = iter + 1
gx = fx
hx = gx
div = gx / hx
xi = xr - div
dxi = (xi xr) / xi
Print (iter, xr)
IF (Idxil<eps*xr or iter>maxit) exit
Xr = xi
End do
End Newton

Ejemplo
Hallar el mximo de:

f ( x ) 2 sen( x)

x2
10

con un valor inicial de x0

= 2,5
Solucin

f ( x ) 2 cos( x )

x
5

f (x) 2 sen( x)

1
5

Sustituyendo en la formulacin de Newton:

xi 1 xi

2 cos( xi ) xi / 5
2 sen( xi ) 1 / 5

x1 2,5

2 cos(2,5) 2,5 / 5
0,995
2 sen(2,5) 1 / 5

Reemplazando en la ecuacin, f(0,995)=1,579; la


segunda iteracin ser:

x1 0,995

2 cos(0,995) 0,995 / 5
1,469
2 sen(0,995) 1 / 5

Realizando diferentes iteraciones:


i
x
f(x)
f(x)
0
2,5
0,572
-2,102
1
0,995
1,579
0,890
2
1,469
1,774
-0,091
3
1,427
1,776
-0,000

f(x)
-1,379
-1,878
-2,190
-2,180

También podría gustarte