¿Qué es el método de bisección?
Es un algoritmo de búsqueda de raíces de ecuaciones que trabaja dividiendo el intervalo que contiene la raíz a la mitad y seleccionando el nuevo subintervalo que tiene la raíz a la mitad y así, sucesivamente hasta que la sucesión logra una convergencia hacia la raíz o valor exacto.
¿Por qué es importante?
El método de bisección es un algoritmo sencillo pero poderoso que se utiliza para encontrar las raíces de una ecuación, es decir, los valores de x para los cuales f(x) = 0, destaca por varias razones:
Garantiza la convergencia: A diferencia de otros métodos, el de bisección siempre converge a una raíz, siempre y cuando la función sea continua en el intervalo inicial y exista una raíz en ese intervalo.Facilidad de implementación: Su lógica es bastante intuitiva y fácil de comprender, las ieterciones se pueden realizar con ayuda de diferentes herramientas digitales como Excel, Matlab, etc. Robustez: No es muy sensible a pequeñas variaciones en los datos iniciales, lo que lo hace bastante robusto.Aplicación en diversos campos: El método de bisección tiene aplicaciones en una amplia variedad de disciplinas, desde la ingeniería y las ciencias físicas hasta la economía y la finanzas.
Convergencia del método de bisección:
Sean 𝑎𝑖,𝑏𝑖 𝑦 𝑐𝑖 los valores de a, b y c en cada iteración, i=1,2,3,…respectivamente.
El método de bisección genera una sucesión de intervalos [a,b], [a1,b1], [a2,b2], … [ai,bi]
Donde 𝑎 ≤ 𝑎1 ≤ 𝑎2 ≤ ⋯ ≤ 𝑎𝑖 (sucesión creciente)
𝑏 ≥ 𝑏1 ≥ 𝑏2 ≥ ⋯ ≥ 𝑏𝑖 (sucesión decreciente) por definición del método 𝑐𝑖, 𝑟 ∈ [ai,bi] en cada iteración.
Algoritmo del Método de Bisección:
Calcular una raíz r de la ecuación f(x)=0, con precisión E, f es continua en [a,b] y f(a) y f(b) tienen signos diferentes.
Definir f en [a,b] y la precisión E.
Calcule el punto central del intervalo c=(a+b)/2
Si f(c)=0, c es la raíz (y terminamos)
Si la raíz se encuentra en el intervalo [a,c], sustituya b por c.
Si la raíz se encuentra en [c,b] sustituya a por c.
Repita los pasos del 2 al 5 hasta que la longitud del intervalo sea menor que E.
Resumen del algoritmo:
MATLAB: Puedes copiar y pegar el siguiente código en Matlab para correrlo y probar si resuelve el mismo ejercicio resuelto en Excel, este código pide el numero exacto de iteraciones que quieras realizar por lo que te propongo puedas modificarlo para que el programa se detenga de acuerdo un valor de tolerancia.
%clear all Borra todas las variables del espacio de trabajo de MATLAB para asegurarse de que no haya conflictos con variables preexistentes.
%clc el comando clc en MATLAB limpia la ventana de comandos, eliminando todo el texto previamente mostrado.
%format short: Configura la salida numérica de MATLAB para mostrar 4 dígitos decimales.
%input se utiliza para solicitar al usuario que introduzca un valor o una expresión durante la ejecución del programa.
%fun = input('Introduzca la función f(x)=','s'): Solicita la función que %se va a evaluar como una cadena de texto ('s' indica que la entrada es %un string).
%f = inline(fun): Convierte la cadena de texto ingresada (fun) en una función que puede evaluarse en MATLAB
clear all
clc
format short;
a=input('Introduzca el valor de a: ');
b=input('Introduzca el valor de b: ');
cont=input('Introduzca el número de iteraciones cont: ');
fun=input('Introduzca la función f(x)=','s');
f=inline(fun);
for k=1:cont
c=(a+b)/2;
e=abs((b-a)/2);
%A(k,:) = [k a b c f(c) e];: Guarda la información de la iteración actual %en la matriz A. Cada fila k de A contiene:
%k: Número de iteración
%a: Valor inicial del intervalo
%b: Valor final del intervalo
%c: Punto medio
%f(c): Valor de la función en c
%e: Error estimado
A(k,:)=[k a b c f(a) f(c) f(a)*f(c) e];
if f(a)*f(c)<0
b=c;
else
a=c;
end
end
fprintf('\n \tk \ta \tb \tc \tf(a) \tf(c) \tf(a)*f(c) \terror \n')
%disp(A) imprime todos elementos de la Matriz A donde se almacenaron todas las interaciones.
disp(A)
fprintf('Solución:\n c=%8.5f\n',c)
fprintf('f(c)=%8.5f\n',f(c))
fprintf('error=%8.5f\n',e)
Bibliografía:
Chapra, S. C., & Canale, R. P. (2007). Métodos numéricos para ingenieros (5ª ed.). McGraw-Hill.
Comentarios
Publicar un comentario