El método de bipartición - OCW UPM

Anuncio
Universidad Politécnica de Madrid
Ingeniería de Minas
Programación
Programación yy Métodos
Métodos Numéricos
Numéricos
Resolución
Resolución de
de ecuaciones
ecuaciones no
no lineales:
lineales:
Método
Método de
de bipartición
bipartición
Carlos Conde Lázaro
Arturo Hidalgo López
Alfredo López Benito
Departamento de Matemática Aplicada y Métodos Informáticos
Marzo, 2007
21
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (1)
(1)
f(x) CONTINUA en [a, b]
(Teorema de Bolzano)
En [a, b] hay un número
impar de raíces.
f(a).f(b) < 0
Condiciones
suficientes
para que
el método
funcione
con éxito
Al menos hay una raíz
b
[
a
]
Departamento de Matemática Aplicada y Métodos Informáticos
22
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (2)
(2)
* Cálculo de las raíces de:
Primera iteración:
Punto medio:
a+b
x1 =
2
a
[
Evaluación de la
función en el punto
medio f(x1)
xx11
a
b
]
Determinación del nuevo intervalo de búsqueda
Si (f(x1).f(a)< 0) entonces: b Å x1.
Si (f(x1).f(a) > 0) entonces: a Å x1.
Departamento de Matemática Aplicada y Métodos Informáticos
(En el dibujo)
23
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (3)
(3)
Segunda Iteración:
Punto medio:
a+b
x2 =
2
b
Evaluación de la función
en el punto medio f(x2)
a
x2
a
Determinación del nuevo intervalo de búsqueda
Si (f(x2).f(a)< 0) entonces: b Å x2.
Si (f(x2).f(a) > 0) entonces: a Å x2.
(En el dibujo)
Departamento de Matemática Aplicada y Métodos Informáticos
24
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (4)
(4)
x3
Tercera Iteración:
Punto medio:
a+b
x3 =
2
b
a
Evaluación de la función en el
punto medio f(x3)
Determinación del nuevo intervalo de búsqueda
Si (f(x3).f(a)< 0) entonces: b Å x3.
xa2
b
(En el dibujo)
Si (f(x3).f(a) > 0) entonces: a Å x3.
Departamento de Matemática Aplicada y Métodos Informáticos
25
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (5)
(5)
Dados dos puntos a y b (a < b) y la función f(x) continua
en el intervalo [a, b] y tal que f(a).f(b) < 0
Para i = 1, 2, ......
a+b
x←
2
Si (f(a).f(x) > 0) entonces:
a Å x
Si no:
Si (f(a).f(x) < 0) entonces:
b Å x
Si no:
x es raíz
Fin condición.
Fin condición.
Fin bucle.
Departamento de Matemática Aplicada y Métodos Informáticos
26
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (6)
(6)
COMENTARIOS:
1º Si f(x) no fuese continua en [a, b] no se garantiza el
buen funcionamiento del método pues puede que no haya
raíz.
Departamento de Matemática Aplicada y Métodos Informáticos
27
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (7)
(7)
COMENTARIOS:
2º Si f(a).f(b) < 0 puede haber más de una raíz (pero al
menos habrá una).
Contándolas tantas veces como sea
su multiplicidad habrá un
número impar de raíces
El método sólo encuentra
una de ellas
Para asegurar que el método converge
hacia la ÚNICA raíz en [a,b] es
necesario realizar más hipótesis sobre
la función f(x). P.ej.:
f(a).f(b) <0
f(x) continua en [a, b] y …
f(x) estrictamente
monótona en [a, b]
Departamento de Matemática Aplicada y Métodos Informáticos
28
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (8)
(8)
COMENTARIOS:
• Si f(a).f(b) > 0 el método no tiene garantizado su buen
funcionamiento pues puede no existir raíz y, en todo
caso, no contempla criterio de selección de intervalos
de búsqueda
Contándolas tantas veces como sea
su multiplicidad habrá un
número par de raíces
Departamento de Matemática Aplicada y Métodos Informáticos
29
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (9)
(9)
¿ Cuántas iteraciones deben realizarse para asegurar que
la raíz buscada dista menos de ε de la solución exacta?
Al comenzar el intervalo de búsqueda mide: L0 = (b – a)
Tras la primera iteración el nuevo intervalo de búsqueda
mide: L1 = ( ½ ). L0 = ( ½ ).(b - a)
Tras la segunda iteración el nuevo intervalo de búsqueda
mide: L2 = ( ½ ). L1 = (b - a) / 22
.......
Tras la n-ésima iteración el nuevo intervalo de búsqueda
mide: Ln = ( ½ ). Ln-1 = (b - a) / 2n
Departamento de Matemática Aplicada y Métodos Informáticos
30
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (10)
(10)
Si se toma como raíz aproximada tras n iteraciones el punto
medio del intervalo de búsqueda (punto xn+1) la distancia a
la raíz exacta x* será menor que ( ½ ). Ln
Ln
Luego:
xn+1
( ½).Ln
x*
b−a
|x* - xn+1| < (½).Ln = (n+1)
2
( ½).Ln
Departamento de Matemática Aplicada y Métodos Informáticos
31
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición
bipartición (11)
(11)
Una precisión mayor que ε se asegura realizando un número
de iteraciones (n) tal que:
|x* - xn+1| <
b−a
<ε
(n +1)
2
2
(n+1)
⎛ (b − a) ⎞
(n + 1).ln(2) > ln ⎜
⎟
⎝ ε ⎠
(b − a)
>
ε
⎛ (b − a) ⎞
ln ⎜
⎟
ε
⎠ −1
n> ⎝
ln(2)
Departamento de Matemática Aplicada y Métodos Informáticos
32
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición:
bipartición: Algoritmo
Algoritmo
Dados:
a, b, ε, f(x)
⎛ | a − b |⎞
INICIO
ln ⎜
⎟
ε ⎠
⎝
Calcular: numit >
−1
ln(2)
PARA j DESDE 0 HASTA numit CON PASO 1 HACER:
a+b
2º vmed = f(x )
1º x =
2
SI (vmed.f(a) > 0) ENTONCES:
a Å x
3º SI NO
b Å x
FIN CONDICIÓN
FIN BUCLE
Departamento de Matemática Aplicada y Métodos Informáticos
33
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición:
bipartición: Ejemplo
Ejemplo
La presión de vapor del n-hexano (C6) y del n-octano (C8)
se pueden relacionar con la temperatura absoluta mediante
las expresiones:
( )
0
C6
log P
( )
log PC08
2697.55
= 15.8737 −
T − 48.784
3127.60
= 15.9798 −
T − 63.633
P Æ mm Hg
T Æ ºK
Según dichas fórmulas, para 2 atmósferas (1520 mm Hg)
la temperatura de ebullición del n-hexano es 364.39ºK y
la del n-octano es de 425.07ºK.
Se desea conocer la temperatura de ebullición a 2
atmósferas de una mezcla líquida conteniendo el 50% de
moles de cada uno de los dos componentes
Departamento de Matemática Aplicada y Métodos Informáticos
34
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición:
bipartición: Ejemplo
Ejemplo (2)
(2)
NOTACIÓN
x1 Æ Fracción molar en la fase líquida de n-hexano = 0.5
x2 Æ Fracción molar en la fase líquida de n-octano = 0.5
y1 Æ Fracción molar en la fase vapor de n-exano
y2 Æ Fracción molar en la fase vapor de n-octano
RELACIONES
y1 =
PC06
P
.x1 =
PC06
2.P
y2 =
Ecuación a resolver:
f(T ) =
e
PC08
P
.x 2 =
PC08
2.P
2697.55 ⎞
⎛
⎜ 15.8737 −
⎟
T − 48.784 ⎠
⎝
3040
y1 + y2 = 1 ⇔
+
e
3127.60 ⎞
⎛
⎜ 15.9798 −
⎟
T − 63.633 ⎠
⎝
3040
Departamento de Matemática Aplicada y Métodos Informáticos
PC06
2.P
+
PC08
2.P
=1
−1= 0
35
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición:
bipartición: Ejemplo
Ejemplo (3)
(3)
f(T ) =
e
2697.55 ⎞
⎛
⎜ 15.8737 −
⎟
T − 48.784 ⎠
⎝
3040
+
e
3127.60 ⎞
⎛
⎜ 15.9798 −
⎟
T − 63.633 ⎠
⎝
3040
−1
TI = 364 ºK ≈ TC6
f(T) < 0
TF = 425 ºK ≈ TC8
f(T) > 0
TI + TF 364 + 425
T1 =
=
= 394.5
2
2
f(T1) = 0.277..> 0
TF Å T1 = 394.5
Departamento de Matemática Aplicada y Métodos Informáticos
36
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición:
bipartición: Ejemplo
Ejemplo (4)
(4)
f(T ) =
e
2697.55 ⎞
⎛
⎜ 15.8737 −
⎟
T − 48.784 ⎠
⎝
3040
+
e
3127.60 ⎞
⎛
⎜ 15.9798 −
⎟
T − 63.633 ⎠
⎝
3040
−1
364
394.5
TI + TF 364 + 394.5
T2 =
=
= 379.25
2
2
f(T2) = -0.123..< 0
TI Å T2 = 379.25
Departamento de Matemática Aplicada y Métodos Informáticos
37
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición:
bipartición: Ejemplo
Ejemplo (5)
(5)
f(T ) =
e
2697.55 ⎞
⎛
⎜ 15.8737 −
⎟
T − 48.784 ⎠
⎝
3040
+
e
3127.60 ⎞
⎛
⎜ 15.9798 −
⎟
T − 63.633 ⎠
⎝
3040
−1
394.5
379.25
TI + TF 379.25 + 394.5
T3 =
=
= 386.875
2
2
f(T3) = 0.06..> 0
TF Å T3 = 386.875
........
Departamento de Matemática Aplicada y Métodos Informáticos
38
Universidad Politécnica de Madrid
Ingeniería de Minas
El
El método
método de
de bipartición:
bipartición: Ejemplo
Ejemplo (6)
(6)
Para asegurar una precisión de 10-3 ºK se necesitarán:
⎛ 61 ⎞
log ⎜ −3 ⎟
⎝ 10 ⎠ − 1 ≈ 14.89...
Nºiteraciones >
log(2)
Deben realizarse al menos 15 iteraciones.
Departamento de Matemática Aplicada y Métodos Informáticos
39
Universidad Politécnica de Madrid
Ingeniería de Minas
Departamento de Matemática Aplicada y Métodos Informáticos
40
Descargar