Vous êtes sur la page 1sur 16

PROYECTO ANALISIS NUMERICO

TEMA: METODO DE BISECCION

TRABAJO PRESENTADO POR:


JAVIER HERNAN VINASCO MUOZ
CODIGO.300050939
OMAR EDUARDO BARRERO PERALTA
CODIGO. 300051079

AL PROFESOR:
HUGO FERNANDO PARDO PINZON

EN LA ASIGNATURA
ANALISIS NUMERICO
GRUPO A

PONTIFICIA UNIVERSIDAD JAVERIANA


FACULTAD DE INGENIERA
INGENIERA ELECTRNICA
SANTIAGO DE CALI, 5 DE NOVIEMBRE DE 2006

PROYECTO ANALISIS NUMERICO


METODO DE BISECCION
1

INDICE
Pagina
1. Introduccin

2. Fundamento Terico
Secuencia y Aplicacin del Mtodo
Anlisis del Mtodo con respecto al Algoritmo
Ventajas y limitaciones del Mtodo
Ejemplo del Mtodo de biseccin
3. Problema
Enunciado del Problema

4
4
5
5
6
7
7

4. Modelacin y Desarrollo
Desarrollo terico y Analtico
Algoritmo
Comparacin de Valores obtenidos

8
8
10
13

5. Conclusiones

14

1. INTRODUCCION

La resolucin de ecuaciones es una prctica muy estudiada y


desarrollada durante toda la historia de la matemtica y
especialmente del anlisis numrico. Desde hace mucho tiempo se
desarrollaron tcnicas de resolucin de ecuaciones que buscaban la
optimizacin en la obtencin del resultado, as como un elevado
grado de precisin en la respuesta obtenida. En este proyecto de
anlisis numrico se resolver un problema de naturaleza poblacional,
utilizando uno de los mtodos ms conocidos., El mtodo de
Biseccin, muy famoso por su sencilla implementacin y un buen
margen de precisin con respecto a la solucin obtenida, margen que
puede ser mejorado teniendo en cuenta el numero de iteraciones a
realizar, as como las condiciones previas del problema, tales como la
limitante en cifras decimales y otras posibles elementos que se
pudieran convertir en condiciones de parada del mtodo.
De igual forma se espera analizar como el mtodo desarrollado de
forma terica varia con relacin al algoritmo presentado, para obtener
conclusiones que nos permitan entender de mejor manera la
mecnica de este mtodo numrico para la obtencin de ceros de
una funcin determinada.

2. FUNDAMENTO TEORCO
Mediante el mtodo de biseccin lo que se busca es determinar la raz
de una ecuacin, o sea, su interseccin con el eje de las X o su
solucin, por lo que se debe tener en cuenta que no todas las
ecuaciones tienen una sola solucin, y que no todas tienen solucin,
as que se debe tener una idea de la forma de la curva de la ecuacin
antes de comenzar a aplicar el mtodo.
El mtodo se basa en el Teorema de los Valores Intermedios (TVI), el
cual establece que toda funcin continua f en un intervalo cerrado
[ a, b] toma todos los valores que se hallan entre f (a ) y f (b) . Esto
es, que todo valor entre f (a) y f (b) es la imagen de al menos un
valor en el intervalo [ a, b] . En caso de que f (a ) y f (b) tengan signos
opuestos ( f (a ) f (b) 0 ), el valor cero sera un valor intermedio entre
f (a ) y f (b) , por lo que con certeza existe un p en [ a, b] que cumple
f ( p ) 0 . De esta forma, se asegura la existencia de al menos una
solucin de la ecuacin f ( x) 0 .
Secuencia y Aplicacin del Mtodo
Primero se debe tener certeza de la continuidad de la funcin f (x ) en
el intervalo [ a, b] . Luego verificamos que f (a ) f (b) 0 . Calculamos el
punto medio m del intervalo [ a, b] . A continuacin calculamos f (m) .
En caso de que f (m) sea igual a cero, ya hemos encontrado la raz
buscada. En caso de que no lo sea, verificamos si f (m) tiene signo
opuesto con f (a ) o con f (b) . Se redefine el intervalo [ a, b] como
[ a, m] o [ m, b] segn se haya determinado en cul de estos intervalos
ocurre un cambio de signo. Con este nuevo intervalo se contina
sucesivamente encerrando la solucin en un intervalo cada vez ms
pequeo, hasta alcanzar la precisin deseada. En la siguiente figura
se ilustra el procedimiento descrito.

