Está en la página 1de 12

METODO DE LA REGLA FALSA

1. CONCEPTO.
En cálculo numérico, el método de regula falsa (regla falsa) o falsa posición es un método
iterativo de resolución numérica de ecuaciones no lineales. El método combina el método
de bisección y el método de la secante.
Este método sirve para encontrar la raíz o solución real de una ecuación. Al decir que
encuentra su resultado hay que tomar en cuenta que no todas las ecuaciones tienen un solo
resultado, y que no todas tienen resultado, por lo que hay que tener una idea de la forma de
la curva de la ecuación antes de aplicar el método para que sea efectivo.
2. PROCEDIMIENTO.
Como mencionamos anteriormente, sería bueno considerar si la raíz de una
ecuación está localizada más cerca de alguno de los extremos del intervalo.
Consideremos nuevamente una gráfica como la anterior:
Donde hemos agregado la línea recta que une los puntos extremos de la gráfica
en el intervalo
.
Es claro que si en lugar de considerar el punto medio del intervalo, tomamos el punto
donde cruza al eje esta recta, nos aproximaremos mucho más rápido a la raíz; ésta es en sí,
la idea central del método de la regla falsa y ésta es realmente la única diferencia con el
método de bisección, puesto que en todo lo demás los dos métodos son prácticamente
idénticos.
Supongamos que tenemos una función
que es continua en el intervalo
y además,
y
tienen signos opuestos.
Calculemos la ecuación de la línea recta que une los puntos
,
.
Sabemos que la pendiente de esta recta esta dada por:
Por lo tanto la ecuación de la recta es:
Para obtener el cruce con el eje , hacemos
:
Multiplicando por
nos da:
Finalmente, de aquí despejamos :
Este punto es el que toma el papel de
en lugar del punto medio del método
de bisección.
Así pues, el método de la regla falsa sigue los siguientes pasos:
Sea
continua,
i) Encontrar valores iniciales
,
tales que
y
tienen signos
opuestos, es decir,
ii) La primera aproximación a la raíz se toma igual a:
iii) Evaluar
. Forzosamente debemos caer en uno de los siguientes casos:
En este caso, tenemos que
y
tienen signos opuestos, y por lo tanto la
raíz se encuentra en el intervalo
.
En este caso, tenemos que
y
tienen el mismo signo, y de aquí que
y
tienen signos opuestos. Por lo tanto, la raíz se encuentra en el
intervalo
.
En este caso se tiene que
y por lo tanto ya localizamos la raíz.
El proceso se vuelve a repetir con el nuevo intervalo, hasta que:
3. EJEMPLOS.
A)
Usar el método de la regla falsa para aproximar la raíz de
,
comenzando en el intervalo
y hasta que
.
Solución.
Este es el mismo ejemplo 1 del método de la bisección. Así pues, ya sabemos que
es continua en el intervalo dado y que toma signos opuestos en los extremos de
dicho intervalo. Por lo tanto podemos aplicar el método de la regla falsa.
Calculamos la primera aproximación:
Puesto que solamente tenemos una aproximación, debemos seguir con el proceso.
Así
pues,
evaluamos
Y hacemos nuestra tabla de signos:
De donde vemos que la raíz se encuentra en el intervalo
.
Con este nuevo intervalo, calculamos la nueva aproximación:
En este momento, podemos calcular el primer error aproximado:
Puesto que no se cumple el objetivo seguimos con el proceso.
Evaluamos
, y hacemos la tabla de
signos:
De donde vemos que la raíz se encuentra en el intervalo
, con el cual,
podemos calcular la nueva aproximación:
Y el error aproximado:
Como se ha cumplido el objetivo, concluimos que la aproximación buscada es:
Observe la rapidez con la cual converge el método de la regla falsa a la raíz, a diferencia
de la lentitud del método de la bisección.
B)
Usar el método de la regla falsa para aproximar la raíz de
,
comenzando en el intervalo
y hasta que
.
Solucion.
Este es el mismo ejemplo 2 del método de la bisección. Así pues, ya sabemos que se
cumplen las hipótesis necesarias para poder aplicar el método, es decir, que
sea
contínua en el intervalo dado y que
tome signos opuestos en los extremos de
dicho intervalo.
Calculamos pues, la primera aproximación:
Como solamente tenemos una aproximación, debemos avanzar en el proceso.
Evaluamos
Y hacemos nuestra tabla de signos:
De lo cual vemos que la raíz se localiza en el intervalo
.
Así pues, calculamos la nueva aproximación:
Y calculamos el error aproximado:
Puesto que no se cumple el objetivo, seguimos avanzando en el proceso.
Evaluamos
.
Y hacemos nuestra tabla de signos:

De los cual vemos que la raíz se localiza en el intervalo


