MN1 BiseccionPuntoFijo

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 12

MÉTODOS NUMÉRICOS 3006907

NOTAS DE CLASE - SEMANA 01


SOLUCIÓN DE ECUACIONES DE UNA VARIABLE

Consideraremos el problema de aproximar raı́ces o soluciones de la ecuación f (x) = 0 para una función f dada. Una
raı́z de esta ecuación es llamada también un cero de la función f . En adelante, usaremos indistintamente las expresiones:
p es raı́z o solución de la ecuación f (x) = 0 o p es un cero de la función f .
Para aproximar a p vamos a estudiar diferentes métodos que generan una sucesión {xn }∞
n=n0 de aproximaciones, que
esperamos converja a p (n0 será 1 o 0 dependiendo del método empleado). Ası́ que primero vamos a recordar/definir
conceptos relacionados con la convergencia de una sucesión y conceptos relacionados con la medición del error al aproximar
la solución p.

Definición. Sea {xn }∞


n=1 una sucesión infinita de números reales. Esta sucuesión tiene el lı́mite x (convege a x) si
para cualquier ε > 0 existe un entero positivo N (ε) tal que |xn − x| < ε, siempre que n > N (ε). La notación

lı́m xn = x o xn −→ x
n→∞ n→∞

significa que la sucesión {xn }∞


n=1 converge a x.

La definición nos dice que, para cualquier ε > 0 siempre podemos encontrar un indice N (ε) a partir del cual se tiene que
x − ε < xn < x + ε, ∀n > N (ε) (los términos de la sucesión xn pertenecen al intervalo (x − ε, x + ε), ∀n > N (ε)). Además,
podemos inferir que, {xn }∞
n=1 converge a x si o sólo si

lı́m |xn − x| = 0 o |xn − x| −→ 0.


n→∞ n→∞

Ası́ que nuestro objetivo será construir una sucesión {xn }∞


n=n0 que converja a p y para ellos necesitamos que las distancias
|xn − p| converjan a cero, donde los términos xn serán las aproximaciones a la raı́z p. Primero, vamos a definir el concepto
de error.

|p∗ − p|
Definición. Si p∗ es una aproximación de p, el error absoluto es |p∗ − p| y el error relativo es siempre
|p|
que p 6= 0.

Por ejemplo, sabemos que el error absoluto cometido al medir dos áreas A y B son de 1 cm2 y 1 m2 , respectivamente.
¿Cómo saber en cual medida se cometió mayor error? o ¿como lo indican las medida del error, se cometió mayor error
en la medida del área B? Pero, si sabemos que el área A es una hoja de papel tamaño carta y el área B es el estadio
Atanasio Girardot, inmediatamente vemos que se cometió mayor error en el área de la hoja de papel tamaño carta ya que
sus errores relativos (que son cantidades adimensionales) son comparables
1 cm2 1 m2
error relativo área A = ≈ 1.6578 × 10−3 , error relativo área B = ≈ 1.2369 × 10−4 .
603.2246 cm2 8085 m2
El error absoluto es más visto como una medida de exactitud, mientras que el error relativo como una medida de precisión
(claramente, siempre que p 6= 0).

Definición. El número p∗ aproxima a p con t cifras significativas si t es el menor entero no negativo para el cual

|p∗ − p|
< 5 × 10−t
|p|
El término de cifras significativas se usa con frecuencia para describir vagamente el número de cifras decimales exactas
entre p∗ y p.

MÉTODO DE BISECCIÓN
Para construir la sucesión generada por el método de bisección, primero veremos un teorema que garantiza la existencia
de cero o ceros de una función f en un intervalo cerrado [a, b].

Teorema (Teorema del Valor Intermedio (T.V.I.).). Sea f : [a, b] → R una función continua en el intervalo
[a, b] y k un valor intermedio entre f (a) y f (b), entonces existe al menos un c ∈ (a, b) tal que f (c) = k.

Por ejemplo, en la gráfica se observa de la función f


es continua en [0.5, 2.5], f (0.5) = 0.76 y f (2.5) = 0.15.
Por T.V.I. para cualquier valor k entre f (0.5) y f (2.5),
existe al menos un c ∈ (0.5, 2.5) tal que f (c) = k.
En la gráfica se toma k = 0.6 ∈ (0.15, 0.76) y vemos
que existen c1 , c2 , c3 ∈ (0.5, 2.25) tal que f (ci ) = 0.6,
i = 1, 2, 3.

En particular, si f es continua en [a, b], f (a) y f (b) tienen signos opuestos, entonces k = 0 es precisamente un valor
intermedio y, por lo tanto, por T.V.I. existe por lo menos una raı́z p ∈ (a, b) de la ecuación f (x) = 0, esto es, f (p) = 0.

