2. Resoluci´on num´erica de ecuaciones no lineales
Sea f : R → R. Dada la ecuaci´on
f(x) = 0
1. ¿Tiene alguna soluci´on?
2. ¿Cu´antas?
3. ¿C´omo las calculamos?
2.1. Existencia y unicidad de soluciones
Teorema 2.1 (Bolzano) Sea f : [a, b] → R continua tal que f(a)f(b) < 0. Entonces existe
c ∈ (a, b) tal que f(c) = 0.
Teorema 2.2 (Rolle) Sea f : [α, β] → R una funci´on continua en [α, β] y derivable en (α, β).
Si f(α) = f(β), entonces existe ξ ∈ (α, β) tal que f′(ξ) = 0.
Corolario 2.3 Si f′(x) 6= 0 en (a, b), entonces la c del teorema de Bolzano es ´unica.
2.2. M´etodo del punto fijo.
Cambiamos el problema. Vamos a resolver:
x = g(x)
Las soluciones de este problema se llaman puntos fijos de g.
Teorema 2.4 Si g ∈ C[a, b] y a ≤ g(x) ≤ b ∀x ∈ [a, b], entonces existe un punto fijo de g:
existe c ∈ [a, b] tal que c = g(c).
Teorema 2.5 Si adem´as g es derivable en (a, b) y |g′(x)| < 1 ∀x ∈ (a, b), entonces el punto
fijo es ´unico.
La iteraci´on de punto fijo se define como
x0 ∈ R (semilla)
xn+1 = g(xn) para n ≥ 0.
Generamos as´ı de manera recursiva una sucesi´on (xn).
2 Resoluci´on num´erica de ecuaciones no lineales
Teorema 2.6 Si g es continua y l´ım
n→∞
xn = c, entonces c = g(c).
Ejemplo 2.1 Vamos a resolver la ecuaci´on
x = e−x
con dos cifras de precisi´on:
x0 = = 0.50
x1 = e−0.50 = 0.61 . . .
x2 = e−0.61... = 0.55 . . .
x3 = e−0.55... = 0.58 . . .
x4 = e−0.58... = 0.56 . . .
x5 = e−0.56... = 0.57 . . .
x6 = e−0.57... = 0.56 . . .
x7 = e−0.56... = 0.57 . . .
x8 = e−0.57... = 0.57 . . .
0.45 0.5 0.55 0.6 0.65
0.45
0.5
0.55
0.6
0.65
exp(−x)
x
La soluci´on es c = 0.57 . . ..
Nota: Puede que haya punto(s) fijo(s) pero que la iteraci´on de punto fijo no converja. Por
ejemplo, para resolver
x = x2
que tiene dos puntos fijos c = 0 y c = 1. Si arrancamos en x0 = 2, se tiene que x1 = 4, x2 = 16,
x3 = 32, ... Claramente xn → +∞.
Definici´on 2.7 Una funci´on g : [a, b] → R se dice contractiva si existe 0 < k < 1 tal que
|f(x1) − f(x2)| ≤ k|x1 − x2| para todo x1, x2 ∈ [a, b].
Ejemplo 2.2
a) La funci´on f(x) = x/2 + 3 es contractiva en cualquier intervalo:
|f(x1) − f(x2)| = |x1/2 + 3 − (x2/2 + 3)| = |x1/2 − x2/2| =
1
2|x1 − x2|.
Luego la constante de contractividad en este caso es k = 1/2.
b) La funci´on f(x) = |x|/2 es contractiva en cualquier intervalo. Por las propiedades del valor
absoluto tenemos:
|f(x1) − f(x2)| =
|x1|/2 − |x2|/2