Anlisis del Mtodo con respecto al Algoritmo


En la primera iteracin del algoritmo de biseccin, es claro que la raz

p se halla a una distancia menor o igual que b a , pues con toda


2

seguridad la raz se encuentra en alguno de los dos intervalos de


tamao (b a ) / 2 , contiguos al punto medio del intervalo [ a, b] . En la
segunda iteracin, el nuevo intervalo mide
distancia entre el nuevo punto medio y

ba
y de nuevo la
2

p es menor o igual que

(b a) / 2 / 2 b a . Se forman as tres sucesiones de valores a n n , bn n


4

y m n n , y puede mostrarse fcilmente por induccin que en la nsima iteracin, al aproximar p con mn se tiene que:
mn p

ba
2n

De esta forma, si se desea estimar el nmero n de iteraciones


necesarias para que, al aproximar la solucin de la ecuacin mediante
el punto medio, el error de aproximacin sea menor que un
parmetro , de la desigualdad anterior se concluye que deben

hacerse al menos ln

ba
/ ln 2

iteraciones.

Por ejemplo, al aplicar el algoritmo de biseccin a una funcin f (x )


en el intervalo [2,1] , si queremos que el error de aproximacin sea
menor o igual que 0.00005 5 * 10 5 , el nmero n de iteraciones debe
cumplir

ln 5 10 5 / ln 2 16

por lo que deben realizarse al menos 16 iteraciones.


Ventajas y Limitaciones del Mtodo

El mtodo de biseccin es menos eficiente que el mtodo de


Newton, pero es mucho ms seguro al asegurar la
convergencia.
La biseccin converge linealmente, por lo cual es un poco lento.
Sin embargo, se garantiza la convergencia si f(a) y f(b) tienen
distinto signo.

Una buena aproximacin intermedia puede ser descartada


inadvertidamente.
No permite calcular races mltiples que sean pares, pues no
existe un cambio de signo en el intervalo en donde se contenga
ella.

Ejemplo del mtodo de Biseccin


El siguiente ejemplo se desarrollara utilizando el mtodo de biseccin
para encontrar la solucin de la expresin x^3+6x^2+2x+8, para el
intervalo [-13.5] realizando 7 iteraciones.
Desarrollo
Tal como se enuncia en la seccin anterior, se toman 2 puntos dentro
de los cuales se analizara el cambio de signo y la posible existencia
del cero de la ecuacin. Como podemos observar despus de evaluar
la funcin en los puntos extremos y en el punto medio, encontramos
el cambio de signo entre los puntos A y B, lo que implica el cambio
del C de nuestra tabla por un nuevo valor el -4, obtenido
anteriormente. Al evaluar nuevamente en los valores de a, el nuevo c
y el nuevo punto medio, encontramos un cambio de signo entre los f
(b) y f (c), lo que implica conservar el valor de c en nuestra tabla, y
reemplazar el A anterior por el punto utilizado, es decir reemplazar el
a por el b. Se obtiene de nuevo el punto medio entre los dos valores
extremos a y c, se dispone a analizar en donde existe un cambio de
signo y se prosigue de la misma forma con el mismo proceso hasta
obtener 7 valores en la tabla de puntos medios. El ltimo valor
(resaltado con rojo) corresponde al valor aproximado de la solucin de
la ecuacin despus del nmero de iteraciones pedidas inicialmente.
Punto
Medio
A

