1. Aproximación de las raíces de una ecuación ( ) ( ) ( ) ( )( ) ( )( )

Anuncio
1. Aproximación de las raíces de una ecuación
1.1. Métodos basados en el teorema de Bolzano
El Teorema de Bolzano asegura que si una función f(x) es continua a lo largo
del intervalo cerrado [a,b] y tiene valores de signo contrario en ambos extremos
(es decir, que f(a)·f(b)<0) , entonces existe un punto c∈(a,b) tal que f(c)=0.
En otras palabras, si una función continua presenta en los extremos del
intervalo signos distintos, al menos un cero de esa función se encuentra entre
esos dos valores.
El algoritmo iterativo básico basado en el teorema de Bolzano consiste en lo
siguiente:
1. Se selecciona un intervalo inicial [a,b] que cumpla las condiciones del
teorema.
2. Se considera un punto c∈(a,b) que aproxima la raíz de la ecuación.
3. Se evalúa la función en el punto c.
4. Si f(c) es cero o, en la práctica, si f(c) se aproxima suficientemente a
cero según un criterio preestablecido, se considera que c es la raíz
buscada y se termina el proceso.
5. En caso contrario, se comprueba si se cumple una de las dos
condiciones siguientes:
a. f(a)f(c)<0. Entonces se redefine la variable b=c.
b. f(c)f(b)<0. Entonces se redefine la variable a=c.
6. Se salta de nuevo al punto 2.
Este algoritmo se basa en la aplicación iterativa del teorema. Los métodos
pueden diferir en la forma como se obtiene el punto c en el paso 2 del algoritmo
descrito arriba:
A. El método simple más conocido consiste en escoger el punto c como la
media aritmética de a y b:
a+b
c=
.
2
B. En el llamado método de la regla falsa (regula falsi) se toma como valor
aproximado de la raíz el punto en el que la cuerda que une los puntos de la
curva f(x) en las abscisas a y b corta con el eje de las x.
La recta que une los puntos (a,f(a)) y (b,f(b)) es
x −a
y − f (a )
=
b − a f (b ) − f (a )
⇒
y = f (a ) +
f (b ) − f (a )
(x − a )
b−a
y el punto de corte donde y(c)=0 es
1-1
c =a−
f (a )(b − a )
.
f (b ) − f (a )
C. En el método de Newton o método de Newton-Raphson se aproxima la
raíz en el punto donde alguna de las rectas tangentes a f(x) en los puntos
(a,f(a)) y (b,f(b)) corte al eje de abscisas y que se encuentre dentro del intervalo
[a,b].
Las ecuaciones de las dos rectas tangentes son
y = f (a ) + f ' (a )(x − a )
y = f (b ) + f ' (b )(x − b )
y las respectivas intersecciones son
c =a−
f (a )
f ' (a )
y
c =b−
f (b )
.
f ' (b )
Este método es, en general, más costoso que los anteriores, pues requiere la
evaluación analítica (o numérica) de las derivadas f’(a) y f’(b). No queda
asegurada su convergencia si en algún momento los dos nuevos valores
numéricos del punto c no caen dentro del intervalo (a,b).
La función derivada de f(x) en el punto x0 también se puede calcular de forma
numérica aproximada sólo recurriendo al valor de la función:
f ' (x 0 ) ≈
f (x 0 + h ) − f (x 0 − h )
2h
si el parámetro h toma un valor lo suficientemente cercano a cero. Esta
aproximación proviene de la definición de función derivada de f(x) en el punto
x0:
f (x 0 + h ) − f (x 0 )
f ' (x0 ) = lim
.
h →0
h
1.2. Métodos de aproximaciones sucesivas y sustitución
El método de las aproximaciones sucesivas y de substitución consiste en
reescribir la ecuación original f(x)=0 como x=g(x). El algoritmo consiste en lo
siguiente:
1. Se parte de un punto inicial xa (primera aproximación a la raíz).
2. Se calcula el nuevo punto xn=g(xa).
3. Si xn se aproxima suficientemente a xa según un criterio
preestablecido, se considera que la raíz es xn y se termina el
proceso.
4. En caso contrario, se redefine la variable xa=xn.
1-2
5. Se vuelve a 2.
Ejercicios
1. Programar los métodos anteriores para buscar la raíz de la ecuación x=e-x o
de la ecuación x=cosx. ¿Qué método requiere menos iteraciones? ¿Un menor
número de iteraciones implica siempre menos tiempo de cálculo?
2. Aplica el algoritmo de las aproximaciones sucesivas y de substitución para
buscar un cero de las ecuaciones x2-x-1=0 y x=e-x. Investiga gráficamente el
porqué del comportamiento del algoritmo para cada caso.
3. Calcula el volumen molar del gas nitrógeno a 500K y 100 atm utilizando la
ecuación de Van der Waals:

a 
 p + 2 (Vm − b ) = RT

Vm 

Para este gas, los valores de las constantes son a=1.390 dm6 atm mol-2 y
b=0.03913 dm3 mol-1. Solución. Vm=0.4191 dm3.
Se puede resolver el problema de tres maneras distintas:
- Escribiendo la ecuación de Van der Waals como un polinomio de tercer
grado:

RT
Vm3 −  b +
p

 2 a
ab
Vm + Vm −
=0
p
p

y aplicando el teorema de Bolzano.
- Escribiendo la ecuación en el formato x=f(x): Vm =
RT
+b y

a 
p + 2 

Vm 

aplicando el método iterativo. Se puede tomar como valor inicial del
volumen molar el que se obtiene al aplicar la ecuación del gas ideal.
- Aplicando el método de Newton-Raphson.
1-3
Programa Bolzano
*--------------------------------------------------------------------* Dada una funcion FORTRAN f(x)continua en el intervalo [a,b] y
* siendo f(a) y f(b) de distinto signo, esta rutina retorna el
* valor de una raiz de f(x) en ese intervalo.
* El método usado no requiere conocer la derivada de la funcion.
*--------------------------------------------------------------------DOUBLE PRECISION FUNCTION bolzano(a,b)
implicit double precision (A-H,O-Z)
*
fa=f(a)
fb=f(b)
if (fa*fb>0.0d0) write(*,*)“Podria no existir solucion.”
*
do while (.true.)
c=(a+b)/2
fc=f(c)
if (abs(fc).lt.1.0d-10) then
bolzano=c
return
else if (fa*fc.lt.0.0d0) then
b=c
fb=fc
else if (fb*fc.lt.0.0d0) then
a=c
fa=fc
end if
end do
END
*--------------------------------------------------------------------
1-4
Descargar