1
2|x1 − x2|.
Teorema 2.8 Si g : [a, b] → R es contractiva con constante de contractividad 0 < k < 1 en
[a, b] y adem´as
a ≤ g(x) ≤ b ∀x ∈ [a, b],
entonces la iteraci´on de punto fijo converge hacia la ´unica soluci´on c del problema para cualquier
semilla x0 ∈ [a, b]. Adem´as se tienen los siguientes resultados sobre el error:
|c − xn| ≤ kn|c − x0|, |c − xn| ≤
kn
1 − k |x1 − x0|, |c − xn| ≤
k
1 − k |xn − xn−1|
2.3 M´etodos de aproximaci´on de ra´ıces. 3
En la pr´actica, para comprobar que una funci´on derivable g(x) cumple la condici´on de mapeo
a ≤ g(x) ≤ b ∀x ∈ [a, b] no hay que comprobar todos los puntos del intervalo. Basta con hallar
todos los puntos xi ∈ (a, b) tales que g′(xi) = 0 y comprobar que a ≤ g(xi) ≤ b, a ≤ g(a) ≤ b y
a ≤ g(b) ≤ b.
El siguiente resultado nos proporciona una forma de ver si una funci´on es contractiva.
Teorema 2.9 Si g ∈ C1[a, b] y existe 0 < k < 1 tal que
|g′(x)| ≤ k < 1 ∀x ∈ [a, b],
entonces g es contractiva en [a, b].
En la pr´actica, para comprobar si una funci´on derivable 2 veces g(x) es contractiva, habr´a que
hallar los puntos pi ∈ (a, b) tales que g′′(pi) = 0 y ver que |g′(pi)| < 1 para todos ellos, |g′(a)| < 1
y |g′(b)| < 1. En este caso se puede tomar k = m´ax{|g′(a)|, |g′(b)|, |g′(pi)|}.
2.3. M´etodos de aproximaci´on de ra´ıces.
M´etodo de bisecci´on: Se basa simplemente en el Teorema de Bolzano. Generamos 3 sucesiones
(an), (bn) y (cn) de la siguiente manera:
a0 = a, b0 = b
Para n ≥ 0
• cn+1 =
an + bn
2
• si f(cn+1) · f(bn) < 0, tomamos an+1 = cn+1, bn+1 = bn
• si f(cn+1) · f(an) < 0, tomamos an+1 = an, bn+1 = cn+1
Por ejemplo: las sucesiones generadas por el m´etodo de bisecci´on para resolver la ecuaci´on
x − cos(x) = 0 en [0, π/3]
con XTOL = 5 · 10−3, son
n a b c fa fb fc
n n n+1
======================================
0 0.00 1.05 0.52 -1.000 +0.547 -0.342
1 0.52 1.05 0.79 -0.342 +0.547 +0.078
2 0.52 0.79 0.65 -0.342 +0.078 -0.139
3 0.65 0.79 0.72 -0.139 +0.078 -0.032
4 0.72 0.79 0.75 -0.032 +0.078 +0.023
5 0.72 0.75 0.74 -0.032 +0.023 -0.005
6 0.74 0.75 0.74 -0.005 +0.023 +0.009
7 0.74 0.74 0.74 -0.005 +0.009 +0.002
0 0.2 0.4 0.6 0.8 1 1.2 1.4
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
4 Resoluci´on num´erica de ecuaciones no lineales
Teorema 2.10 Sea f : [a, b] → R continua tal que f(a)f(b) < 0. Entonces la sucesi´on cn
generada por el m´etodo de bisecci´on converge hacia alg´un c ∈ (a, b) tal que f(c) = 0. Adem´as
|cn − c| ≤ bn − an =
b − a
2n .
M´etodo de regula falsi: En el m´etodo de bisecci´on no se usa ninguna informaci´on sobre
el valor de la funci´on, s´olo sobre su signo. Podemos mejorar eso cambiando la forma de tomar
cn+1. Ahora va a ser el punto de corte con el eje OX de la recta que pasa por los puntos (a, f(a))
y (b, f(b)):
cn+1 = bn − f(bn)
bn − an
f(bn) − f(an)
Las sucesiones generadas por el m´etodo de regula falsi para x − cos(x) = 0 en [0, π/3] con
XTOL = 5 · 10−3 son
n a b c fa fb fc
n n n+1
======================================
0 0.00 1.05 0.68 -1.000 +0.547 -0.103
1 0.68 1.05 0.74 -0.103 +0.547 -0.006
2 0.74 1.05 0.74 -0.006 +0.547 -0.000
Teorema 2.11 Sea f : [a, b] → R continua tal que f(a)f(b) < 0. Entonces la sucesi´on cn
generada por el m´etodo de regula falsi converge hacia alg´un c ∈ (a, b) tal que f(c) = 0. Adem´as,
existe una constante 0 < k < 1 y n0 ∈ N, tal que
|cn − c| ≤ k|cn−1 − c| ∀n ≥ n0.
Velocidad de convergencia: Antes de seguir estudiando m´etodos, vamos a dar una definici´on
que nos ayude a distinguir los m´etodos “r´apidos” de los m´etodos lentos.
Definici´on 2.12 Sea (xn) una sucesi´on tal que xn → x. Diremos que el orden de convergencia
de xn hacia x es p > 0 si existe k > 0 y n0 ∈ N tal que
|x − xn+1| ≤ k|x − xn|p ∀n ≥ n0
Si p = 1, y 0 < k < 1 la convergencia se dice lineal y k se llama factor de convergencia. Si
p = 2, la convergencia se dice cuadr´atica. Si
l´ım
n→∞
x − xn+1
|x − xn|
= 0
la convergencia se dice superlineal.
2.3 M´etodos de aproximaci´on de ra´ıces. 5
En la pr´actica, una de las maneras de comprobar si el orden de convergencia de una sucesi´on
es p es calcular el l´ımite
l´ım
n→∞
|x − xn+1|
|x − xn|p = ℓ
Si p > 1 y ℓ < ∞, el orden de convergencia es p.
Si p = 1 y ℓ = 0, la convergencia es superlineal.
Si p = 1 y 0 < ℓ < 1, la convergencia es lineal.
Ejemplo 2.3
a) xn = 1/n → x = 0, pero la convergencia no es ni siquiera lineal porque
l´ım
n→∞
|0 − 1/(n + 1)|
|0 − 1/n|1 = l´ım
n→∞
1/(n + 1)
1/n
= 1
b) xn = 1/2n → x = 0 linealmente porque
l´ım
n→∞
1/2n+1
|1/2n|1 = 1/2
Converger linealmente es converger muy despacio.
En cada iteraci´on aumentamos el
n´umero de decimales exactos en una cantidad
fija que es aproximadamente log10(1/k).
Para 1/n, log10(1) = 0, as´ı que no podemos
decir nada sobre los decimales exactos ganados
en cada iteraci´on.
Para 1/2n, log10(2) ≈ 0.3, as´ı que m´as o
menos cada 3 iteraciones ganamos 1 decimal
exacto.
n | 1/n | 1/2^n
----+------+----------
1 | 1.00| 0.50000
2 | 0.50| 0.25000
3 | 0.33| 0.12500
4 | 0.25| 0.06250
5 | 0.20| 0.03125
6 | 0.17| 0.01563
7 | 0.14| 0.00781
8 | 0.13| 0.00391
9 | 0.11| 0.00195
10 | 0.10| 0.00098
c) El m´etodo de bisecci´on converge, pero la convergencia cn → c no es ni siquiera lineal en
general, ya que puede darse el caso de que el error |cn − c| crezca en algunas iteraciones en
vez de disminuir. Sin embargo, la convergencia bn − an → 0 s´ı es lineal.
d) xn = 1/22n → x = 0 cuadr´aticamente porque
l´ım
n→∞
|1/22n+1 |
(1/22n)2 = l´ım
n→∞
22n2
22n2 = 1
Converger cuadr´aticamente es converger bastante r´apido. Aproximadamente en cada iteraci
´on duplicamos el n´umero de decimales exactos.
n | 1/2^(2^n)
----+--------------------
1 | 0.250000000000000
6 Resoluci´on num´erica de ecuaciones no lineales
2 | 0.062500000000000
3 | 0.003906250000000
4 | 0.000015258789063
5 | 0.000000000232831
6 | 0.000000000000000
M´etodo de la secante: Observa que al hacer regula falsi para resolver x − cos(x) = 0 en
[0, π/3], siempre nos hemos apoyado en el punto b original, que est´a lejos de la soluci´on. Para
hacer la iteraci´on 2 lo mejor ser´ıa haberse apoyado en los puntos de abscisas 0.68 y 0.74, que son
los que mejor informaci´on tienen sobre la soluci´on por ser los ´ultimos que se han encontrado.
En eso consiste el m´etodo de la secante:
Tomar x0, x1 dos semillas (preferentemente que cumplan la condici´on de Bolzano de
cambio de signo)
Para n ≥ 1 definimos
xn+1 = xn − f(xn)
xn − xn−1
f(xn) − f(xn−1)
En este caso la sucesi´on generada es:
n x fx
==================
0 0.0000 -1.0000
1 1.0472 +0.5472
2 0.6768 -0.1027
3 0.7354 -0.0062
4 0.7391 +0.0001
Como el ejemplo es muy sencillo sale el mismo trabajo que para regula falsi (antes calcul´abamos
c1, c2, c3, y aqu´ı x2, x3, x4).
Teorema 2.13 Sea δ > 0 y f ∈ C2(c − δ, c + δ), tal que f(c) = 0 y f′(c) 6= 0. Existe ε > 0
tal que si x0, x1 ∈ (c − ε, c + ε), la sucesi´on xn generada por el m´etodo de la secante converge
hacia c, y el orden de convergencia es al menos φ = (1 + √5)/2 ≈ 1.618. Adem´as
l´ım
n→∞
|c − xn+1|
|c − xn| =
1
2
f′′(c)
f′(c)
−1
M´etodo de Newton Cuando en el m´etodo de la secante los puntos consecutivos est´an muy
juntos, la recta secante a la curva en esos puntos tiende hacia la tangente, y la pendiente de
esta recta es la derivada en el punto. El m´etodo de Newton se escribe pues
Tomar x0 una semilla.
2.3 M´etodos de aproximaci´on de ra´ıces. 7
Para n ≥ 0 definimos
xn+1 = xn −
f(xn)
f′(xn)
.
De nuevo x − cos(x) = 0 con XTOL = 5 · 10−3.
n x fx dfx
==========================
0 0.0000 -1.0000 +1.0000
1 1.0000 +0.4597 +1.8415
2 0.7504 +0.0189 +1.6819
3 0.7391 +0.0000 +1.6736
4 0.7391 +0.0000 +1.6736
Teorema 2.14 Sea δ > 0 y f ∈ C2(c − δ, c + δ), tal que f(c) = 0 y f′(c) 6= 0. Existe ε > 0 tal
que si x0 ∈ (c−ε, c+ε), la sucesi´on xn generada por el m´etodo de la secante converge hacia c,
y el orden de convergencia es al menos cuadr´atico. Adem´as
l´ım
n→∞
|c − xn+1|
|c − xn|2 =
1
2
f′′(c)
f′(c)
Algunas consideraciones:
1. Newton es un m´etodo de punto fijo para la funci´on
g(x) = x −
f(x)
f′(x)
2. Newton y la secante son m´etodos de car´acter local: convergen bajo ciertas condiciones si
la semilla est´a “cerca” de la soluci´on.
3. Newton falla si f′(xn) = 0. Newton y la secante convergen linealmente si f′(c) = 0.
4. Para parar estos algoritmos, se pueden usar varios tests de paradas y combinaciones AND
y OR de ellos:
Controlar el error absoluto:
|xn − xn−1| < XTOL
Controlar el error relativo:
2|xn − xn−1|
|xn| + |xn−1|
< RTOL
Buscamos que f(c) = 0, as´ı que un posible criterio es
|f(xn)| < FTOL
8 Resoluci´on num´erica de ecuaciones no lineales
Comparaci´on de los m´etodos. Si intentamos resolver x−cos(x) = 0 con XTOL = 5 ·10−16,
el n´umero de iteraciones es
M´etodo iteraciones
Punto fijo 89
Bisecci´on 51
Regula Falsi 13
Secante 7
Newton 6
Claramente, Newton y Secante son los m´etodos m´as r´apidos, pero ¿cu´al es mejor?. El orden de
convergencia del m´etodo de Newton es mayor (2 > 1.618), pero en cada iteraci´on del m´etodo
de la secante hay que evaluar una vez la funci´on, mientras que en cada iteraci´on del m´etodo de
Newton hay que evaluar la funci´on y su derivada.
Si evaluar f′(x), lleva el mismo trabajo que evaluar f(x), tendremos que cada iteraci´on del
m´etodo de Newton lleva el mismo trabajo que 2 iteraciones del m´etodo de la Secante. Pero al
hacer 2 iteraciones el m´etodo de la secante, tendremos que
|xn+2 − c| ≤ k|xn+1 − c|1.618 ≤ k􀀀k|xn − c|1.6181.618
≤ ˜k|xn − c|2.618
ya que ((1+√5)/2)2 ≈ 2.618. En este caso, con el mismo trabajo, hemos multiplicado el n´umero
de decimales exactos por 2.6, as´ı que es preferible el m´etodo de la secante.
En general se tiene la siguiente “regla”:
Si (trabajo de evaluar f′(x) ) > 44%(trabajo de evaluar f(x) ) es preferible la secante.
En caso contrario es preferible Newton.
Combinaci´on de Newton y bisecci´on: Newton es r´apido, pero poco fiable si en alguna
iteraci´on f′(xn) ≈ 0, ya que tendremos que dividir por algo cercano a cero, con lo cual aumenta
el error de redondeo y el resultado se hace muy grande. Bisecci´on es lento pero seguro. He
aqu´ı un algoritmo que combina lo mejor de cada uno de estos m´etodos.
a0 = a, b0 = b, c0 = b
Para n ≥ 0
• cn+1 = cn −
f(cn)
f′(cn)
• Si cn+1 6∈ (an, bn)
◦ % Newton ha ido mal. Bisecci´on
◦ cn+1 =
an + bn
2
• fin si
• si f(cn+1) · f(bn) < 0, tomamos an+1 = cn+1, bn+1 = bn
• si f(cn+1) · f(an) < 0, tomamos an+1 = an, bn+1 = cn+1
2.4 Ejercicios 9
2.4. Ejercicios
Ejercicio 2.1 M´etodo del punto fijo.
1. Demuestra que x = cos(x) tiene una ´unica soluci´on en [0, π/3], que la iteraci´on de punto
fijo converge en ese intervalo y calcula el (peor) ritmo de convergencia k.
2. Con una calculadora calcula k32.
Sale 0.01. 32 es el n´umero de iteraciones que hay que hacer para tener 2 cifras de precisi´on
en el peor de los casos.
3. Calcula la soluci´on con una calculadora tomando como semilla 0.75 hasta obtener 2 cifras
de precisi´on. Cuenta el n´umero de iteraciones necesario. (Escribe 0.75 en la calculadora
y dale a la tecla del coseno hasta que las dos primeras cifras se repitan.)
Ejercicio 2.2 M´etodo de bisecci´on:
a) ¿Cu´antas iteraciones de bisecci´on son necesarias para garantizar que el error absoluto cometido
es m´as peque˜no que un ε > 0 dado?
b) Si sabemos que la aproximaci´on dada por cn tiene k decimales exactos, ¿cu´antas iteraciones
hay que hacer para ganar otro decimal?
Ejercicio 2.3 Probar que 1/2n2 converge superlinealmente, pero que su orden de convergencia
no puede ser ning´un p > 1. Escribe una tabla para n = 1, . . . , 7.
Ejercicio 2.4
a) Escribe los algoritmos de bisecci´on, regula falsi, secante y Newton para resolver la ecuaci´on
x2 − 2 = 0.
b) Ejec´utalos a mano (puedes usar una calculadora) hasta lograr una precisi´on absoluta de 8
decimales.
c) Demuestra que el orden de convergencia de la sucesi´on generada en este caso por el m´etodo
de Newton es 2.
2.5. Ejercicios complementarios
Ejercicio 2.5 Alg´un ejercicio de punto fijo con funci´on m´as complicada
Ejercicio 2.6 La orden fzero de Matlab usa una combinaci´on de bisecci´on y secante (en
algunos casos tambi´en usa el m´etodo de interpolaci´on cuadr´atica inversa, que no hemos visto
este curso). Escribe un algoritmo que combine bisecci´on y secante.
10 Resoluci´on num´erica de ecuaciones no lineales
Ejercicio 2.7 (Ning´un m´etodo es el mejor de todos)
Sea M > (1 + √5)/2 y sea
f(x) = M −Mx si 0 ≤ x ≤ 1 + 1/M
−1 si 1 + 1/M ≤ x ≤ M.
a) Dibuja la funci´on y calcula la soluci´on de f(x) = 0 en [0,M].
b) ¿Para que valores de x0 es aplicable el m´etodo de Newton?. ¿Cu´antas iteraciones tarda en
converger para una precisi´on absoluta εa?
c) ¿Se puede aplicar el m´etodo de la secante con x0 = 0, x1 = M?
d) ¿Cu´antas iteraciones nb del m´etodo de bisecci´on se necesitan para lograr una precisi´on absoluta
dada εa tomando a0 = 0 y b0 = M?
e) Aplicamos el m´etodo de Regula Falsi tomando a0 = 0 y b0 = M. Dibuja esquem´aticamente
unas cuantas iteraciones suponiendo M >> 1.
1. Probar que si an−1 = 0 y bn−1 > 1 + 1/M, entonces cn = Mn+1/(M + 1)n.
2. Calcular la primera iteraci´on nr en que tiene que cnr < 1 + 1/M.
3. Calcular el error absoluto y el relativo entre dos iteraciones consecutivas con 1 < n ≤
nr:
ea = |cn − cn−1|, er = ea/|cn|
4. Explicar qu´e ocurre si para M = 108 tomamos una tolerancia relativa de εr = 10−6.
5. Probar que cnr > 1. Deducir que por tanto anr = 0 y que para este problema el m´etodo
de Regula Falsi converge exactamente en nr + 1 iteraciones.
f ) Sea ε = 2−52 y M ≥ 20. ¿Es mejor el m´etodo de bisecci´on o el de Regula Falsi?
Datos archivados del Taringa! original
0puntos
4,041visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
2visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

J
Usuario
Puntos0
Posts1
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.