C
-13
-13
-8,5
-6,25

-4
-8,5
-6,25
-5,125

-6,25

-5,6875

5
-4
-4
-4

-5,125
-6,25
-5,96875 5,6875
-5,96875 -5,828125 5,6875

x^3+6x^2+2x+8
[-13,5]
f(A)
f(B)
f (C )
-1201
32
293
-1201
-189,625
32
-189,625 -14,265625
32
-14,265625 20,7324219
32
20,73242
-14,265625 6,73364258
19
- 6,733642
-14,265625 2,82418823
58
6,733642
2,82418823 2,18183517
58

3. PROBLEMA
El problema propuesto corresponde al anlisis poblacional de una
regin cuyas condiciones iniciales se encuentran consignadas en el
siguiente enunciado:
Enunciado del Problema
Supngase que una cierta poblacin cuenta con un milln de
individuos inicialmente, que 435000 inmigran a la comunidad en el
primer ao y que 1564000 estn presentes al final de un ao. Para
determinar la tasa de natalidad de esta poblacin es necesario
despejar en la ecuacin
1564000 1000000 e

435000
e 1

Encuentre una aproximacin para con una precisin de 10 -4. Use


ese valor para predecir la poblacin al final del segundo ao,
considerando que la tasa de inmigracin durante estos aos se
mantiene en 435000 individuos por ao.
Como podemos observar obtendremos en primera instancia el valor
de la variable desconocido, y usaremos esta para predecir el
comportamiento de la poblacin al final del segundo ao teniendo
como dato ya dado la tasa de inmigracin durante ambos aos.

4. MODELACION Y DESARROLLO
Desarrollo terico y Analtico
Ahora podemos iniciar el desarrollo terico del problema de la
siguiente manera:

Se establecen los puntos limites sobre los cuales se iniciara el


mtodo de biseccin y sern: a=0.01 y c=0.5. Estos puntos se
han escogido ya que hay un aceptable rango se separacin
entre ellos, adems que satisfacen las condiciones necesarias
del mtodo:

f ( a ) f (c ) 0

Siendo:

f ( a ) f (c ) -75794851194< 0, se satisface la condicin y podemos

continuar con el mtodo.

Despus obtenemos el punto medio, denotado con b y sera


b=0.255. Tenemos todos los datos necesarios para empezar las
iteraciones.
Obtenemos f (a ), f (b) yf (c ) , y analizamos los posibles cambios
de signos presentes entre estos y establecemos los nuevos
rangos de operacin del mtodo.
Se realizan las n iteraciones indicadas por la siguiente ecuacin
que relaciona el error deseado en la aproximacin y los lmites

ba

/ ln 2 . Para nuestro
del primer intervalo de operacin. ln

0.5 0.01

/ ln 2 14 iteraciones.
problema tenemos: ln
4
10

Se obtiene la siguiente tabla con los valores tabulados despus


de cada iteracin.

Iteraci
n

f(A)

0,01

0,255

0,5

0,01

0,1325

0,255

0,01

0,07125

0,1325

0,07125

0,101875

0,1325

0,07125 0,0865625

0,101875

0,0942187
0,0865625
5
0,0942187 0,0980468
5
8

0,0980468 0,0999609
75
4

0,101875

0,0999609 0,1009179
38
7

0,101875

13

0,1009179
69
0,1009179
7
0,1009179
7
0,1009179
7

14

0,1009777 0,1010076
85
9

10
11
12

0,1013964
8
0,1011572
3
0,1010376
0,1009777
8

0,101875
0,101875

0,101875
0,10139648
5
0,10115722
8
0,10103759
9

116767,56
5
116767,56
5
116767,56
5
39278,769
39278,769
19197,929
4
9048,2948
3945,9365
9
1387,8417
2
107,06243
9

f(B)

f(C)

