Documentos de Académico
Documentos de Profesional
Documentos de Cultura
UNIDAD
CEROS DE FUNCIONES
Métodos de Bisección
Newton y Secante
1.1. Introducción
1
2 TEMA 1: Ceros de funciones
x x
Figura 1.1: Gráficas de g(x) = tg(x) y g(x) = 6
y de f (x) = tg(x) − 6
ejemplos anteriores de cuerdas y vigas. Es por ello que en la práctica hemos de conformarnos
con obtener soluciones aproximadas o con aproximar la o las soluciones. Se trata por tanto
de sustituir la búsqueda de α ∈ IR tal que f (α) = 0 por α̂ ∈ IR tal que α̂ ≃ α y además
f (α̂) ≃ 0. Precisar el significado de las expresiones anteriores, que involucran conceptos
precisos de convergencia, será uno de los objetivos de este Tema y nos obligará asimismo
a introducir algunos de las nociones más relevantes en el ámbito del Cálculo Numérico,
como son, algoritmo, error y velocidad de convergencia.
Comenzaremos con el siguiente ejemplo:
√ (x) = x2 −2, entonces la ecuación f (x) = 0
Si f√
tiene dos soluciones que son x = − 2 y x = 2. Si disponemos√ de una calculadora es-
tándar podemos rápidamente obtener la aproximación 2 ≃ 1.41 sin más que pulsar el
correspondiente botón. Nuestra intención es mostrar cómo puede obtenerse una aproxi-
mación del valor anterior sin utilizar la calculadora. Concretamente, vamos a buscar una
aproximación de la√que podamos asegurar que tiene dos cifras decimales correctas; es decir
que comparte con 2 la parte entera y las dos primeras cifras decimales.
Para ello, observamos que las soluciones de la ecuación x2 − 2 = 0 corresponden con los
cortes de la función f con el eje de abscisas y como buscamos la solución positiva, solo nos
interesa el corte que se produce en el intervalo [1, 2], ver la Figura 1.2.
El Método de aproximación que vamos a emplear tienen su fundamento en el conocido
Teorema de Bolzano para funciones continuas en un intervalo: si una función continua toma
valores de signo opuesto en los extremos de un intervalo, entonces se anula al menos una
vez en su interior. En nuestro procedimiento también tendremos√ en cuenta que la ecuación
x2 = 2 tiene exactamente una solución positiva, concretamente 2.
Etapa inicial: Como f (1) =√ −1 < 0 y f (2) = 2 > 0, necesariamente f se anula
entre 1 y 2, de manera que 1 < 2 < 2. Definimos x0 = 2 (aunque también podíamos
haber tomado x0 = 1).
Primera etapa: Si consideramos x1 = 32 , el punto medio del intervalo anterior, como
f 32 = 94 − 2 = 41 > 0, resulta f toma valores de signo opuesto en los extremos del intervalo
√
I1 = 1, 23 , lo que implica que f debe anularse en su interior, y por tanto que 1 < 2 < 32 .
5
3
Segunda
etapa: Si consideramos x 2 = 4
, el punto medio del intervalo 1, 2 , como
5 25 −7
f 4 = 16 − 2 = 16 < 0, resulta f toma valores de signo opuesto en los extremos del
intervalo I2 = 54 , 23 , lo que implica que f debe anularse en su interior, y por tanto que
5
√
4
< 2 < 23 .
11
5 3
Tercera
etapa: Si consideramos x 3 = 8
, el punto medio del intervalo , , como
4 2
11 121 −7
f 8 = 64 − 2 = 64 < 0, resulta f toma valores de signo opuesto en los extremos del
intervalo I3 = 11 , 3 , lo que implica que f debe anularse en su interior, y por tanto que
11
√ 8 2
8
< 2 < 23 .
23
11 3
Cuarta
etapa: Si consideramos x 4 = 16
, el punto medio del intervalo , , como
8 2
23 529 17
f 16 = 256 − 2 = 256 > 0, resulta f toma valores de signo opuesto en los extremos del
intervalo I4 = 11 , 23 , lo que implica que f debe anularse en su interior, y por tanto que
11
√ 23
8 16
8
< 2 < 16 .
45
11 23
Quinta
etapa: Si consideramos x 5 = 32
, el punto medio del intervalo , , como
8 16
45 2025 −23
f 32 = 1024 − 452 =23
1024 < 0, resulta f toma valores de signo opuesto en los extremos del
intervalo I5 = 32 , 16 , lo que implica que f debe anularse en su interior, y por tanto que
45
√ 23
32
< 2 < 16 .
91
45 23
Sexta
etapa: Si consideramos x6 = 64
, el punto medio del intervalo , , como
32 16
91 8281 89
f 64 = 4096 − 452 =91
4096 > 0, resulta f toma valores de signo opuesto en los extremos del
intervalo I6 = 32 , 64 , lo que implica que f debe anularse en su interior, y por tanto que
45
√ 91
32
< 2 < 64 .
181
45 91
Séptima
32761 etapa: Si consideramos x 7 = 128
, el punto medio del intervalo , , como
32 64
181 −7
f 128 = 16384− 2 = 16384 < 0, resulta f toma valores de signo opuesto en los extremos del
181 91
intervalo I7 = 128 , 64 , lo que implica que f debe anularse en su interior, y por tanto que
181
√ 91
128
< 2 < 64 .
363
181 91
Octava etapa:
131769 Si consideramos x8 = 256
, el punto medio del intervalo , , como
128 64
363 687
f 256 = 65536 − 2 =65536 > 0, resulta f toma valores de signo opuesto en los extremos del
181 91
intervalo I8 = 128 , 64 , lo que implica que f debe anularse en su interior, y por tanto que
181
√ 363
128
< 2 < 256 .
√
Observar que en la etapa k, k = 1, . . . , 8 hemos definido un intervalo Ik tal que 2 ∈ Ik
y cuya longitud es ℓ(Ik ) = 21k . Asimismo, hemos determinado también un valor xk ∈ Ik .
Como la distancia entre dos puntos de un intervalo es menor o igual que la longitud del
mismo, resulta que
√ 1
xk − 2 < , k = 1, . . . , 8,
2k
√
es decir, para cada k, k = 1, . . . , 8, xk aproxima el valor de 2 con un error inferior a 21k . En
la siguiente tabla, resumimos la información obtenida. En ella hemos resaltado las cifras
correctas que vamos obteniendo, utilizando el siguiente criterio: si tenemos un intervalo
de la forma I = [1.5a2 a3 a4 . . . , 1.5b2 , b − 3b4 . . .], donde aj , bj son dígitos comprendidos
entre 0 y 9, entonces cualquier número x ∈ I se expresará como x = 1.5c2 c3 c4 . . ., donde
cj es un dígito comprendido entre 0 y 9.
1
Iteración Extremo a Extremo b f (a) f (b) xk Errork = 2k
0 1.0 2.0 −1.0 2.0 2.0 1.0
1 1.0 1.5 −1.0 0.25 1.5 0.5
2 1.25 1.5 −0.4375 0.25 1.25 0.25
3 1.375 1.5 −0.109375 0.25 1.375 0.125
4 1.375 1.4375 −0.109375 0.06640625 1.4375 0.0625
5 1.40625 1.4375 −0.022460938 0.06640625 1.40625 0.03125
6 1.40625 1.421875 −0.022460938 0.021728516 1.421875 0.015625
7 1.4140625 1.421875 −0.000427246 0.021728516 1.4140625 0.0078125
8 1.4140625 1.41796875 −0.000427246 0.010635376 1.41796875 0.00390625
√
Observar que |x8 − 2| < 0.00390625 √ < 0.005 = 0.5 · 10 , que como explicaremos más
−2
√
El proceso que hemos utilizado para obtener una aproximación de 2 es un ejemplo
de los denominados Métodos Iterativos: Partimos de una aproximación, inicial x0 , de α y la
aplicación del algoritmo, en este caso el método deducido del teorema de Bolzano, obtiene
otra aproximación, x1 , de α que en nuestro caso es el punto medio del intervalo de partida.
Procediendo repetidamente , se construye una sucesión {xk }, de aproximaciones de α
x0 −→ x1 −→ x2 −→ x3 −→ x4 −→ · · · −→ xk −→ · · ·
· · · x3 x1 x0
En general, los criterios por los que se detiene un algoritmo se denominan criterios de
convergencia.
En este curso nos preocuparemos de describir los tres primeros métodos, mencionados;
es decir los de bisección, Newton y secante.
para cada ε > 0, existe k0 ∈ N tal que es |xk − α| < ε para cada k ≥ k0 .
Observar también que Ek = rk cuando |α| = 1, que rk < Ek cuando |α| > 1, mientras que
Ek < rk cuando |α| < 1.
Si suponemos que un método de aproximación o algoritmo, determina una sucesión
de aproximaciones {xk } que suponemos convergente; es decir, xk → α, a una solución,
α, del problema planteado (en este caso f (x) = 0), lo que es claro es que no podemos
aplicar el algoritmo infinitas veces y por tanto hemos de decidir cuándo debemos para
de aplicarlo, o en otras palabras, cuándo la aproximación xk es una solución aceptable del
problema. Para ello, fijamos previamente la Tolerancia, tol (error máximo que aceptamos)
y paramos el algoritmo cuando o bien el error absoluto Ek = |α − xk | o bien el error relativo
|α − xk |
rk = , cuando α 6= 0, sea inferior a la tolerancia; es decir cuando o bien Ek < tol
|α|
o bien rk < tol. Si elegimos tol = 21 · 10−m , entonces que Ek < 21 10−m significa que la
aproximación xk tiene m cifras decimales correctas, respecto de α, mientras que rk < 12 ·10−m
significa que la aproximación xk tiene m dígitos significativos correctos, respecto de α, veáse
[5, páginas 73-74] para una explicación del significado y alcance de estos conceptos.
En la práctica, los criterios de parada anteriores son inaplicables, pues desconocemos el
valor de α. Sin embargo, si asumimos que el método converge; es decir que xk → α, podemos
utilizar el siguiente criterio de convergencia, que sólo depende de los valores obtenidos
de la sucesión de aproximantes {xk }: Si definimos E bk = |xk+1 − xk | y r̂k = |xk+1 − xk | ,
|xk+1 |
b
pararemos el algoritmo cuando o bien Ek < tol o bien r̂k < tol. Observar que esto significa
que paramos el algoritmo cuando o bien el error o bien el error relativo, respecto del iterante
k + 1-ésimo, es menor que la tolerancia. En definitiva, en la práctica hemos sustituido α por
una aproximación xk+1 , ya que si el algoritmo converge xk+1 puede tomarse tan próximo
a α como se desee. Naturalmente para que el criterio de parada con el error relativo sea
efectivo, necesitamos que α 6= 0 (observar que si xk → α y α 6= 0, entonces xk 6= 0 para
|xk+1 − xk |
k ≥ k0 y por tanto, tiene sentido la expresión r̂k = si k ≥ k0 ).
|xk+1 |
En general, el criterio de parada que estableceremos tendrá como referencia el error rela-
tivo. Por tanto, no será aplicable cuando α = 0. En este caso, consideraremos E << tol y
tomaremos como criterio de parada
Figura 1.4: Función con crecimiento rápido (iz.) y crecimiento lento (der.) (fuente [4])
Atención: No se puede pedir que las tolerancias sean menores que la precisión de la
máquina δ. En MATLAB, δ = 10−16 . Por tanto, si |f (xk )| < δ (tenemos una solución
que para la máquina es exacta) ó |xk+1 − xk | < δ, (xk y xk+1 son indistinguibles para la
|xk+1 − xk |
máquina) ó < δ, (nuevamente xk y xk+1 son indistinguibles para la máquina),
|xk+1 |
pararemos el algoritmo. En definitiva,
|xk+1 − xk |
el algoritmo se detiene si < δ o bien |f (xk )| < δ. También se detiene si
|xk+1 |
fijadas previamente las tolerancias tolx >> δ y tolf >> δ, se satisface que
|xk+1 − xk |
rk = < tolx y |f (xk )| < tolf simultáneamente,
|xk+1 |
Observar que si tolx = 21 10−m y rk < tolx , entonces log(rk ) < −m − log(2) = −m − 0.3,
donde log es el logaritmo en base 10 de manera que
Diremos que una sucesión de números reales {xk }∞k=0 converge a α ∈ IR con orden
de convergencia p ≥ 1 si existe una constante C ≥ 0 tal que
|xk+1 − α|
lı́m = C.
k→∞ |xk − α|p
Recordar que para cada r > 0 se tiene que lı́m+ z r = 0. Por tanto, si suponemos que
z→0
|xk − α| < 1, entonces si 1 ≤ q < p resulta que
|xk+1 − α|
es decir, si una sucesión {xk }∞
k=0 tiene orden de convergencia p, entonces lı́m =0
k→∞ |xk − α|q
para cada 1 ≤ q < p. En definitiva,
1 1
Ejemplos: Las sucesiones an = y bn = n tienen orden de convergencia lineal, y sus
n 2
factores asintóticos de convergencia son 1 y 21 , respectivamente. La sucesión cn = 321n tiene
orden de convergencia cuadrático, con factor asintótico de convergencia igual a 1.
Observar que el orden de convergencia de una sucesión convergente, está expresado en
términos de los errores absolutos. De hecho, podemos reformular la definición como
Una sucesión de números reales {xk }∞ k=0 converge a α ∈ IR con orden de conver-
gencia p ≥ 1 si y sólo si existe una constante C ≥ 0 tal que
Ek+1
lı́mp = C.
k→∞ Ek
una sucesión de números reales {xk }∞ k=0 converge a α ∈ IR, α 6= 0, con orden de
convergencia p ≥ 1 si y sólo si existe una constante C ≥ 0 tal que
rk+1
lı́m p = C.
k→∞ r
k
Por tanto, si dado ε > 0 consideramos bε = log(C) + ε y b̂ε = log(C) − ε, existe k0 tal que
para cada k ≥ k0 ,
b̂ε + p log(rk ) ≤ log(rk+1 ) ≤ p log(rk ) + bε .
Si tomamos k = k0 , obtenemos b̂ε + p log(rk0 ) ≤ log(rk0 +1 ) ≤ p log(rk0 ) + bε , lo que implica
que
b̂ε + p b̂ε + p log(rk0 ) ≤ b̂ε + p log(rk0 +1 ) ≤ log(rk0 +2 )
≤ bε + p log(rk0 +1 ) ≤ bε + p bε + p log(rk0 ) .
pk − 1
• Si p > 1, teniendo en cuenta que 1 + p + · · · + pk−1 = ,
p−1
b̂ b̂ε b bε
ε ε
pk + log(rk0 ) − ≤ log(rk+k0 ) ≤ pk + log(rk0 ) − .
p−1 p−1 p−1 p−1
si {xk }∞
k=0 converge a α ∈ IR, α 6= 0, con orden de convergencia p ≥ 1, entonces
existen a, â, c, ĉ ∈ IR con a, â < 0 y k0 ∈ N tales que:
En la siguiente Figura, representamos las gráficas de las funciones ax+b, apx +b, 1 < p < 2
y a2x + b, con a < 0, que corresponden a órdenes de convergencia lineal, superlineal y
cuadrática, respectivamente.
Describiremos aquí el método conceptualmente más sencillo para aproximar las solu-
ciones de la ecuación f (x) = 0; es decir, para determinar ceros de funciones de manera
aproximada. Bajo las condiciones que estableceremos inmediatamente, el algoritmo con-
siste en la construcción de una sucesión de intervalos cerrados en los cuales se encuentra una
solución del problema y cuya longitud tiende a 0, concretamente en cada iteración la longi-
tud del intervalo se divide entre 2. Su fundamento teórico es un conocido resultado sobre
funciones continuas de una variable:
Es importante señalar que el anterior resultado determina que si una función continua en
un intervalo cerrado toma valores de signo opuesto en los extremos del intervalo, se anula
al menos una vez en el interior del intervalo. Así pues, el teorema asegura que bajo las
hipótesis enunciadas, el problema f (x) = 0 tiene al menos una solución, pero no asegura
que haya una única solución ni dice nada sobre la cantidad de ellas. Este tipo de resultados
cuantitativos, suelen requerir información adicional sobre f , por ejemplo que sea derivable
en (a, b) y emplear además otros teoremas, como por ejemplo Rolle.
La demostración del Teorema de Bolzano básicamente determina el algoritmo para
encontrar una solución del problema. Esquemáticamente, dicho el algoritmo consiste en:
a0 + b0
2.- Calculamos el punto medio del intervalo I0 : xm =
2
◮ Si f (xm ) = 0, definimos a1 = b1 = xm y el intervalo I1 = [a1 , b1 ], cuya longitud
b−a
es ℓ1 = 0 < .
2
◮ Si f (a0 )f (xm ) < 0, definimos a1 = a0 , b1 = xm e I1 = [a1 , b1 ], cuya longitud es
ℓ0 b−a
ℓ1 = = .
2 2
◮ Si f (a0 )f (xm ) > 0, entonces f (b0 )f (xm ) < 0 y definimos a1 = xm , b1 = b0 e
ℓ0 b−a
I1 = [a1 , b1 ], cuya longitud es ℓ1 = = .
2 2
3.- Repetimos el proceso para el intervalo I1
Con este proceso generamos dos sucesiones {ak } y {bk } con las siguientes propiedades:
a = a0 ≤ a1 ≤ · · · ak ≤ · · ·
b = b0 ≥ b1 ≥ · · · bk ≥ · · ·
b−a
0 ≤ bk − ak ≤ k , k = 0, 1, 2, . . .
2
f (ak )f (bk ) ≤ 0, k = 0, 1, 2, . . .
Como {ak } es una sucesión creciente, existe α = lı́m ak y como {bk } es una sucesión
k→∞
decreciente, existe β = lı́m bk . La continuidad de f implica que lı́m f (ak ) = f (α), y que
k→∞ k→∞
lı́m f (bk ) = f (β) y por tanto f (α)f (β) = lı́m f (ak )f (bk ) ≤ 0.
k→∞ k→∞
b−a
Por otra parte, como ak ≤ bk , k ∈ IN, resulta que α ≤ β y como 0 ≤ bk − ak < ,
2k
b−a
resulta que 0 ≤ β − α = lı́m = 0 y por tanto α = β. En definitiva,
k→∞ 2k
Inicialización:
In1: Número máximo de iteraciones: kM
In2: Contador de iteraciones: k = 0
In3: Tolerancias: tolx y tolf
In4: Comprobación condiciones: f (a)f (b) < 0
In5: Primer iterante: x0 = b
Iteración:
It1: Comprobación:
(i): Si k = kM =⇒ FIN
(ii): En otro caso, continuar
xk + a
It2: Obtención de la nueva aproximación: xk+1 =
2
It3: Evaluación: f (xk+1 )
(i): Si |f (xk+1 )| = 0 =⇒ FIN
(ii): En otro caso, continuar
It4: Test de convergencia:
(i): Si |f (xk+1 )| < tolf y rk < tolx =⇒ FIN
(ii): En otro caso continuar
Actualización:
Ac1: Text de hipótesis:
(i): Si f (xk+1 )f (xk ) < 0 =⇒ a = xk CONTINUAR
(ii): En otro caso continuar (a no se modifica)
Ac2: Actualización del contador: k = k + 1 y xk = xk+1
Por otra parte, el hecho de que en cada iteración el error absoluto se divida entre 2, implica
b−a
que después de m iteraciones, Em = |xm − α| < m . Por tanto, fijada una tolerancia
2
tolx es posible estimar el número de iteraciones necesarias para que Em < tolx :
log(b − a) log(10)
m> +n − 1 ∼ 3.32 n + 0.69 log(b − a) − 1.
log(2) log(2)
En resumen,
f (xk )
si f ′ (xk ) 6= 0, entonces xk+1 = xk − .
f ′ (xk )
Observar que como f ′ es continua, la condición f ′ (α) 6= 0 asegura que que f ′ (xk ) 6= 0
f (xk )
para xk suficientemente próximo a α, de manera que podemos definir xk+1 = xk − ′ .
f (xk )
Observamos que el Método de Newton es más costoso que el de la bisección, pues requiere
no sólo calcular f (xk ) sino también f ′ (xk ).
Por otra parte, la elección del primer iterante x0 es crítica para la convergencia del método.
Una mala elección de x0 puede hacer que el algoritmo anterior no converga. El éxito del
método de Newton sólo está garantizado si el primer iterante es suficientemente próximo a
una solución del problema. A veces ocurre que a pesar de elegir x0 próximo a una solución
de f (x) = 0, la sucesión construida por el Método de Newton converge a otra solución.
Por tanto, es conveniente utilizar toda la información disponible sobre la función f y, en
particular, disponer de una buena aproximición a la solución buscada. Si no disponemos
de ningún criterio para escoger un x0 aceptable, podemos perder toda la potencia del
método haciendo pruebas. Estos mismos problemas de convergencia, aparecen si f ′ (xk ) ≃ 0
para algún k, pues en este caso, la recta tangente a f en xk es casi horizontal y pequeños
errores en los valores introducidos, xk y f (xk ), pueden conducir a grandes discrepancias
en la obtención de xk+1 .
Para que el Método de Newton sea cuadrático es fundamental la hipótesis de que
f ′ (α) 6= 0. En este caso α se denomina cero simple de f . En general,
si f : (a, b) −→ IR es de clase C m+2 (a, b) y α ∈ (a, b) es un cero de orden m ≥ 2 (por
tanto doble como mínimo), entonces existe ε > 0 tal que para cada x0 ∈ [α − ε, α + ε] la
f (xk )
sucesión {xk } definida de manera iterativa como xk+1 = xk − ′ está bien definida y
f (xk )
converge a α con convergencia lineal y con factor asintótico de convergencia C = 1 − m1 .
A continuación expondremos el Algoritmo del Método de Newton tal y como debe ser
desarrollado para su posterior traducción a lenguaje de programación.
Método de Newton:
Objetivo: Hallar una solución de la ecuación f (x) = 0 donde f ∈ C 3 (a, b)
Inicialización:
In1: Número máximo de iteraciones: kM
Iteración:
It1: Comprobación:
(i): Si k = kM =⇒ FIN
(ii): En otro caso, continuar
It2: Evaluación:
Actualización:
Ac1: Actualización del contador: k = k + 1 y xk = xk+1
En resumen,
el método de Newton requiere que f ∈ C 3 (a, b) y tiene como características el que
es un algoritmo localmente convergente, de tipo cuadrático si el cero que se intenta
aproximar es simple. Por otra parte, tiene como inconvenientes, en cuanto al coste,
que es necesario evaluar la función y la derivada en cada iteración y en cuanto a la
convergencia, que depende de manera crítica de que x0 se escoja adecuadamente, ya
que en otro caso puede diverger. También puede diverger si f ′ (xk ) ≃ 0 para algún k.
Finalmente el método de Newton es de tipo lineal si el cero que se intenta aproximar
es de orden 2 o mayor.
Este método puede considerarse como una variante del de Newton en la que en lugar de
usar la recta tangente, consideramos la recta secante a la curva en dos puntos consecutivos.
El método se basa en, en cada iteración, aproximar la función f en un entorno del iterante
k-ésimo por su recta secante que pasa por los puntos en xk , f (xk ) y xk−1 , f (xk−1) :
f (xk ) − f (xk−1 )
f (x) ≃ f (xk ) + sk (x − xk ), donde sk = .
xk − xk−1
f (xi ) − f (xi−1 )
y = f (xi ) + (x − xi )
xi − xi−1
f (xk )
si sk 6= 0, entonces xk+1 = xk −
sk
Observamos que el Método de la secante es más costoso que el de la bisección, pero menos
que el de Newton. Por otra parte, la elección de los primeros iterantes x0 y x1 es crítica para
la convergencia del método. Una mala elección de x0 o de x1 puede hacer que el algoritmo
anterior no converga. Estos mismos problemas de convergencia, aparecen si sk ≃ 0 para
algún k, pues en este caso, la recta secante a f en xk y xk−1 es casi horizontal y pequeños
errores en los valores introducidos, xk , xk−1 , f (xk ) y f (xk−1 ), pueden conducir a grandes
discrepancias en la obtención de xk+1 .
A continuación expondremos el Algoritmo de la secante tal y como debe ser desarrollado
para su posterior traducción a lenguaje de programación.
Método de la secante:
Objetivo: Hallar una solución de la ecuación f (x) = 0 donde f ∈ C 3 (a, b)
Inicialización:
In1: Número máximo de iteraciones: kM
In2: Contador de iteraciones: k = 0
In3: Tolerancias: tolx y tolf
In4: Primeros iterantes: x0 y x1
Iteración:
It1: Comprobación:
(i): Si k = kM =⇒ FIN
(ii): En otro caso, continuar
It2: Evaluación:
(i): Cálculo de f (xk )
f (xk ) − f (xk−1 )
(ii): Cálculo de sk = y comprobación de que sk 6= 0
xk − xk−1
f (xk )
It3: Obtención de la nueva aproximación: xk+1 = xk −
sk
It4: Test de convergencia:
(i): Si |f (xk )| < tolf y rk < tolx =⇒ FIN
(ii): En otro caso continuar
Actualización:
Ac1: Actualización del contador: k = k + 1, xk−1 = xk y xk = xk+1
En resumen,
el método de la secante requiere que f ∈ C 3 (a, b) y tiene como características
el que es un algoritmo localmente convergente, de tipo superlineal si el cero que se
intenta aproximar es simple. Tiene además un coste moderado, inferior al de Newton,
pero como inconveniente en cuanto a la convergencia, que depende de manera crítica
de que x0 y x1 se escojan adecuadamente, ya que en otro caso puede diverger.
1.6. Problemas
Problema 1. Utilizar el Método de Bisección para encontrar una aproximación del cero
de la función f (x) = x3 − 7x2 + 14x − 6 en el intervalo [0, 1]. Detener el algoritmo cuando
se verifique tolx = tolf = 0.5.
(i) Demostrar que tiene una única solución en el intervalo [1, 2].
(iv) Realizar 3 iteraciones con el Método de Newton tomando como iterante inicial el
valor x0 = 2. Determinar el error relativo del último iterante, x3 .
(i) Demostrar que las gráficas de f y de g se cortan en un único punto, α del intervalo
[0, 1].
(iv) Realizar 2 iteraciones con el Método de Newton tomando como iterante inicial el
valor x0 = 0. Determinar el error relativo del último iterante, x2 .
x2 − 2x + 1
Problema 9. Se considera la función f (x) = .
1 + x2
(b) Encontrar la raíz por el Método de Newton, partiendo de x0 = 1 y con una tolerancia
tolx = tolf = 0.5 × 10−4
Problema 12. Determinar cuál o cuáles de las siguientes afirmaciones son ciertas: El
Método de Newton,
Problema 13. Para comparar la evolución de los errores relativos de las 5 primeras
iteraciones al calcular la raíz de la función f (x) = 2 − x3 , utilizar:
Representar en un gráfico los logaritmos de los valores absolutos de los errores relativos
|xk+1 − xk |
rk = para cada iteración.
|xk+1 |
[1] Alarcia, E., Fernando, M., González, M.L., Cálculo Numérico para Ingeniería Industrial.
Conceptos básicos y ejercicios, Universidad de Valladolid, 2015.
[3] Aubanell, A., Benseny, A., Delshams, A., Útiles Básicos de Cálculo Numérico. Ed. Labor,
1993.
[6] Kincaid, D., Cheney, W., Análisis Numérico, las matemáticas del cálculo científico.
Addison-Wesley Iberoamericana, 1994.
[7] Sanz-Serna, J., Diez Lecciones de Cálculo Numérico. Universidad de Valladolid, 1998.