El método de bisección o búsqueda binaria consiste en dividir en dos el intervalo que contiene la raı́z p de la ecuación
f (x) = 0, construyendo ası́ una sucesión de puntos medios {pn }∞
n=1 que converge a la raı́z p. Siempre que se cumpla que
f es continua en [a, b] (denotado por f ∈ C[a, b]) y f (a) f (b) < 0, que gracias al T.V.I. garantiza la existencia de al menos
una raı́z p.

El método de bisección esta dado por: Supongamos que f ∈ C[a, b] y f (a) f (b) < 0, y que solo hay una raı́z en el intervalo.

a1 + b 1
Sean a1 := a y b1 := b y sea p1 := . Forzosamente debemos caer en uno de los siguientes casos:
2
(a) f (a1 ) f (p1 ) = 0: en este caso se tiene que f (p1 ) = 0; por lo tanto ya localizamos una raı́z, p1 , y se finaliza el proceso;

(b) f (a1 ) f (p1 ) < 0: por lo tanto f tiene una raı́z en el intervalo (a1 , p1 ) y definimos entonces a2 = a1 y b2 = p1 ;

(c) f (a1 ) f (p1 ) > 0: por lo tanto f tiene una raı́z en el intervalo (p1 , b1 ) y definimos entonces a2 = p1 y b2 = b1 ;
En los casos (b) y (c) anteriores f tiene una raı́z en el nuevo intervalo (a2 , b2 ). Por lo tanto, el proceso se vuelve a repetir
a2 + b 2
tomando el punto medio del nuevo intervalo (a2 , b2 ), p2 := y ası́ sucesivamente, hasta que se satisfaga algún
2
criterio de detención.
En el caso mostrado en la gráfica, vemos que f ∈ C[a, b], el signo de f (a) es negativo y el signo de f (b) es positivo, por lo
tanto f (a) f (b) < 0, por lo tanto, podemos proceder a general la sucesión de puntos medios {pn }∞
n=1 ası́

Como se ve en la figura, la distancia entre la nueva aproximación pn y la raı́z p esta acotada por la mitad de la longitud
b n − an
del intervalo [an , bn ], esto es, |pn − p| ≤ para todo n ≥ 1 y la longitud de cada intervalo [an , bn ] se puede escribir
2
b−a
en término de la longitud del intervalo inicial [a, b], obteniendo ası́ |pn − p| ≤ n ∀n ≥ 1.
2

Teorema. Supongamos que f ∈ C[a, b] y f (a) f (b) < 0. El método de bisección genera una sucesión {pn }∞
n=1
que converge a un cero p de f tal que
b−a
|pn − p| ≤ ∀n ≥ 1.
2n

De esta relación es inmediato que la sucesión de puntos medios {pn }∞ n=1 generada por el método de bisección siempre
b−a
converge. En efecto, lı́m pn = p si y sólo si lı́m |pn − p| = 0 y dado que 0 ≤ |pn − p| ≤ n , ∀n ≥ 1, por teorema de
n→∞ n→∞ 2
b−a
estricción (o del “sándwich”), como lı́m = 0 concluimos que lı́m |pn − p| = 0.
n→∞ 2n n→∞

Observaciones

Una desventaja del método de bisección es que podemos desechar una buena aproximación por estar bisecando el
intervalo (en la gráfica, note que p3 esta más cerca de p que p4 )

El método puede ser demasiado lento, pero al menos es un método en el que la convergencia está garantizada.

No sólo se genera una sucesión que converge a la raı́z p, se generan tres sucesiones {an }∞ ∞ ∞
n=1 , {bn }n=1 y {pn }n=1
convergentes a p. Siempre se cumple que si el signo de f (a) es positivo, entonces todas las imágenes de la sucesión
{an }∞ ∞
n=1 son positivas y las imágenes de la sucesión {bn }n=1 son negativa y viceversa. (En la figura se cumple que
las imágenes de la sucesión {an }∞ ∞
n=1 es negativas y las de {bn }n=1 son positivas.)

Ejemplo Demuestre que la ecuación (x − 2)2 − ln(x) = 0 tiene al menos una solución en el intervalo [1, 2] y obtenga una
aproximación por medio de la sexta iteración de bisección.
Solución. Sea f (x) = (x − 2)2 − ln(x). Notemos que f es una función continua en (0, ∞) y en particular en el intervalo
[1, 2], además
)
f (1) = (1 − 2)2 − ln(1) = 1 ( + )
hay cambio de signo, se cumple, f (1) f (2) < 0
f (2) = (2 − 2)2 − ln(2) = − ln(2) ( - )

por lo tanto, gracias al T.V.I. podemos garantizar que existe al menos una solución de la ecuación f (x) = 0 en el intervalo
[1, 2].

De hecho, si bien no tenemos a la mano una gráfica de la función f , esta-


mos buscando la solución de ecuación (x−2)2 −ln(x) = 0 que corresponde
a los puntos de corte entre las curvas (x − 2)2 y ln(x), que son más fami-
liares. En la gráfica vemos que en el intervalo [1, 2] hay un único cero p
de f y que f tiene dos ceros en su dominio.