, con el cual
podemos calcular al siguiente aproximación:
Y el siguiente error aproximado:
Como se ha cumplido el objetivo, concluímos que la aproximación buscada es:
Nuevamente observamos el contraste entre la rapidez del método de la regla falsa contra
la lentitud del método de la bisección.
Por supuesto que puede darse el caso en el que el método de la regla falsa encuentre la
aproximación a la raíz de forma más lenta que el método de la bisección. Como
ejercicio, el estudiante puede aplicar ambos métodos a la función
,
comenzando en el intervalo
, donde notará que mientras que el método de
bisección requiere de 8 aproximaciones para lograr que
, el método de la
regla falsa necesita hasta 16 aproximaciones.
3. CODIGO FUENTE.
En MatLab:
function r_falsa(f_name, a,c, xmin, xmax, n_points) f_name
% a,c : extremos de intervalo inicial
% tolerance : tolerancia
% it_limit : limite del numero de interacciones
% Y_a, Y_c : valores y de los extremos actuales
% fun_f(x) : valor funcional en x
clg, hold off
clear Y_a, clear Y_c
wid_x = xmax - xmin; dx = (xmax - xmin) /n_points;
xp = xmin: dx: xmax; yp = feval(f_name, xp);
plot (xp,yp) ; xlabel('x') ;ylabel ('f(x)');
title('método de la regla falsa'), hold on
ymin = min(yp); ymax = max(yp); wid_y = ymax-ymin;
yp=0.* xp ; plot(xp,yp)
fprintf ('método de la regla falsa:\n\n');
tolerance = 0.000001; it_limit = 30;
fprintf ('It. a b c fa=f(a) ');
fprintf (' fc=f(c) abs(fc-fa) \n');
it = 0;
Y_a = feval(f_name, a); Y_c = feval(f_name, c);
plot([a,a],[Y_a,0]); text(a,-0.1*wid_y,'x=a')
plot([c,c],[Y_c,0]); text(c,-0.1*wid_y,'x=c')
if (Y_a*Y_c > 0) fprintf(' f(a)f(c) > 0 \n');
else
while 1
it = it+1;
b = (a+c)/2;Y_b=feval(f_name, b);
plot([b,b],[Y_b,0],':'); plot(b,0,'o')
if it<4, text(b, wid_y/20, [num2str(it)]),end
fprintf('%3.0f %10.6f, %10.6f', it, a, b);
fprintf('%10.6f, %10.6f, %10.6f', c, Y_a, Y_c);
fprintf('%12.3e\n',abs((Y_c - Y_a) ));
if ( abs(c-a)<=tolerance )
fprintf (' se satisface la tolerancia. \n' );break
end
if ( it>it_limit )
fprintf('se excedio limite de interaciones. \n'); break
end
if ( Y_a*Y_b <= 0) c = b; Y_c = Y_b;
else a = b; Y_a = Y_b;
end
end
fprintf('resultado final: raíz = %12.6f \n',b);
end
x=b;
plot([x x], [0.05*wid_y 0.2*wid_y])
text(x, 0.25*wid_y, 'solucion final')
plot([x (x-wid_x*0.004)], [0.05*wid_y 0.09*wid_y])
plot([x (x+wid_x*0.004)], [0.05*wid_y 0.09*wid_y])
dem_fals.m
ction y = dem_fals(x)
y = (1 - x. *cos(x)) . *x;
Objetivo: Encontrar una raíz de una funcion y exhibir el proceso interactivo.
axis: r_falsa('nombre_f', a, c, xmin, xmax, n_puntos)
nombre_f: el nombre de la funcion
a y b : extremos del intervalo inicial
xmin, xmax: coordenadas x minima y maxima de la grafica
n_puntos: numero de puntos utulizados para trazar la curva.
En Pantalla de Matlab.
r_falsa('dem_fals', 2,6,0,7,100)
f_name =
dem_fals
método de la regla falsa:
It. a b c fa=f(a) fc=f(c) abs(fc-fa)
www.heur.tk
1 2.000000, 4.000000 6.000000, 3.664587, -28.566130 3.223e+001 2 4.000000, 5.000000
6.000000, 14.458298, -28.566130 4.302e+001 3 4.000000, 4.500000 5.000000, 14.458298,
-2.091555 1.655e+001 4 4.500000, 4.750000 5.000000, 8.768615, -2.091555 1.086e+001 5
4.750000, 4.875000 5.000000, 3.901601, -2.091555 5.993e+000 6 4.875000, 4.937500
5.000000, 1.027456, -2.091555 3.119e+000 7 4.875000, 4.906250 4.937500, 1.027456,
-0.504227 1.532e+000 8 4.906250, 4.921875 4.937500, 0.268940, -0.504227 7.732e-001 9
4.906250, 4.914063 4.921875, 0.268940, -0.115857 3.848e-001 10 4.914063, 4.917969
4.921875, 0.076994, -0.115857 1.929e-001 11 4.914063, 4.916016 4.917969, 0.076994,
-0.019319 9.631e-002 12 4.916016, 4.916992 4.917969, 0.028865, -0.019319 4.818e-002
13 4.916992, 4.917480 4.917969, 0.004780, -0.019319 2.410e-002 14 4.916992, 4.917236
4.917480, 0.004780, -0.007268 1.205e-002 15 4.916992, 4.917114 4.917236, 0.004780,
-0.001244 6.024e-003 16 4.917114, 4.917175 4.917236, 0.001768, -0.001244 3.012e-003
17 4.917175, 4.917206 4.917236, 0.000262, -0.001244 1.506e-003 18 4.917175, 4.917191
4.917206, 0.000262, -0.000491 7.530e-004 19 4.917175, 4.917183 4.917191, 0.000262,
-0.000114 3.765e-004 20 4.917183, 4.917187 4.917191, 0.000074, -0.000114 1.882e-004
21 4.917183, 4.917185 4.917187, 0.000074, -0.000020 9.412e-005 22 4.917185, 4.917186
4.917187, 0.000027, -0.000020 4.706e-005 23 4.917186, 4.917186 4.917187, 0.000004,
-0.000020 2.353e-005 se satisface la tolerancia

También podría gustarte