Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Calculo Numerico
Calculo Numerico
DE INGENIERÍA INFORMÁTICA
Apuntes de
CÁLCULO NUMÉRICO
para la titulación de
DE SISTEMAS
Portada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Contenido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1 Ecuaciones no lineales 7
1.1 Errores y condicionamiento en problemas numéricos . . . . . . 8
1.2 Método y algoritmo de la bisección: análisis de errores . . . . 12
1.3 Punto fijo e iteración funcional . . . . . . . . . . . . . . . . . . 19
1.4 Análisis del método de Newton-Raphson . . . . . . . . . . . . 25
1.4.1 Método de Newton generalizado . . . . . . . . . . . . . 31
1.5 Un problema mal condicionado: ceros de un polinomio . . . . 34
1.5.1 Sucesiones de Sturm . . . . . . . . . . . . . . . . . . . 38
1.5.2 Algoritmo de Horner . . . . . . . . . . . . . . . . . . . 41
1.6 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . 43
1.7 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 54
3
4 Contenido
3 Interpolación 141
3.1 Interpolación polinomial . . . . . . . . . . . . . . . . . . . . . 142
3.1.1 Interpolación de Lagrange . . . . . . . . . . . . . . . . 145
3.1.2 Interpolación de Newton . . . . . . . . . . . . . . . . . 148
3.1.3 Interpolación de Hermite . . . . . . . . . . . . . . . . . 157
3.2 Interpolación por splines . . . . . . . . . . . . . . . . . . . . . 160
3.2.1 Splines cúbicos . . . . . . . . . . . . . . . . . . . . . . 161
3.3 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . 164
3.4 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 168
Bibliografı́a 189
1. Ecuaciones no lineales
• Métodos directos
Sin embargo, el siglo XIX, Abel probó que no existe ninguna fórmula equi-
valente (en término de raı́ces) para resolver ecuaciones de grado superior a
cuatro.
7
8 Ecuaciones no lineales
Dado que cualquier algoritmo puede cometer errores, no sólo por el algoritmo
en sı́, sino porque los datos pueden venir afectados de algún tipo de error
(redondeo, etc.) es muy importante el estudio de los distintos tipos de error
que puedan cometerse con vista a la fiabilidad de los resultados.
Obsérvese que si sólo disponemos del dato de que el error es, por ejemplo,
de 1m. no sabemos nada acerca de la fiabilidad del resultado, ya que no
es lo mismo decir que se ha cometido un error de un metro al medir la
altura de una persona que al medir la distancia entre dos galaxias.
por lo que aunque el error del dato sea muy pequeño, si la derivada f 0 (x) es
muy grande, el resultado obtenido f (x) puede diferir mucho del valor exacto
f (x).
Para el problema inverso, es decir conocido f (x) buscar el valor de x (resolver
una ecuación) se tendrá que
1
|x − x| ' |f (x) − f (x)|
|f 0 (x)|
por lo que si |f 0 (x)| fuese muy pequeño el error de la solución puede ser muy
grande.
Además el problema no está en el algoritmo que se aplique para evaluar f (x)
sino en el propio problema a resolver.
κ(x) = |f 0 (x)|
10 Ecuaciones no lineales
Ası́ pues, un problema (en ambos sentidos) estará mejor condicionado mientras
más se acerque a 1 su número de condición.
Ejemplo 1.1 Si queremos calcular la tangente de 89◦ 590 lo primero que de-
bemos hacer es expresar el ángulo en radianes, por lo que necesariamente
debemos redondear el dato (el número π hay que redondearlo), por lo que el
dato vendrá afectado de un error de redondeo.
Utilicemos el método que utilicemos, dado que | tg x−tg x| ' |1+tg 2 x|·|x−x|
y tg x → +∞ cuando x → π, el problema estará mal condicionado.
tg a + tg b
Sin embargo si tenemos en cuenta que tg (a + b) = podemos
1 − tg a tg b
reducir nuestro problema al cálculo de la tangente de 44◦ 590 resultando éste
un proceso bien condicionado, ya que tg 45 = 1.
Si, por el contrario los errores que se producen en los distintos pasos no alteran
de forma significativa el resultado del problema, diremos que el algoritmo es
estable.
a+1
I0 = ln
a
Algoritmo
1
In = − aIn−1
n
11
Sin embargo, dado que para a = 10 es I0 = ln = 0.09531017980432 . . .
10
y el número 0.09531017980432 . . . no podemos introducirlo en el ordenador
de manera exacta, debemos cometer algún error introduciendo un número
aproximado I 0 de tal forma que cometemos un error inicial ε0 = |I 0 − I0 |.
El error εn que se cometerá al calcular In vendrá dado por
1 1
εn = |I n − In | = − aI n−1 − ( − aIn−1 ) = | − a(I n−1 − In−1 )| = |a|εn−1
n n
es decir,
εn = |a|εn−1 = |a|2 εn−2 = · · · = |a|n ε0
por lo que si tomamos las 10 primeras cifras decimales de I0 , es decir, si
tomamos
I 0 = 0.0953101798 con ε0 < 10−10
obtendremos un error en la décima iteración
en otras palabras,
a1 + b 1
Tomando el punto medio x1 =
2
Algoritmo de la bisección
ai + b i
Para i = 1, . . . , n, . . ., Ii = [ai , bi ] y mi = (punto medio de Ii ) con
2
[ai , mi ] si sig(f (ai )) 6= sig(f (mi ))
I1 = [a, b] y Ii+1 =
[mi , bi ] si sig(f (bi )) 6= sig(f (mi ))
Algoritmo de la Bisección
while (b-a)/2>ε
m = a+(b-a)/2;
if f(m) == 0
a = m;
b = m;
end
if sign f(a) == sign f(m)
a = m;
else
b = m;
end
end
m
• Si son f (c) y f (b) los que tienen signos contrarios, la raı́z está en el
intervalo [c, b].
c = a;
while abs f(c)>ε
c = (a*f(b)-b*f(a))/(f(b)-f(a));
if f(c) == 0
a = c;
b = c;
end
if sign f(a) == sign f(c)
a = c;
else
b =c;
end
end
c
16 Ecuaciones no lineales
Error “a posteriori”
f (x)
f (x)
x x
xn
f (x)
f (x)
x x
xn
f (x) − f (xn )
= f 0 (c).
x − xn
18 Ecuaciones no lineales
f (xn )
Como f (x) = 0, nos queda que x − xn = − , obteniéndose:
f 0 (c)
)
|f (xn )| |f (xn )| |f (xn )| (x, xn )
εn = 0 ≤ 0 ≤ con ∈ (a, b)
|f (c)| mı́n |f (x)| mı́n |f 0 (x)| (xn , x)
(x, xn ) x∈(a,b)
x∈ (xn , x)
es decir, puede que obtengamos por ejemplo que f (xn ) = k y sin embargo su
verdadero valor difiera mucho de k debido a la fuerte pendiente existente en
dicho punto, con lo que obtendremos una cota errónea del error.
Debemos, por tanto, asegurarnos de que nuestro problema está bien condicio-
nado, es decir, no existen en el intervalo pendientes muy grandes (condiciona-
miento directo) ni muy pequeñas (condicionamiento inverso) para garantizar
la fiabilidad del “error a posteriori”.
Sea ϕ(x) una función continua en [a, b], derivable en (a, b), con ϕ([a, b]) ⊆ [a, b]
tal que |ϕ0 (x)| ≤ q < 1 ∀ x ∈ [a, b], y sea x0 un punto cualquiera del intervalo
[a, b]. La sucesión
Demostración.
• Convergencia
(
[xn , xn+1 ]
xn+1 − xn = ϕ(xn ) − ϕ(xn−1 ) = (xn − xn−1 )ϕ0 (c) con c ∈
[xn+1 , xn ]
por lo que
|x2 − x1 | ≤ q|x1 − x0 |
|x3 − x2 | ≤ q|x2 − x1 | ≤ q 2 |x1 − x0 |
..
.
|xn+1 − xn | ≤ q n |x1 − x0 |
..
.
S1 = x 0
S2 = x0 + (x1 − x0 ) = x1
..
.
Sn+1 = Sn + (xn − xn−1 ) = xn
..
.
es decir
• Unicidad
|x − x0 | = |ϕ(x) − ϕ(x0 )| = |(x − x0 )ϕ0 (c)| = |(x − x0 )| · |ϕ0 (c)| con c ∈ [a, b]
Dependiendo de los valores que toma ϕ0 (x) en el intervalo [a, b], podemos
distinguir cuatro casos:
pudiéndose observar (véase la Fig. 1.4) que en los casos (a) y (d) la sucesión
resulta ser divergente ya que |ϕ0 (x) > 1|.
En los casos (b) y (c), en los que |ϕ0 (x)| ≤ q < 1 el método converge
monótonamente en (b) y de forma oscilatoria en (c).
2 2 2
|ϕ0 (x)| = 2
≥ 2 = para cualquier x ∈ [1, 2]
(1 + x) 3 9
podemos garantizar que partiendo de x0 = 1 el método convergerá a la raı́z
cuadrada de 3 y que el “error a posteriori” será fiable.
3 + xn
Ası́ pues, partiendo de x0 = 1 y haciendo xn+1 = obtenemos:
1 + xn
x1 = 2 x14 = 1.73205079844084
x2 = 1.66666666666667 x15 = 1.73205081001473
x3 = 1.75000000000000 x16 = 1.73205080691351
x4 = 1.72727272727273 x17 = 1.73205080774448
x5 = 1.73333333333333 x18 = 1.73205080752182
x6 = 1.73170731707317 x19 = 1.73205080758148
x7 = 1.73214285714286 x20 = 1.73205080756550
x8 = 1.73202614379085 x21 = 1.73205080756978
x9 = 1.73205741626794 x22 = 1.73205080756863
x10 = 1.73204903677758 x23 = 1.73205080756894
x11 = 1.73205128205128 x24 = 1.73205080756886
x12 = 1.73205068043172 x25 = 1.73205080756888
x13 = 1.73205084163518 x26 = 1.73205080756888
|f (xn )|
El error vendrá dado por εn < donde f (x) = x2 − 3, por lo que
mı́n |f 0 (x)|
x∈[1,2]
|x226 − 3|
ε26 < = 4.884981308350688 · 10−15 < 10−14
2
√
es decir, 3 = 1.73205080756888 con todas sus cifras decimales exactas.
Orden de convergencia
x 1
• ϕ(x) = en [−1, 1] es contractiva ya que |ϕ0 (x)| = < 1 ∀ x ∈ [−1, 1]
2 2
x0 = 1 =⇒ x1 = 0.5 ⇒ x2 = 0.25 ⇒ x3 = 0.125 =⇒ x4 = 0.0625 · · ·
x2 0
x 1
• ϕ(x) = en [−1, 1] es contractiva: |ϕ (x)| = ≤ < 1 ∀ x ∈ [−1, 1]
4 2 2
x0 = 1 ⇒ x1 = 0.25 ⇒ x2 = 0.015625 ⇒ x3 = 6.105 . . . · 10−5 · · ·
x3
2
x 1
• ϕ(x) = en [−1, 1] es contractiva: |ϕ0 (x)| = ≤ < 1 ∀ x ∈ [−1, 1]
6 2 2
¿Cómo elegir una función de iteración ϕ(x) que nos garantice una convergen-
cia, al menos, de segundo orden?
f (xn )
Si partiendo de x0 ∈ [a, b] la sucesión (xn ) con xn+1 = ϕ(xn ) = xn −
f 0 (xn )
converge entonces ϕ(x) es contractiva.
Además:
f (lim xn ) f (lim xn )
lim xn+1 = lim xn − 0
=⇒ = 0 =⇒ f (lim xn ) = 0
lim f (xn ) lim f 0 (xn )
es decir, lim xn = x.
y = f (x)
x
x2 x1 x0
Orden de convergencia
f (x)
Si el método converge, ϕ(x) = x − es contractiva y además
f 0 (x)
f 02 (x) − f (x)f 00 (x) f (x)f 00 (x)
ϕ0 (x) = 1 − = con f 0 (x) 6= 0 =⇒ ϕ0 (x) = 0
f 02 (x) f 02 (x)
1 n máx |f 00 (x)|
εn ≤ (kε0 )2 con k ≥
k 2 mı́n |f 0 (x)|
lo que nos proporciona una cota del error “a priori”, pudiéndose garantizar la
1
convergencia siempre que kε0 < 1 es decir, si ε0 ≤ .
k
Algoritmo
Una vez realizado un estudio previo para ver que se cumplen las condiciones
que requiere el método, establecer el valor inicial x0 y calcular el valor de
m = mı́n |f 0 (x)|, el algoritmo, que tiene por entradas los valores de a, b, x, ε,
x∈[a,b]
f (x) y m y por salida la raı́z x, es el siguiente:
Algoritmo de Newton
e = abs (f(x)/m);
while e>ε
x = x-f(x)/f0 (x);
e = abs (f(x)/m);
end
x
28 Ecuaciones no lineales
x2 − 3 x2 + 3
f (xn ) 1 3
xn+1 = xn − 0 = xn − n = n = xn +
f (xn ) 2xn 2xn 2 xn
x0 =2
x1 = 1.75000000000000
x2 = 1.73214285714286
x3 = 1.73205081001473
x4 = 1.73205080756888
|f (xn )|
El error vendrá dado, al igual que en el Ejemplo 1.3 por εn < ,
mı́n |f 0 (x)|
x∈[1,2]
por lo que
|x24 − 3|
ε4 < = 4.884981308350688 · 10−15 < 10−14
2
√
es decir, 3 = 1.73205080756888 con todas sus cifras decimales exactas.
1 A
La fórmula xn+1 = xn + es conocida como fórmula de Heron ya que
2 xn
este matemático la utilizaba para aproximar la raı́z cuadrada de un número
real positivo A hacia el año 100 a.C. pues sabı́a que si disponı́a de un valor
aproximado xn y éste fuese mayor que la raı́z buscada, necesariamente A/xn
serı́a menor que su raı́z y viceversa, por lo que la media entre ambos debı́a ser
una mejor aproximación que xn . En otras palabras, en cada iteración tomaba
como aproximación de la raı́z la media aritmética entre el valor xn anterior y
el cociente A/xn .
Análisis del método de Newton-Raphson 29
9
x1 x0
x x2
y = f (x)
x x0 x1
Por otra parte, como no nos interesa que x0 esté situado cerca de un extremo
local, vamos a estudiar los diferentes casos con que podemos encontrarnos
y elegir, en cada uno de ellos, un valor adecuado para x0 (aquel que no se
encuentre cercano a un extremo local).
Análisis del método de Newton-Raphson 31
a a b b
b b a a
Obsérvese que en cualquiera de los cuatro casos (véase la Figura 1.8) hemos
optado por elegir, como valor inicial x0 , el extremo en el que la función tiene
el mismo signo que su segunda derivada.
Este resultado, que formalizamos a continuación en forma de teorema es co-
nocido como regla de Fourier.
Sea f (x) una función continua y dos veces derivable [a, b]. Si sig f (a) 6= sig f (b)
y sus dos primeras derivadas f 0 (x) y f 00 (x) no se anulan en [a, b] existe una
única raı́z de la ecuación f (x) = 0 en dicho intervalo y se puede garantizar la
convergencia del método de Newton tomando como valor inicial x0 el extremo
del intervalo en el que la función y su segunda derivada tienen el mismo signo.
f (x)
• La raı́z x de f (x) también lo es de g(x) = pero con la particularidad
f 0 (x)
de que
g(x)
ϕ(x) = x −
g 0 (x)
verifica que ϕ0 (x) y ϕ00 (x) tienden a cero cuando x lo hace a x, por lo
que al aplicar el método de Newton a la función g(x) obtenemos x con
una convergencia de, al menos, tercer orden.
Este proceso tiene el inconveniente de que si f (x) es, por ejemplo, un
polinomio, g(x) es una función racional, por lo que se complican los
cálculos.
f (xn )
xn+1 = xn − k (1.3)
f 0 (xn )
y=x
y = sen x
-1
0 1
x0 = 1
.....................
f 0 (x10 ) = 0.0001 . . .
x10 = 0.016822799 . . . f 00 (x10 ) = 0.016 . . .
f 000 (x ) = 0.9998 . . .
10
.....................
f 0 (x20 ) = 0.00000001 . . .
x20 = 0.0000194 . . . f 00 (x20 ) = 0.0019 . . .
f 000 (x ) = 0.9999 . . .
20
Como la convergencia es muy lenta, hace pensar que se trata de una raı́z
múltiple. Además, como la primera y la segunda derivadas tienden a cero y
la tercera lo hace a 1, parece que nos encontramos ante una raı́z triple, por lo
que aplicamos el método generalizado de Newton.
xn − sen xn
xn+1 = xn − 3
1 − cos xn
que comenzando, al igual que antes, por x0 = 1 se obtiene:
x0 =1
x1 = −0.034 . . .
x2 = 0.000001376 . . .
x3 = 0.00000000000009 . . .
Por el teorema fundamental del Álgebra sabemos que Pn (x) posee n raı́ces y,
por tanto, puede ser factorizado de la forma
Pn (x) = a0 (x − x1 )(x − x2 ) · · · (x − xn )
por lo que
P (x)
Q(x) = = a0 (x − x1 )(x − x2 ) · · · (x − xk )
D(x)
Es decir, hemos encontrado un polinomio cuyas raı́ces son las mismas que las
de P (x) pero todas ellas simples.
por lo que
P (x)
Q(x) = = x3 − 3x + 2 = (x − 1)(x − 2)
D(x)
que tiene las mismas raı́ces que P (x) pero todas simples.
Si ya conocemos que una ecuación sólo tiene raı́ces simples y queremos calcu-
larlas, parece apropiado que un primer paso consista en detectar dónde pueden
encontrarse. Ası́ por ejemplo, si son reales, determinar intervalos de una am-
plitud reducida en los que se encuentren las raı́ces de la ecuación.
se verifica que:
A
|x| < 1 + siendo A = máx |ai |
|a0 | i≥1
A
|x| < 1 + con |x| > 1
|a0 |
Es evidente que esta cota también la verifican las raı́ces x con |x| < 1.
Un problema mal condicionado: ceros de un polinomio 37
Consideremos la ecuación
por lo que cualquier raı́z real del polinomio debe estar en el intervalo (−13, 13).
Aplicando la regla de Laguerre obtenemos:
2 −9 −1 24 12
4 8 −4 −20 16
2 −1 −5 4 28
2 −9 −1 24 12
5 10 5 20 240
2 1 4 48 252
ecuación deba tener alguna raı́z en el intervalo (4, 5). En otras palabras, 4
puede ser una cota superior para las raı́ces positivas de la ecuación aunque la
regla de Laguerre no lo garantice. De hecho, la mayor de las raı́ces positivas
de nuestra ecuación es x = 3.56155281280883 . . . < 4.
• Si fi (c) = 0 entonces fi−1 (c) y fi+1 (c) tienen signos opuestos, es decir,
fi−1 (c) · fi+1 (c) < 0. (Engloba al apartado anterior).
f0 (x)
• Si f0 (c) = 0 con c ∈ [a, b] entonces pasa de negativa a positiva
f1 (x)
en c. (Está bien definida en c por ser f1 (c) 6= 0 y es creciente en dicho
punto).
Para determinar las demás funciones de la sucesión vamos dividiendo fi−1 (x)
entre fi (x) para obtener
Ejemplo 1.9 Vamos a construir una sucesión de Sturm que nos permita se-
parar las raı́ces de la ecuación x4 + 2x3 − 3x2 − 4x − 1 = 0.
f0 (x) = x4 + 2x3 − 3x2 − 4x − 1. f00 (x) = 4x3 + 6x2 − 6x − 4.
f1 (x) = 2x3 + 3x2 − 3x − 2.
f2 (x) = 9x2 + 9x + 2.
f3 (x) = 2x + 1.
f4 (x) = 1.
−∞ −3 −2 −1 0 1 2 +∞
4 3 2
f0 (x) = x + 2x − 3x − 4x − 1 + + − − − − + +
f1 (x) = 2x3 + 3x2 − 3x − 2 − − 0 + − 0 + +
2
f2 (x) = 9x + 9x + 2 + + + + + + + +
f3 (x) = 2x + 1 − − − − + + + +
f4 (x) = 1 + + + + + + + +
cambios de signo 4 4 3 3 1 1 0 0
Un problema mal condicionado: ceros de un polinomio 41
Sabemos, por ello, que existe una raı́z en el intervalo (−3, −2), dos raı́ces en
el intervalo (−1, 0) y una cuarta raı́z en el intervalo (1, 2).
Como f0 (−1) = −1 < 0, f0 (−0.5) = 0.0625 > 0 y f0 (0) = −1 < 0 podemos
separar las raı́ces existentes en el intervalo (−1, 0) y decir que las cuatro raı́ces
de la ecuación dada se encuentran en los intervalos
Si, una vez eliminadas las raı́ces múltiples y separadas las raı́ces, queremos
resolver la ecuación, utilizaremos el método de Newton.
Al aplicarlo nos encontramos con que tenemos que calcular, en cada paso, los
valores de P (xn ) y P 0 (xn ) por lo que vamos a ver, a continuación, un algo-
ritmo denominado algoritmo de Horner que permite realizar dichos cálculos
en tiempo lineal.
Algoritmo de Horner
P (x) − P (x0 )
= Q(x) = b0 xn−1 + b1 xn−2 + · · · + bn−2 x + bn−1
x − x0
se tiene que
b 0 = a0
b 1 = a1 + x 0 b 0
b 2 = a2 + x 0 b 1
..
.
bn−1 = an−1 + x0 bn−2
r = P (x0 ) = an + x0 bn−1
se tiene que
P 0 (x0 ) = Q(x0 )
y el cálculo de Q(x0 ) es análogo al que hemos realizado para P (x0 ), es decir,
aplicando el algoritmo de Horner a Q(x) obtenemos
Regla de Ruffini
Una regla útil para hacer los cálculos a mano es la conocida regla de Ruffini
que consiste en disponer las operaciones como se indica a continuación.
a0 a1 a2 ··· an−1 an
x0 x0 b0 x0 b1 · · · x0 bn−2 x0 bn−1
Si utilizamos la regla de Ruffini sólo tenemos que volver a dividir por x0 , como
se muestra a continuación, para obtener el valor de P 0 (x0 ).
2 1 −3 4 −5
2 4 10 14 36
2 5 7 18 31
2 4 18 50
2 9 25 68
por lo que
P (2) = 31 y P 0 (2) = 68
Solución:
Para x < 0:
1 1
<0 y ex > 0 =⇒ ex 6=
x x
y por tanto, no existen raı́ces negativas.
Para x > 0:
(
f (0) = −1 < 0
f (x) = xex − 1 =⇒
f (+∞) = +∞ > 0
y existe, por tanto, un número impar de raı́ces positivas (al menos una).
b) Método de la bisección:
(
f (0) = −1 < 0
[a1 , b1 ] = [a, b] = [0, 1] con
f (1) = e − 1 > 0
Ejercicios resueltos 45
c) Método de Newton:
f (xn )
La fórmula de Newton-Raphson es xn+1 = xn −
f 0 (xn )
Dado que, por el apartado anterior, se conoce que la raı́z se encuentra
en el intervalo [0.5625, 0.5703125] y que
f (0.5625) < 0
f (x) = xex − 1 =⇒
f (0.5703125) > 0
f 0 (x) = (x + 1)ex =⇒ f 0 (x) > 0 ∀ x ∈ [0.5625, 0.5703125]
f 00 (x) = (x + 2)ex =⇒ f 00 (x) > 0 ∀ x ∈ [0.5625, 0.5703125]
es decir
|f (xn )| |f (xn )|
εn ≤ 0 <
mı́n |f (x)| 2.74
x∈[0.5625,0.5703125]
46 Ecuaciones no lineales
obteniéndose que
|f (x0 )|
x0 = 0.5703125 con ε0 < = 0.00320437856505 . . .
2.74
|f (x1 )|
x1 = 0.56715149835900 . . . con ε1 < = 0.00000827757122 . . .
2.74
Por lo que la solución de la ecuación es 0.567 con sus tres cifras decimales
exactas.
Ejercicio 1.2 Probar que la ecuación x2 + ln x = 0 sólo tiene una raı́z real y
hallarla, por el método de Newton, con 6 cifras decimales exactas.
Puede observarse que sólo existe un punto de corte entre ellas, por lo que la
ecuación x2 + ln x = 0 sólo posee una raı́z real.
Analı́ticamente hay que probar que las gráficas no vuelven a cortarse en ningún
otro punto, sin embargo, dado que en su dominio de definición, que es (0, +∞),
ln x es creciente y −x2 decreciente, no pueden volver a cortarse.
Partiendo de x0 = 0.1 y aplicando el método de Newton, en el intervalo (0.1, 1)
(no tomamos (0, 1) por no estar definido el logaritmo en 0), dado por la fórmula
|f (xn )| |f (xn )|
con un error, a posteriori, dado por εn ≤ 0 = , obtenemos:
mı́n |f (x)| 2
x∈(0,1)
Solución:
a)
3
|x| < 1 + = 4 =⇒ −4 < x < 4
1
b) f0 (x) = P (x) = x3 + 3x2 + 2.
P 0 (x) = 3x2 + 6x =⇒ f1 (x) = x2 + 2x
x3 + 3x2 + 2 = (x2 + 2x)(x + 1) + (−2x + 2) =⇒ f2 (x) = x − 1
x2 + 2x = (x − 1)(x + 3) + 3 =⇒ f3 (x) = −1
−4 −3 4
3 2
x + 3x + 2 − + +
x2 + 2x + + +
x−1 − − +
−1 − − −
Cambios de signo 2 1 1
por lo que sólo posee una raı́z real, la cual se encuentra en el intervalo
(−4, −3).
f (−4) = −14 < 0
3 2
c) f (x) = x + 3x + 2 =⇒ es decir, la función
f (−3) = 2 > 0
cambia de signo en los extremos del intervalo (−4, −3).
por lo que se verifican las hipótesis del teorema de Fourier y, por tanto,
tomando como valor inicial x0 = −4 (extremo en el que la función tiene
el mismo signo que la segunda derivada) se tiene garantizada la conver-
gencia del método de Newton.
f (xn ) x3n + 3x2n + 2
d) Dado que xn+1 = xn − = x n − se obtiene que
f 0 (xn ) 3x2n + 6xn
xn+1 = −3.19582334575880.
Ejercicio 1.5 Aplicar el método de Sturm para separar las raı́ces de la ecua-
ción
2x6 − 6x5 + x4 + 8x3 − x2 − 4x − 1 = 0
y obtener la mayor de ellas con seis cifras decimales exactas por el método de
Newton.
f4 (x) = x2 − x − 1
Dividimos ahora f3 (x) entre f4 (x), obteniendo:
Al haber llegado a un resto nulo sabemos que la ecuación original tiene raı́ces
múltiples.
El máximo común divisor entre P (x) y su derivada es f4 (x) = x2 − x − 1,
por lo que el polinomio cuyas raı́ces son las mismas que las de P (x) solo que
simples es
P (x)
Q(x) = 2 = 2x4 − 4x3 − x2 + 3x + 1
x −x−1
Debemos, ahora, de construir una sucesión se Sturm para Q(x).
A
Dado que |x| < 1 + , donde A = 4 y |a0 | = 2, se tiene que |x| < 3, o lo que
|a0 |
es lo mismo, −3 < x < 3.
−3 −1 −0.5 0 1 1.5 2 3
4 3 2
2x − 4x − x + 3x + 1 + + − + + − + +
6x3 − 9x2 − x + 2 − − − + − + + +
g2 (x) = 13x2 − 13x − 8 + + + − − + + +
2x − 1 − − − − + + + +
1 + + + + + + + +
Cambios de signo 4 4 3 2 2 1 0 0
La mayor de las raı́ces se encuentra en el intervalo [1.5, 2], pero dado que
Q0 (1.5) = 0 podemos tomar el intervalo [1.6, 2] en el cual:
(
Q(1.6) < 0
Q(x) = 2x4 − 4x3 − x2 + 3x + 1
Q(2) > 0
Q0 (x) = 8x3 − 12x2 − 2x + 3 > 0 ∀ x ∈ [1.6, 2]
x0 =2
x1 = 1.8
x2 = 1.684726867
x3 = 1.632243690
x4 = 1.618923782 =⇒ ε4 ≤ 0.01841
x5 = 1.618037855 =⇒ ε5 ≤ 0.0011
x6 = 1.618033989 =⇒ ε6 ≤ 0.0000047
x7 = 1.618033989 =⇒ ε7 ≤ 0.885 · 10−10
√
Ejercicio 1.6 En este ejercicio se pretende calcular 10 1 por el método de
Newton. Consideramos, para ello, la función f (x) = x10 − 1 cuya gráfica se da
en la Figura 1.
Fig. 1 Fig. 2
Ejercicios resueltos 53
a) Probar, analı́ticamente, que en el intervalo [0.5, 1.5] posee una única raı́z
real.
b) Si tomamos x0 = 0.5 obtenemos la raı́z x = 1 en la iteración número 43,
mientras que si tomamos x0 = 1.5 se consigue el mismo resultado en la
iteración número 9. ¿Cómo podrı́amos haber conocido a priori el valor
que se debe elegir para x0 ?
c) ¿Sabrı́as justificar el porqué de la extremada lentitud de la convergencia
cuando iniciamos el proceso en x0 = 0.5? y ¿por qué sigue siendo lento
el proceso si comenzamos en x0 = 1.5? Justifica las respuestas.
d) Dado que en el intervalo [0.5, 1.5] no se anula la función x5 , las raı́ces de
f (x) son las mismas que las de g(x) = f (x)/x5 = x5 − x−5 cuya gráfica
se da en la Figura 2. ¿Se puede aplicar a g(x) la regla de Fourier en
dicho intervalo?
e) Si resolvemos, por el método de Newton, la ecuación g(x) = 0, ¿ se
obtendrá la raı́z con mayor rapidez que cuando lo hicimos con f (x) = 0?
Justifica la respuesta sin calcular las iteraciones.
Solución:
g 00 (0.5) < 0
d) g 0 (x) = 5x4 + 5x−6 y g 00 (x) = 20x3 − 30x−7 con
g 00 (1.5) > 0
por lo que no puede aplicarse la regla de Fourier en dicho intervalo. (Si
reducimos el intervalo a [0.5, 1.01] si podemos aplicarla, obteniendo que
debemos tomar x0 = 0.5).
a) Probar, mediante una sucesión de Sturm, que posee una única raı́z en el
intervalo (6, 7).
1
x = F (x) = (x3 − 6x2 + 7),
3
¿podemos asegurar su convergencia?
Sol : a = 0.
c) ¿Cuál de los extremos del intervalo [a, a + 1] debe tomarse como valor
inicial para asegurar la convergencia del método de Newton?
Sol : x0 = a = 0.
Sol : x = 0.500562.
a) Acotar las raı́ces y construir una sucesión de Sturm para probar que sólo
posee dos raı́ces reales, una positiva y otra negativa, dando intervalos de
amplitud 1 que las contengan.
c) Aplicar Fourier para determinar el valor inicial que debe tomarse para
garantizar la convergencia del método de Newton en el cálculo de la raı́z
negativa. ¿Tenemos las tres cifras exactas si tomamos como raı́z -4.646 ?
a) ¿Puede carecer de raı́ces reales? ¿y tener dos y sólo dos raı́ces reales?
b) Utilizar el método de Sturm para probar que tiene una única raı́z real
si, y sólo si, k < 0 o k > 4, y que sólo tiene raı́ces múltiples si k = 0 o
k = 4 no existiendo, en ningún caso, una raı́z triple.
c) Para k = −4 admite una única raı́z real en el intervalo [0, 1]. Si tomamos
como valor aproximado de la raı́z x = 0.3553 ¿de cuántas cifras decimales
exactas disponemos?
Sol : x0 = 1, x2 = 0.365079 . . ..
Ejercicio 1.13
“Cuando dos raı́ces positivas de una ecuación polinómica están muy próximas,
suele ser difı́cil separarlas mediante intervalos cerrados. Para alejarlas se
puede proceder como sigue:
Se obtiene ası́ una ecuación polinómica cuyas raı́ces son los cuadrados de las
raı́ces de la ecuación P (x) = 0. La relación entre las raı́ces de la nueva
ecuación con las de P (x) = 0 es αi2 − αj2 = (αi + αj )(αi − αj ). Ası́, se observa
que las nuevas raı́ces se alejan (o se acercan) αi + αj veces más que las raı́ces
de P (x) = 0.
Si este procedimiento se aplica dos veces se obtiene una ecuación de la forma
(t − α14 ) · · · (t − αn4 ) = 0”
Sea la ecuación P (x) = 2x2 − 9x + 10 = 0, y sea Q(x) = 0 la ecuación obtenida
al aplicar dos veces el método anteriormente descrito. Se pide:
d.1) Encontrar un intervalo [a, b] que sólo contenga a la mayor raı́z real
de esta ecuación y en donde se verifiquen las hipótesis de la regla
de Fourier.
Ejercicio 1.14
Sol : x2 = 4.78799912600669
Ejercicios propuestos 59
Sol : Sı́.
2. Sistemas de ecuaciones linea-
les
kx · yk ≤ kxk · kyk
61
62 Sistemas de ecuaciones lineales
n
X
• Norma-1 kxk1 = |xi |
i=1
v
u n
uX
• Norma euclı́dea o Norma-2 kxk2 = t |xi |2
i=1
d(x, y) = kx − yk
d(x, y) = 0 ⇐⇒ kx − yk = 0 ⇐⇒ kx − yk = 0 ⇐⇒ x = y.
• d(x, y) = kx − yk = kx − z + z − yk ≤ kx − zk + kz − yk =
lim kvk − vk = 0
k→∞
Esta definición coincide con la idea intuitiva de que la distancia de los vectores
de la sucesión al vector lı́mite v tiende a cero a medida que se avanza en la
sucesión.
Se define
kAxk
kAk = máx = máx{kAxk : kxk = 1}
x∈V −{0} kxk
de tal forma que a cada norma vectorial se le asociará, de forma natural, una
norma matricial.
Como ahora se dará el máximo en un vector que tenga todas sus coor-
denadas iguales a 1, se tiene que
n
X
kAk∞ = máx |aij |.
i
j=1
Tenemos pues, que las normas asociadas (algunas veces llamadas subordinadas)
a las normas de vector estudiadas anteriormente son:
n
X
Norma-1 kAk1 = máx |aij |.
j
i=1
n
X
Norma infinito kAk∞ = máx |aij |.
i
j=1
1 1 2
Ejemplo 2.2 Para la matriz A = 2 −1 1 se tiene:
1 0 1
n
X
• kAk1 = máx |aij | = máx{(1 + 2 + 1), (1 + | − 1| + 0), (2 + 1 + 1)} = 4
j
i=1
6 −1 5
T
• El polinomio caracterı́stico de la matriz A A = −1 2 1 es
5 1 6
p(λ) = λ3 − 14λ2 + 33λ = λ(λ − 3)(λ − 11)
Los autovalores de la matriz AT √
A son√0, 3 y 11, por lo que los valores
singulares de la matriz A son 0, 3 y 11 y, por tanto,
√
kAk2 = máx σi = 11
i
66 Sistemas de ecuaciones lineales
n
X
• kAk∞ = máx |aij | = máx{(1 + 1 + 2), (2 + | − 1| + 1), (1 + 0 + 1)} = 4
i
j=1
√ √ √
• kAkF = tr AT A = 6+2+6= 14.
Demostración.
• Como los valores singulares de la matriz A son las raı́ces cuadradas posi-
tivas de los autovalores de A∗ A y los de A∗ las raı́ces cuadradas positivas
de los autovalores de AA∗ (los mismos que los de A∗ A), las matrices A
y A∗ poseen los mismos valores singulares.
Demostración.
kU xk2 kxk2
kU k2 = máx = máx =1
x∈V −{0} kxk2 x∈V −{0} kxk2
Teorema 2.7 El radio espectral de una matriz es una cota inferior de todas
las normas multiplicativas de dicha matriz.
3 1 1
Ejemplo 2.3 La matriz A = 0 2 1 es de diagonal dominante por
2 −1 5
verificar que
3>1+1 2>0+1 y 5 > 2 + | − 1| = 3
n n
X αi X
|akk | ≤ |aki | ≤ |aki |
αk
i=1 i=1
i 6= k i 6= k
Cn = {z : |z − ann | ≤ rn }
n
[
Demostración. Si λ 6∈ Ci es porque λ 6∈ Ci para ningún i = 1, 2, . . . , n,
i=1
por lo que
|λ − a11 | > r1
|λ − a22 | > r2
..
.
|λ − ann | > rn
0 2 3
Ejemplo 2.4 Dada la matriz A = 2 8 2 , sus cı́rculos de Gerschgorin
2 0 10
Sistemas de ecuaciones lineales 71
C1 = {z : |z − 0| ≤ 5}
C2 = {z : |z − 8| ≤ 4}
C3 = {z : |z − 10| ≤ 2}
C1 = {z : |z − 0| ≤ 4}
C2 = {z : |z − 8| ≤ 2}
C3 = {z : |z − 10| ≤ 5}
Estos últimos nos dicen que la matriz tiene, al menos, un autovalor real (hay
un cı́rculo que sólo contiene a un autovalor y éste debe ser real ya que de
ser complejo el conjugado también serı́a autovalor de A y al tener el mismo
módulo se encontrarı́a en el mismo cı́rculo contra la hipótesis de que en dicho
cı́rculo sólo se encuentra un autovalor), es decir los cı́rculos obtenidos por filas
no nos dan información sobre el autovalor real, mientras que los obtenidos por
columnas nos dicen que existe un autovalor real en el intervalo (-4,4).
• Su tamaño
• Su estructura
• Métodos directos
r1 r10 r1 r10
%
s
%
%
@ %
@
%
@s s
@ %
%
@
s
%
@
@ r2
%
%
@@ %
r2 %
%
%
kIk
kA−1 k ≤
1 − kI − Ak
Es decir:
kIk
κ(A) ≤ kAk · k con k=
1 − kI − Ak
Debemos tener cuidado con esta acotación ya que si tenemos una matriz casi
regular, es decir, con det(A) ' 0, quiere decir que tiene un autovalor próximo
a cero, por lo que la matriz I − A tiene un autovalor próximo a 1 y será el
mayor de todos. En este caso kI − Ak ' 1, por lo que k → ∞ y darı́a lugar a
un falso condicionamiento, ya que A no tiene que estar, necesariamente, mal
condicionada.
3x + 4.00001y = 7.00001
Sistemas de ecuaciones lineales 77
Se tiene que
!
3 4
A= =⇒ det(A) = 0.00003
3 4.00001
!
1 4.00001 −4
A−1 =
0.00003 −3 3
n
X
Utilizando la norma infinito kAk∞ = máx |aij | se tiene que
i
j=1
kAk∞ = 7.00001
56
=⇒ κ∞ (A) ' · 105 > 1.8 · 106
8.00001 3
kA−1 k∞ =
0.00003
Se trata pues, de un sistema mal condicionado.
Xn
Si utilizamos la norma-1 kAk1 = máx |aij | obtenemos:
j
i=1
kAk1 = 8.00001
56
=⇒ κ1 (A) ' · 105 > 1.8 · 106
7.00001 3
kA−1 k1 =
0.00003
obteniéndose, también, que se trata de un sistema mal condicionado.
Demostración.
1 kA−1 k
κ(B) = kBk kB −1 k = kzAk k A−1 k = |z| kAk = kAk kA−1 k =
z |z|
= κ(A)
√ √
κF (A) = kAkF kA−1 kF ≤ n nkAk2 kA−1 k2 = nκ2 (A) =⇒
⇐) A = zU =⇒ κ2 (A) = 1.
A = zU =⇒ A∗ A = zU ∗ zU = |z|2 U ∗ U = |z|2 I =⇒
λi (A∗ A) = |z|2 cualquiera que sea i = 1, 2, . . . , n y, por tanto,
σ1 = σ2 = · · · = σn = |z|
por lo que
σn
κ2 (A) = =1
σ1
⇒) κ2 (A) = 1 =⇒ A = zU .
R∗ A∗ AR = σ 2 I
Entonces
A∗ A = R(σ 2 I)R∗ = σ 2 (RIR∗ ) = σ 2 I
80 Sistemas de ecuaciones lineales
de donde
1 ∗ 1
A A =I
σ σ
1 1
Llamando U = A se tiene que U ∗ = A∗ , ya que σ ∈ R ⇒ σ = σ.
σ σ
∗ 1 ∗ 1
U U= A A = I =⇒ U es unitaria
σ σ
y, por tanto,
A = σU con U unitaria
Los sistemas mejor condicionados son aquellos que tienen sus filas o columnas
ortogonales y mientras mayor sea la dependencia lineal existente entres ellas
peor es el condicionamiento del sistema.
Al ser κ(U A) = κ(A) trataremos de utilizar métodos de resolución de sistemas
de ecuaciones lineales que trabajen con transformaciones unitarias que no em-
peoren su condicionamiento como lo hace, por ejemplo, el método de Gauss
basado en la factorización LU y que también estudiaremos a continuación.
2.3.1 Factorización LU
Al aplicar el método de Gauss al sistema Ax = b realizamos transformaciones
elementales para conseguir triangularizar la matriz del sistema.
A = L0 U 0 = LU =⇒ L−1 L0 = U U 0−1
Métodos directos de resolución de sistemas lineales 81
El hecho de que L−1 L0 = U U 0−1 nos dice que necesariamente L−1 L0 = I, ya que
es simultáneamente triangular inferior y superior y su diagonal es de unos.
y calculando los valores de los n2 elementos que aparecen entre las dos matrices.
3 1 2
Ejemplo 2.7 Considérese la matriz A = 6 3 2
−3 0 −8
3 1 2 1 0 0 u11 u12 u13
6 3 2 = l21 1 0 0 u22 u23 =
l31 u11 l31 u12 + l32 u22 l31 u13 + l32 u23 + u33
por lo que de la primera fila obtenemos que
u11 = 3 u12 = 1 u13 = 2
de la segunda (teniendo en cuenta los valores ya obtenidos) se tiene que
3l21 = 6 l21 = 2
l21 + u22 = 3 =⇒ u22 = 1
2l21 + u23 = 2 u23 = −2
82 Sistemas de ecuaciones lineales
3 1 2 1 0 0 3 1 2
es decir: 6 3 2 = 2 1 0 0 1 −2
−3 0 −8 −1 1 1 0 0 −4
Teorema 2.12 Una matriz regular A admite factorización LU si, y sólo si,
sus matrices fundamentales Ai (i = 1, 2, . . . , n) son todas regulares.
Reiterando el procedimiento se puede ver que todos los elementos que vamos
obteniendo en la diagonal son no nulos y, por tanto, válidos como pivotes. Es
decir, puede realizarse la factorización LU .
hérmı́tica ⇐⇒ A = A∗
(
x∗ Ax ≥ 0 ∀ x
definida positiva ⇐⇒
x∗ Ax = 0 ⇐⇒ x = 0
admite factorización LU .
−3 0 −8 5
84 Sistemas de ecuaciones lineales
−1 1 1 y3 5 4
3 1 2 x1 0 1
U x = y ⇐⇒ 0 1 −2 x2 = 1 =⇒ x = −1
0 0 −4 x3 4 −1
√ √
u11 0 ··· 0 u11 0 ··· 0
√ √
0 u22 ··· 0 0 u22 ··· 0
= L V ⇒
.. .. .. . .. ..
... . ...
. . . . . .
√ √
0 0 ··· unn 0 0 ··· unn
A = BR
√
u11 0 0 ··· 0
√
0 u22 0 ··· 0
√
0
B = L 0 u33 · · · 0 es triangular inferior.
.. .. .. ... ..
. . . .
√
0 0 0 ··· unn
√
u11 0 0 ··· 0
√
0 u22 0 ··· 0
√
R= 0 0 u33 · · · 0 V es triangular superior.
.. .. .. .. ..
. . . . .
√
0 0 0 ··· unn
Como A es hermı́tica, BR = A = A∗ = R∗ B ∗ , por lo que (R∗ )−1 B = B ∗ R−1 , y
dado que (R∗ )−1 B es triangular inferior y B ∗ R−1 es triangular superior, ambas
han de ser diagonales.
Por otra parte,
Hemos visto que toda matriz hermı́tica y definida positiva admite factorización
de Cholesky, pero podemos llegar más lejos y enunciar el siguiente teorema.
4 − 2i 2 + 2i 10 x3 −4
2
Se obtiene multiplicando, que r11 = 4 =⇒ r11 = 2.
2r12 = 2i =⇒ r12 = i
Utilizando este resultado tenemos que
2r13 = 4 + 2i =⇒ r13 = 2 + i
2 2 2
r12 + r22 = 2 =⇒ r22 = 1 =⇒ r22 = 1.
r12 r13 + r22 r23 = 2 − 2i =⇒ 1 − 2i + r23 = 2 − 2i =⇒ r23 = 1.
2 2 2 2 2
r13 + r23 + r33 = 10 =⇒ 5 + 1 + r33 = 10 =⇒ r33 = 4 =⇒ r33 = 2.
Ası́ pues, el sistema nos queda de la forma
2 0 0 2 i 2+i x1 0
−i 1 0 0 1 1 x2 = 0
2−i 1 2 0 0 2 x3 −4
Métodos iterados de resolución de sistemas lineales 87
2 0 0 y1 0 0
R∗ y = b ⇐⇒ −i 1 0 y2 = 0 =⇒ y = 0
2−i 1 2 y3 −4 −2
2 i 2+i x1 0 1
Rx = y ⇐⇒ 0 1 1 x2 = 0 =⇒ x = 1
0 0 2 x3 −2 −1
xn+1 − x = 2(xn − x)
x∗ − x = 2(x∗ − x) =⇒ x∗ − x = 0 =⇒ x∗ = x
88 Sistemas de ecuaciones lineales
kxn+1 − xk = 2kxn − xk
xn+1 = Kxn + c
en los que K será la que denominemos matriz del método y que dependerá de
A y de b y en el que c es un vector que vendrá dado en función de A, K y b.
Demostración.
x∗ − x = K(x∗ − x) + c − (I − K)A−1 b
por lo que
(I − K)(x∗ − x) = c − (I − K)A−1 b (2.2)
y dado que x∗ = x nos queda que 0 = c − (I − K)A−1 b, es decir,
c = (I − K)A−1 b.
(I − K)(x∗ − x) = 0
lim K n = 0
n→∞
Si para alguna norma matricial es kKk < 1, la sucesión (xn ) definida por
xn+1 = Kxn +c, donde x0 ∈ Rn es un vector cualquiera, converge a la solución
de la ecuación x = Kx + c que existe y es única.
90 Sistemas de ecuaciones lineales
Demostración.
• Existencia y unicidad
• Convergencia
Demostración.
• Condición suficiente
por lo que los autovalores de la matriz lı́mite lim K n son todos nulos,
n→∞
es decir, lim K n = 0 por lo que
n→∞
• Condición necesaria
Métodos de descomposición
(M − N )x = b =⇒ M x = N x + b =⇒ x = M −1 N x + M −1 b
Dado que
y la matriz (I − K) = (I − M −1 N ) = M −1 (M − N ) = M −1 A es invertible,
estamos en las condiciones del Teorema 2.17 por lo que xn+1 = Kxn + c es
consistente con el sistema Ax = b.
92 Sistemas de ecuaciones lineales
0 a12 a13 · · · a1n
0 0 a23 · · · a2n
−F = 0 0 0 · · · a3n
.. .. .. .
..
. ..
. . .
0 0 0 ··· 0
A = M − N = D − (E + F )
Ax = b =⇒ Dx = (E + F )x + b =⇒ x = D−1 (E + F )x + D−1 b
(
J = D−1 (E + F )
Método de Jacobi xn+1 = Jxn + c con
c = D−1 E
A = M − N = (D − E) − F
Teorema 2.24 Una condición necesaria para que converja el método de rela-
jación es que ω ∈ (0, 2).
y1∗
h a1 , y 1 i · · · h an , y 1 i
. .. .. ..
Q∗ A = .. (a1 · · · an ) ⇐⇒ Q∗ A = .
. .
yn∗ h a1 , y n i · · · h an , y n i
Consideremos la matriz
a11 · · · a1i · · · a1j · · · a1n
. .
.. . . ... ..
.
..
.
ai1 · · · aii · · · aij · · · ain
. .. . . . .. ..
A= .
. . . .
aj1 · · · aji · · · ajj · · · ajn
. .. .. . . .
. . ..
. . .
an1 · · · ani · · · anj · · · ann
a011 · · · a01i · · · a01j · · · a01n
. .
.. . . ... ..
.
..
.
0
ai1 · · · a0ii · · · a0ij · · · a0in
. .. .. . ..
Qji A = . . ..
. . .
0
aj1 · · · a0ji 0 0
· · · ajj · · · ajn
. .. .. . . .
. . ..
. . .
a0n1 · · · a0ni 0 0
· · · anj · · · ann
con a0ji = −aii sen α + aji cos α, por lo que
a) H es hermı́tica (H ∗ = H).
b) H es unitaria (H ∗ H = HH ∗ = I).
c) H 2 = I o lo que es lo mismo, H −1 = H.
Demostración.
∗
∗ 2 2 2
a) H = I − ∗ vv ∗ ∗
=I − ∗
(vv ∗ )∗ = I − ∗ vv ∗ = H
v v v v v v
c) H 2 = HH = HH ∗ = I.
Factorizaciones ortogonales 99
Interpretación geométrica en Rn
3
x
α v
-
λ -
6Q y
Q
k x
36
y + λv Q
Q
x − λv
Q
−v Q
Q
v
Q
- -
λv −λv
Figura 2.3: Un vector x y su transformado y = Hx.
y + λv = x − λv ⇐⇒ y = x − 2λv = Hx
100 Sistemas de ecuaciones lineales
a) x ⊥ v =⇒ Hx = x.
b) x k v =⇒ Hx = −x en particular Hv = −v.
Demostración.
2 2
Hx = (I − ∗
vv ∗ )x = x − ∗ v(v ∗ x) = x
v v v v
b) x k v =⇒ x = λv
2 2 2λ
Hx = (I − ∗
vv ∗ )λv = λv − ∗ vv ∗ λv = λv − ∗ v(v ∗ v) =
v v v v v v
= λv − 2λv = −λv = −x
Interpretación geométrica en Cn
• Caso real
h x + y, x − y i = kxk2 − h x, y i + h y, x i − kyk2 = 0
6x + y
y x
KA
A
A
A
A x −-y
2 2
H=I− ∗
vv ∗ = I − vv ∗
v v 12
verifica que:
2 ∗ 2 2
Hx = (I − vv )x = x − v(v ∗ x) = x − v6 = x − v = y
12 12 12
y para cualquier vector que tenga sus tres últimas coordenadas nulas
w = (a, b, 0, 0, 0)T
2 ∗ 2 2
Hw = (I − vv )w = w − v(v ∗ w) = w − v · 0 = w
12 12 12
• Caso complejo
±k(xk+1 , . . . , xn )T k
y = (x1 , x2 , . . . , xk , xk+1 , 0, . . . , 0)T
|xk+1 |
2 2
H=I− ∗
vv ∗ = I − vv ∗
v v 12
Factorizaciones ortogonales 103
verifica que:
2 ∗ 2 2
Hx = (I − vv )x = x − v(v ∗ x) = x − v10 = x − v = y
20 20 20
y para cualquier vector que tenga su última coordenada nula
w = (a, b, 0)T
2 ∗ 2 2
Hw = (I − vv )w = w − v(v ∗ w) = w − v · 0 = w
20 20 20
Factorización QR de Householder
−2 7 1
p
1 12 + 22 + (−2)2 3
Como x1 = 2 e y1 = 0 = 0 , se tiene que
−2 0 0
−2
v1 = x1 − y1 = 2
−2
−2 1/3 2/3 − 2/3
2 2
H1 = I − ∗ v1 v1∗ = I − 2 −2 2 −2 = 2/3 1/3 2/3
v1 v1 12
−2 − 2/3 2/3 1/3
1/3 2/3 − 2/3 1 −1 −1 3 −5 − 1/3
H1 A = 2/3 1/3 2/3 2 0 1 = 0 4 1/3
3 0 0 3
0 1 0 0
2 2
H2 = I − ∗ v2 v2∗ = I − −1 0 −1 3 = 0 4/5 3/5
v2 v2 10
3 0 3/5 − 4/5
Factorizaciones ortogonales 105
1 0 0 3 −5 − 1/3 3 −5 − 1/3
H2 H1 A = 0 4/5 3/5 0 4 1/3 = 0 5 19/15 = R
1/3 2/15 14/15
(1) (1)
α11 a12 ··· a1n
0
siendo A(1) una matriz de
Obsérvese que H1 A = ..
. A(1)
0
un orden inferior al de la matriz A.
El vector v2 tiene la primera coordenada nula, por lo que
1 0 ··· 0
2 ∗
0
H2 = I − ∗ v2 v2 = .. (2)
v2 v2
. H
0
(1) (1)
1 0 ··· 0 α11 a12 · · · a1n
0 0
H2 (H1 A) = .. (2)
.
.
=⇒
. H . A(1)
0 0
(1) (1)
α11 a12 ··· a1n
0
H2 H1 A = ..
. H(2) A(1)
0
1 0 0 ··· 0
0 1 0 ··· 0
Análogamente, H3 = 0 0 dejará invariantes a los elemen-
.. ..
(3)
H
. .
0 0
tos de las dos primeras filas y las dos primeras columnas de H2 H1 A y ası́
sucesivamente.
Podemos, por lo tanto, trabajar, para cada transformación, en un espacio de
una dimensión inferior que en la transformación anterior.
−2 0 0
−2
v1 = x 1 − y1 = 2
−2
−2 1/3 2/3 − 2/3
2 2
H1 = I − v1 v ∗ = I − 2 −2 2 −2 = 2/3 1/3 2/3
v1 v1 1
∗
12
−2 − 2/3 2/3 1/3
1/3 2/3 − 2/3 1 −1 −1 3 −5 − 1/3
H1 A = 2/3 1/3 2/3 2 0 1 = 0 4 1/3
Tomando
! √ ! ! !
4 42 + 32 5 −1
x2 = y2 = = =⇒ v2 = x2 − y2 =
3 0 0 3
! !
(2) 2 2 −1 4/5 3/5
H = I2 − ∗ v2 v2∗ = I2 − −1 3 =
v2 v2 10 3 3/5 − 4/5
Sistemas superdeterminados. Problema de los mı́nimos cuadrados 107
1 0 0
Por lo que H2 = 0 4/5 3/5
0 3/5 − 4/5
Podrı́amos obtener
3 −5 − 1/3
H2 H1 A = 0 5 19/15
0 0 − 17/15
que es el mismo resultado que el obtenido en el Ejemplo 2.13 pero trabajando
cada vez con una dimensión menos.
x 1 a1 + x 2 a2 + · · · + x n an = b
Sin embargo, existen problemas en los que no ocurre ası́. Supongamos que
se tienen tres puntos en el plano y se desea calcular la recta que pasa por
ellos. Evidentemente, y dado que una recta la determinan sólo dos puntos, el
problema no tiene solución (salvo que los tres puntos estén alineados). Desde
el punto de vista algebraico este problema se expresa de la siguiente forma:
sean P = (a1 , b1 ), Q = (a2 , b2 ) y R = (a3 , b3 ). Si tratamos de hallar la ecuación
de la recta y = mx + n que pasa por ellos se obtiene
ma1 + n = b1 a1 1 ! b1
m
ma2 + n = b2 ⇐⇒ a2 1 = b2
n
ma3 + n = b3 a3 1 b3
108 Sistemas de ecuaciones lineales
Decir
queel sistema no posee solución equivale a decir que el vector
b1 a1 1
b = b2 no pertenece al espacio columna de la matriz A = a2 1 .
b3 a3 1
6 b
c
-
C(A) b̃
Las soluciones del sistema determinado por las ecuaciones normales de un sis-
tema superdeterminado Ax = b reciben el nombre de solución(es) en mı́nimos
cuadrados y de todas las posibles soluciones en mı́nimos cuadrados, la de me-
nor norma recibe el nombre de pseudosolución del sistema.
Obsérvese que si la matriz A no tiene rango máximo, lo único que se dispone del
espacio columna de A es de un sistema generador y no de una base, por lo que
las coordenadas del vector proyección respecto de dicho sistema generador no
son únicas obteniéndose infinitas soluciones en mı́nimos cuadrados del sistema.
A∗ Ax = A∗ b
b0n
y dado que estamos suponiendo que A tiene rango máximo, la matriz T posee
inversa y por tanto T ∗ , por lo que la solución es la misma que la del sistema
112 Sistemas de ecuaciones lineales
triangular
b01
.
T x = .. ⇐⇒ T x = b̃
b0n
Una vez calculada la pseudosolución, la norma del error está representada por
la distancia kb − b̃k que viene dada por
b 0 b01
0 1
b1
. .
.
.. ..
0
..
b0 b0
bn+1
!
T
0
n n
..
x − bn
=
−
=
.
.
0 b0n+1
Θ
..
b0m
.. ..
. .
b0m
0 b0
m
Por último, si la matriz A no tiene rango máximo, sus columnas no son li-
nealmente independientes, por lo que sólo constituyen un sistema generador
(no una base) del espacio columna C(A). Ello nos lleva a la existencia de
infinitas n-uplas (α1 , α2 , . . . , αn ) soluciones del sistema Ax = b̃ y, por tanto, a
infinitas soluciones en mı́nimos cuadrados del sistema superdeterminado, pero
teniendo en cuenta que al ser única la proyección ortogonal b̃ de b sobre el es-
pacio columna C(A), todas ellas representan diferentes coordenadas del vector
b̃ respecto del sistema generador de C(A) dado por las columnas de A.
Sin embargo, el error cometido kb − b̃k es el mismo para todas las soluciones
en mı́nimos cuadrados del sistema. De entre todas ellas, la de menor norma
euclı́dea es la pseudosolución.
Solución:
!
3 4
a) La matriz del sistema es A = .
3 5
! ! !
3 3 3 4 18 27
A∗ A = =
4 5 3 5 27 41
λ − 18 −27
P (λ) = = (λ − 18)(λ − 41) − 272 = λ2 − 59λ + 9.
−27 λ − 41
114 Sistemas de ecuaciones lineales
√ √
59 ± 3481 − 36 59 ± 3445
Las raı́ces de P (λ) son: λ = = =⇒
2 2
s √ s √
59 − 3445 59 + 3445
σ1 = y σ2 =
2 2
s √ s √ √
σ2 59 + 3445 (59 + 3445)2 59 + 3445
κ2 (A) = = √ = = =⇒
σ1 59 − 3445 36 6
κ2 (A) = 19.61568707 . . .
25a + 29b = 0
29 25
Tomando, por ejemplo, a = y b = − (el otro caso es análogo),
3 3
obtenemos:
Ejercicios resueltos 115
! !
3 4 0.6 0.8
B= = 5 U con U = unitaria.
4 −3 0.8 −0.6
(
3x + 4y = 7
El sistema resultante es y su número de condición
4x − 3y = 1
euclı́deo es κ2 (B) = 1.
Solución:
1 1 !
1 − α −1 + α x 0
1 = 1
1−
1 − y
α α
por lo que
x=y
1
1 =⇒ x=y=1 ya que α 6= 1
1−
x=1−
α α
! !
x 1
que podemos observar como converge a = que era la
y 1
solución del sistema.
4x + 5y = 13
3x + 5y = 11
Solución:
! ! !
4 5 x 13
a) El sistema a resolver es Ax = b ⇐⇒ =
3 5 y 11
v1 ⊥ v2 =⇒ h v1 , v2 i = 0 =⇒ 35 + 25λ = 0 =⇒ λ = − 7/5
por tanto,
" ! !# ! !
1 25 4 − 3/5 4/5 − 3/5
v2 = −7 = ⇒ Q=
5 25 3 4/5 3/5 4/5
! ! !
4/5 3/5 4 5 5 7
R = Q∗ A = =
− 3/5 4/5 3 5 0 1
Se obtiene, por tanto, que A = QR donde Q es unitaria y R trian-
gular superior. El sistema se transforma en otro triangular de la
manera siguiente:
Ax = b ⇐⇒ QRx = b ⇐⇒ Rx = Q∗ b
En nuestro caso:
! ! !
4/5 3/5 13 17
Q∗ b = =
− 3/5 4/5 11 1
cuya solución es
x=2 y = 1.
118 Sistemas de ecuaciones lineales
! ! !
2 1 0 1 1 −3 4/5 3/5
H = I − ∗ vv ∗ = − =
v v 0 1 5 −3 9 3/5 − 4/5
! ! !
4/5 3/5 4 5 5 7
R = Q∗ A = HA = =
3/5 − 4/5 3 5 0 −1
Transformando el sistema obtenemos:
Ax = b ⇐⇒ QRx = b ⇐⇒ Rx = Q∗ b = Hb
Dado que
! ! !
4/5 3/5 13 17
Hb = =
3/5 − 4/5 11 −1
cuya solución
x=2 y = 1.
σ2
b) El número de condición euclı́deo viene dado por κ2 (A) = donde σ2 el
σ1
mayor y σ1 el menor de los valores singulares de la matriz A.
Los valores singulares son las raı́ces cuadradas positivas de los autovalo-
res de la matriz A∗ A.
Cuando calculamos el número de condición de la matriz R del sistema
transformado, realizaremos el mismo proceso con esta nueva matriz, es
decir, debemos calcular los autovalores de la matriz R∗ R.
Ejercicios resueltos 119
Dado que ! ! !
4 3 4 5 25 35
A∗ A = =
5 5 3 5 35 50
! ! !
5 0 5 7 25 35
R∗ R = =
7 1 0 1 35 50
los valores singulares de las matrices A y R son los mismos, por lo que
se obtiene el mismo número de condición euclı́deo.
El polinomio caracterı́stico de A∗ A es p(λ) = λ2 − 75λ + 25, por
lo que sus autovalores son λ1 ' 74.665 y λ2 '√0.335 y, por tanto,
los valores
√ singulares de la matriz A son σ2 ' 74.665 ' 8.64 y
σ1 ' 0.335 ' 0.58, de donde
σ2
κ2 (A) = κ2 (R) = ' 14.9
σ1
−2 7 1 z −7
Solución:
1 3 −2
x= 2 y= 0 v1 = x − y = 2
−2 0 −2
−2
2
H1 = I3 − 2
v v∗ = I3 − 2 −2 2 −2 =
v1∗ v1 1 1
12
−2
2 −2 2 1/3 2/3 − 2/3
1
= I3 − −2 2 −2 = 2/3 1/3 2/3
3
2 −2 2 − 2/3 2/3 1/3
0 4 1/3 y = − /3
10
0 3 5/3 z 1/3
120 Sistemas de ecuaciones lineales
0 5 19/15 y = − 37/15
0 0 − 17/15 z − 34/15
cuya solución es x = 1, y = −1, z = 2.
0 1 1
Solución:
23 17
x= , y= .
125 25
b)
3 kx1 k 5 −2
x1 = 4 =⇒ y1 = 0 = 0 =⇒ v1 = x1 −y1 = 4
0 0 0 0
−2
2 ∗ 2
H1 = I3 − v∗ v1 2v1 v1 = I3 − 4 −2 4 0 =
1 20
0
3/5 4/5 0
= /5 − 3/5 0
4
0 0 1
Aplicando la transformación al sistema, se obtiene
5 1 ! 8/5
x
0 −2 = − 6/5
y
0 1 1
!
(1)
! √ !
(1) −2 (1) kx2 k 5
Para que x2 = se transforme en y2 = =
1 0 0
(2)
construimos la transformación H2 de Householder asociada al vector
√ !
(1) (1) −2 − 5
v2 = x2 − y2 =
1
√ √ ! 1 0 0
(2) − 2 5/5 5/5 √ √
H2 = √ √ =⇒ H2 = 0 − /5
2 5 5/5
5/5 5/5 √ √
2
0 5/5 2 5/5
122 Sistemas de ecuaciones lineales
23 17
porlo que la pseudosolución del sistema es x = ,y= y el error
125 25
4
viene dado por √ ' 0.3578.
5 5
Sol : κF (A) = 7.
b) Calcular “a” para que el número de condición del sistema resultante de
sumarle a la segunda ecuación la primera multiplicada por dicha cons-
tante “a”, sea mı́nimo.
Sol : a = −3/2.
1 + 2i −1 − i 2 x3 1 − 2i
p −p 2p
Ejercicio 2.10 Dada la matriz A = −p p + 2 −1 se pide:
2p −1 6p − 1
Sol : x1 = −1, x2 = 0, x3 = 1.
0 −90 154
Ejercicio 2.13
−1 0 2 z 0
¿Podrı́as decir cuál es la solución exacta del sistema?
Sol : (4,-1,2).
!
1 2
e) Comprobar la matriz A = es otro ejemplo para la no conver-
1 1
gencia del método de Gauss-Seidel.
!
1
Calcular, para dicha matriz y el vector b = el término general
1
de la sucesión xk obtenida
! por el método de Gauss-Seidel a partir del
m
vector x0 = y comprobar que dicha sucesión no converge para
n
valores arbitrarios de m y n.
¿Existe algún vector inicial x0 para el que converja el método? y, en
caso de existir, ¿contradice dicho ejemplo el hecho de que el método no
sea convergente?
!
−2k n + 1
Sol : xk = que diverge si n 6= 0. No existe contradicción
2k n
¿porqué? Justifı́calo.
Ejercicio 2.15 Se quiere encontrar una función de la forma f (x) = ax3 +bx+c
que pase por los puntos (1, 4), (−2, −23) y (2, 21).
b) Usar una sucesión de Sturm para saber cuántas raı́ces reales tiene la
ecuación f (x) = 0.
c) Separar dichas raı́ces por intervalos adecuados para que se den las hipó-
tesis de las condiciones de Fourier.
d) ¿Cuantas iteraciones son necesarias para obtener las raı́ces reales con 6
cifras decimales exactas usando para su cálculo el método de Newton?
Sol : Tres.
Sol : x = 0.312908409479.
Se pide:
Sol : x = 1, y = 1/2.
b) Sea v = (−1, 1, 1, 1)T . Demostrar que la transformación de Householder
asociada al vector v transforma la primera columna de la matriz A en el
vector (2, 0, 0, 0)T dejando invariante la segunda columna de A ası́ como
al vector b.
c) Calcular la pseudosolución del sistema utilizando transformaciones de
Householder, ası́ como la norma del error.
√
Sol : x = 1, y = 1/2, E = 3 2/2.
d) Si la matriz A del sistema fuese cuadrada y su número de condición fuese
mayor que 1, ¿qué ventajas e inconvenientes tendrı́a el resolver el sistema
multiplicando por la traspuesta de A y el resolverlo por transformaciones
de Householder?
(1.1, 5), (1, 5.1), (2, 7.3), (1.8, 6.9), (1.5, 6.1), (3, 8.8), (3.1, 9) y (2.9, 9.1)
−2 2 −1
12 0 13
0 0 1/12
tal que divide por 12 la tercera de las ecuaciones del sistema:
3 2 ! 3
x
T Ax = T b ⇐⇒ 4 5 = 1
y
1 0 13/12
Ejercicios propuestos 131
− 4/5 0 3/5
0 −4 4 z 2
Sol : cond(A) = ∞.
0 − 4/5 − 3/5
d) ¿Qué relación hay entre las soluciones obtenidas en los apartados ante-
riores?
Si se obtienen las soluciones en mı́nimos cuadrados del sistema Ax = b,
escalonando previamente la matriz A, ¿se debe obtener mismo resultado
que en alguno de los apartados anteriores?
Ejercicio 2.28
1 0 −1 z −1
Sol : κ1 (A) = 6.
b.2) Resolver el sistema por medio de transformaciones de Householder.
Sol : No.
4 1 4a
c) Demostrar que el vector c = (− , , − − 1)T y la matriz
3 2 3
0 − 23 0
L1 = 0 0 − 12
0 − 2a
3
0
a 0 −1 z 1
−1 −1
exacta pero con aritmética de ordenador es sólo una buena aproximación.
d) Probar que si una matriz real B tiene sus columnas linealmente inde-
pendientes, entonces B T B es definida positiva.
Sol : No.
e.3) Sea (s0 , s1 , s2 , . . .) la sucesión que se obtiene al aplicar el método
de Gauss-Seidel al sistema, con s0 = (0, 0)T . Probar que, operando
en aritmética exacta, la sucesión (sn ) es convergente y obtener su
lı́mite s.
Sol : x = 2, y = 1, kEk = 5.
Sol : x = 2, y = 1, kEk = 3.
(2, 1, 0), (−1, 2, 1), (0, 1, 2), (−1, 0, 1), (0, 1, 0).
1 5 5
Ejercicio 2.34 Dada la matriz A = 1 2 1 , se pide:
1 2 3
Sol : Sólo LU .
z 1
d) ¿Se puede calcular el valor de α que minimiza la norma del error sin
resolver el sistema anterior?
Sol : Sı́, α = 0.
c) Al obligar que, además, pase por el punto (−1, 2, 0, −1) se obtiene una
ecuación más que hace incompatible al sistema.
Usar transformaciones de Householder para encontrar la pseudosolución
del sistema incompatible dando la norma del error.
p
Sol : x = −2/3, y = −8/9, z = 8/9, kEk = 2/3.
V (1, 2, − 53 ) = −3
V (1, 2, −4) = 2
V (2, −1, 2) = −2
V (1, 0, −2) = −1
V (3, 2, −1) = −2
Definición 3.1 Interpolar una función f (x) es encontrar otra función g(x)
con determinadas caracterı́sticas (un polinomio, un cociente de polinomios,
una función trigonométrica, etc.) tal que g(xi ) = f (xi ) en un conjunto de
puntos S = {x0 , x1 , . . . , xn } con x0 < x1 < · · · < xn que recibe el nombre de
soporte.
La función g(x) recibe el nombre de función de interpolación de la función
f (x) en el soporte {x0 , x1 , . . . , xn }.
Diremos que el soporte es regular si la diferencia entre dos puntos consecutivos
del soporte es siempre la misma, es decir, si xi − xi−1 es constante cualquiera
que sea i = 1, 2, . . . , n.
x 0 1 2
f (x) 1 3 7
Si queremos calcular el polinomio de segundo grado P (x) = ax2 + bx + c que
interpola a f (x), en dicho soporte, se obtiene el sistema
c=1
a+ b+c=3 =⇒ a = b = c = 1
4a + 2b + c = 7
141
142 Interpolación
|f (n + 1 (c)|
ε(x) = |f (x) − P (x)| = |x − x0 | · · · |x − xn |
(n + 1)!
z(xi )
g(xi ) = d(xi ) − d(x) =0
z(x)
t1 t2 t3 tn+2
u u u u
c1 c2 c3 cn+1
Figura 3.1: Los n + 1 puntos en los que se anula g 0 (x).
d(x) (n + 1
Como g (n + 1 (t) = d(n + 1 (t) − z (t), podemos particularizar en t = c y
z(x)
obtenemos
d(x) (n + 1 d(x)
0 = d(n + 1 (c) − z (c) = f (n + 1 (c) − P (n + 1 (c) − (n + 1)!
z(x) z(x)
por lo que
d(x)
(n + 1)! = f (n + 1 (c)
z(x)
o lo que es lo mismo,
f (n + 1 (c) f (n + 1 (c)
f (x) − P (x) = d(x) = z(x) = (x − x0 ) · · · (x − xn ) =⇒
(n + 1)! (n + 1)!
|f (n + 1 (c)|
ε(x) = |f (x) − P (x)| = |x − x0 | · · · |x − xn |
(n + 1)!
|f (n + 1 (x)| ≤ k ∀x ∈ I
se tiene que
k
ε(x) ≤ |x − x0 | · |x − x1 | · · · |x − xn |
(n + 1)!
Es obvio que como los grados de Q(x) y R(x) no son superiores a n − 1, T (x)
no puede tener grado superior a n.
• T (x0 ) = Q(x0 ) = f0
• Si xi ∈ {x1 , x2 , . . . , xn−1 }
xi − x0 xi − x0
T (xi ) = Q(xi ) + R(xi ) − Q(xi ) = fi + (fi − fi ) = fi .
xn − x0 xn − x0
xn − x0
• T (xn ) = Q(xn ) + R(xn ) − Q(xn ) = R(xn ) = fn .
xn − x0
Por lo que T (x) es el polinomio, de grado no superior a n, que interpola a f (x)
en el soporte {x0 , . . . , xn }, es decir, T (x) = P (x).
z(x)
Li (x) = (3.1)
(x − xi )z 0 (xi )
Demostración.
{x0 , x1 , x2 , x3 } = {1, 2, 3, 4}
(x − 2)(x − 3)(x − 4) 1
L0 (x) = = − (x3 − 9x2 + 26x − 24)
(1 − 2)(1 − 3)(1 − 4) 6
(x − 1)(x − 3)(x − 4) 1
L1 (x) = = (x3 − 8x2 + 19x − 12)
(2 − 1)(2 − 3)(2 − 4) 2
(x − 1)(x − 2)(x − 4) 1
L2 (x) = = − (x3 − 7x2 + 14x − 8)
(3 − 1)(3 − 2)(3 − 4) 2
(x − 1)(x − 2)(x − 3) 1
L3 (x) = = (x3 − 6x2 + 11x − 6)
(4 − 1)(4 − 2)(4 − 3) 6
por lo que
7 98
P3 (x) = − x3 + 16x2 − x + 19
3 3
Sin embargo, el cálculo de los polinomios de Lagrange (también puede verse con
el Ejemplo 3.3) no es un proceso dinámico, en el sentido de que si añadiéramos
un nuevo punto al soporte, habrı́a que comenzar de nuevo todo el proceso.
P (x) = c0 + c1 (x − x0 )+
+ c2 (x − x0 )(x − x1 )+
+ c3 (x − x0 )(x − x1 )(x − x2 )+
..
.
+ cn (x − x0 )(x − x1 )(x − x2 ) · · · (x − xn−1 )
donde los coeficientes c0 , c1 , . . . , cn dependen de x0 , . . . , xn y los valores que
toma la función en dichos puntos f0 = f (x0 ), . . . , fn = f (xn ).
f [xi ] = fi
f [x1 , . . . , xk ] − f [x0 , . . . , xk−1 ]
f [x0 , x1 , . . . , xk ] =
xk − x0
obtenemos:
f [x1 ] − f [x0 ] f1 − f0 1−0 1
f [x0 , x1 ] = = = =
x1 − x0 x1 − x0 3−1 2
f [x2 ] − f [x1 ] f2 − f1 −1 − 1 2
f [x1 , x2 ] = = = =−
x2 − x1 x2 − x1 4−3 1
xi f [xi ] f [xi , xi+1 ] f [xi , xi+1 , xi+2 ] f [xi , xi+1 , xi+2 , xi+3 ]
1 0
1/2
3 1 − 5/6
− 2/1 5/6
4 −1 5/2
3/1
5 2
1
= (5x3 − 45x2 + 118x − 78)
6
xi f [xi ] f [xi , xi+1 ] f [xi , xi+1 , xi+2 ] f [xi , xi+1 , xi+2 , xi+3 ] f [xi , xi+1 , xi+2 , xi+3 , xi+4 ]
1 0
1/2
3 1 − 5/6
− 2/1 5/6
4 −1 5/2 − 5/18
3/1 − 5/6
5 2 − 5/6
1/2
7 3
Interpolación polinomial 151
1
=− (5x4 − 80x3 + 430x2 − 889x + 534)
18
Sean Pn (x) y Pn−1 (x) los polinomios de interpolación de la función f (x) en los
soportes {x0 , x1 , . . . , xn } y {x0 , x1 , . . . , xn−1 } respectivamente.
Sabemos que
f (n (ξ)
f (x) − Pn−1 (x) = (x − x0 ) · · · (x − xn−1 )
n!
Sustituyendo x por xn tenemos:
f (n (ξ)
f (xn ) − Pn−1 (xn ) = (xn − x0 ) · · · (xn − xn−1 )
n!
y dado que f (xn ) = fn = Pn (xn ), se tiene que:
f (n (ξ)
Pn (xn ) − Pn−1 (xn ) = (xn − x0 ) · · · (xn − xn−1 ).
n!
f (n (c)
f [x0 , . . . , xn ] =
n!
∆k f1 ∆k f0
f [x1 , . . . , xk+1 ] − f [x0 , . . . , xk ] k
− k
f [x0 , . . . , xk+1 ] = = h · k! h · k! =
xk+1 − x0 k·h
∆k f1 − ∆k f0 ∆k+1 f0
= =
hk · k! · k · h hk+1 · (k + 1)!
∆2 f0
x − x0 x − x0 x − x1
Pn (x) = f0 + ∆f0 + + ···
h 2! h h
∆n f0
x − x0 x − xn−1
+ ···
n! h h
Interpolación polinomial 153
∆2 f0
x − x0 x − x0 x − x0
Pn (x) = f0 + ∆f0 + − 1 + ···
h 2! h h
∆n f0
x − x0 x − x0
+ ··· − (n − 1)
n! h h
x − x0
por lo que, si denotamos por t = , se tiene que
h
∆f0 ∆2 f0 ∆n f0
Pn (x) = f0 + t+ t(t − 1) + · · · + t(t − 1) · · · (t − (n − 1))
1! 2! n!
Es decir:
! ! !
t t t
Pn (x) = f0 + ∆f0 + ∆2 f0 + · · · + ∆n f0
1 2 n
Ejemplo 3.6 Sea f (x) una función que toma los valores {3, 45, 175, 441} en
el soporte regular {2, 4, 6, 8}.
Las diferencias finitas vienen dadas por
fi ∆fi ∆2 fi ∆3 fi
3 42 88 48
45 130 136
175 266
441
por lo que
! ! !
t t t
P3 (x) = 3 + 42 + 88 + 48 =
1 2 3
x−2
= 3 + 42 t + 44 t (t − 1) + 8 t (t − 1) (t − 2) con t =
2
de donde se obtiene que el polinomio de interpolación de la función f (x) en
dicho soporte es
P3 (x) = x3 − x2 − x + 1
154 Interpolación
fi ∆fi ∆2 fi ∆3 fi ∆4 fi
3 42 88 48 24
45 130 136 72
175 266 208
441 474
915
!
t
y obtenemos que P4 (x) = P3 (x)+ ∆4 f0 = P3 (x)+t(t−1)(t−2)(t−3) =⇒
4
1
P4 (x) = x3 − x2 − x + 1 + (x − 2)(x − 4)(x − 6)(x − 8) =⇒
16
1 1 31
P4 (x) = x4 − x3 + x2 − 26x + 25
16 4 4
Hay que destacar que cuando hablamos de añadir puntos al soporte, hablamos
de pasar, por ejemplo, del soporte regular {0, 2, 4, 6} al {0, 2, 4, 6, 8, 10} es
decir, de pasar del soporte
{x0 , x1 , . . . , xn } al {x0 , x1 , . . . , xn , xn+1 , . . . , xn+k } con xj > xi si j > i
Interpolación polinomial 155
Fenómeno de Runge
Dada una función continua en [a, b], podrı́a pensarse que la sucesión Pn (x) con
n ∈ N de polinomios de interpolación, obtenidos al aumentar el número de
puntos del soporte, converge a la función f (x) es decir, podrı́amos pensar que
1
Ejemplo 3.8 Si aproximamos la función f (x) = por un polinomio de
1 + x2
segundo grado, en el soporte {−4, 0, 4}, obtenemos que
1 2
P2 (x) = 1 − x
17
En la Figura 3.2 (Izda.) podemos ver ambas gráficas.
Si la aproximación la hacemos mediante un polinomio de grado 4 en el soporte
{−4, −2, 0, 2, 4} obtenemos
1
P4 (x) = (85 − 21x2 + x4 )
85
que podemos ver representada junto a la función f (x) en la Figura 3.2 (Dcha.).
156 Interpolación
Figura 3.4: Las funciones {log(1 + x), P4 (x)} y {log(1 + x), P8 (x)}
Figura 3.5: Las funciones {log(1 + x), P16 (x)} y {log(1 + x), P32 (x)}
Sin embargo, si volvemos a utilizar los puntos medios para obtener un soporte
de 33 puntos, podemos ver en la Figura 3.5 (Dcha.) que el fenómeno de Runge
junto a la acumulación de errores hace que el polinomio obtenido deje de ser
una buena aproximación de la función
Hasta ahora, las únicas condiciones que le hemos exigido al polinomio de in-
terpolación es que coincida con la función en los puntos del soporte.
Se pueden exigir otro tipo de condiciones, entre las que destaca la de exigir
que además de coincidir los valores del polinomio lo hagan también los de su
primera derivada, es decir, que
)
P (xi ) = f (xi )
en los puntos del soporte {x0 , x1 , . . . , xn }
P 0 (xi ) = f 0 (xi )
158 Interpolación
x x0 x1 · · · xn
f (x) f0 f1 · · · fn
f 0 (x) f00 f10 · · · fn0
El polinomio
n h
X i
P2n+1 (x) = ak + bk (x − xk ) L2k (x)
k=0
ak = fk
bk = fk0 − 2fk L0k (xk )
f (2n + 2 (c)
f (x) − P2n+1 (x) = (x − x0 )2 · · · (x − xn )2
(2n + 2)!
1
P16 (x) = (2890000 − 2558224x2 + 1613584x4 − 626688x6 + 144408x8
2890000
−19527x10 + 1507x12 − 61x14 + x16 )
¿Es posible interpolar una función sin que aparezca el fenómeno de Runge?
hi = xi − xi−1 i = 1, 2, . . . , n
00
Mi = S∆ (xi ) i = 0, 1, . . . , n
00 xi+1 − x x − xi
S∆| (x) = Mi + Mi+1 .
[x ,x
i i+1 ] hi+1 hi+1
Integrando respecto a x obtenemos el valor de la primera derivada del spline
en este intervalo
0 Mi (xi+1 − x)2 Mi+1 (x − xi )2
S∆| (x) = − + + Ai .
[x ,x
i i+1 ]
2 hi+1 2 hi+1
Interpolación por splines 163
obtenemos
Mi 2 Mi 2
hi+i + Bi = yi =⇒ Bi = yi − h
6 6 i+1
6 y2 − y1 y1 − y0
−
h1 + h2 h2 h1
6 y3 − y2 y2 − y1
−
h2 + h3 h3 h2
=
..
.
..
.
6 yn − yn−1 yn−1 − yn−2
−
hn−1 + hn hn hn−1
Este sistema puede resolverse por cualquiera de los métodos iterados estudia-
dos en el Capı́tulo 2 ya que, al ser la matriz del sistema de diagonal dominante,
todos ellos son convergentes.
Solución:
f (x) = ln x =⇒ f (1) = 0 f (2) = ln 2
1
f 0 (x) = =⇒ f 0 (1) = 1 f 0 (2) = 0.5
x
Los polinomios de Lagrange en el soporte {1, 2}
x−2 x−1
L0 (x) = =2−x y L1 (x) = =x−1
1−2 2−1
n h
X i ak = f (xk )
P2n+1 (x) = ak +bk (x−xk ) L2k (x) con
bk = f 0 (xk ) − 2f (xk )L0k (x − k)
k=0
h i h i
Para n = 1 se tiene: P3 (x) = a0 + b0 (x − 1) L20 (x) + a1 + b1 (x − 2) L21 (x)
con
a0 = f (1) = 0 b0 = f 0 (1) − 2f (1)L01 (1) = 1 − 2 · 0 · 1 = 1
de donde
h i
P3 (x) = (x − 1)L20 (x) + ln 2 + (0.5 − 2 ln 2)(x − 2) L21 (x)
Para x = 10 5
h i
P3 (1.5) = 0.5 · 0.52 + ln 2 + (0.5 − 2 ln 2)(−0.5) · 0.52 ' 0.409073590
Solución:
P3 (0) = a0 = −5
P3 (1) = a3 + a2 + a1 + a0 = −3
0 -5
2
1 −3 1
4 1
2 1 4
12
3 13
P3 (x) = x3 − 2x2 + 3x − 5
x − x0 x−0
donde t = = = x, por lo que:
h 1
! ! ! !
x x x x
P3 (x) = −5 +2 +2 +6 =
0 1 2 3
x(x − 1) x(x − 1)(x − 2)
= −5 + 2x + 2 +6 =
2! 3!
= −5 + 2x + x(x − 1) + x(x − 1)(x − 2) =⇒
P3 (x) = x3 − 2x2 + 3x − 5
Sol :
1 3 1
L0 (x) −x + 1 (x − 3x + 2) − (x3 − 6x2 + 11x − 6)
2 6
1 3
L1 (x) x −x2 + 2x (x − 5x2 + 6x)
2
1 2 1
L2 (x) − (x − x) − (x3 − 4x2 + 3x)
2 2
1 3
L3 (x) − − (x − 3x2 + 2x)
6
Sol : P3 (x) = 12x3 − 22x2 + 12x con ε(x) = 2x(x − 1)(x − 2)(x − 3).
Sol : P2 (0.01) ' 1.01181, e0.01 ' 1.01005, |P2 (0.01) − e0.01 | = 0.00176.
x 0 1 2 3
Ejercicio 3.9 Dada la tabla se pide:
y −1 6 31 98
Se pretende,
Z b en este tema, dar una aproximación numérica del valor de una
integral f (x)dx en los distintos problemas que se presentan en la práctica,
a
como son:
171
172 Integración numérica
z(x) = (x − x0 )(x − x1 ) · · · (x − xn ),
el polinomio de interpolación es
Por tanto:
P (x) = 1 =⇒ b − a = a0 + a1 + · · · + an
b2 − a2
P (x) = x =⇒ = a0 x0 + a1 x1 + · · · + an xn
2
....................................................... (4.1)
.......................................................
bn+1 − an+1
P (x) = xn =⇒ = a0 xn0 + a1 xn1 + · · · + an xnn
n+1
Fórmulas de cuadratura 173
Ejemplo 4.1 Vamos a integrar una función f (x) en [0, 1] considerando los
soportes:
S1 = {0, 1/3, 1/2} y S2 = { 1/4, 1/2, 3/4}.
P (x) = 1 =⇒ a0 + a1 + a2 = 1
1 1 1
P (x) = x =⇒ 0 · a0 + a1 + a2 =
3 2 2
1 1 1
P (x) = x2 =⇒ 0 · a0 + a1 + a2 =
9 4 3
cuya solución es
1 3
a0 = a1 = − a2 = 2
2 2
luego
Z 1
1 3
f (x)dx ' f (0) − f ( 1/3) + 2f ( 1/2)
0 2 2
174 Integración numérica
P (x) = 1 =⇒ b0 + b1 + b2 = 1
1 1 3 1
P (x) = x =⇒ b0 + b1 + b2 =
4 2 4 2
1 1 9 1
P (x) = x2 =⇒ b0 + b1 + b2 =
16 4 16 3
cuya solución es
2 1 2
b0 = b1 = − b2 =
3 3 3
luego
Z 1
2 1 2
f (x)dx ' f ( 1/4) − f ( 1/2) + f ( 3/4)
0 3 3 3
x0 = a x1 = a + h ··· xi = a + ih ··· xn = a + nh = b
Fórmulas de Newton-Cötes 175
(x − x0 )(x − x1 ) · · · (x − xn )
Li (x) = =
(x − xi )(xi − x0 ) · · · (xi − xi−1 )(xi − xin1 ) · · · (xi − xn )
(x − a)(x − a − h) · · · (x − a − nh)
= =
(x − a − ih) ih (i − 1)h · · · h (−h) (−2h) · · · (−(n − i)h)
(x − a)(x − a − h) · · · (x − a − nh)
= =
(x − a − ih) · i! · (n − i)! · hn−1 · (−1)n−i
x − a x − a x − a
− 1 ··· −n
=h h h h =
(x − a − ih) · i! · (n − 1)! · (−1)n−i
x − a x − a x − a
− 1 ··· −n
= xh − a h h
− i · i! · (n − 1)! · (−1)n−i
h
x−a
Por lo que haciendo t = se tiene que
h
t(t − 1) · · · (t − n)
Li (x) =
(t − i) · i! · (n − i)! · (−1)n−i
Por tanto:
n n
t(t − 1) · · · (t − n)
Z Z
ai = Li (x)dx = hdt =
0 0 (t − i) · i! · (n − i)! · (−1)n−i
n
(−1)n−i h t(t − 1) · · · (t − n)
Z
= dt =⇒
i! · (n − i)! 0 t−i
!
n
n−i
i Z n
z(t)
ai = h(−1) dt
n! 0 t−i
que son los coeficientes de Newton-Cötes.
Demostración.
!
n
k
n−k Z
z(t) n
an−k = h(−1) dt
n! 0 t − (n − k)
Haciendo t − n = −u =⇒ dt = −du se tiene que
!
n
k+1
n−k Z n
(−u + n)(−u + n − 1) · · · (−u)
an−k = h(−1) du =
n! 0 −u + k
!
n
k+1+n+1
n−k Z n
u(u − 1) · · · (u − n)
= h(−1) du =
n! 0 u−k
!
n
n+k
k Z n
u(u − 1) · · · (u − n)
= h(−1) du =
(−1)2k n! 0 u−k
!
n
n−k
k Z n
z(u)
= h(−1) du = ak
n! 0 u−k
Teniendo en cuanta la Proposición 4.1, sólo hay que calcular la mitad de los
coeficientes.
• Si n es par:
n
n+3 (n + 2 Z
h f (c)
εn = t · t(t − 1) · · · (t − n)dt
(n + 2)! 0
• Si n es impar:
n+2 (n + 1 Z n
h f (c)
εn = (t − 1) · · · (t − n)dt
(n + 1)! 0
Fórmulas de Newton-Cötes 177
El método del trapecio nos aproxima la integral por el área de la región plana
limitada por las rectas x = a, x = b, y = 0 y la recta que pasa por los puntos
(a, f (a)) y (b, f (b)), es decir, el área de un trapecio (ver Figura 4.1).
f (x)
f (b) !
!
!!!
!
!!!
!!
f (a) !
a b
Figura 4.1: Método del trapecio
obtenemos:
Z 2
ln 2 + ln 1 ln 2
ln x dx ' 1 · = ' 0.34657359027997
1 2 2
El error vendrá dado por
(b − a)3
00 1 1 1 1
ε≤ máx |f (x)| = máx 2 = 1= = 0.08333333333333
12 x∈[1,2] 12 x∈[1,2] x 12 12
Ejemplo 4.3 Para calcular la integral del Ejemplo 4.2 por el método de Simp-
son obtenemos
Z 2
1 3 1
ln x dx ' (ln 1 + 4 ln + ln 2) = (4 ln 3 − 3 ln 2) ' 0.38583460216543
1 6 2 6
y el error vendrá dado por
(b − a)5
(ıv
1 6 1
ε =≤ máx |f (x)| = máx 4 = 6 = 0.00208333333333
2880 x∈[a,b] 2880 x∈[1,2] x 2880
b
x2 − x0 h
Z i
f (x)dx ' f (x0 ) + 4f (x1 ) + f (x2 ) +
a 6
x4 − x2 h i
+ f (x2 ) + 4f (x3 ) + f (x4 ) + · · · +
6
xn − xn−2 h i
+ f (xn−2 ) + 4f (xn−1 ) + f (xn ) =
6
hh
= f (x0 ) + 4f (x1 ) + 2f (x2 ) + 4f (x3 ) + 2f (4 ) + · · · +
3 i
+ 2f (xn−2 ) + 4f (xn−1 ) + f (xn ) =
h
= f (x0 ) + f (xn ) + 2 f (x2 ) + · · · + f (xn−2 ) +
3
+ 4 f (x3 ) + · · · + f (xn−1 )
Llamando
X X
E = f (x0 ) + f (xn ) P = f (xi ) I= f (xi )
i par ı impar
i 6= 0
i 6= n
se tiene que Z b
h
f (x)dx ' (E + 2P + 4I)
a 3
180 Integración numérica
Ejemplo 4.4 Volvamos a calcular la integral del Ejemplo 4.2 por la fórmula
compuesta de Simpson para n = 10.
E = ln 1 + ln 2 = ln 2 ' 0.69314718055995
P = ln 1.2 + ln 1.4 + ln 1.6 + ln 1.8 ' 1.57658408756302
I = ln 1.1 + ln 1.3 + ln 1.5 + ln 1.7 + ln 1.9 ' 1.93562168961455
por lo que
Z 2
1
ln x dx ' (0.69314718055995+2·1.57658408756302+4·1.93562168961455)
1 30
Z 2
ln x dx ' 0.38629340380481
1
con una cota de error de
(b − a)5
1 6 1
ε≤ 4
(ıv
máx |f (x)| = máx 4 = 6 ≤ 3.3334 · 10−6
180 n x∈[a,b] 1800000 x∈[1,2] x 1800000
Z b
h
f (x)dx ' f (x0 ) + f (x1 ) + f (x1 ) + f (x2 ) + · · · + f (xn−1 + f (xn )
a 2
b
b−a
Z
f (x)dx ' f (x0 ) + f (xn ) + 2 f (x1 ) + f (x2 ) + · · · + f (xn−1 )
a 2n
(b − a)3
ε≤ 2
máx |f 00 (x)|
12 n x∈[a,b]
Ejemplo 4.5 Calculemos de nuevo la integral del Ejemplo 4.2 por la fórmula
compuesta de los trapecios para n = 5.
Z 2
1
ln x dx ' [(ln 1 + ln 2) + 2(ln 1.2 + ln 1.4 + ln 1.6 + ln 1.8)]
1 10
1
' 3.84631535568599 = 0.38463153556860
10
con una cota de error de
(b − a)3
00 1 1
= 1 ≤ 0.0034
ε≤ 2
máx |f (x)| = máx
12 n x∈[a,b] 300 x∈[1,2] x2 300
y, en consecuencia,
n n
(−1)k ak (−1)n (−1)n h (−1)n h
X Z in i
! =h z 0 (t)dt = h z(t) = h z(n) − z(0) .
k=0
n
k
n! 0 n! 0 n!
n
X (−1)k ak
Al ser z(n) = z(0) = 0, podemos asegurar que n
! = 0.
k=0 k
1
1 − x2
Z
Ejercicio 4.2 Dada la integral dx se pide:
0 1 + x2
a) Calcularla exactamente.
b) Calcularla, aproximadamente, por la fórmula básica de Simpson.
c) Calcularla por la fórmula compuesta de Simpson de 11 sumandos.
d) Aplicar la siguiente fórmula:
Z 1
1h p p i
f (x) dx ' 5f (− 3/5) + 8f (0) + 5f ( 3/5)
−1 9
comprobando que integra, exactamente, polinomios de grado ≤ 5.
Solución:
Z 1 Z 1
1 − x2 2 h i1 π
a) 2
dx = −1+ 2
dx = − x + 2 arctg x = −1 +
0 1+x 0 1+x 0 2
Z 1
1 − x2 π
2
dx = −1 + ' 2.57079632679490
0 1+x 2
1
1 − x2
Z
1
2
dx ' (1 + 11.44925864003328 + 4.67463056905495) =⇒
0 1+x 30
1
1 − x2
Z
dx ' 0.57079630696961
0 1 + x2
Con un error
(b − a)5 1
ε≤ máx |f (ıv
(x)| = 48 ≤ 2.6667 · 10−5
180 n4 x∈[a,b] 1800000
Por tanto:
Z 1 Z 1 Z 1
2
1 · dx = 2 x dx = 0 x2 dx =
−1 −1 −1 3
Z 1 Z 1 Z 1
3 4 2
x dx = 0 x dx = x5 dx = 0
−1 −1 5 −1
Ejercicio 4.3 Probar que la fórmula compuesta de los trapecios para el in-
tervalo [0, 2π]:
Z 2π
h
f (x) dx = [f (0) + 2f (h) + 2f (2h) + · · · + 2f ((n − 1)h) + f (2π)] + ε
0 2
(h = 2π/n) integra, exactamente, las funciones:
1, sin x, cos x, sin 2x, cos 2x, . . . , sin(n − 1)x, cos(n − 1)x.
Ejercicios resueltos 185
n−1
2π X 2πj
Tn = f( )
n j=0 n
Estudiemos el sumatorio para f (x) = eikx .
n−1 n−1
X 2πj X 2πjk
eik n = ei n
j=0 j=0
2πk
Se trata de una suma geométrica de razón r = ei n . Para r = 1
cos 2πk
n
= 1 2πk
⇐⇒ = 0, ±2π, ±4π, . . . ⇐⇒ k = 0, ±n, ±2n, . . .
2πk
sin n = 0 n
c) Dar una condición, necesaria y suficiente, para que dicha fórmula sea
exacta para polinomios de tercer grado.
Sol : c = 0.
r
5x + 13
d) Aplicar la fórmula a f (x) = con c = 0.1 y comparar con el
2
valor exacto.
Z 1
Ejercicio 4.5 Calcular f (x) ln x dx interpolando f (x), por un polinomio
0
de tercer grado, en el soporte {0, 1/3, 2/3, 1} y aplicar el resultado al cálculo de
Z 1
sen x ln x dx.
0 Z 1
−1
Ayuda: xm ln x dx = (m ≥ 0).
0 (m + 1)2
Ejercicios propuestos 187
Z
1
1h 1 1 i
' −
f (x) ln x dx 11f (0) + 19f ( ) + f ( ) + f (1)
0 32 3 3
Sol : Z 1
sin x ln x dx ' −0.239891875.
0
m 2 3 4 5 6
Sol :
n 2 2 4 8 12
c) Calcular la integral, por la fórmula compuesta de Simpson, con cuatro
cifras decimales exactas.
Sol : 5.8731
Sol : 328/45.
[4] Fröberg, C.E. Introducción al Análisis Numérico. Ed. Vicens Vives. 1977.
[6] Mathews, J.H. y Fink, K.D. Métodos Numéricos con MATLAB. (Tercera
edición). Prentice Hall. 1999.
189