Vamos a aproximar la solución perteneciente al intervalo [1, 2] empleando el método de bisección, para ello llenaremos la
siguiente tabla con las aproximaciones, teniendo en cuenta el signo que deben tener las imágenes de las sucesiones {an }∞
n=1
y {bn }∞
n=1 que en este caso son + y - , respectivamente

1+2
n an + bn - pn f (pn ) Empezamos calculando p1 = = 1.5 cuya imagen es f (p1 ) ≈
2
1 1 2 1.5 −0.1555 −0.1555 ( - ), por lo tanto b2 = p1 (cuyas imagenes son negativas)
1 + 1.5
2 1 1.5 1.25 0.3394 y a2 = a1 . Ahora, calculamos p2 = = 1.25 cuya imagen es
2
3 1.25 1.5 1.375 0.0722 f (p2 ) ≈ 0.3394 ( + ), por lo tanto a3 = p2 (cuyas imagenes son positivas)
4 1.375 1.5 1.4375 −0.0465 y b3 = b2 . Continuamos ası́ sucesivamente, que segun lo demostrado arri-
5 1.375 1.4375 1.40625 0.01066 ba, cuando n → ∞ se cumple que {an }∞ ∞ ∞
n=1 → p, {bn }n=1 → p y {pn }n=1 .

6 1.40625 1.4375 1.421875 0.01775 Notemos que, en este caso p5 esta más cerca de la solución p que p6 ,
↓ ↓ ↓ ↓ ↓ puesto que su imagen esta mas cerca a cero (la cercania medida en barras
∞ p p p 0 de valor absoluto). Pero, como no vamos a “tender al infinito”, ¿cuando
paramos?.
Para responder a esta pregunta, recordemos que estamos buscando la solución de la ecuación f (x) = 0, ası́ que un primer
criterio de parada será cuando la imagen de la aproximación pn sea “casi” cero, esto es, f (pn ) ≈ 0. Y un segundo criterio
serı́a cuando la aproximación pn este “cerca” a p, pero, no conocemos a p, ası́ que empleamos la cota dada en el teorema.

Criterios de parada Dada una tolerancia tol vamos a parar de generar puntos medios pn , esto es, aproximaciones de
la raı́z p cuando se cumpla una de las siguientes condiciones

|f (pn )| < tol,


b−a
|pn − p| < tol que no es más que parar cuando < tol.
2n
Ejercicios

1. Aproximar la segunda solución de la ecuación (x − 2)2 − ln(x) = 0.

2. Una forma de acelerar la convergencia del método de bisección puede ser que en lugar de bisecar el intervalo, dividir
b−a
en tres subintervalos y al proceder de manera similar al método de bisección se obtiene la relación |pn − p| ≤ n ,
3
∀n ≥ 1. Plantear un algoritmo para este método de trisección y aplicarlo para aproximar las dos soluciones de la
ecuación vista (x − 2)2 − ln(x) = 0.

3. Estudiar el método de regla Falsa o posición falsa, sección 2.5 del texto guı́a.
Por un momento vamos a dejar de lado el problema de aproximar ceros de una función f y nos vamos concentrar en
aproximar los puntos fijos de una función g.

Definición (Punto fijo). p es un punto fijo de la función g si g(p) = p. Gráficamente, los puntos fijos de g son los
“puntos” donde la gráfica de g se “corta” con la recta y = x.

Para aproximar p punto fijo de g vamos a generar una sucesión de aproximaciones {pn }∞
n=0 que esperamos converja a p.
Primero, recordemos unos resultados útiles para garantizar un análisis de convergencia.

Teorema (Teorema de los valores extremos (T.V.E.)). Si f ∈ C[a, b] entonces existen c1 , c2 ∈ [a, b] tales que
f (c1 ) ≤ f (x) ≤ f (c2 ) para todo x ∈ [a, b].

En este caso decimos que f (c1 ) y f (c2 ) son los valores mı́nimo y máximo que alcanza f en [a, b], respectivamente.

Teorema (Teorema del valor medio (T.V.M.)). Si f ∈ C[a, b] y f es diferenciable en (a, b), entonces existe al
menos un c ∈ (a, b) tal que
f (b) − f (a)
f ′ (c) =
b−a

Este teorema es importante para la demostración de unicidad de punto fijo y aunque la misma no se exhibe en estas notas,
este resultado es importante tenerlo presente.

Teorema. Si f es una función definida en un conjunto A de numeros reales y p ∈ A, entoces las siguientes
afirmaciones son equivalentes:

f es continua en p,

si {pn }∞
n=0 es cualquier sucesión en A que converge a p, entonces lı́m f (pn ) = f (p).
n→∞

MÉTODO DE PUNTO FIJO


Antes de aproximar el punto fijo de una función g en un intervalo [a, b], veamos el teorema que garantiza la existencia y
unicidad de punto fijo.

