Upload
lyquynh
View
217
Download
0
Embed Size (px)
Citation preview
1
Grado en Ciencia y Tecnología de los Alimentos
Fundamentos de Ingeniería de los Alimentos
Práctica 3
Resolución de ecuaciones no lineales mediante métodos numéricos
2
1.- Método de tanteo
Se emplea en ecuaciones que puedan expresarse en la forma:
( )f x C
eq. 1
Donde C es una constante.
Consiste en suponer un valor de x y comprobar que se cumple la expresión
dentro de un límite de error, E, previamente establecido como aceptable.
Problema 1:
Calcular el valor de x que cumple la siguiente ecuación con una aproximación
de E = 0.001:
8 4xe x
Solución:
Por analogía con la eq. 1:
( ) 8xf x e x
C = 4
Se substituyen distintos valores de x en f(x) y se valora el grado de aproximación
conseguido con el valor constante C.
Tabla 1
Tanteo x f(x)=ex-8x E=C-f(x) 1 1 -5,2817 9,2817
2 2 -8,6109 12,6109
3 -1 8,3679 -4,3679
4 -0,5 4,6065 -0,6065
5 -0,6 5,3488 -1,3488
6 -0,4 3,8703 0,1297
7 -0,45 4,2376 -0,2376
8 -0,42 4,0170 -0,0170
9 -0,418 4,0024 -0,0024
10 -0,417 3,9950 0,0050
11 -0,4175 3,9987 0,0013
12 -0,4177 4,0002 -0,0002
3
Esta forma de proceder es intuitiva. No obstante, si se observa bien, la estrategia
seguida en este ejemplo no ha sido al azar, sino muy aproximada al método de la
bisección, tal como se explica en el apartado siguiente.
Problema propuesto 1:
Determinar por el método de tanteo la solución de la siguiente ecuación:
ln( 1) 2x
4
2.- Método de la bisección
Es el método anterior pero empleando una estrategia de tanteo binario. En primer
lugar, la ecuación debe expresarse de tal forma que C = 0.
( ) 0f x
eq. 2
A continuación debe elegirse un valor de x tal que la función sea negativa (a) y
otro en que la función sea positiva (b).
( ) 0f a
( ) 0f b
El primer valor de tanteo, m, será el valor medio de este intervalo.
2
a bm
eq. 3
Si ahora el resultado de la función f(m) es nulo o muy próximo a cero dentro de
un margen de precisión, E, se ha acabado el procedimiento y se ha encontrado la
solución.
En cambio, si el error es superior a E, hay que considerar un nuevo intervalo más
estrecho, cambiando uno de los extremos por el último valor de m utilizado según dos
posibles casos:
1. Si f(m)>0, se substituye el extremo anterior que daba f(x) positivo por esta
m. Es decir se hace el cambio b = m
2. Por tanto, si no se cumple el caso 1 y f(m)<0, se substituye el extremo
anterior que daba f(x) negativo por esta m. Es decir se hace el cambio a =
m
De nuevo se determina una nueva m con la eq. 3, siendo ahora los a y b
resultantes de los casos 1 ó 2 anteriores. Se repite el proceso hasta que encontremos un
f(m) con una proximidad a cero inferior a la precisión E establecida previamente.
En comparación con el método de Newton que se explicará a continuación, es
más lento; pero la convergencia está garantizada según el teorema de Bolzano de
funciones continuas, es decir, siempre se encuentra una solución.
Si la función que estamos tratando se cumple para varios x distintos, habrá que
tener la precaución de elegir los intervalos iniciales en la zona próxima a estas
soluciones y hacer un tanteo para cada una de ellas.
5
Problema 2:
Despejar el valor de x con una precisión E = 0.001 de esta ecuación empleando
el método de la bisección, en el intervalo a = 0 y b = 1.
10 2x x
Solución:
Rehacemos la ecuación de la siguiente forma:
( ) 10 2 0f x x x
Se comprueba que f(a) = f(0) = -2 es negativo y que f(b) = f(1) = 0.1623 es
positivo. Si no fuera así, se buscarían otros valores de x dentro del intervalo que
cumplieran la condición de que uno genera una f(x) positiva y el otro negativa.
En la Tabla 2 se muestran las iteraciones realizadas. Cuando el valor de la
función se hace negativo se hace el cambio a = m (valores en rojo) y cuando la función
se hace positiva el cambio es b = m (valores en azul). En la iteración 9 la función en
valor absoluto es inferior a E. No obstante hemos realizado una nueva iteración por si
todavía apareciera un nuevo valor mayor, pero se confirma que es también inferior a E.
Vamos a considerar por tanto que la solución, en el intervalo elegido, es x = 0.764 (la
cuarta cifra decimal no es segura)
Tabla 2
Iteración m=(a+b)/2 f(m) a b
0
0 1
1 0,5 -0,2639 0,5 1
2 0,75 -0,0114 0,75 1
3 0,875 0,0830 0,75 0,875
4 0,8125 0,0379 0,75 0,8125
5 0,78125 0,0138 0,75 0,78125
6 0,765625 0,0014 0,75 0,765625
7 0,7578125 -0,0050 0,7578125 0,765625
8 0,76171875 -0,0018 0,76171875 0,765625
9 0,76367188 -0,0002
6
Figura 1
Problema propuesto 2:
En la Figura 1 se muestra una representación gráfica de la función que estamos
estudiando. Se observa que f(x) = 0 en dos puntos: el encontrado (x = 0.764) y otro en
el intervalo entre 4 y 6. Para x =4 la función es positiva (luego b = 4) y para x = 6 la
función es negativa (luego a = 6). Se propone encontrar un valor preciso para esta
segunda solución de la ecuación partiendo de estos valores de a y b.
Problema Propuesto 3:
Resolver las siguientes ecuaciones que tienen la solución en el intervalo [0.3, 1.4]
empleando el método de la bisección con una aproximación de 0,01:
2
cos ln
2 0
1
x
x
x x x
x e
e x
-3
-2
-2
-1
-1
0
1
1
2
2
3
0 2 4 6 8 10
x
f(x)
7
3.- Método de iteración directa
Se emplea en ecuaciones que puedan expresarse de la siguiente forma:
( )x f x
eq. 4
Consiste en suponer un valor inicial de x, que llamaremos x0, lo más próximo
posible al valor solución. Substituimos x0 en la función para recalcular un nuevo valor
de x que llamaremos x1. De nuevo este x1 se substituye en la función para determinar un
x2, y así sucesivamente. Si el valor inicial de x es cercano a la solución de la ecuación,
es posible que tras sucesivas iteraciones, alcancemos un valor constante de x que se será
la solución de la ecuación.
El algoritmo de iteración viene dado por la siguiente expresión
1 ( )n nx f x
eq. 5
La iteración se termina cuando la diferencia entre dos valores sucesivos de x es
en valores absolutos inferior a una precisión, E, previamente establecida.
1n nx x E
eq. 6
Es evidente que si la ecuación tiene más de una solución, habrá que realizar una
iteración para valores cercanos a cada solución.
Se produce la convergencia sólo si la pendiente de la curva en el rango del tanteo
es inferior a la unidad. No obstante, se puede resolver esta cuestión multiplicando toda
la función por un factor constante que haga que se cumpla esta condición.
Problema 3:
Empleando el método de la iteración directa, determina el valor de x que
cumple la ecuación con una precisión superior a la milésima si se parte de un valor
inicial x = 0.5
2log x x x
eq. 7
Solución:
Primero hay que expresar la ecuación de la forma x = f(x):
8
2 logx x x
eq. 8
Se nos pide que entre valores sucesivos de x, la diferencia en valor absoluto sea
inferior a E = 0.001:
1n nx x E
1 0.001n nx x
Construimos la Tabla 3, donde cada fila representa una iteración sucesiva.
Tabla 3
Iteración, n xn xn+1 Precisión
0 0,500 0,551 0,051
1 0,551 0,562 0,011
2 0,562 0,566 0,004
3 0,566 0,568 0,001
4 0,568 0,568 0,001
5 0,568 0,568 0,000
Se comprueba que en la iteración 5 el valor de x se hace constante con una
precisión inferior a la milésima.
Problema propuesto 4:
Partiendo de un valor de x = 1, x=-1, x=0,9, x=0,1, y estableciendo una precisión de una
milésima, resolver, si es posible, la siguiente ecuación por el método de la iteración
directa:
2 logx x x
9
4.- Método de Newton
La ecuación debe ser del tipo:
( ) 0f x
eq. 9
El procedimiento consiste en lo siguiente:
1. Partir de un valor x0 (al principio la iteración es n = 0)
2. Calcular f(xn)
3. Comparar el valor absoluto de f(xn) con una precisión establecida E
4. Si no se ha alcanzado la precisión calcular la derivada de la función
en el punto, f’(xn)
5. Calcular el siguiente valor para la iteración (n = n +1) mediante
1
( )
'( )
nn n
n
f xx x
f x
eq. 10
y se repite el proceso continuando en el paso 2 con el nuevo valor
de x hasta alcanzar la precisión establecida.
Problema 4:
Queremos determinar las dos soluciones de la ecuación:
2 20ln 0x x
eq. 11
Sabemos que habrá dos soluciones porque hay un término con x al cuadrado.
Además disponemos de una representación gráfica (Figura 2) que nos indica que
aproximadamente en 1 la función se anula y por tanto se cumple la eq. 11. Se pide
determinar con precisión cuáles son estos valores.
10
Figura 2
Solución:
La función es:
2( ) 20lnf x x x
eq. 12
y su derivada:
20'( ) 2f x x
x
eq. 13
a) Valor de partida x0 = 7
Se calcula primeramente el valor de la función en este punto inicial.
2(7) 7 20ln7 49 20 1.9459 10.0818f
El valor de la función está muy alejado de cero, por lo que se debe buscar una
nueva “x” mejorada empleando la eq. 10. Se necesita evaluar también la derivada en 7
(Substituyendo en la eq. 13):
20'(7) 2 7 14 2.8571 11.1429
7f
El siguiente valor x1 será entonces:
01 0
1
( ) 10.08187 7 0.9048 6.0952
( ) 11.1429
f xx x
f x
-15
-10
-5
0
5
10
15
20
0 1 2 3 4 5 6 7 8
11
Calculamos ahora f(6.0952) = 1.0014 que es un valor todavía muy alejado de cero. Se
siguen haciendo iteraciones y tal como se comprueba en la Tabla 4 en la tercera
llegamos a la convergencia con un valor de x = 5.9809
Tabla 4
Iteración, n xn f(xn) f'(xn) xn+1
0 7,0000 10,0818 11,1429 6,0952
1 6,0952 1,0014 8,9091 5,9828
2 5,9828 0,0161 8,6227 5,9809
3 5,9809 -0,0003 8,6178 5,9809
Problema propuesto 5:
Completar el problema 4 anterior, tomando como punto de partida x0 = 0.5 y encontrar
la segunda solución.
Problema propuesto 6:
Partiendo de un x0 = 1,5, resolver mediante el método de Newton y con una precisión
de la millonésima, la siguiente ecuación:
1
xx e
12
5.- Método de la “Regula Falsi”
La ecuación debe encontrarse también en la ya conocida forma:
( ) 0f x
eq. 14
El método consiste en determinar previamente dos valores de x, a y b. El valor
de a hace que la función sea negativa y el valor de b hace que la función sea
positiva. Esto es análogo al método de la bisección.
( ) 0f a
( ) 0f b
pero ahora el nuevo valor, r, no se toma como media de a y b sino mediante la
expresión siguiente:
( ) ( )
( ) ( )
af b bf ar
f b f a
eq. 15
Se determina el valor de f(r) para comprobar si se acerca a cero con una
precisión E adecuada. Si no es así, se plantea uno de los dos cambios siguientes:
1.- Si f(r) < 0, entonces a = r
2.- Si f(r) > 0, entonces b = r
Se vuelve a calcular un nuevo r según la eq. 15, que si genera un f(r)
suficientemente cercano a cero se acaba el proceso o bien se continua iterando hasta
conseguirlo.
Problema 5:
Se ve a simple vista que la ecuación:
10 10 0xx
Tiene una solución para x = 1, ya que:
110 1 10 10 10 0
Pero hay otra solución no tan evidente que se encuentra entre 0 y 0.5. Se pide
encontrarla.
13
Solución:
Primero comprobamos si 0 y 0.5 nos pueden servir como el intervalo inicial.
Para ello calculamos f(0) y f(0.5) y comprobamos su signo:
0(0) 10 0 10 0 1 1f
0.5(0.5) 10 0.5 10 5 3.1623 1.8377f
Efectivamente, podemos emplear a = 0 y b = 0.5. Aplicando la eq. 15,
obtenemos el valor, r, de la nueva x: 0.1762. Como f[r]es positivo, b=r. En la tabla se
muestran las iteraciones realizadas que conducen al valor de 0.1371 en la cuata
iteración con un error tan solo de una diezmilésima.
Tabla 5
Iteración, n r f(r) a b f(a) f(b)
0 0,0000 0,5000 -1,0000 1,8377
1 0,1762 0,2616 0,0000 0,1762 -1,0000 0,2616
2 0,1397 0,0173 0,0000 0,1397 -1,0000 0,0176
3 0,1373 0,0011 0,0000 0,1373 -1,0000 0,0012
4 0,1371 0,0001
El método de la “regula falsi” presenta las ventajas del método de la bisección y
del método de Newton juntos.
Problema propuesto 7:
Usar el método de la regula falsi para resolver la siguiente ecuación en el intervalo
[1,2]: 1
xx e
partiendo de x0 =1,5 y con una precisión de la milésima.
Granada, mayo de 2012