221954,974

649108,7
76

42813,8991

221954,9
74

0,924528302

1174,87328
19197,9294

42813,89
91
42813,89
91
1174,873
28

-9048,2948
3945,93659

1174,873
28
1174,873
28

1387,84239

1174,873
28

0,019148105

107,062439

1174,873
28

0,009483262

-39278,769

533,7608

-107,0611 213,314038

-107,0611 53,1177676
-107,0611 26,9739252
26,973255
0,1010376
7 13,0723607

1174,873
28
533,7614
7
213,3147
07
53,11776
76
53,11910
67

El valor resaltado nos muestra el cero obtenido con las 14


iteraciones indicadas por la ecuacin del mtodo.

error
relativo

0,859649123

0,300613497

0,176895307

0,081260365

0,039043825

0,004719251

0,002365199

0,001184

0,000592353

0,000296096

Ya con el cero obtenido, podemos realizar el segundo punto del


problema, para los cual tenemos los siguientes datos:

Tasa inmigracin se mantiene a 435000 individuos por ao.


El segundo ao inicia con una poblacin de 1564000 habitantes.

1564000e

435000
e 1 2187957,9

Teniendo de esta forma todo el desarrollo analtico y terico del


problema planteado.

Algoritmo
%PROGRAMA DE CALCULO DE CEROS POR BISECCIN
clear;
clc;
global f;
format long g;
disp(' ');
disp('Programa de calculo de ceros por');
disp('El Mtodo de Biseccin');
% cambiar el parmetro funcion para otra ecuacin.
%funcion=input('Digite la funcion entre comillas simples: ');
funcion='1000000*exp(x)+435000*(exp(x)-1)/x-1564000';
f=inline(funcion);
a=1;
b=0;

%La convierte a funcin interna

while(a>=b)
%CAMBIAR PARAMETROS DE A Y B
%a=input('Digite el lmite inferior (a): ');
a=0.01;

10

%b=input('Digite el lmite superior (b): ');


b=0.5;
end
disp('f(a) es: ')
disp(f(a))
disp('f(b) es: ')
disp(f(b))
if (f(a)==0)
error('a es un cero, seleccione otro intervalo y corra el programa nuevamente');
end
if (f(b)==0)
error('b es un cero, seleccione otro intervalo y corra el programa nuevamente');
end
if ((f(a)*f(b))>0)
error('No se cumple la hiptesis f(a)f(b)<0');
end
%Parada por error absoluto
%
disp('');
%
disp('MODO DE PARADA POR ERROR ABSOLUTO DEL CERO');
%
e=input('Entre el valor del error absoluto: ');
%CAMNIAR EL ERROR ABSOLUTO
e=0.00005;
n=ceil(log2((b-a)/e)); %Asigna a n el valor del entero superior mas proximo
utilizando la formula del Teorema
disp('Se necesitan (iteraciones): ');
disp(n);
cero=calcular_cero_iteraciones(a,b,n);
disp('El Landa es aproximadamente: ');
disp(cero);
fplot(f,[a b]);
title('Grafica de la funcion')
xlabel('LANDA')
ylabel('f(LANDA)')
grid on;
%NUEVA POBLACION
disp('La nueva poblacion dentro de 1 aos es de: ');
disp(1564000*exp(cero)+43500*(exp(cero)-1)/cero);

La funcion resaltada en negrilla es una funcion llamada por


poblacin.m y su desarrollo es el siguiente:

function cero=calcular_cero_iteraciones(a,b,n)
% a: limite inferior del intervalo
% b: limite superior del intervalo
% n: numero de iteraciones que faltan
global f;

11

mitad=(a+b)/2;
if n==1
cero=mitad;
else
if (f(a)*f(mitad)<0)
%La solucin est entre a y b
cero=calcular_cero_iteraciones(a,mitad,n-1);
else
cero=calcular_cero_iteraciones(mitad,b,n-1);
end
end