Teorema (T.E.U.P.F. (condiciones suficientes)). Si g ∈ C[a, b] y g(x) ∈ [a, b] para toda x ∈ [a, b], entonces g
tiene al menos un punto fijo en [a, b]. Si además, g ′ (x) existe para x ∈ (a, b) y existe una constante positiva
0 < k < 1 tal que |g ′ (x)| ≤ k para todo x ∈ (a, b), entonces g hay exactamente un único punto fijo p ∈ [a, b].

Notemos que gracias al teorema anterior, si una sucesión {pn }∞


n=0 converge a p y g es continua, entonces
 
g(p) = g lı́m pn = lı́m g(pn )
n→∞ n→∞

ası́, si generamos la sucesión {pn }∞


n=0 haciendo pn+1 = g(pn ) para cada n ≥ 0, se tiene que

g(p) = lı́m g(pn ) = lı́m pn+1 = p


n→∞ n→∞
es decir, p es un punto fijo de p.
Ahora, la pregunta es: ¿como hacemos que la sucesión generada por la iteración de punto fijo

pn+1 = g(pn ) n ≥ 0

converja a p? La respuesta la encontramos en el siguiente resultado.

Teorema (Convergencia P.F.). Si la función g satisface las hipotesis del T.E.U.P.F. en [a, b], para cualquier
p0 ∈ [a, b] la sucesión generada por la iteración pn = g(pn−1 ), ∀n ≥ 1, converge a p y se cumple

|pn − p| ≤ k n |p0 − p|, ∀n ≥ 1


|pn − p| ≤ k n máx{b − p0 , p0 − a}, ∀n ≥ 1
n
k
|pn − p| ≤ |p1 − p0 |, ∀n ≥ 1
1−k

5ex

Ejemplo Demuestre que la función g(x) = ln tiene un único punto fijo p en el intervalo [2, 3]. Estime el
x2 − 1
número de iteraciones n necesarias para que |p − pn | ≤ 10−5 si tomamos p0 = 2.3 y calcule tales iteraciones.
Solución: Para demostrar que g tiene un único punto fijo en [2, 3], verifiquemos que g satisface las hipótesis del T.E.U.P.F.
5ex
⋆ g ∈ C[2, 3]: g es una función continua cuando x2 − 1 6= 0 y > 0. Esto es, x 6= ±1, 5ex > 0 y x2 − 1 > 0
−1 x2
(en vista que ex siempre es positiva); x2 − 1 > 0 si x ∈ (−∞, −1) ∪ (1, ∞). En particular, g es continua en [2, 3]
([2, 3] ⊂ (1, ∞))X

⋆ g(x) ∈ [2, 3], ∀x ∈ [2, 3]: para garantizar que las imágenes caen en [2, 3], podemos usar el T.V.E. ya que g es continua
en un intervalo cerrado. Busquemos el valor máximo y mı́nimo de g en [2, 3]:
Números crı́ticos: valores de x ∈ [2, 3] donde g ′ (x) = 0 o g ′ (x) no esta definida. Dado que
x2 − 2x − 1
g ′ (x) =
x2 − 1
g ′ no existe cuando x2 − 1 = 0, esto es en x = ±1 ∈ / [2, 3] y g ′ (x) = 0 cuando x2 − 2x − 1 = 0, esto es en
√ √
x1 = 1 − 2 ∈ / [2, 3] y x1 = 1 + 2 ∈ [2, 3], ası́ sus valores extremos son

g(2) ≈ 2.5108 


g(x1 ) ≈ 2.4491 mı́nimo 2.4491 ≤ g(x) ≤ 2.53 esto es, g(x) ∈ [2.4491, 2.53] ⊂ [2, 3], ∀x ∈ [2, 3] X

g(3) ≈ 2.53 máximo

⋆ g ′ existe en (2, 3) y existe k ∈ (0, 1) tal que |g ′ (x)| ≤ 1 para todo x ∈ (2, 3): g ′ existe en R \ {−1, 1}, en particular en
(2,3). Para hallar la constante k, dado que g ′ es continua en [2, 3], nuevamente emplearemos el T.V.E. para obtener
los valores extremos de g ′ en [2, 3]:
Números crı́ticos: valores de x ∈ [2, 3] donde g ′′ (x) = 0 o g ′′ (x) no esta definida. Dado que
2(x2 + 1)
g ′′ (x) =
(x2 − 1)2
g ′′ no existe cuando x2 − 1 = 0, esto es en x = ±1 ∈
/ [2, 3] y g ′′ nunca será cero ya que x2 > 0, ∀x ∈ R. En este caso
g ′ es creciente en [2, 3], por lo tanto sus valores extremos se alcanzan en los extremos del intervalo
)
g ′ (2) = − 31 mı́nimo 1 1 1
− ≤ g ′ (x) ≤ por lo tanto, |g ′ (x)| ≤ , ∀x ∈ [2, 3],
′ 1
g (3) = máximo 3 4 3
4

