Matlab, Método de la Posición Falsa.

[RECUERDA, EN ESTA PÁGINA EL CÓDIGO SE ENCUENTRA AL FINAL PARA SU DESCARGA]

El método de la posición falsa, es uno de los métodos de intervalo que habíamos explicado anteriormente en esta entrada, este, al ser un método de intervalo, sabemos que requiere del ingreso de dos estimados iniciales, es decir un XL (low) y un Xu (up), es por esta razón que podemos deducir que también requiere un conocimiento previo del comportamiento de la ecuación ingresada, para así poder dar unas buenas estimaciones para los intervalos, este, al igual que los demás métodos vistos hasta el momento, sirve para halla una sola raíz de determinada ecuación, también, tiene ciertas limitaciones con su convergencia pero es bastante eficaz, es muy usado para ecuaciones NO lineales.

Se sabe que el método de la posición falsa es un método alternativo al método de bisección, basándose también en un conocimiento gráfico previo, pero un aspecto clave en la ejecución de este método es que en la división del intervalo XL–Xu no se tienen en cuenta las magnitudes F(XL) y F(Xu). Por ejemplo, si F(XL) esta más cerca de 0 (cero) que   F(Xu) se puede entonces suponer que la raíz se encuentra mas próxima a XL que a Xu.

Una forma de explotar el conocimiento gráfico de la función f(x) es unir con una linea recta los puntos dados por F(XL) y F(Xu). La intersección entre el eje de la variable independiente (en este caso x) nos representa un estimado de la raíz. El hecho de aproximar la raíz mediante una linea recta, nos brinda una posición falsa de la raíz, lo cual le da origen al nombre del método.

Ilustración del método de la posición falsa, mediante la intersección de una recta con el eje independiente

Ilustración del método de la posición falsa, mediante la intersección de una recta con el eje independiente

El método de falsa posición en cuanto a algoritmo es idéntico al de bisección con la diferencia que en el paso #2 se aplica la formula de la posición falsa, que expresa la estimación de la raíz.El punto correspondiente al valor de la raíz falsa Xr dado por la intersección de la recta entre F(XL) y F(Xu) con el eje puede calcularse por:

euler

Donde, resolviendo la ecuación para Xr se obtiene:

euler

donde Xr es la posición “falsa” , la ecuación anterior se conoce como la formula de la falsa posición, el valor de Xr luego remplaza cualquiera de los dos limites estimados sea XL o Xu, de esta forma los valores de Xl y Xu siempre enmarcan el valor real de la raíz, como se había dicho anteriormente, este algoritmo, es idéntico al de bisección con excepción de esta nueva formula.

Código En Matlab.

Inicialmente, al igual que en los programas de este tipo que hemos hecho hasta este momento, nuestra función en Matlab, solo recibirá como argumento de entrada, una función que depende de una sola variable (definida con anticipación). Llamaremos a nuestra función ‘pfalse’

euler

A continuación se realiza una representación gráfica de la ecuación para proporcionar un intervalo adecuado, en esta sección se piden un valor inferior y uno superior desde donde gráficar la ecuación.

euler

posteriormente se procede como tal con el desarrollo y ejecución del me´todo de posición falsa, que es prácticamente idéntico al de bisección, solo que cambiando el paso 2, donde aquí aplicamos la formula de posición falsa en la linea 18 del código. (clic en la imagen para verla mejor).

euler

En este caso, también es de resaltar la suma importancia del calculo del error, ya que es este el que nos va a proporcionar nuevamente la condición de finalización para nuestro programa, igualmente sin el correcto calculo del error relativo este método no tendría buen desempeño a nivel computacional (prácticamente sería inservible).

El modo de uso de esta función es la siguiente, se define en la ventana de comandos la variable simbólica (en este caso X) y se introduce una función (para este caso Y) después de ubicar correctamente el current folder de Matlab, se llama la función ‘pfalse‘ y se le pasa como argumento la funcio ‘Y’, posteriormente se ingresan los limites donde queremos ver la gráfica y finalmente se introduce el intervalo donde esta la raíz.

EJEMPLO: halle la raíz positiva de la siguiente función.

euler

procedemos a ejecutar el siguiente código en Matlab.

inicialmente vemos la siguiente representación, que es lo que buscamos ver cada vez que realizamos el análisis gráfico.

euler

Con esta podemos elegir los limites del intervalo coo Xl=0.5 y Xu=1.5

euler

Como sabemos por simple inspección para este casó, la raíz de la ecuación es 1 y vemos que el programa no ha dado una respuesta aproximada, esta precisión la podemos mejorar variando el umbral de error, dentro del While.

Este es un método bastante poderoso, lo es para ecuaciones no lineales, que son las que regularmente encontramos en ingeniería y para las cuales utilizamos con gran frecuencia los métodos numéricos, es por esto que es de suma importancia tener un buen dominio y comprensión tanto de la parte teórica de su funcionamiento, ya que todos los métodos tienen sus falencias  o por lo menos en algunos casos unos se comportan mejor que otros, así, teniendo un buen conocimiento de cada uno, sabremos elegir el más apropiado para nuestras necesidades.

El código de este programa (archivo.m) lo puedes descargar de este enlacecualquier pregunta que tengas acerca de este archivo, puedes comentar esta entrada.

Espero que este artículo haya sido de ayuda, y si lo fue puedes ver demás métodos y códigos en este blog, saludos.

Autor: Julio Marulanda.

About these ads

Un comentario en “Matlab, Método de la Posición Falsa.

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s