El algoritmo presenta los siguientes resultados en la ventana principal


de matlab:
El f(a) y el f(b) que representan la evaluacin de los puntos
limites en la funcion de natalidad usados en el inicio del
mtodo.
Las iteraciones necesarias para obtener la aproximacin con un
error de 0.00005 (error especificado en el problema.)
El valor de landa.
La nueva poblacion al finalizar el segundo ao.

De igual forma se realiza un grafico que relaciona f(landa) y landa, es


decir el cero obtenido y su respectiva evaluacin en la funcion,
obteniendo:
12

Comparacin de Valores Obtenidos

Landa
Poblacion

Biseccion
(Teorico)
0,101007693
2187957,9

Algoritmo
%Error
0,1010
0,007616
2187957,8939 2,78799E-07

Como se puede observar el porcentaje de error es mnimo, dada la


gran precisin de los resultados obtenidos de forma terica y
mediante la implementacin del algoritmo, consecuencia lgica de
procesos matemticos ya desarrollados en su mecnica de desarrollo,
adems dada la calidad del error (10^-4) cifras significativas.
Los resultados esperados mediante la implementacin del algoritmo
fueron satisfactorios y podemos concluir que la obtencin del cero de
la ecuacin por ambas vas fue exitosa.

13

5. CONCLUSIONES

En los problemas que impliquen una resolucin de ecuaciones


de forma numrica, lo lgico y natural es la obtencin de
soluciones aproximadas. Es imposible llegar a soluciones
exactas. Esto, debido a que el computador y otros sistemas
tales como calculadoras maneja los nmeros de forma
imprecisa.

Sin embargo en la practica no se necesitan soluciones exactas


(en un estricto modo, aunque seria lo ideal), ya que
generalmente las constantes que aparecen en una funcin
provienen de mediciones experimentales que son tambin
imprecisas. Lo que a su ves tambin implicara que aunque se
obtuvieran valores exactos, al evaluar en la funcion se
obtendra un resultado aproximado, que aunque es ms cercano
al valor real no deja de ser una aproximacin.
En el proceso de resolucin de ecuaciones es muy frecuente
encontrarnos con ecuaciones que no sabemos resolver por
mtodos convencionales, as como ecuaciones cuyas races no
son un nmero racional. En estos casos necesitamos mtodos
que nos aproximen dichas soluciones, de manera que sea
posible, si no conocer la raz exacta, s una buena aproximacin
de ella.

14

Existen numerosos de mtodos para la resolucin de


ecuaciones, algunos con ms ventajas sobre otros, el mtodo
de la biseccin es uno de los ms sencillos para su desarrollo
pero no el ms eficiente.

En procesos iterativos como el mtodo de la biseccin es


fundamental la condicin de parada, puesto que esta es la que
permite que el algoritmo obtenga los ceros de la funcion y no se
desemboque en un ciclo infinito, o en una operacin sin lmites,
lo que generara gran perdida y mal utilizacin de memoria del
sistema y la imposibilidad de generar un resultado numrico de
la ecuacin.

Identificar los mtodos de solucin de ecuaciones vistos en


clase y aplicarlos computacionalmente en la solucin de
problemas de ingeniera es una prctica fundamental en el
aprendizaje del anlisis numrico, pues nos brinda herramientas
suficientes para enfrentarnos a cualquier clase de ecuaciones
que resulten de problemas de anlisis efectuados en las
diferentes reas de desarrollo de la ingeniera electrnica.

NOTA1:
Pedimos disculpas por la demora en la entrega. Tenamos el
programa desarrollado pero el trabajo no estaba finalizado en
su totalidad.
NOTA 2
El archivo calcular_cero_iteraciones es una funcin del
programa poblacin.m, por lo cual debe ser guardado junto
con su archivo madre en la carpeta Works de Matlab para su
ejecucin.

15

16

Vous aimerez peut-être aussi