′ 1
en particular, |g (x)| ≤ 3, ∀x ∈ (2, 3) X
Gracias al T.E.U.P.F. podemos concluir que g tiene un único punto fijo p ∈ [2, 3]. Ahora, para estimar el número de
iteraciones n, utilizamos la segunda y/o tercer cota del teorema de convergencia P.F. (note que la primer cota no se
puede emplear ya que p no es conocido), teorema que nos garantiza la convergencia de la sucesión generada a partir de la
iteración de punto fijo. Del análisis anterior, tenemos que k = 31 , ası́ |pn − p| ≤ 10−5 si k n máx{b − p0 , p0 − a} ≤ 10−5
 n
1 1 0.7 1
máx{3 − 2.3, 2.3 − 2} ≤ 10−5 ⇔ máx{0.7, 0.3} ≤ 10−5 ⇔ ≤ 5 ⇔ 3n ≥ 70000
3 3n 3n 10

ln(70000)
n≥ ≈ 10.1549 y dado que n es un número iteraciones, el número estimado de iteraciones son n = 11. Ahora,
ln(3)
vamos aproximar el punto fijo de g hasta su undécima iteración, vamos a poner muchos decimales para que veamos la
convergencia
n pn
0 p0 = 2.3
1 p1 = g(p0 ) ≈ 2.453151179494175
2 p2 = g(p1 ) ≈ 2.449567466779666
3 p3 = g(p2 ) ≈ 2.449491314818230
4 p4 = g(p3 ) ≈ 2.449489774545428
5 p5 = g(p4 ) ≈ 2.449489743424906
6 p6 = g(p5 ) ≈ 2.449489742796144
7 p7 = g(p6 ) ≈ 2.449489742783440
8 p8 = g(p7 ) ≈ 2.449489742783183
9 p9 = g(p8 ) ≈ 2.449489742783178
10 p10 = g(p9 ) ≈ 2.449489742783178
11 p11 = g(p10 ) ≈ 2.449489742783178

Observaciones

1. Una ventaja del método de punto fijo es la facilidad al calcular las iteraciones, simplemente se calcula la imagen de
la iteración anterior.

2. Si la función g satisface las hipótesis del T.E.U.P.F. en [a, b] no sólo garantizamos la existencia única de punto fijo,
también se garantiza la convergencia de la sucesión {pn }∞
n=0 generada por la iteración pn+1 = g(pn ), n ≥ 0 para
cualquier aproximación inicial p0 ∈ [a, b].

3. Una pequeña desventaja del método de punto fijo, es verificar que en efecto se satisfagan las hipótesis del T.E.U.P.F.

4. Notemos que la convergencia del método lo garantiza el hecho que 0 ≤ |pn − p| ≤ k n máx{b − p0 , p0 − a} y el teorema
de estricción. Ası́, mientras mas pequeño sea k ∈ (0, 1) más rápida será la convergencia de la sucesión.

5. Nuevamente, ¿cuando paramos? Como lo vemos en las aproximaciones del ejemplo, a medida que se calculas mas
iteraciones vamos ganando decimales iguales, ası́ que un buen criterio de parada será cuando pn+1 este muy “cerca”
a pn .

Criterios de parada Dada una tolerancia tol y un número máximo de iteraciones nmax, vamos a parar de generar
aproximaciones pn del punto fijo p de g cuando se cumpla una de las siguientes condiciones

|pn+1 − pn | < tol,

n > nmax
El criterio asociado a nmax es empleado por si, el valor de tol es exageradamente pequeño y no se alcanza en un número
“prudente” de iteraciones.

Ejercicios

1. Estimar el número de iteraciones del ejemplo empleando la tercer cota del teorema de convergencia P.F., ¿que puede
decir con respecto al valor obtenido antes?

2. Estudiar la interpretación geométrica del método de punto fijo, sección 2.2 del texto guı́a.

Ahora la pregunta es: ¿qué relación hay entre un problema de raı́ces y un problema de puntos fijos?
Si partimos del problema de hallar el punto fijo p de la ecuación g(x) = x, rápidamente lo podemos transformar en un
problema equivalente, a saber, hallar la raı́z p de la ecuación g(x) − x = 0, si denotamos f (x) := g(x) − x, no es más,
hallar la raı́z p de la ecuación f (x) = 0.
De manera similar, pero no tan rápida, podemos pasar del problema de hallar la raı́z p de la ecuación f (x) = 0 a hallar
el punto fijo p de g, donde la(s) función(es) g se obtiene al “despejar” x de la ecuación f (x) = 0 o simplemente sumar y
restar un factor de x a ambos lados de la ecuación f (x) = 0.
Ejemplo Sea f (x) = x3 + 5ex + 3 en [−2, −1]. Hallar funciones de iteración g tales que f (x) = 0 sea equivalente a
x = g(x) en cierto dominio.

Solución: Unas primeras funciones de iteración g candidatas se obtienen al sumar y restar ax con a ∈ R, a 6= 0:

x3 + 5ex + 3 + ax
f (x) = 0 ⇔ x3 + 5ex + 3 + ax = ax ⇔ x=
a
x3 + 5ex + 3 + ax
ası́ las primeras posibles funciones de iteración serán: ga (x) = , a ∈ R, a 6= 0. Otras posibles funciones
a
de iteración vienen de despejar x de x3 + 5ex + 3 = 0, ası́

gA (x) = x = − 3 5ex + 3
 3 
x +3
gB (x) = x = ln −
5
5ex + 3
gC (x) = x = −
x2
3
2x + 5xex − 5ex − 3
gD (x) = x =
3x2 + 5ex
¿Cuales funciones g se pueden utilizar para hallar el cero de f en [−2, −1]? Notemos que para responder a esta pregunta,
según lo visto, la convergencia de la sucesión generada por la iteración de punto fijo pn+1 = g⋆ (pn ), para p0 ∈ [−2, −1]
depende del hecho que la función de iteración g⋆ satisfaga las hipótesis del T.E.U.P.F. en [−2, −1].

Observaciones

1. Hasta ahora, la ventaja de pasar de un problema de punto fijo x = g(x) a uno de raı́ces f (x) = 0, esta en el hecho que
si la función f es continua y hay cambio de signo, aplicamos bisección garantizando convergencia. Pero, ya hemos
dicho que es lenta.

2. Hasta ahora, la ventaja de pasar un problema de raı́ces f (x) = 0 a un problema de punto fijo x = g(x), es la rapidez
con la que se obtienen las iteraciones (simplemente evaluar en g). Pero, debemos verificar las hipótesis del T.E.U.P.F.
para garantizar la convergencia.

3. ¿De donde salio la función de iteración gD ?


MATLAB

En esta sección presentaremos ejercicios resueltos empleando MATLAB. Se listan las instrucciones que de ejecutan desde la ventana
de comandos de MATLAB (Command Window).
1. Considere la función
h(x) = cos(5x)(ex − tan−1 (x)) + e−x
¿Cuántos ceros tiene la función h en el intervalo [−1, 6]?
Para graficar podemos usar la instrucción fplot en la ventana de comandos de 150

MATLAB, ası́: 100

50

>> h=@(x) cos(5*x).*(exp(x)-atan(x))+exp(-x) 0

>> fplot(h,[-1,5]) -50

-100
>> grid on
-150
>> axis([-1 5 -1 1]) -200

la instrucción axis la empleamos puesto que la gráfica inicial no es claro el -250

-300
conteo de ceros de la función. -1 0 1 2 3 4 5 6

1
También se puede graficar, usando puntos
0.8

0.6 >> x = linspace(-1,5,100)


0.4
>> y = cos(5*x).*(exp(x)-atan(x))+exp(-x)
0.2
>> plot(x,y)
0

-0.2 De la gráfica tenemos que h tiene 8 ceros en [−1, 5]. Si se quiere que la curva
-0.4
se vea mejor, se puede agregar la instrucción Linewidth, ası́
-0.6

-0.8 >> fplot(f,[-1,6],’Linewidth’,2)


-1
-1 0 1 2 3 4 5
>> plot(x,y,’Linewidth’,2)

2. Considere la función
h(x) = ex cos(3x) − sen(5x + 1)
en el intervalo I := [−2, 1.5].

a) ¿Cuántos números crı́ticos tiene la función h en el intervalo I?


Recordemos que los números crı́ticos de la función h son los valores de x para los cuales h′ (x) no existe o h′ (x) = 0. Como la
función h es infinitamente diferenciable, los números crı́ticos son los valores de x donde h′ (x) = 0. Para contar los números
crı́ticos de h podemos contar los puntos de máximo o mı́nimo locales de h o calcular su derivada y contar el número de
ceros de h en el intervalo I
>> h=@(x) exp(x).*cos(3*x)-sin(5*x+1)
1 15

>> fplot(h,[-2,1.5],’Linewidth’,2) 0.5

0 10

>> grid on -0.5

-1 5

>> figure -1.5

0
-2

>> dh=@(x) -3*exp(x).*sin(3*x)+exp(x).*cos(3*x)-5*cos(5*x+1) -2.5

-5
-3

>> fplot(dh,[-2,1.5],’Linewidth’,2) -3.5

-2 -1.5 -1 -0.5 0 0.5 1 1.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5

>> grid on
En la gráfica de la izquierda podemos contar 3 puntos de máximo local y 3 puntos de mı́nimo local, por lo tanto, tenemos
6 números crı́ticos de la función h en el intervalo I. En la gráfica de la derecha podemos contar de la función derivada de
h tiene 6 ceros en el intervalo I, por lo tanto, confirmamos que h tiene 6 números crı́ticos en el intervalo I.
b) Aplicar el método de bisección para aproximar el menor número crı́tico de la función h hasta que se satisfaga una condición
delta=1e-8. Escribir el menor número crı́tico con 6 dı́gitos decimales por redondeo.
Para emplear el método de bisección necesitamos los siguientes datos de entrada f, a, b, delta y obtendremos los datos
de salida c, err, yc
[c, err, yc] = bisect (f, a, b, delta)
Para aproximar el menor número crı́tico de la función h, de la gráfica de la derecha podemos considerar el intervalo
[−2, −1.5] y ya nos dan el valor de delta. Pediremos que el formato de los números sea largo empleando la instrucción
format long. Al ejecutar el código de bisect obtenemos

>> format long


>> [c, err, yc] = bisect (dh, -2, -1.5, 1e-8)
c = -1.783027920871973
err = 7.450580596923828e-09
yc = 8.851815846977473e-08

c es el valor del menor cero de la derivada de h, esto es, el valor del menor número crı́tico de h en el intervalo I, err es la
longitud del último subintervalo donde se aplico el método de bisección y yc es el valor de la derivada de h en el valor c.
Ahora, nos piden el menor número crı́tico de h con 7 dı́gitos decimales por redondeo, esto es, el menor número crı́tico es
x = −1.783028 (como el séptimo dı́gito es 9 > 5, por redondeo el sexto dı́gito sube a 8).

c) Halle el valor mı́nimo de la función h en el intervalo I. (Escribir la aproximación con 6 dı́gitos decimales por redondeo.)
De la gráfica de la función h vemos que el mı́nimo valor se obtiene en el subintervalo [1, 1.5], para aproximarlo empleamos
el método de bisección en el intervalo [1, 1.5] usando la derivada de h

>> [c, err, yc] = bisect (dh, 1, 1.5, 1e-8)


c = 1.244903970509768
err = 7.450580596923828e-09
yc = -1.722818261384873e-07

luego el valor mı́nimo de h se obtiene evaluando h en el valor c obtenido

>> h(c)
-3.687829674933255

es decir, el valor mı́nimo de h en I es −3.68783 (como el séptimo dı́gito es 6 > 5, por redondeo el sexto dı́gito sube 1 dı́gito,
que a su vez sube el quinto dı́gito a 3).

3. Considere la ecuación
1 3 2
g(x) = x − cos(4x) + e−x tan−1 (x).
4 2
a) ¿Cuántos puntos fijos tiene la función g en el intervalo [−1, 4]?
Para contar el número de puntos fijos, graficamos la curva de función g y la recta y = x.
>> g=@(x) x-(1/4)*cos(4*x)+(3/2)*exp(-x.^2).*atan(x) 4

3.5
>> fplot(g,[-1,4],’Linewidth’,2)
3
>> grid on
2.5
>> axis([-1,4,-1,4]) 2

>> hold on 1.5

>> r=@(x) x 1

0.5
>> fplot(r,[-1,4],’Linewidth’,2)
0

La función g tiene 5 puntos fijos, vemos 4 puntos de corte entre la curva -0.5

-1
y la recta. -1 -0.5 0 0.5 1 1.5 2 2.5 3 3.5 4

b) Halle un subintervalo J del intervalo [−1, 4] donde la función g satisface el T.E.U.P.F.


Una de las condiciones del T.E.U.P.F. es que |g ′ (x)| ≤ k < 1, que graficamente representarı́a que la pendiente de la curva
‘cerca’ del punto fijo no sea muy inclinada. Eso descarta el primer, tercer y quinto punto fijo, por lo tanto nos concentramos
en el segundo y cuarto punto fijo.
Otra de las condiciones del T.E.U.P.F. es que g(x) ∈ J para todo x ∈ J. Dos intervalos candidatos serı́an J1 = [1, 1.8] y
J2 = [2.5, 3]. Veamos la grafica de g en estos intervalos
1.8 3

>> figure, hold on 1.7


2.95

2.9

>> fplot(g,[1,1.8],’Linewidth’,2) 1.6


2.85
1.5
2.8
>> fplot(r,[1,1.8],’Linewidth’,2)
1.4 2.75

>> figure, hold on 1.3


2.7

2.65
>> fplot(g,[2.5,3],’Linewidth’,2) 1.2
2.6
1.1
>> fplot(r,[2.5,3],’Linewidth’,2) 2.55

1 2.5
1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 2.5 2.55 2.6 2.65 2.7 2.75 2.8 2.85 2.9 2.95 3

en ambos casos se cumple la condición, es decir, g(x) ∈ J1 , ∀x ∈ J1 y g(x) ∈ J2 , ∀x ∈ J2 . Para estos intervalos veamos si se
cumple que |g ′ (x)| < 1, es decir, −1 < g ′ (x) < 1, para ello, grafiquemos la derivada de g en ambos intervalos

>> dg=@(x) 1+sin(4*x)+(3/2)*exp(-x.^2)./(x.^2)-3*x.*exp(-x.^2).*atan(x)

2 0.5

>> figure 0.4


1.5

>> hold on 0.3


1
>> grid on
0.2

>> fplot(dg,[2.5,3],’Linewidth’,2) 0.5


0.1

>> figure, hold on, grid on 0


0

>> fplot(dg,[1,1.8],’Linewidth’,2)
-0.5 -0.1
1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 2.5 2.55 2.6 2.65 2.7 2.75 2.8 2.85 2.9 2.95 3

′ ′ ′
Se cumple que |g (x)| < 1 para todo x ∈ J2 = [2.5, 3], especı́ficamente |g (x)| ≤ g (3) ≈ 0.462. Pero no se cumple que
|g ′ (x)| < 1 en todo el intervalo J1 , acá podrı́amos reducir J1 de tal modo que se cumpla la condición. Chequee que en
Ĵ1 = [1, 1.6] se satisface el T.E.U.P.F.

c) Aplique el método de punto fijo a la función g en el intervalo J, hasta que se satisfaga una tolerancia tol=1e-9.
Podemos aproximar el segundo y cuarto punto fijo de g. Para emplear el método de punto fijo necesitamos los siguientes
datos de entrada g, p0, tol, max1 y obtendremos los datos de salida p, k, err, P

[p, k, err, P] = fixpt (g, p0, tol, max1)

Dado que queremos que se satisfaga la condición de la tolerancia tol=1e-9, es decir, que las iteraciones paren hasta que la
distancia entre dos iteraciones consecutivas sea menor a 1e-9, damos un número muy alto del máximo de iteraciones max1.
Finalmente tomamos p0 perteneciente a los intervalos J2 y Ĵ1
>> [p, k, err, P] = fixpt (g, 1.4,1e-9,1000)
p = 1.406257441196537
k = 9 >> [p, k, err, P] = fixpt (g, 2.7,1e-9,1000)
err = 6.707103761272037e-10 p = 2.749846763371620
P = 1.406947320884853 k = 5
1.406190621781274 err = 5.220464061039820e-10
1.406264011200263 P =
1.406256796208994 2.749827135786985
1.406257504597315 2.749846864338650
1.406257435036808 2.749846762849574
1.406257441867247 2.749846763371620
1.406257441196537

p representa la aproximación al segundo punto fijo de g, k es el número de iteraciones que se ejecutaron hasta que se
cumpliera la condición de la tolerancia, err es la distancia entre dos últimas iteraciones consecutivas realizas y el vector P
tiene todas las iteraciones realizadas. Concluimos ası́ que el segundo punto fijo de g es x = 1.406257441196537 y el cuarto
es x = 2.749846763371620.
d ) Aproximar todos los puntos fijos de g en el intervalo [−1, 4].
Si se toman diferentes valores iniciales para p0 puede suceder que las sucesiones convergan a los puntos fijos que ya tenemos
o a puntos fijos fuera del intervalo, ejecute las siguientes instrucciones y lo notará

>> [p, k, err, P] = fixpt (g,0.2,1e-9,1000)


>> [p, k, err, P] = fixpt (g,1.8,1e-9,1000)
>> [p, k, err, P] = fixpt (g,3.5,1e-9,1000)
>> [p, k, err, P] = fixpt (g,1,1e-9,1000)
>> [p, k, err, P] = fixpt (g,0,1e-9,1000)

Ası́ que la forma de obtener los puntos fijos faltantes será trasformando el problema de puntos fijos en un problema de
ceros, es decir, trasformamos el problema x = g(x) en f (x) = 0 donde f (x) = x − g(x), más especı́ficamente, queremos
2
1
hallar los ceros de f (x) = 4
cos(4x) − 32 e−x tan−1 (x) en el intervalo [−1, 4].

>> f=@(x) (1/4)*cos(4*x)-(3/2)*exp(-x.^2).*atan(x)


>> fplot(f,[-1,4],’Linewidth’,2), grid on

0.4

0.2

-0.2

-0.4

-0.6

-0.8
-1 -0.5 0 0.5 1 1.5 2 2.5 3 3.5 4

Aplicaremos el método de bisección en los intervalos [0, 0.5], [1.6, 2] y [3, 4], ya que el segundo y cuarto los conocemos.

>> c1 = bisect (f,0,0.5,1e-9)


c1 = 0.143760462757200
>> c3 = bisect (f,1.6,2,1e-9)
c3 = 1.922719727829098
>> c5 = bisect (f,3,4,1e-9)
c5 = 3.534284431952983

Podemos chequear que en efecto estos son las aproximaciones a los tres puntos fijos faltantes

>> g(c1)
0.143760462858459
>> g(c3)
1.922719727933576
>> g(c5)
3.534284432214511

También podría gustarte