Escolar Documentos
Profissional Documentos
Cultura Documentos
Una Introducción
al
Análisis Numérico
i
Una Introducción
al
Análisis Numérico
Con 55 figuras
ii
Este libro nace ante el vacio existente de una bibliografı́a en español que
trate los temas capitales del Análisis Numérico. El nombre que lleva, “Una
Introducción al Análisis Numérico”, se debe esencialmente al carácter que
deseo que tenga este libro.
El Análisis Numérico es una disciplina de las Matemáticas en gran
crecimiento gracias a la utilización masiva de medios informáticos. Dı́a que
pasa es más corriente el tratamiento numérico en las Ciencias, como en
la Tecnologı́a; el modelaje, la simulación numérica son moneda corriente.
Ahora bien, toda persona que pretenda tener como herramienta de tra-
bajo, los métodos numéricos, debe conocer los tópicos introductorios del
Análisis Numérico que son: Sistemas Lineales, Interpolación, Resolución de
Ecuaciones no Lineales, Cálculo de Valores Propios y Solución Numérica de
Ecuaciones Diferenciales, porque tarde o temprano se topará con alguno de
estos temas.
Siguiendo la lı́nea trazada por este libro, éste contiene siete capı́tulos: el
primero de carácter introductorio, donde se da los conceptos básicos de error
y estabilidad, seguido de un ejemplo mostrando que la aritmética del punto
flotante no es un impedimento para efectuar cálculos de precisión arbitraria;
el segundo capı́tulo trata sobre los problemas lineales mas comunes y
los métodos de solución de estos; el tercer capı́tulo aborda el tema de
interpolación numérica y extrapolación, introduciendo el estudio de los
splines cúbicos; el capı́tulo IV analiza los problemas no lineales y los métodos
mas eficientes de resolución de estos; en el capı́tulo V se estudia el problema
de valores propios y la implementación de métodos numéricos para el cálculo
de valores propios; el capı́tulo sexto trata de la integración numérica y la
transformada rápida de Fourier y finalmente el capı́tulo VII estudia los
problemas diferenciales y los métodos numéricos de resolución mas usuales
de estos problemas.
Prácticamente el contenido de este libro ven los estudiantes de segundo
año de las Carreras de Mátematicas e Informática de la Universidad de
Ginebra, Suiza, Universidad en la cual he sido formado. El pre-requisito
para un buen aprovechamiento de este libro es conocer bien los principios
básicos del Análisis Real y Complejo, como también tener una buena base
de Algebra Lineal. Por consiguiente, este libro está destinado a estudiantes
universitarios que siguen la asignatura de Análisis Numérico, como ası́ mismo
toda persona interesada en Análisis Numérico que tenga los pre-requisitos
y que desea cimentar sus conocimientos en esta disciplina. Este libro puede
vi Prefacio
I. Preliminares
I.1 Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
I.2 Estabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
I.3 Un ejemplo: Cálculo de PI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
III. Interpolación
III.1 Interpolación de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Bases Teóricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Construcción del Polinomio de Interpolación . . . . . . . . . . . . . . 106
El Error de Interpolación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Polinomios de Chebichef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Estudio de los Errores de Redondeo . . . . . . . . . . . . . . . . . . . . . . 115
Convergencia de la Interpolación . . . . . . . . . . . . . . . . . . . . . . . . . 119
Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
III.2 Splines Cúbicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Construcción del Spline Interpolante . . . . . . . . . . . . . . . . . . . . . . 133
El Error de la Aproximación Spline . . . . . . . . . . . . . . . . . . . . . . . 136
Aplicación de Spline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
III.3 Extrapolación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
f = fn ◦ fn−1 ◦ · · · ◦ f2 ◦ f1 . (I.1.1)
x1 = x;
(I.1.3)
xn = x · xn−1 , para n ≥ 2.
q0 (x) = an ,
q1 (x) = q0 (x)x + an−1 ,
q2 (x) = q1 (x)x + an−2 , (I.1.4)
..
.
qn (x) = qn−1 (x)x + a0 .
n(n + 3)
operaciones elementales. (I.1.5)
2
El algoritmo de Hörner requiere a cada paso de una multiplicación y una
adición lo cual es igual a
C = m1 + m2 + . . . + mn , (I.1.7)
El nombre que tiene este error, como se dijo más arriba, es debido
a que la la serie de Taylor es truncada a un número finito de términos.
No obstante, existe una gran diversidad de métodos que aproximan a la
solución del problema utilizando otro tipo de argumentos, en este caso es
más conveniente utilizar el nombre de error de aproximación o error del
método; de todas formas es cuestión de gusto.
El concepto de eficiencia ha sido definido para aquellos problemas
donde se puede encontrar la solución mediante un algoritmo. Para aquellos
problemas, donde no es posible encontrar un algoritmo que de la solución y
suponiendo que es posible aproximar la solución de manera arbitraria me-
diante un método algorı́tmico, la eficiencia está ligada al costo en opera-
ciones, como también al error del método. En esta situación la eficiencia es
un concepto más subjetivo que depende de alguna manera del usuario, pues
existen problemas donde el error de aproximación debe ser lo más pequeño
posible, y otros problemas donde la exactitud no es un requisito primordial.
Ejemplos
1.- Considérese el problema, determinar π. Utilizando la identidad
π
arctan 1 =
4
y que la serie de Taylor en el origen está dada por
∞
X (−1)k 2k+1
arctan x = x , (I.1.11)
2k + 1
k=0
se puede obtener un método que aproxime π, pero el problema de este
método es su convergencia demasiado lenta; es mas, para x = 1 la serie
(I.1.11) no es absolutamente convergente.
Otro método que permitirı́a aproximar π, consiste en utilizar el hecho
que
π
arccos(1/2) =
3
y desarrollando arccos en serie de Taylor, se obtiene un método cuya
convergencia es mucho más rápida.
√
2.- Considérese
√ el problema, determinar 2. La primera manera de determi-
nar 2 es tomar un intervalo cuya extremidad inferior tenga un cuadrado
inferior a 2 y la extremidad superior tenga un cuadrado más grande a 2.
Se subdivide el intervalo en dos subintervalos de igual longitud, se elige
aquel cuyas extremidades al cuadrado contengan 2. En la tabla siguiente
se da algunas de las iteraciones de este método.
6 I Preliminares
Puede
√ observarse inmediatamente, que el segundo método para determinar
2 es más eficiente que el primer algoritmo.
Ejercicios
1.- Supóngase que, el dispositivo de cálculo, con el que se cuenta, puede
efectuar la división con resto; es decir, para a, b enteros no negativos,
con b 6= 0, el dispositivo calcula p, q satisfaciendo:
a = pb + r y 0 ≤ r < b.
a) Implementar un algoritmo que calcule el maximo común divisor de a
y b.
b) Utilizando el inciso precedente, implementar otro algoritmo que
permita calcular m, n ∈ Z, tales que
mcd(a, b) = ma + nb.
I.1 Algoritmos 7
|b| |b|
a = pb + r y − <r≤ .
2 2
bn = an ;
bi = ai + x0 bi+1 , i = n − 1, . . . , 1, 0.
mantisa, se tiene
. . . 0} 49 . . . · 101 ) = 1,
arr(0. |10 {z
l
. . . 0} 50 . . . · 101 ) = . 10
arr(0. |10 {z . . . 1} ·101 > 1,
| {z
l l
|arr(x) − x|
≤ eps. (I.2.6)
|x|
|P ′ (x) − P ′ (x̄)|
≤ κ(P ′ )eps
|P ′ (x)|
|fn+1 (P ′ (x)) − fn+1 (P ′ (x̄))|
⇒ ≤ κ(fn+1 )κ(P ′ )eps.
|fn+1 (P ′ (x))|
Ejemplo
Sea x = 104 y considérese el problema de calcular 1/(x(1 + x)). Se
examinará los dos algoritmos siguientes: El primero definido por
x
ր ց
1
x x(x + 1) −→ .
x(x + 1)
ց ր
x+1
1/x
ր ց
1 1 1
x − = .
x x+1 x(x + 1)
ց ր
x + 1 −→ 1/(x + 1)
|x̄i − xi |
≤ Const · eps, (I.2.15)
|xi |
Ejemplo
Considérese el problema de calcular el producto escalar x1 · x2 + x3 · x4 .
Para calcular éste, se utiliza el algoritmo
x1 · x2
ր ց
(x1 , x2 , x3 , x4 ) x 1 · x 2 + x3 · x 4 . (I.2.16)
ց ր
x1 · x2
donde |ǫi | , |ηj | ≤ eps. Este resultado es igual a x̄1 · x̄2 + x̄3 · x̄4 , si se
plantea
Ejercicios
1.- ¿Cual es la condición de la sustracción de dos números?
2.- Determinar la condición del problema P(x1 , x2 ) = x1 /x2 con x2 6= 0.
3.- Hallar la condición del cálculo del producto escalar
n
X
hx, yi = xi yi .
i=1
tan α + tan β
tan(α + β) = ,
1 − tan α tan β
X∞
(−1)k 1 2k+1
π = 48 ( )
2k + 1 18
k=0
| {z }
A
X∞ X∞
(−1)k 1 2k+1 (−1)k 1 2k+1
+ 32 ( ) − 20 ( ) . (I.3.4)
2k + 1 57 2k + 1 239
k=0 k=0
| {z } | {z }
B C
Ahora bien, se desea obtener una representación de π en notación decimal
con N decimales de precisión. Si cada serie del lado derecho de (I.3.4) es
calculada con una precisión de 10−(N +1) se tiene largamente la precisión
deseada. Denotando por Â, el valor calculado de A; B̂, el valor calculado de
B y Ĉ, el valor calculado de C, se tiene:
MA
X (−1)k 1 2k+1
 = 48 ( ) ,
2k + 1 18
k=0
MB
X (−1)k 1 2k+1
B̂ = 32 ( ) ,
2k + 1 57
k=0
MC
X (−1)k 1 2k+1
Ĉ = 20 ( ) .
2k + 1 239
k=0
De donde:
∞
X (−1)k 1 (1/18)2MA +3
2k+1
 − A = 48 ( ) ≤ 48 ,
k=MA +1
2k + 1 18 1 − (1/18)2
∞
X (−1)k 1 (1/57)2MB +3
2k+1
B̂ − B = 32 ( ) ≤ 32 ,
k=MB +1
2k + 1 57 1 − (1/57)2
∞
X (−1)k 1 (1/239)2MC +3
2k+1
Ĉ − C = 20 ( ) ≤ 20 .
k=MC +1
2k + 1 239 1 − (1/239)2
Por hipótesis, se tiene por ejemplo que A − Â ≤ 10−(N +1) , por lo tanto
para asegurar esta precisión es suficiente que
(1/18)2MA +3
48 ≤ 10−(N +1) ,
1 − (1/18)2
remplazando el signo ≤ por =, se tiene
(1/18)2MA +3
48 = 10−(N +1) , (I.3.5)
1 − (1/18)2
I.3 Un ejemplo: Cálculo de Pi 17
Despejando MA , se obtiene
N/m+2
X
x̂ = āk /10m k , (I.3.10)
k=0
con 0 ≤ āk < 10m para k ≥ 1. Comparando (I.3.9) con (I.3.10) se tiene
que ak = āk para 0 ≤ k ≤ N/m + 1 y |ak − āk | ≤ 1 para k = N/m + 2,
deduciendose de esta manera la:
Proposición I.3.1.- Sea x un número no negativo y x̄ su representación
dada por (I.3.10), entonces
donde x̂ está dado por (I.3.10), los coeficientes bk están definidos recursiva-
mente, utilizando la división euclidiana, de la manera siguiente:
qaN/m+2 = bN/m+2 + dN/m+2 10m ,
qaN/m+1 + dN/m+2 = bN/m+1 + dN/m+1 10m ,
.. (I.3.17)
.
b0 = qa0 + d1 .
Habiendo definido las operaciones requeridas para calcular π con la
precisión requerida, se puede definir el algoritmo que calculará Â, y por
consiguiente π̂.
Algoritmo
1.- Se define x := 1/18, a = x, k = 0.
2.- Hacer para k = 1 hasta k = MA :
x := x/182 ,
y := x/(2k + 1),
a; = a + (−1)k y.
3.- a := 48 · a.
Finalmente, se debe hacer un análisis de la propagación de errores de
redondeo, cometidos en el cálculo de Â, para asegurar que el resultado que
de la computadora corresponde con lo esperado. Este estudio se lo efectuará
en tres partes. Sea x̂2k+1 el resultado realizado por el algoritmo al calcular
x2k+1 para x = 1/18. Utilizando la proposición I.3.1, se tiene,
x̂ = x + ǫ, |ǫ| ≤ 10−N −2m : (I.3.18)
deduciendose inmediatamente:
x̂3 = (x + ǫ)/182 + η,
x̂5 = x̂3 /182 + δ, (I.3.19)
..
.
Utilizando desigualdades triangulares y considerando series geométricas, se
obtiene
2k+1 1
x̂ − x2k+1 ≤ 10−N −2m . (I.3.20)
1 − (1/18)2
La segunda operación, que aparece en el algoritmo, es la división por los
enteros de la forma 2k + 1. Por el mismo procedimiento que antes, se llega a
2k+1\
x /(2k + 1) − x2k+1 /(2k + 1) ≤ 2 · 10−N −2m . (I.3.21)
20 I Preliminares
donde
a11 ··· a1n b1
.. .. .
A= . . , b = ..
an1 · · · ann bn
k k : Rn −→ R,
i) kxk ≥ 0, kxk = 0 ⇐⇒ x = 0;
ii) kαxk = |α| kxk , donde α ∈ R;
iii) kx + yk =≤ kxk + kyk .
Estas normas, que son las usualmente utilizadas, tienen algunas propiedades
en común. La más importante es que, si se aumenta en valor absoluto una
de las componentes, la norma se incrementa. Es necesario formalizar este
hecho, motivo por el cual, se tiene la:
26 II Sistemas Lineales
kAxk
kAk = sup = sup kAxk . (II.1.1)
x6=0 kxk kxk=1
kIk = 1, (II.1.3)
kABk ≤ kAk kBk . (II.1.4)
n
X
kAk1 = max |aij | , (II.1.5)
j=1,...,m
i=1
p
kAk2 = valor propio más grande de At A, (II.1.6)
Xm
kAk∞ = max |aij | . (II.1.7)
i=1,...,n
j=1
28 II Sistemas Lineales
Para la k k2 se tiene:
kAxk22 = hAx, Axi = xt At Ax,
ahora bien At A es una matriz simétrica definida positiva, de donde los
valores propios son reales no negativos, además es posible formar una base de
vectores propios ortonormales. Sea {e1 , . . . , em } una base de vectores propios
Xm Xm
ortonormales, entonces x = αi ei y Ax = λi αi ei , donde los λi ≥ 0 son
i=1 i=1
los valores propios de A. Por lo tanto, se tiene
Xm Xm
2
kAxk2 = λ2i αi2 ≤ max λi αi2 = max λi kxk2 .
i=1,...,m i=1,...,m
i=1 i=1
Para obtener la igualdad, es suficiente tomar x = ejo , donde λjo es el
autovalor más grande.
Para la k k∞ se tiene:
X
m X m
kAxk∞ = max aij xj ≤ max |aij | |xj |
i=1,...,n i=1,...,n
j=1 j=1
m
X m
X
≤ max |aij | max |xj | ≤ max |aij | kxk∞ ,
i=1...,n j=1,...,m i=1,...,n
j=1 j=1
m
X
ası́ kAk∞ ≤ max |aij | .
j=1,...,m
j=1
II.1 Condición del Problema lineal 29
P(A, b) = x.
donde:
kx − x̄k
Si se plantea P(Ā, b̄) = x̄, se tiene ≤ cond · eps. Por otro lado,
kxk
considerando que solamente normas monónotas son utilizadas, se tiene:
a11 ǫ11 ··· a1n ǫn1
.. .. ..
≤ eps kAk ,
. . .
an1 ǫn1 · · · ann ǫnn
de esta manera
Ā − A
≤ eps kAk y
b̄ − b
≤ eps kbk . (II.1.11)
Teorema
II.1.8.-
Sea A
una matriz con det A 6= 0, supóngase que
Ā − A
≤ kAk ǫA ,
b̄ − b
≤ kbk ǫb . Si ǫA cond(A) < 1, entonces
kx̄ − xk cond(A)
≤ (ǫA + ǫb ). (II.1.13)
kxk 1 − ǫA cond(A)
Si además se tiene ǫA cond(A) < 21 , entonces la condición del problema
resolver Ax = b es ≤ 2cond(A).
Demostración.- Se tiene Ax = b y Āx̄ = b̄, de donde:
6 4
entonces kAk∞ = , además A = (I + N ) donde
h h
1
0 4 0 ··· 0
1 0 1
··· 0 1
4 4
N = . .. .. .. , kN k∞ = < 1.
.. . . ··· . 2
1
0 ··· 0 4 0
Se deduce que
h h
A−1 = (I + N )−1 = (I − N + N 2 − N 3 + · · ·),
4 4
−1
h
2
A
≤ (1 + kN k +
N
+ · · ·)
∞ 4
h 1
≤
4 1 − kN k
h
≤ ,
2
entonces cond∞ (A) ≤ 3, por lo tanto, la matriz es bien condicionada.
3.- El siguiente ejemplo muestra la existencia de una matriz mal condi-
cionada.
Sea H la matriz de n × n, llamada matriz de Hilbert, definida por
1
hij = , i, j = 1, . . . , n.
i+j−1
H es una matriz simétrica definida positiva, motivo por el cual la
condición respecto a la norma euclidiana está dada por
λmax
cond2 H = ,
λmin
donde los λ son valores propios de H. Se puede mostrar que
cond2 H ∼ cen . (II.1.18)
Se puede observar claramente que las matrices de Hilbert son mal
condicionadas, inclusive para n bastante pequeño.
4.- Finalmente, este ejemplo muestra la existencia de otra matriz mal
condicionada, como ser las matrices de Vandermonde. Sea V la matriz
de n × n definida por
1 1 ··· 1
c1 c2 ··· cn
V = .. . . .. ,
.. ··· .
c1n−1 c2n−1 · · · cnn−1
32 II Sistemas Lineales
obteniendo el:
Corolario II.1.10.- Con las misma hipótesis del teorema II.1.8, y además
si cond(DA)eps < 21 , se tiene
Ejercicios
1.- a) Sea k k definida en Rn . La bola unitaria cerrada se define como
B̄ = x ∈ Rn kxk ≤ 1 ,
Deducir que
|rii |
condp (R) ≥ max .
i,k |rkk |
8.- Sea
1
2 + 1 0 ··· ··· 0
h0 h1
1
2 1
+ 1 1
··· 0
h1 h1 h2 h2
A=
.. .. .. ..
0 . . . .
1 1 1
0 ··· 0 hn−2 2 h +h
n−2 n−1
Ax = b, (II.2.1)
A = (A1 , . . . , An )
det A(i)
xi = ,
det A
X n
Y
signo(σ) aiσ(i) ,
σ∈Sn i=1
problema. Como conclusión se puede decir que existen métodos cuyo valor
teórico es importante, pero su ejecución numérica es desastrosa, razón por
la cual es imprescindible implementar algoritmos cuyo costo no sea muy
elevado.
El Algoritmo de Gauss
Uno de los algoritmos más utilizados, precisamente por su relativo bajo
costo, es el Algoritmo de Eliminación de Gauss. Considérese el sistema de
ecuaciones dado por
a11 x1 + a12 x2 + ··· +a1n xn = b1
a21 x1 + a22 x2 + ··· +a2n xn = b2
.. .. .
.
.
an1 x1 + an2 x2 + · · · +ann xn = bn
a11 x1 + a12 x2 + ··· + a1n xn = b1
(1) (1) (1)
a22 x2 + ··· + a2n xn = b2
.. .. .
. .
(1) (1) (1)
an2 x2 + ··· + ann xn = bn
(1)
(1) ai2
Paso 2 Si a22 6= 0, (1) , para i = 3, . . . , n.
li1 =
a22
Se calcula lineai − li2 ∗ linea2 , para i = 3, . . . , n.
Si a22 = 0 se intercambia lineas.
Se repite el procedimiento hasta obtener un sistema triangular de ecuaciones
como el siguiente
r11 x1 + ··· + r1,n−1 xn−1 + r1n xn = c1
.. ..
. . .
rn−1,n−1 xn−1 + rn−1,n xn = cn−1
rnn xn = cn
II.2 Métodos Directos 37
De donde se tiene:
cn
xn = ,
rnn
cn−1 − rn−1,n xn
xn−1 = ,
rn1 ,n−1
(II.2.2)
..
.
c1 − r12 x2 − · · · − r1n xn
x1 = .
r11
Si se utiliza la notación matricial, se obtiene el siguiente esquema del
algoritmo de Gauss, con las matrices aumentadas:
(A, b) A(1) , b(1) A(2) , b(2)
∗ ∗ ∗ ··· ∗ ∗ ∗ ∗ ··· ∗ ∗ ∗ ∗ ··· ∗
∗ ∗ ∗ ··· ∗ → 0 ∗ ∗ ··· ∗ → 0 ∗ ∗ ··· ∗
..
. .. 0 0 ∗ ··· ∗
. .
∗ ∗ ∗ ··· ∗ 0 .. ..
∗ ∗ ··· ∗ .
∗ ∗ ∗ ··· ∗ 0 ∗ ∗ ··· ∗ 0 0 ∗ ··· ∗
A(n−1) , b(n−1)
∗ ∗ ∗ ··· ∗
· · · −→
0 ∗ ∗ ··· ∗
0 0 ∗ ··· ∗.
. . .
.. .. .. ...
0 0 ··· 0 ∗
A −→ A(1) −→ · · · −→ A(n−1) = R,
donde:
1 0 0 ··· 0
−l21 1 0 ··· 0
A(1) = −l 0 1 0 · · · 0 = L1 A,
.31 .. .. ..
.. . . .
−ln1 0 · · · 0 1
1 0 0 ··· 0
0 1 0 ··· 0
A(2)
= 0 −l 32 1 0··· 0 = L2 A,
... ..
.
..
.
0 −ln2 0 · · · 1
por lo tanto
R = Ln−1 Ln−2 · · · L2 L1 A.
L−1
i = I + Vi ,
L = I + V1 + V2 + · · · + Vn−1 .
Ax1 = b1 ,
(II.2.5)
Ax2 = b2 .
II.2 Métodos Directos 39
Ly = b,
(II.2.6)
Rx = y.
El costo de la descomposición LR.
Para evaluar cuantas operaciones son necesarias para llegar a la descom-
posición LR de una matriz A ∈ Mn (R), se procede de la manera siguiente:
x1 = 1, 000100010001000 · · · ,
(II.2.10)
x2 = 0, 999899989998999 · · · .
Ahora bien, aplicando el algoritmo de Gauss con 10−4 como pivote, se tiene:
a21
l21 = = 0, 100 · 105 ,
a11
La segunda linea del sistema se convierte en
−0, 100 · 105 x2 = −0, 100 · 105 ,
de donde
x2 = 0, 100 · 101 ,
resolviendo x1 se tiene
0, 100 · 10−3 x1 = 0, 100 · 101 − 0, 100 · 101 ,
por lo tanto
x1 = 0. (II.2.11)
Si |l21 | ≫ 1 se tiene:
(1) (1)
a22 ≈ −l21 a12 , b2 ≈ −l21 b1 ,
b1
x2 ≈ ,
a12
1 1
x1 = (b1 − a12 x2 ) ≈ (b1 − b1 ) .
a11 a11
Para solucionar este problema, se realiza una búsqueda de pivote parcial,
que consiste en:
Se escoge el pivote ai1 tal que
|ai1 | ≥ |aj1 | j = 1, . . . , n.
obteniendo
A − L̂R̂ =L̂−1
1 L̂1 A − Â (1)
+ L̂−1 −1
1 L̂2 L̂ 2 Â (1)
− Â (2)
+ · · · L−1 −1 −1
1 L̂2 · · · Ln−1 L̂n−1 Â(n−2) − Â(n−1) .
II.2 Métodos Directos 43
obteniendo ası́:
(k)
L̂1 A − Â(1) ≤ 2a eps donde a = max aij , i ≥ 2.
i,j,k
El Algoritmo de Cholesky
Un caso particular de sistema de ecuaciones lineales, es donde la matriz A
es:
Definición II.2.5.- Una matriz A ∈ Mn (R) es simétrica y definida positiva,
si cumple las siguientes dos condiciones:
(II.2.16) At = A;
(II.2.17) xt Ax > 0, ∀x ∈ Rn , x 6= 0.
44 II Sistemas Lineales
de donde se tiene
(1) ai1 a1j
cij = aij − li1 a1j = aij − .
a11
se tiene
1
C (1) = C − zz t .
a11
Hay que mostrar que
1 2
y t C (1) y = y t Cy − y t z > 0, ∀y 6= 0.
a1 1
2 2
(y t z) 2 (z t y)
− + y t Cy > 0,
a11 a11
por consiguiente
1 2
y t Cy − y t z > 0.
a11
La descomposición LR es única, si ésta existe, en efecto, si
A = L1 R1 = L2 R2 ,
L−1 −1
2 L1 = R2 R1 ;
las matrices del tipo L, como aquéllas de tipo R forman subgrupos dentro
el grupo de las matrices inversibles, deduciendose que
L−1
2 L1 = I,
A = LR = LDLt1 ,
At = L1 DLt ,
1
Si se define L̄ = LD 2 , se tiene
A = L̄L̄t ,
q
lkk = 2 − l2 − · · · − l2
akk − lk1 k2 k,k−1 ;
(II.2.19)
aik − li1 lk1 − · · · − li,k−1 lk,k−1
lik = , i = 1, . . . , k − 1.
lkk
Ejercicios
1.- Escribir una subrutina DEC(N,NDIM,A,B,IP,IER) que calcule la des-
composición LR, tomando en cuenta la búsqueda parcial de pivote.
Luego escribir una subrutina SOL(N,NDIM,A,B,IP) que permita resolver
Ax = b utilizando la descomposicion obtenida por DEC.
a) Resolver
5 2 −1 3 9
1 20 3 4 28
x = .
0 1 1 30 32
2 8 −25 4 −11
b) Calcular la inversa de la matriz de Hilbert dada por
n
1
H= para n = 2, 3, 4, 5.
i + j i,j=1
A − L̂L̂t ,
donde:
0 ··· 0 a11 a12 ··· a1n
a21 0 ··· 0 0 a22 ··· a2n
L=
... .. .. , U =
... .. .. .
. . . .
an1 · · · an,n−1 0 0 ··· 0 ann
II.3 Métodos Iterativos 49
Existe una clase de matrices, para las cuales estos métodos son conver-
gentes. Una de sus caracterı́sticas está dada por la:
Definición II.3.1.- Una matriz A es irreducible si para cada (i, j), existe
una sucesión l0 = i, l1 , · · · , lm = j tal que
alk ,lk+1 6= 0.
1 1 1 2
0 2 2 0
1 0 0 0
A=
0 0 0 1
2
1
0 0 2 0
3 4
GA
50 II Sistemas Lineales
1 2
0 1 0 0
1 0 1 0
B=
0 1 0 1
0 0 1 0
3 4
GB
iii) A es irreducible;
entonces los métodos de Jacobi y Gauus-Seidel convergen hacia una solución
única, además existe ρ < 1, tal que
(k)
e
≤ Cρk−1
e(0)
. (II.3.9)
∞ ∞
e(k+1) = Ae(k) ,
(0)
sea ǫ = max ei , de donde
(1) X (0)
ei ≤ aij ej ≤ ǫ,
j | {z }
≤ǫ
planteando
N1o
e(No )
ρ=
∞ ,
(0)
e
∞
52 II Sistemas Lineales
El Teorema de Perron-Frobenius
Indudablemente por las consecuencias que implica el teorema de Perron-
Frobenius, es que vale la pena estudiarlo como un tema aparte. Es un
teorema cuya demostración ha llevado mucho esfuerzo de parte de muchos
matemáticos. Se enunciará este teorema sin dar una demostración rigurosa,
sino los pasos de ésta.
Teorema II.3.3.- Sea A una matriz no negativa irreducible, entonces:
i) Existe un vector propio u, con ui > 0 respecto a un valor propio
r > 0.
ii) Todos los otros valores propios λ de A son |λ| < r. Sola
i2π
excepción posible λ = re n valor propio simple.
iii) r depende de manera estrictamente monótona de todos los
elementos de A.
Demostración.- Se comenzará por el punto i). Sea u ∈ Rn , tal que ui > 0;
entonces
v = Au,
definiendo
v1
ri = ,
ui
si los ri son todos iguales, el punto i) está demostrado; sino es posible variar
el vector u de manera que
K = {(u1 , . . . , un )|ui ≥ 0} .
A(K) ⊂ K.
No es posible tener:
Au = λu, u ∈ K;
con λ 6= µ.
Av = µv, v ∈ K;
II.3 Métodos Iterativos 53
En efecto, supóngase que λ < µ y sea w = −u + tv, tal que t sea lo más
pequeño posible, de manera que w ∈ K, entonces
Aw = −λu + tµv 6∈ K,
por consiguiente, no puede haber más de un valor propio cuyo vector propio
esté en el interior del cono.
Además, r es un valor propio simple, ya que si no lo fuera, una pequeña
perturbación en la matriz A llevarı́a al caso de los valores propios simples,
caso que ha sido ya estudiado más arriba.
Por otro lado, no hay vectores propios en el borde del cono K. Efectiva-
mente, sea u ∈ ∂K, vector propio. Por hipótesis, algunos de las componentes
de u son nulos, pero al menos una de las componentes es diferente de 0. De
donde
u + Au + · · · + An u = (1 + λ + · · · + λn )u.
Como A es irreducible, existe No ≤ n con
aN
ij > 0,
o
∀i, j;
por lo tanto
(An u)j > 0, ∀j;
conduciendo a una contradicción.
ii) Sean λ otro valor propio de A, v su vector propio respectivo, supóngase
que λ ∈ R, se define
w = u + tv,
donde u ∈ K vector propio, t sea lo más grande posible de manera que w ∈ K,
ver la figura IV.3.1.
w Κ
(I − L)−1 U x = µx,
U x = µx − Lµx,
(µL + U ) = µx,
por el teorema de Perron-Frobenius, µ ≥ 0; si µ = 0 no hay nada que
demostrar, si no
U
L+ x = x.
µ
II.3 Métodos Iterativos 55
son independientes de α.
Ejemplos
1.- La matriz A definida por
0 B
A= ,
C 0
λ1
λ2
λ3
µ
µ2 µ1
µ raices conjugadas.
1
h= , (II.3.23)
n+1
se plantea:
xi = ih, i = 0, . . . , n + 1;
(II.3.24)
yj = jh, j = 0, . . . , n + 1;
denotando
uij = u(xi , yj ), fij = f (xi , yj ). (II.3.25)
1
u = Au + h2 f, (II.3.26)
4
60 II Sistemas Lineales
donde:
de orden nl × mk.
Por lo tanto, la matriz A del problema se escribe como
1
A= (B ⊗ I + I ⊗ B) .
4
Para hacer estimaciones del costo de operaciones, al encontrar la solución
con un error fijado de antemano, es necesario determinar la condición de
la matriz A, como ası́ mismo el radio espectral de A para determinar la
velocidad de convergencia de los métodos de Jacobi, Gauss-Seidel y SOR.
Para tal efecto, se tiene la:
Proposición II.3.10.- El producto tensorial de matrices verifica la siguiente
propiedad
(B ⊗ C) (D ⊗ E) = BD ⊗ CE. (II.3.28)
Demostración.- Se deja como ejercicio
Sean, yk y νk el vector y el escalar respectivamente, definidos por:
n
kiπ
yk = sin( ) ,
n + 1 i=1
(II.3.29)
kπ
νk = 2 cos( ),
n+1
II.3 Métodos Iterativos 61
1
A(yk ⊗ yl ) = ((B ⊗ I)(yk ⊗ yl ) + (I ⊗ B)(yk ⊗ yl ))
4
1
= (νk + νl )(yk ⊗ yl ),
4
de donde se ha demostrado el:
Teorema II.3.11.- Los valores propios de A están dados por:
1 1 kπ lπ
(νk + νl ) = cos( ) + cos( ) . (II.3.30)
4 2 n+1 n+1
u(k+1) = Au(k) + f,
U ∗ = AU ∗ + f,
e(k) = u∗ − u(k) ,
e(k+1) = Ae(k) ,
(k+1) (k)
ei = λi ei , i = 1, . . . , n2 ;
(k)
donde ei es la i-esima componente respecto a la base. Por consiguiente
(N ) (0)
e1 = λN
i ei ,
62 II Sistemas Lineales
Ejercicios
0 1/2
1/2 0 1/2
A= .
1/2 0 1/2
1 0
1
< ri < 1 para todo i.
2
Ejemplo:
1
1
2
1 1
1 1 1
⇐⇒ A =
1 1
6
3 1
4 1
5
r=1,
√ para un grafo;
r= 2, √ para un grafo;
r=(1
√ + 5/2), para un grafo;
r= 3, para dos grafos.
1 t
f (x) = x Ax − xt b + c → min, (II.4.2)
2
Ax = b. (II.4.2)
1X X
xi aij xj − xj bj + c → min . (II.4.4)
2 i,j j
∂f 1X 1X
= akj xj + xi aik − bk = 0.
∂xk 2 j 2 i
xk+1 = xk − τk g k , (II.4.6)
x 3ó x1
2
x
o
x
λmax
κ= = cond2 A;
λmin
entonces k
k
κ−1
0
x − x∗
≤
x − x∗
, (II.4.9)
κ+1
donde x∗ es la solución exacta.
Además, se tiene el:
Teorema II.4.3.- Existe, x0 tal que
k
k
κ−1
0
x − x∗
=
x − x∗
. (II.4.10)
κ+1
x0i = 0, para i = 2, . . . , n − 1;
de donde:
q = 1 − τ,
−q = 1 − κτ ;
despejando q, se obtiene
κ−1
q= .
κ+1
Puesto que la oscilación encontrada no depende del punto inicial, las itera-
ciones siguientes presentarán el mismo fenómeno. Con lo que se ha mostrado
el teorema.
dt (Ax − b) = 0. (II.4.14)
70 II Sistemas Lineales
x = a + λd, donde λ ∈ R.
Se define la función g, como g(t) = f (a + td), por lo tanto esta función tiene
un mı́nimo en t0 , si
g ′ (to ) = dt f ′ (a + to d) = 0,
es decir, si se cumple
dt (A(a + to d) − b) = 0.
g 0 = Ax0 − b,
se define
d0 = −g 0 .
Supóngase, que se ha efectuado k iteraciones, es decir, se conoce dk , g k y xk ;
entonces se define:
k k
d ,g
τk = −
k ,
d , Adk
xk+1 = xk + τk dk , (II.4.16)
k+1 k+1 k k
g = Ax − b = g + τk Ad ,
k+1 k+1
d = −g + βk dk .
k+1 l
k l
g , g = g , g +τk Adk , dl
| {z }
0
= 0;
k+1
d , Adl = c1 g k+1 , Adl + c2 dk , Adl
| {z }
0 hip. ind
= c1 g k+1 , g l = 0.
72 II Sistemas Lineales
Polinomios de Chebichef
Supóngase, que se conoce los valores propios de la matriz A simétrica y
definida positiva, es decir:
0 < λmin ≤ λi ≤ λmax .
El polinomio que minimiza el polinomio del teorema II.4.8 tiene la propiedad
siguiente:
— es igual a ǫ en λmin ,
— admite los valores −ǫ, +ǫ como valores maximos en el intérvalo
[λmin , λmax ] exactamente l + 1 veces,
— es igual a ±ǫ en λmax .
La razón puede apreciarse en la figura II.4.2, para el caso l = 2.
λ min λ max
−ε
1 p n p n
Tn (x) = x + x 2 − 1 + x − x2 − 1 . (II.4.22)
2
1
M= . (II.4.24)
λmax +λmin
Tl
λmax −λmin
x = αλ + β,
donde:
2
α= ,
λmax − λmin
λmax + λmin
β=− .
λmax − λmin
por consiguiente tomando 1/M = Tl (β) se tiene el resultado deseado.
Teorema II.4.13.- Para el método del Gradiente Conjugado, se tiene la
estimación √ l
l
x − x∗
≤ 2 √κ − 1
x0 − x∗
, (II.4.25)
A κ+1 A
1 p l
|Tl (x)| ≥ x + x2 − 1 ,
2
de donde
2
M≤ p l , para x ≥ 1; (II.4.26)
x + x2 − 1
particularmente para
1 t
f (x) = x Ax − xt b.
2
Se define x̂ como
x̂ = E t x,
76 II Sistemas Lineales
donde E es una matriz inversible con ciertas condiciones a cumplir que serán
dadas más adelante. Para no recargar la notación, se denota
−1
Et = E −t .
1 t −1
f (x̂) = x̂ E AE −t x̂ − x̂E −1 b. (II.4.29)
2
Luego se resuelve:
Eĝ = g;
E t χ = ĝ.
Luego se resulve:
Eĝ = g,
E t χ = ĝ.
Resultados Numéricos
El estudio teórico y la formulación de métodos de resolución de sistemas
lineales por si solo constituye un hermoso ejercicio mental. Un método no es
bueno, hasta que ha sido probado numéricamente en problemas concretos,
por eso es importante poder comparar la eficiencia de los diferentes métodos
formulados en esta sección, en diferentes tipos de problemas.
Al igual que la sección II.3, se considerará una ecuación a derivadas
parciales de tipo elı́ptico, pues este tipo de problema, se presta mucho a la
resolución de grandes sistemas lineales. Sea,
△u = −1, sobre Ω = [0, 1] × [0, 1];
(II.4.32)
u|∂Ω = 0.
De la misma manera, que la sección precedente, se subdivide el dominio Ω
en una malla uniforme de longitud 1/n + 1, planteando:
)
xi = ih 1
, h= ; (II.4.33)
yj = jh n+1
II.4 Métodos Minimizantes 79
104
iter
103
102 Gradiante.
Gradiante Conjugado.
Grad. Conj. Chols. Incom.
101
Gradiante Conjugado SSOR.
100 1
10 102 n
20 12 12 11 10 9 10 11 14 .8
50 27 24 22 18 17 15 14 16 .9
100 43 35 37 31 27 24 20 18 .95
180 72 59 55 46 40 41 33 27 .95
II.4 Métodos Minimizantes 81
Ejercicios
Ax = b (II.4.35)
At Ax = At b (II.4.36)
y = ϕ ((t, x1 , . . . , xn )) , n ≤ m, (II.5.2)
donde t ∈ R, y ∈ R y xi ∈ R.
Un ejemplo de función de modelo, es la siguiente función:
ϕ ((t, x1 , x2 )) = x1 + tx2 + t2 x1 .
ϕ ((t, x1 , . . . , xn )) ≈ yj , j = 1, . . . , m. (II.5.3)
*
* *
* *
*
* * * *
*
t1 t2 tm
es decir
kAx − bk −→ min . (II.5.9)
La justificación del método de los mı́nimos cuadrados, está dada por
dos interpretaciones. La primera:
Interpretación estadı́stica
Las componentes yi del vector b en (II.5.5), pueden ser vistas como
medidas experimentales. Ahora bien, toda medida experimental lleva consigo
un error, por lo tanto es completamente razonable considerar éstas como
variables aleatorias.
Puesto que, la mayor parte de las medidas experimentales siguen leyes
normales, se tiene las dos hipótesis siguientes, para determinar la solución
del problema (II.5.6):
H1: El valor yi de (II.5.5) es la realización de un suceso para la variable
aleatoria Yi , i = 1, . . . , m. Se supone que los Yi son independientes y que
obedecen la ley normal de esperanza µi y varianza σi . Para simplificar el
problema, se supondrá que los σi son iguales y conocidos de antemano.
H2: El sistema sobredeterminado (II.5.6) posee una solución única, si se
remplaza los yi por los números µi ; es decir, que existe ξ ∈ Rn único tal
que Aξ = µ donde µ = (µ1 , . . . , µm )t .
La función de distribución de Yi , en Yi = yi , es igual a
1 1 yi − µi 2
fi (yi ) = √ exp − ( ) .
2πσ 2 σ
II.5 Mı́nimos Cuadrados 85
donde y = (y1 , . . . , ym )t .
Efectuando cálculos, se obtiene
m
!
1 X yi − µi 2
f (y) = C exp − .
2 i=1 σ
Aplicando el principio de máxima presunción, la probabilidad de medir yi
en lugar de µi , para i = 1, . . . , m; está dada por
f (y) → max . (II.5.10)
Por lo tanto, (II.5.10) sucede si
Xm
yi − µi 2
→ min, (II.5.11)
i=1
σ
es decir 2
m
X n
X
yi − ai jxj → min . (II.5.12)
i=1 j=1
Interpretación geométrica
Se define el subespacio vectorial de Rm de dimensión n dado por
E = {Ax|x ∈ Rn } ⊂ Rm ,
la solución de (II.5.9) está dada por el vector x0 , tal que
Ax0 − b
es
mı́nima, es decir Ax0 es el vector más proximo perteneciente a E al vector
b, de donde el vector Ax0 − b es ortogonal al espacio E, ver figura II.5.2.
At Ax = At b,
donde: 1 t1 · · · t1n−1
y1
1 t2 · · · t2n−1 y2
A=
.. ..
, b=
.. .
. . .
n−1 ym
1 tm · · · tm
II.5 Mı́nimos Cuadrados 87
Por lo tanto
P P n−1
Pm P t2i · · · Pti n
t i t i · · · ti
At A =
. .
.. ..
P n−1 P n P 2n−1
ti ti · · · t
Pi P
1P 1/m P ti · · · 1/m Ptin−1
1 1/m ti 1/m t2i · · · 1/m tni
= . ..
m .. .
P n−1 P n P 2n−1
1/m ti 1/m ti · · · 1/m ti
1 1/2 ··· 1/n
1/2 1/2 · · · 1/(n + 1)
≈ m .. .. ,
. .
1/n 1/(n + 1) ··· 1/2n
puesto que
Z 1
1 X k
tk dt ≈ ti .
0 m
t
De donde, la matriz A A se aproxima a una matriz de tipo Hilbert, la cual es
una matriz mal condicionada, resultado visto en la primera sección de este
capı́tulo. Por lo tanto se debe formular un algoritmo donde la matriz At A
no aparezca directamente.
La descomposición QR
Dada una matriz A de orden m × n, se busca las matrices: Q de orden m × m
y la matriz R de orden m × n, tales que la matriz Q sea ortogonal, es decir
Qt Q = I;
con
A = QR. (II.5.14)
88 II Sistemas Lineales
de donde
kAx − bk2 =
Qt (Ax − b)
2
=
Rx − Qt b
−→ min .
2
(II.5.15)
R1 x = c1 . (II.5.16)
Q = I − 2uut , (II.5.17)
Qx = x − 2uut x,
= α1 (α1 − a11 ),
Q1 Aj = Aj − 2u1 ut1 Aj
2
= Aj − v1 v1t Aj
v1t v1
1
= Aj − v1 v1t Aj . (II.5.22)
α1 (α1 − a11 )
90 II Sistemas Lineales
donde
1 0 ··· 0
0
Q2 =
...
.
Q̄2
0
Costo de la descomposición QR
La descomposición se la realiza en n − 1 étapas,
Qn−1 · · · Q2 Q1 A = R,
| {z }
Qt
m + (n − 1)2m operaciones,
Programación
La descomposición QR presenta la ventaja que se puede utilizar las plazas
ocupadas por los coeficientes de la matriz A, con los coeficientes de la matriz
II.5 Mı́nimos Cuadrados 91
R
R
A v1 v1 v2
Ā(1)
→ → Ā(2)
α1 α1 α2
R
v1 v2 ..
.
vn
α1 α2 · · · αn
A − Â = Q(R − R̂),
kAk2 = kRk2 ,
A − Â
=
R − R̂
,
2 2
de donde
αk+1 despreciable ⇐⇒
R − R̂
≤ eps kRk2 ,
2
αk+1 es una buena aproximación de
R − R̂
, y α1 es una buena aproxi-
2
mación de kRk2 , obteniedo el siguiente resultado
La matriz
A+ = (At A)−1 At , (II.5.31)
será la matriz inversa para el problema (II.5.6).
Para el problema más general, donde le rango de A es ≤ n, la descom-
posición QR da el siguiente resultado
α1 · · · r1k
R1 R2 ..
R= , con R1 = . ;
0 0
0 αk
planteando x = (x1 , x2 )t , con x1 ∈ Rk , se tiene
2
2
kAx − bk2 =
Rx − Qt b
2
R1 x1 + R2 x2 − c1
2
−c2
2
kR1 x1 + R2 x2 − c1 k22 + kc2 k22 ,
de donde el:
Teorema II.5.3.- x = (x1 , x2 )t es solución de kAx − bk2 −→ min, si y
solamente si
R1 x1 + R2 x2 = c1 . (II.5.32)
Demostración.- Se tiene
2
kAx − bk22 =
U ΣV t x − b
2
2
2
=
U (ΣV t x − U t b)
2 =
Σ V t
− U
|{z} |{z}
t
b
y c
2
2
Dy1 c
= kΣy − ck2 =
2
− 1
0 c2
2
2 2
= kDy1 − c1 k2 + kc2 k2 .
96 II Sistemas Lineales
Para que la expresión sea minimal es necesario que y1 = D−1 c1 . Por otro
lado se tiene que y = V t x, de donde kyk2 = kxk2 , de manera, que para que
x sea minimal es necesario que y2 = 0. De donde
D−1 c1
x =V
0
D−1 0 c1
=V
0 0 c2
D−1 0
=V V tb
0 0
=A+ b, ∀b.
Finalmente se tiene:
Teorema II.5.7.- La pseudo-inversa de una matriz verifica las siguientes
propiedades:
a) (A+ A)t = A+ A,
b) (AA+ )t = AA+ ,
c) A+ AA+ = A+ ,
d) AA+ A = A,
Aξ = µ, (II.5.40)
Por lo tanto
m
X
x − ξ = (At A)−1 At (b − µ) o xi − ξ i = αij (bj − µj ), (II.5.41)
j=1
= ξi .
V ar(Xi ) = V ar(Xi − ξi )
Xm
2
= αij V ar(Yj − µj )
j=1
Xm
2
= αij
j=1
2
=
(At A)−1 At ei
2
2
=
eti (At A)−1 At
2
= eti (At A)−1 At A(At A)−1 ei
= eti (At A)−1 ei = ǫii .
98 II Sistemas Lineales
ξi = xi ± 2σXi . (II.5.44)
At A = Rt Qt QR = Rt R. (II.5.45)
Denotando los elementos de Qt por qij , los elementos del vector C, satisfacen
m
X
ci = qij bj ,
j=1
Ejemplo
A partir de la función f (t) = t + 0.5 sin(πt/2), se ha elaborado la tabla
II.5.1, que tiene como elementos (i, bi ) con 0 ≤ i ≤ 9, donde bi = f (i)+ǫi .
ǫi es la realización de una variablea aleatoria siguiendo una ley normal
N (0, σ) con σ = 0.1.
i bi i bi
0 0.11158 5 5.5158
1 1.2972 6 6.0119
2 2.07201 7 6.6802
3 2.4744 8 7.9294
4 3.963 9 9.4129
x = 1.00074,
y = 0.413516.
t sin(πt/4) bi
x +y = , i = 0, . . . , 9;
σ σ σ
100 II Sistemas Lineales
pues, los bi /σ deben ser realizaciones de una variable normal con varianza
igual a 1. De donde la matriz de covarianza está dada por
σx2 σxy 3.57143 · 10−5 −3.57143 · 10−5
= .
σxy σy2 −3.57143 · 10−5 2.03571 · 10−3
Por consiguiente:
x = 1.00074 ± 0.012,
y = 0.41352 ± 0.09.
El método QR, con la notación precedente da
kC2 k2 = 0.0693103;
kC2 k22
= 6.93103.
σ2
ϕ(t) = xt + y, (II.5.51)
se hubiera encontrado
kC2 k22
= 90.5225,
σ2
valor demasiado grande para ser probable.
La conclusión es que, para los valores de la tabla II.5.1, la ley (II.5.50)
es más probable que la ley (II.5.51).
En la figura II.5.3, puede observarse en linea continua la gráfica de la
función modelo dada por (II.5.50) y con lineas segmentadas la gráfica de
la función modelo (II.5.1).
II.5 Mı́nimos Cuadrados 101
10
0
0 1 2 3 4 5 6 7 8 9
Figura II.5.3. Resultados del método de los mı́nimos cuadrados.
Ejercicios
f (xi ) = yi i = 1, . . . , n;
x ∈ [min xi , max xi ],
Bases Teóricas
Sin querer dar un tratado sobre la teorı́a de los polinomios, existen resultados
que deben formularse para la mejor comprensión de la interpolación polino-
mial. Aunque en Algebra se hace distinción entre polinomio y su función
III.1 Interpolación de Lagrange 105
polinomial asociada, no se hará distinción entre estos, por que son poli-
nomios a coeficientes reales o complejos los que se utilizan en la mayor parte
de los problemas a resolverse numéricamente.
Definición III.1.3.- Sea p(x) ∈ R[x], a es un cero de multiplicidad m de
p(x), si
p(k) (a) = 0 m = 0, . . . , m − 1, y p(m) 6= 0.
donde yili ∈ R, 0 ≤ li ≤ αi .
Demostración.- Sean pn y qn dos polinomios de Hermite que satisfacen
las hipótesis del teorema. pn − qn es un polinomio nulo o de grado ≤ n.
Ahora bien, pn − qn tiene ceros de al menos multiplicidad αi + 1 en xi para
i = 0, . . . , k. Por la proposición anterior se tiene
k
!
Y
αi +1
pn − qn = (x − xi ) r(x),
i=0
donde yili ∈ R, 0 ≤ li ≤ αi .
Demostración.- Es suficiente mostrar que existe un polinomio de Hermite
de grado n tal que para i ∈ {0, . . . , k} y l ∈ {0, . . . , αi } se tenga:
(α )
la constante Ci,αi es escogida de manera que pi,αii (xi ) = 1. Los polinomios
pi,l se los define recursivamente de la siguiente manera
Y X
pi,l = Ci,l (x − xi )αi (x − xj )αj +1 ) − cil,m pi,m ,
j6=i m>l
(m)
donde las constantes cil,m son escogidas de manera que pi,l (xi ) = 0 para
(l)
m > l y Ci,l de manera que pi,l = 1.
Para construir el polinomio de interpolación no debe utilizarse los
polinomios definidos en la demostración, uno porque el costo en operaciones
es demasiado elevado y otro por la sensibilidad de estos polinomios ası́
definidos a los errores de redondeo.
y[xi ] = yi , (III.1.4a)
yj − yi
y[xi , xj ] = , (III.1.4b)
xj − xi
y[xi1 , . . . , xik ] − y[xi0 , . . . , xik−1 ]
y[xi0 , . . . , xik ] = . (III.1.4c)
xi k − xi 0
−1
Y
con la convención (x − xk ) = 1.
k=0
a = y[x0 , x1 , . . . , xn ].
108 III Interpolación
(x − x0 ) (xn − x)
q(x) = p2 (x) + p1 (x) ,
(xn − x0 ) (xn − x0 )
x0 y[x0 ]
ց
y[x0 , x1 ]
ր ց
x1 y[x1 ] y[x0 , x1 , x2 ]
ց ր ց
y[x1 , x2 ] y[x0 , . . . , x3 ]
ր ց ր ց
x2 y[x2 ] y[x1 , x2 , x3 ] y[x0 , ... . , x4 ] .
ց ր ց ր .. ..
y[x2 , x3 ] y[x1 , ... . , x4 ] .
ր ց ր .. ..
x3 y[x3 ] y[x2 , x. 3 , x4 ] .
ց ր .. ..
y[x3., x4 ] .
ր .. ..
x4 y[x4 ]
.. .. . .
. . .
xi = x0 + ih, i = 0, . . . , n; (III.1.6)
∇0 yi = yi , (III.1.7a)
∇yi = yi+1 − yi , (III.1.7b)
∇k+1 yi = ∇k yi+1 − ∇k yi . (III.1.7b)
∇¯ 0 yi = yi , (III.1.8a)
¯ i = yi − yi−1 ,
∇y (III.1.8b)
¯
∇ k+1 ¯ k yi − ∇
yi = ∇ ¯ k yi−1 . (III.1.8b)
−1
Y
donde h = (xn − x0 )/n y con la convención (x − xk ) = 1. Utilizando las
k=0
diferencias retrógradas se tiene
n ¯i
X i−1
∇ yn Y
p(x) = (x − xn−k ), (III.1.10)
i=0
i!hi k=0
−1
Y
con la convención (x − xn−k ) = 1. La programación es la misma que para
k=0
el caso general, con la única diferencia que no se efectúan divisiones. Por
110 III Interpolación
¯ 0 yn
xn ∇
x0 ∇0 y0
ց ց
∇y0 ¯ n
∇y
ր ց ր ց
x1 ∇0 y1 ∇2 y0 xn−1 ∇ yn−1 ¯0 ¯ 2 yn
∇
ց ր ց ց ր ց
∇y1 ∇3 y0 ¯ n−1
∇y ¯ 3 yn
∇
ր ց ր ց ր ց ր ց
x2 ∇0 y2 ∇2 y1 ∇4 y0 xn−2 ∇ yn−2 ¯0 ∇¯ 2 yn−1 1 ∇¯ 4 yn
ց ր ց ր ց ր ց ր
∇y2 3
∇ y1 ¯ n−2
∇y ¯ 3 yn−1
∇
ր ց ր ր ց ր
x3 ∇0 y3 ∇2 y2 ¯ 0 yn−3
xn−3 ∇ ¯ 2 yn−2
∇
ց ր ց ր
∇y3 ¯ n−3
∇y
ր ր
x4 ∇0 y4 ¯ 0 yn−4
xn−4 ∇
.. .. . . .. .. ..
. . . . . .
Figura III.1.2. Esquemas para Diferencias Finitas
xi 1, 00 1, 21 1, 44 1, 69
yi 1, 00 1, 10 1, 20 1, 30
El Error de Interpolación
Sea f (x) una función que cumple ciertas condiciones, se supone que se
hace pasar un polinomio de interpolación por los puntos (xi , f (xi )), la
pregunta natural es saber que error se comete con el cálculo del polinomio
de interpolación, es decir p(x) − f (x) vale cuanto, para un x determinado.
Es por esta razón que los siguientes teoremas serán enunciados para tener
una idea del error cometido.
Teorema III.1.12.- Sea f (x) n-veces continuamente diferenciable y
yi = f (xi ), i = 0, . . . , n; los xi todos diferentes.
Entonces existe ξ ∈ (min xi , max xi ) tal que
f (n) (ξ)
y[x0 , x1 , . . . , xn ] = . (III.1.11)
n!
Ejemplo
Para el ejemplo de la implementación
√ del método de diferencias
√ divididas
para calcular el valor 1, 4, la función interpolada es x. El intervalo de
estudio del polinomio de interpolación de grado 3 está dado por [1; 1, 69],
x0 = 1, x1 = 1, 21, x2 = 1, 44 y x3 = 1, 69. Por lo tanto
√
f (x) = x,
1 1
f ′ (x) = − x− 2 ,
2
′′ 1 −3
f (x) = x 2 ,
4
3 5
f (x) = − x− 2 ,
(3)
8
(4) 15 − 72
f (x) = x ,
16
por consiguiente f (4) (x) ≤ 15 para x ∈ [1; 1, 69], lo cual implica que el
16 √
error cometido en el cálculo de x está dado por:
√
x − p(x) ≤ 15 |(x − 1)(x − 1, 21)(x − 1, 44)(x − 1, 69)| ,
p 16 · 4!
1, 4 − p(1, 4) ≤ 3, 45.10−5 .
Polinomios de Chebichef
La respuesta de la anterior interrogante, está en el estudio de los polinomios
de Chebichef, que ya fueron tratados en la sección II.4.
Definición III.1.14.- El n-simo polinomio de Chebichef está definido en el
intevalo [−1, 1] por la siguiente relación
para k = 0, 1, . . . , n − 1.
Demostración.- El inciso a) se demuestra utilizando el hecho que
T0 (x) T1 (x)
T2 (x) T3 (x)
de donde r(x) = q(x)−Tn (x) polinomio no nulo de grado al menos n−1, pero
r(x) posee al menos n raices, lo que contradice que r(x) sea una polinomio
de grado menor o igual n − 1.
(2k + 1)π
Teorema III.1.17.- Si xk = cos , entonces
2(n + 1)
max |(x − x0 ) · · · (x − xn )|
x∈[−1,1]
(x − x0 ) · · · (x − xn ) = Tn+1 (x)2−n ,
(x − x̄0 ) · · · (x̄ − xn ) = q(x)2−n .
Para construir una división óptima para cualquier intervalo [a, b], se
toma los puntos x̂k definidos por
a+b b−a
x̂k = + xk , (III.1.20)
2 2
Ejemplos
2j
a) Para la división equidistante xj = −1 + n , j = 0, . . . , n. Se puede
mostrar que la constante de Lebesgue se comporta asintóticamente,
cuando n −→ ∞, como
2n+1
Λn ∼ , (III.1.24)
en log n
III.1 Interpolación de Lagrange 117
2
Λn ∼ log n. (III.1.25)
π
División División
n
Equidistante de Chebichef
10 29.900 2.0687
20 10987. 2.4792
6
30 6.6011 · 10 2.7267
40 4.6925 · 109 2.9044
12
50 3.6398 · 10 3.0432
15
60 2.9788 · 10 3.1571
70 2.5281 · 1018 3.2537
21
80 2.2026 · 10 3.3375
24
90 1.9575 · 10 3.4115
100 1.7668 · 1027 3.4779
0
−1 0 1 −1 0 1
1 1
n=15 n=20
0 0
−1 0 1 −1 0 1
−1 −1
1 1
n=30 n=40
0 0
−1 0 1 −1 0 1
−1 −1
Convergencia de la Interpolación
En esta subsección, se analizará el problema de la convergencia de la
interpolación. Sea f : [a, b] −→ R, para cada entero natural se considera
una subdivisión de [a, b] dada por
(n) (n)
x0 < x2 < · · · < x(n)
n ,
∀q ∈ Pn , Ln (q) = q.
kLn (g)k∞
Λn = max ,
0
g∈C [a,b] kgk∞
g6=0
kf − pn k∞ ≤ (1 + Λn )En (f ), (III.1.26)
f − pn = (f − q) − (pn − q) = (f − q) − Ln (f − q),
por consiguiente
kf − pn k ∞ ≤ kf − qk∞ + kLn (f − q)k∞ ≤ (1 + Λn ) kf − qk∞ ,
el resultado se obtiene tomando la cota inferior sobre los q ∈ Pn .
lim Λn = ∞.
n→∞
III.1 Interpolación de Lagrange 121
Planteando g(t) = f (|cos t|), está claro que g es una función par, continua
sobre R y periódica de periodo π, además ω(g, h) ≤ ω(f, h) porque |t − t′ | ≤
122 III Interpolación
se tiene Z π
g(s) − ϕn (s) = (g(s) − g(s − t))jn (t)dt,
−π
de donde
Z π
|g(s) − ϕn (s)| ≤ |(g(s) − g(s − t))| jn (t)dt
−π
Z π Z π
≤ ω(g, |t|)jn (t)dt = 2 ω(g, t)gn (t)dt
−π 0
Z π
≤2 (1 + nt)jn (t)dt · ω(g, 1/n), por la propiedad ii.
0
2 sin x
Utilizando las mayoraciones ≤ ≤ 1 para x ∈ [0, π/2], se obtiene
π x
Z π
C
tjn (t)dt ≤ ,
0 n
1
|g(s) − ϕn (s)| ≤ 2(1 + C)ω(g, ).
n
Se remarca que
Z π Z π Z π
g(t) cos(k(s − t))dt = cos ks g(t) cos(kt)dt + sin ks g(t) sin(kt)dt
−π −π −π
Z π
= cos ks g(t) cos(kt)dt,
−π
max |f (x) − pn (x)| ≤ max |f (|cos s|) − pn (cos s)| = max |g(s) − ϕn (s)|
x∈[0,1] s∈R s∈R
Se puede mostrar, ver Crouzeix, Capı́tulo I.3, que existe q ∈R Pn−1 tal
x
que kf ′ − qk∞ = En−1 (f ′ ). Planteando por lo tanto p(x) = a q(t)dt y
ϕ(x) = f (x) − p(x), se tiene p ∈ Pn , entonces En (f ) = En (ϕ), además
kϕ′ k∞ = kf ′ − qk∞ = En−1 (f ′ ). Aplicando el teorema III.1.23 a la función
ϕ y la propiedad iv) del módulo de continuidad, se obtiene
b−a b−a ′
En (f ) = En (ϕ) ≤ M ω ϕ, ≤M kϕ k∞ ,
n n
de donde
p+2 (b − a)p+1 (p+1) b−a
En (f ) ≤ M ω f , .
n(n − 1) · · · (n − p) n−p−1
lim pn = f.
n→∞
Fenómeno de Runge
Hasta ahora, se ha visto condiciones suficientes para asegurar la convergencia
de la interpolación de una función por polinomios. También se ha mostrado
que la utilización de puntos de Chebichef en la interpolación de una función
continuamente derivable permitı́a la convergencia. En esta parte, se verá
que tener una función continuamente derivable y una división equidistante
no es una condición suficiente de convergencia. Con el siguiente ejemplo
se ilustrará el conocido fenómeno de Runge. En la figura III.1.6, puede
apreciarse que la interpolación de Lagrange diverge cuando la división es
equidistante. Mientras, que en la figura III.1.7. utilizando subdivisiones de
Chebichef se tiene convergencia. En lineas punteadas se tiene la gráfica de
la función a interpolar.
1 1 1 1
0 0 0 0
−1 0 1 −1 0 1 −1 0 1 −1 0 1
1 1 1 1
0 0 0 0
−1 0 1 −1 0 1 −1 0 1 −1 0 1
1
f (x) = ,
1 + 25x2
(n) (n)
función que es indefinidamente derivable. Sean x0 , . . . , xn la división
equidistante de [−1, 1], pn (x) el polinomio de interpolación de grado n de la
función f respecto a la subdivisión dada anteriormente. Prolongando f (x) al
1 1
plano complejo, se tiene que f (z) tiene polos simples en z = i y en z = − i.
5 5
Se considera un camino cerrado simple C tal que [−1, 1] ⊂ interior de C, y los
polos estén en el exterior de C. Por consiguiente se puede aplicar la fórmula
de Cauchy para integrales complejas, de donde
Z c
1 f (z)
f (x) = dz.
2iπ C z−x 1
−1
(n) (n)
se verifica que q(xi ) = f (xi ), de donde se ha mostrado el teorema
siguiente.
126 III Interpolación
p Z
n 1 1
lim ln |Πn (z)| = ln |z − t| dt
n→∞ 2 −1
Z 1
1
= ℜ log(z − t)dt
2 −1
1
= ℜ {(z + 1) log(z + 1) + (1 − z) log(z − 1)} − 1.
2
Definiendo G(z) por
1
G(z) = exp ℜ {(z + 1) log(z + 1) + (1 − z) log(z − 1)} − 1 , (III.1.34)
2
III.1 Interpolación de Lagrange 127
se obtiene que p
n
lim |Πn (z)| = G(z).
n→∞
Si x ∈ R, la función G es igual a
1 1
G(x) = exp ln(x + 1)(x+1) + ln(1 − x)(1−x) − 1
2 2
p
= (1 + x) 1+x (1 − x) 1−x /e.
Para decidir si la interpolación converge para un x dado se debe tener
necesariamente G(z)/G(x) < 1, esto sucede solamente si |x| < 0, 72668.
La figura III.1.8 muestra una grafica de G(x) y en la figura III.1.7 están
dadas las curvas de nivel para G(z).
y
2/e
1/e 1ó x
G(z)=2/e
−1 0 1
Ejercicios
1.- Demostrar por inducción
n
X Y 1
y[x0 , . . . , xn ] = yj ,
j=0
x j − xi
i6=j
n
X n
△n y0 = yj (−1)n−j .
j=0
j
d = γ(x1 − x0 );
a = x1 − d, b = x0 + d;
x0 a b x1
10 d = γd;
si (f (a) ≤ f (b)) entonces
x0 a b x1
x0 = a, a = b, b = x0 + d
si no
x0 a b x1
x1 = b, b = a, a = x1 − d;
si (x1 − x0 ≥ 10−14 ) vaya a 10
si no, final.
10.- Conservando las notaciones, construir una función f ∈ C 0 [a, b] tal que
kLn (f )k∞ = Λ kf k∞ y kf − Ln (f )k∞ = (1 + Λn ) kf k∞ .
11.- Se considera el conjunto {x0 , . . . , xn } de n + 1 puntos diferentes del
intervalo [a, b] y Λn la constante de Lebesgue correspondiente a la
interpolación de Lagrange en estos puntos. Se plantea
Yn
cos θ − cos θj
l̂i (θ) = con θi = arccos((2xi − (a + b))/(b − a)),
j=0
cos θi − cos θj
j6=i
i = 0, . . . , n.
a) Mostrar que:
n
!
X
Λn = max l̂i (θ) ;
θ∈R
i=o
n
X
cos k(θ − ϕ) + cos k(θ + ϕ) = [cos k(θi − ϕ) + cos k(θi + ϕ)] ˆli (θ),
i=0
0 ≤ k ≤ n.
n h
X i
b) Planteando ϕn (θ) = ˆli (θ + θi ) + ˆli (θ − θi ) − ˆli (θ) , mostrar que:
i=0
n
X sin((n + 1/2)θ)
ϕn (θ) = 1 + 2 cos kθ = ;
sin(θ/2)
k=1
Z π
1
si F (θ) = signo(ϕn (θ − s))ϕn (s)ds, entonces
2π −π
Z π Z
1 2 (n+1/2)π |θ|
3Λn ≥ kF k∞ = |ϕn (s)| dθ ≤ dθ = γn ,
π
−π π 0 θ
4 1
γn − γn−1 = 2 +O cuando n → ∞,
nπ n3
4
γn ∼ 2 ln n cuando n → ∞.
π
12.- Sea jn la función definida en la demostración del teorema III.1.23. con
n = 2p. Mostrar que ∀p ≥ 1,
Z π
tk jn (t)dt ≤ ck /nk ,
0
para k = 1 y 2.
III.2 Splines Cúbicos
(i) s(xi ) = yi i = 0, . . . , n
(ii) s ∈ C 2 ([a, b]),
(iii) s de curvatura pequeña.
(s′′ (x)
κ(x) = 3 ,
(1 + (s′ (x))2 ) 2
suponiendo que s′ (x) es despreciable, se obtiene s′′ (x) = κ(x), por consi-
guiente la condición, se expresa de la siguiente forma
Z xn
(s′′ (x))2 dx −→ min . (III.2.1)
x0
es la gráfica del spline interpolante que pasa por los mismos puntos.
se obtiene:
d2
2
2 (x − xi−1 ) (x − xi ) = 4hi ,
dx x=xi
d2
2
2 (x − xi−1 )(x − xi ) = 2hi ,
dx x=xi
de donde:
1
s′′i (xi ) = 4(pi − y[xi−1 , xi ]) + 2(pi−1 − y[xi−1 , xi ]) ,
hi
1
s′′i+1 (xi ) = 2(pi+1 − y[xi , xi+1 ]) + 4(pi − y[xi , xi+1 ])
hi+1
por lo tanto,
pi−1 1 1 pi+1 y[xi−1 , xi ] y[xi , xi+1 ]
+ 2pi + + =3 + , (III.2.9)
hi hi hi+1 hi+1 hi hi+1
p0 p1 y[x0 , x1 ]
2 + =3 (III.2.10a)
h1 h1 h0
pn−1 pn y[xn−1 , xn ]
2 + =3 (III.2.10b)
hn hn hn
Si el spline está fijado en los bordes, se tiene s′ (a) = f ′ (a) y s′ (b) = f ′ (b),
obteniendo:
p0 = f ′ (a), (III.2.11a)
pn = f ′ (b). (III.2.11b)
por (III.2.9) son esencialmente las mismas, estos aspectos serán desarrollados
con más detalle posteriormente o en la parte de los ejercicios.
Por otro lado, las ecuaciones que determinan los pi pueden escribirse de
manera matricial. A continuación, se darán las notaciones matriciales para
los splines natural y fijo.
2 1
3
0 h1 y[x0 ,x1 ]
h1 h1 p0
1 2( 1 + 1 ) 1
3 3
h1 h1 h2 h2 p1
h1 y[x0 ,x1 ]+ h2 y[x1 ,x2 ]
0 1
h2 2( h1 + h1 ) 1
h3 p2
3 3
h2 y[x1 ,x2 ]+ h3 y[x2 ,x3 ]
2 3
=
. . . .
.
.. .. .. . .
.
.
1
2( h 1 1
+ hn ) hn
1 3 3
hn−1 n−1 pn−1 hn−1 y[xn−2 ,xn−1 ]+ hn y[xn−1 ,xn ]
1 2 3
hn hn hn y[xn−1 ,xn ]
pn
p
2( h1 + h1 ) 1 1 3
y[x0 ,x1 ]+ h3 y[x1 ,x2 ]− h0
p
1 2 h2
h1 2 1
p2
1
h2 2( h1 + h1 ) 1
h3
3
h2 y[x1 ,x2 ]+ h3 y[x2 ,x3 ]
2 3
.. =
3
.. ..
.. ..
. . . . .
1
2( h 1
+ hn 1
) pn−1 3 pn
y[xn−2 ,xn−1 ]+ h3n y[xn−1 ,xn ]− h
hn−1 n−1 hn−1 n
Denotando A, la matriz del spline natural como fijo en los bordes, se tiene
el siguiente teorema.
Teorema III.2.4.- La matriz A es inversible, es decir
det A 6= 0.
Ap = 0 =⇒ p = 0.
pi−1 1 1 pi+1
+ 2pi ( + )+ = 0,
hi hi hi+1 hi+1
136 III Interpolación
por consiguiente
1 1 |pi | |pio |
2 |pio | ( + )≤ o + ,
h io hio +1 h io hio +1
de donde
2 |pio | ≤ |pio | .
s(xi ) = f (xi ), i = 0, . . . , n;
s′ (x0 ) = f ′ (x0 );
s′ (xn ) = f ′ (xn );
|f (x) − s(x)| ≤ ?
h3
(4)
|f ′ (xi ) − pi | ≤
f
, (III.2.12)
24 ∞
III.2 Splines Cúbicos 137
h4
(5)
|f ′ (xi ) − pi | ≤
f
. (III.2.13)
60 ∞
Además del interés del resultado del teorema que servirá para la
estimación del error, se tiene un medio simple para calcular las derivadas
de f en los puntos xi .
Demostración.- La demostración del caso general es muy similar a la
del caso de los puntos equidistantes, aquı́ se mostrará el caso equidistante,
dejando al lector el caso general. La construcción del spline está dada por
las ecuaciones
1 3
(pi−1 + 4pi + pi+1 ) − 2 (f (xi+1 ) − f (xi−1 )) = 0. (III.2.14)
h h
Se define qi , i = 1, . . . , n − 1, por
1 ′ 3
qi = f (xi−1 ) + 4f ′ (xi ) + f ′ (xi+1 ) − 2 f (xi+1 ) − f (xi−1 ) (III.2.15)
h h
Por otra lado, utilizando el teorema de Taylor con resto en el punto xi
se tiene:
h2 ′′ h3
f (xi+1 ) = f (xi ) + hf ′ (xi ) + f (xi ) + f (3) (xi )
2! 3!
Z 1
h4 (4) (1 − t)4 (5)
+ f (xi ) + h5 f (xi + th)dt,
4! 0 4!
h2 h3
f ′ (xi+1 ) = f ′ (xi ) + hf ′′ (xi ) + f (3) (xi ) + f (4) (xi )
2! 3!
Z 1 3
(1 − t) (5)
+ h4 f (xi + th)dt,
0 3!
1 3 (5)
qi = h f (ξi ) + f (5) (ηi ) ,
60
con ξi ∈ [xi−1 , xi ] y ηi ∈ [xi , xi+1 ], por consiguiente
h3
(5)
qi ≤
f
. (III.2.16)
20 ∞
ei = f ′ (xi ) − pi ,
1
[ei−1 + 4ei + ei+1 ] = qi , i = 1, . . . , n − 1.
h
Sea io tal que
|eio | = max |ei | ,
i=1,...,n
en consecuencia, se tiene:
de donde finalmente
h
|ei | ≤ |eio | ≤ |qi | .
2 o
Entonces
h5
(5)
|p(x) − s(x)| ≤
f
para x ∈ [xi−1 , xi ]. (III.2.17)
240 ∞
III.2 Splines Cúbicos 139
(x − xi−1 )(x − xi ) ′
p(x) − s(x) = (f (xi ) − pi )(x − xi−1 )
h2i
+ (f ′ (xi−1 ) − pi−1 )(x − xi ) ,
por lo tanto
h4
f (5)
∞
|p(x) − s(x)| ≤ |x − xi−1 | |x − xi | [|x − xi | + |x − xi−1 |]
60
5
h
(5)
≤
f
.
240 ∞
p(xi ) = f (xi ), i = 0, 1;
p′ (xi ) = f ′ (xi ), i = 0, 1;
entonces
h4
(4)
|f (x) − p(x)| ≤
f
. (III.2.19)
384 ∞
donde:
|p̂i − pi | ≤ |p̂0 − p0 | ≤ C0 ;
|p̂i − pi | ≤ |p̂n − pn | ≤ Cn .
h4
(5)
p̂1 = f ′ (x1 ) + ǫ
f
, con |ǫ| ≤ 1; (III.3.24)
60 ∞
h 4
(5)
p̂n−1 = f ′ (xn−1 ) + ǫ′
f
, con |ǫ′ | ≤ 1.
60 ∞
de donde
1 h4
(5)
|C0 | ≤ h max |f ′′ (x)| +
f
.
2 x∈I1 60 ∞
Si io = n, se obtiene similarmente
1 h4
(5)
|Cn | ≤ h max |f ′′ (x)| +
f
.
2 x∈In 60 ∞
(x − xi−1 )(x − xi )
|p̂(x) − p(x)| = [(p̂i − pi )(x − xi−1 ) + (p̂i−1 − pi−1 )(x − xi )]
2
h
h 1 ′′ h5
(5)
max |f (x)| +
f
(|x − x − xi−1 | + |x − xi |)
4 2 x∈I1 ∪In 60 ∞
h2 h5
(5)
≤ max |f ′′ (x)| +
f
.
8 x∈I1 ∪In 240 ∞
Aplicación de spline
Al inicio de esta sección, los splines fuerón abordados como un instrumento
numérico de aproximación, como una alternativa a la interpolación poli-
nomial de tipo Lagrange. Esto debido a sus propiedades de no presentar
problemas de inestabilidad numérica, por sus cualidades de convergencia y
por la poca curvatura que presentan.
Ejercicios
1.- Considerar puntos equidistantes xi = x0 +ih, h > 0. Mostrar que existe
un único spline llamado B-spline, tal que para un j fijo se tiene:
s(xj ) = 1,
s(x) = 0 si |x − xj | ≥ 2h.
Dibujar.
144 III Interpolación
6.- Los splines lj (x) del anterior ejercicio no cambian de signo en ningún
intervalo [xi−1 , xi ].
7.- Sobre el intervalo [xi−1 , xi ]
n
X
|lj (x)| = ti (x)
i=0
sabiendo que se puede determinar sin ningún problema f (h) para h > 0.
Los otros casos de determinación de lı́mite se convierten el primer caso por
traslación afı́n, o planteando h = 1/x si se desea determinar el lı́mite cuando
x → ∞. Por consiguiente se supondrá que f tiene un desarrollo asimtótico
por derecha de la forma
Sea 1 ≥ h0 > h1 > · · · > hn > 0 una subdivisión decreciente del intervalo
(0, 1], por lo tanto
lim f (x) ≈ p(0), (III.3.3)
x→0+
donde p(x) es el polinomio de interpolación que pasa por (hi , f (hi )),
i = 0, . . . , n. Escogiendo adecuadamente estos hi se puede obtener un
algoritmo facil y sencillo de implementar, para este efecto es necesario la
siguiente proposición.
Proposición III.3.1.- Sean (xi , yi ), i = 0, 1, . . . , n, los xi diferentes entre
si, p1 (x) el polinomio de interpolación de grado n − 1 que pasa por (xi , yi ),
i = 0, . . . , n − 1, y p2 (x) el polinomio de interpolación de grado n − 1 que
pasa por (xi , yi ), i = 1, . . . , n: entonces el polinomio p(x) de grado n que
pasa por (xi , yi ), i = 0, . . . , n; está dado por
xn − x x − x0
p(x) = p1 (x) + p2 (x) . (III.3.4)
xn − x0 xn − x0
146 III Interpolación
x n − xi xi − x0
p(xi ) = p1 (xi ) +
x n − x0 xn − x0
x n − xi x i − x0
= yi + ,
x n − x0 x n − x0
f (h) = a0 + a1 h + · · · + an hn + O(hn+1 ),
h0 T00
h1 T10 T11
h2 T20 T21 T22
h3 T30 T31 T32 T33
h4 T40 T41 T42 T43 T44
.. .. .. .. .. ..
. . . . . .
Los cocientes hj−k−1 /hj se deducen facilmente del tablero, se toma como
numerador el hi que se encuentra en la misma diagonal a Tk,l y como
denominador el hi que se encuentra en la misma fila que Tk,l .
Ejemplo
Un procedimiento para calcular π, es considerar la serie
∞
X 1
π=4 (−1)k .
2k + 1
k=0
2.6667
2.8952 3.2381
2.9760 3.1781 3.1030
3.0171 3.1607 3.1302 3.1619
3.0418 3.1533 3.1367 3.1465 3.1292
3.0584 3.1495 3.1391 3.1434 3.1391 3.1500
3.0703 3.1473 3.1401 3.1424 3.1408 3.1431 3.1356
3.0792 3.1459 3.1407 3.1420 3.1413 3.1420 3.1407 3.1461
3.0861 3.1450 3.1410 3.1418 3.1414 3.1417 3.1414 3.1422 3.1381
3.0916 3.1443 3.1411 3.1417 3.1415 3.1417 3.1415 3.1417 3.1412 3.1444
3.0962 3.1438 3.1413 3.1417 3.1416 3.1416 3.1416 3.1416 3.1415 3.1419 3.1393
148 III Interpolación
con |Rk+1 (x)| ≤ Ck+1 xk+1 , para x > 0. Sea hj = 1/nj , con nj una sucesión
creciente de naturales, entonces el procedimiento de extrapolación definido
por (III.3.8) verifica la siguiente propiedad:
Si para todo j > 0 se tiene hj+1 /hj ≤ r < 1, entonces
m
Y h − hj
con lm,k,i (h) = . Para x = 0, se deduce que
j=m−k
hi − hj
j6=i
m
X m
Y hj /hi
Tmk − a0 = Rk+1 (hi ).
hj /hi − 1
i=m−k j=m−k
j6=i
III.3 Extrapolación 149
hj /hi 1
Si j < i, se mayora por , mientras que
hj /hi − 1 1 − r i−j
hj /hi j−i
si i < j, se mayora por r , finalmente |Rk+1 (hi )| por
hj /hi − 1 1 − r j−i
k+1
Ck+1 r i−m+k hm−k , deduciendo
Demostración.- Se tiene
Ejercicios
1.- Sea f : (0, 1] −→ R una función cuyo desarrollo asintótico por derecha
en x = 0 está dado por
f (x) = a0 + a1 x2 + · · · + ak x2k + O(x2k+2 ).
Modificar el algoritmo de Aitken-Naville, es decir el proceso de extra-
polación, de manera que el número de operaciones se redusca ostensi-
blemente.
2.- En esta sección, se da un ejemplo de cómo acelerar la convergencia de
una sucesión para calcular π. Suponiendo que el desarrollo asintótico
es par, como en el ejercicio 1, recalcule y compare.
3.- Utilizando el procedimiento de la sección III.1 para determinar la
influencia de los errores de redondeo en la determinación del polinomio
de interpolación. Estudie la influencia de los errores de redondeo en
la extrapolación, suponiendo que los únicos errores de redondeo que
se comete son aquellos relativos a la evaluación de la función f a ser
extrapolada.
√
4.- √
Calcule √ 2, utilizando un√procedimiento √ de extrapolación,
√ por ejemplo
√ 1 = 1, 1, 21 = 1, 1, 1, 44 = 1, 2, 1, 69 = 1, 3; 1, 96 = 1, 4;
1, 9881 = 1, 41, . . ..
Capı́tulo IV
Ecuaciones No Lineales
x2 + b̄x + c̄ = 0, (IV.1.2)
IV.1 Ecuaciones Polinomiales 153
Ecuaciones Cúbicas
Las ecuaciones cúbicas o ecuaciones polinomiales de tercer grado son de la
forma
ax3 + bx2 + cx + d = 0, con a 6= 0; (IV.1.4)
esta ecuación dividiendo por a se reduce a una ecuación de la forma
de donde
u3 + v 3 + (u + v)(3uv − 3p) − 2q = 0,
deduciendose, dos ecuaciones para u y v:
(
uv = p,
u + v 3 = 2q;
3
λ2 − 2qλ + p3 , (IV.1.7)
154 IV Ecuaciones No Lineales
por lo tanto:
p p
u3 = q + q 2 − p3 , v3 = q − q 2 − p3 ;
Localización de Ceros
Como se dijo anteriormente, al no poder calcular explı́citamente las raices de
un polinomio, es importante determinar en que región se encuentran estas
raices de manera de poder aplicar un método iterativo.
Sea, p(x) un polinomio a coeficientes complejos de grado n, es decir
p(x) = a0 xn + a1 xn−1 + · · · + an ,
Con el siguiente ejemplo se verá que existen mejores estimaciones que otras,
esto depende sobre todo del tipo de polinomio que se tiene.
Ejemplo
Se considerá la ecuación
xn − 2 = 0,
la primera estimación, como la segunda dan |x| ≤ 2n , mientras que, la
tercera da |x| ≤ 2.
Debido a la aritmética de los ordenadores, el tipo REAL es un conjunto
finito, que se asemeja mucho mas a los números racionales que los reales,
IV.1 Ecuaciones Polinomiales 157
por eso que se puede suponer que p(x) ∈ Q[x]. Por otro lado, cuando los
polinomios tienen raices de multipliciad mayor a 1, la mayor parte de los
algoritmos no funcionan, debido a la inestabilidades que se pueden presentar,
o a las caracterı́sticas propias de los métodos empleados.
Sea p(x) ∈ Q[x], p′ (x) su derivada, se define el polinomio q(x) utilizando
el algoritmo de Euclides, por
de donde el polinomio r(x) = p(x)/q(x) tiene las mismas raices que p(x)
pero todas simples. Por consiguiente, se ha visto un procedimiento simple
para reducir un polinomio p(x) a otro polinimio simple. En lo que sigue, se
puede suponer que los polinomios considerados tienen raices simples.
Método de Newton
Uno de los métodos comúnmente utilizados en la determinación de raices de
un polinomio, consiste en el uso del método de Newton. Aquı́ se formulará
este método, sin estudiar la convergencia y el cálculo de error, dejando ésto
para el siguiente paragrafo. Por lo tanto, el método está dado por la relación
recursiva siguiente
— x0 arbitrario, proximo a una solución.
p(xk )
— xk+1 = xk − ′ , donde p(x) es el polinomio a determinar
p (xk )
sus raices.
El problema consiste en determinar todas las raices reales de p(x) =
0, suponiendo que se ha encontrado la primera raiz, se podrı́a utilizar
nuevamente el método de Newton utilizando otra valor, pero existe la
posibilidad de encontrar nuevamente la primera solución. Para evitar esta
situación se puede proceder básicamente de dos maneras. La primera, una
vez que se ha encontrado la raiz ξ1 , se define el polinomio
p(x)
q(x) = , (IV.1.18)
x − ξ1
aplicando Newton sobre q(x). El principal inconveniente de este procedi-
miento radica en el hecho que ξ puede no ser racional, motivo por el cual r(x)
ya no es exacto y la propagación de errores de redondeo puede dar resultados
completamente alejados de la realidad. El segundo procedimiento consiste en
aplicar el método de Newton a q(x), pero sin calcular los coeficientes de q(x).
Sea p(x) el polinomio a determinar sus raices, suponiendo que se conoce de
antemano ξ1 , . . . , ξk raices de p(x), de donde
p(x)
q(x) = . (IV.1.19)
(x − ξ1 ) · · · (x − ξk )
158 IV Ecuaciones No Lineales
k
X
log q(x) = log p(x) − log(x − ξi ),
i=1
k
q ′ (x) p′ (x) X 1
= − . (IV.1.20)
q(x) p(x) i=1
(x − ξi )
p(xm )
xm+1 = xm − k
. (IV.1.21)
X 1
′
p (xm ) − p(xm )
i=1
(xm − ξi )
12
Y
p(x) = (x − 2−j ) = x13 + a1 x12 + · · · + a12 .
j=0
Sucesiones de Sturm
La utilización de sucesiones de Sturm en la resolución de ecuaciones polino-
miales permite determinar las raices reales y no ası́ las raices no reales. En
la mayor parte de los problemas, es solo importante conocer los ceros reales,
motivo por el cual los procedimientos que utilizan sucesiones de Sturm son
muy comunes en la resolución de ecuaciones polinomiales
Definición IV.1.6.- Una sucesión {f0 , f1 , . . . , fn } de funciones definidas en
R con valores reales, continuamente derivables es una sucesión de Sturm, si:
a) f0′ (x∗ )f1 (x∗ ) < 0 si f0 (x∗ ) = 0, x∗ ∈ R.
b) fj−1 (x∗ )fj+1 (x∗ ) < 0 si fj (x∗ ) = 0, 1 ≤ j ≤ n − 1.
c) fn (x) no cambia de signo sobre R y es positiva
Teorema IV.1.7.- Sea {f0 , f1 , . . . , fn } una sucesión de Sturm, w(x) se
denota al número de cambios de signo de {f0 (x), f1 (x), . . . , fn (x)}.
Entonces la función f0 (x) tiene exactamente w(b) − w(a) ceros en el
intervalo [a, b].
160 IV Ecuaciones No Lineales
x∗ − ǫ x∗ x∗ + ǫ x∗ − ǫ x∗ x∗ + ǫ
fj−1 + + + fj−1 − − −
fj ± 0 ± fj ± 0 ±
fj+1 − − − fj+1 + + +
x∗ − ǫ x∗ x∗ + ǫ
fn−1 ± ± ±
fn + 0 +
x∗ − ǫ x∗ x∗ + ǫ x∗ − ǫ x∗ x∗ + ǫ
f0 + 0 − f0 − 0 + ,
f1 − − − f1 + + +
Ejercicios
1.- El polinomio x4 − 8x3 + 24x2 − 32x + a0 , a0 = 16 posee una raiz
de multiplicidad 4 en el punto x = 2. ¿Cómo cambian las raices del
polinomio si se remplaza a0 por ā0 = a0 (1 + ǫ) con |ǫ| ≤ eps? Calcular
las raices de este polinomio, ¿es un problema bien condicionado?
2.- Sea p(x) un polinomio de grado n a coeficientes reales. Supóngase que
todas las raices α1 ≥ α2 ≥ · · · ≥ αn sean reales.
a) Mostrar que el método de Newton converge hacia α1 , si x0 > α1 .
Indicación.- Para x > α1 los valores de p(x), p′ (x), p′′ (x) tienen
el mismo signo que lim p(x). Mostrar que {xk } es una sucesión
x→∞
monótona.
b) Si x0 es mucho mas grande que α1 , entonces el método de Newton
converge muy lentamente. (xk+1 ∼ xk (1 − 1/h))
3.- Considérese el polinomio
f (x) = 0. (IV.2.1)
1
f (x) = x3 sin , (IV.2.2)
x
muestra que puede existir una infinidad de raices, aun cuando f no sea
identicamente nula en un subintervalo.
Por consiguiente, un primer paso consiste en descomponer el intervalo
I, por un número finito o infinito de puntos de subdivisión, en subintervalos
en cada uno de los cuales se sepa que, la ecuación no tiene raiz, o la ecuación
tenga una y una sola solución. Se estará seguro, que es ası́ cuando la función
164 IV Ecuaciones No Lineales
Ejemplo
Sea f : (−1, 1) −→ R definida por
f (x) = x100 g(x), (IV.2.4)
donde g es una función continua que no se anula en (−1, 1). Es evidente
que, x = 0 es una raiz de la ecuación f (x) = 0. Aplicando el algoritmo
de la bisección con una tolerancia de 10−6 y tomando como puntos de
partida a = −0, 9 y b = 0.9 puede suceder que |f (x)| < T OL, dejando
una gran elección para escoger la raiz de f (x).
Por lo tanto, si no se tiene la hipótesis que f (x) sea derivable y que
f ′ (x) 6= 0 para x raiz de la ecuación f (x) = 0, se debe tener mucho cuidado
en la determinación de la solución numérica del problema, para no cometer
grandes errores.
y=L(x)
a ξ y=f(x) b
ξ0
1 ′′
f (x) − L(x) = f (ζ)(x − x0 )(x − x1 ) (IV.2.6)
2
con ζ ∈ I, deduciendo la siguiente proposición.
Proposición IV.2.2.- Si f ′ no se anula en el intervalo I, y si f (ξ0 ) = 0,
L(ξ) = 0 para ξ, ξ0 ∈ I, entonces se tiene
1 f ′′ (ζ)
ξ − ξ0 = (ξ − a)(ξ − b), (IV.2.7)
2 f ′ (ζ ′ )
1 ′′
f (ξ) = f (ζ)(ξ − a)(ξ − b),
2
por el teorema del valor medio se tiene
f (ξ) = f ′ (ζ ′ )(ξ − ξ0 )
M
|ξ − ξ0 | ≤ (b − a)2 . (IV.2.8)
8m
f (c) − f (a)
L(x) = f (a) + (x − a)
c−a
f (b) − 2f (c) + f (a)
+2 (x − a)(x − c), IV.2.10)
(b − a)2
1 ′′′
f (x) − L(x) = f (ζ)(x − a)(x − c)(x − b), (IV.2.11)
6
1 f ′′′ (ζ)
ξ − ξ0 = (ξ − a)(ξ − c)(ξ − b) (IV.2.12)
6 f ′ (ζ ′ )
1 ′′
f (ξ) = f (ζ)(ξ − a)(ξ − c)(ξ − b),
6
f (ξ) = f ′ (ζ ′ )(ξ − ξ0 ),
M
|ξ − ξ0 | ≤ (b − a)3 . (IV.2.13)
24m
Sistemas de Ecuaciones
Los problemas que han sido estudiados más arriba estaban relacionados a
funciones de una sola variable con valores reales. Ahora bien, existe una gran
variedad de problemas donde se deben resolver sistemas de ecuaciones, que
en general no son lineales. La posición del problema es por consiguiente:
Dada f : U ⊂ Rn −→ Rn , encontrar ξ ∈ U tal que
f (ξ) = 0. (IV.2.15)
g :V −→ U
v −→ x(v)
−1
es continuamente diferenciable y además gv′ = (fx′ ) .
Consecuencias de este teorema son: la unicidad local de la solución; si
x̂ es solución númerica obtenida mediante un metodo cualquiera se tiene la
siguiente estimación del error
−1 2
x̂ − x∗ = (fx′ ∗ ) f (x̂) + O(kf (x̂)k ),
−1
de donde si (fx′ ∗ ) es casi singular, x̂ − x∗ puede ser muy grande, aun si
f (x̂) es pequeño.
f (x) = x, (IV.2.17)
por lo tanto
Cm
d(xn , xm ) ≤
,
1−C
que tiende a cero, cuando n, m tienden a ∞. Sea x∗ = lim xn , se deduce
n→∞
que f (x∗ ) = x∗ . Con esto se ha demostrado la existencia de la solución. Para
la unicidad se considera x, y son soluciones del problema, por lo tanto
en = xn − x∗ ,
x2 + y 2 − 1 = 0
1,
sin x + sin y =
2
se desea determinar las soluciones de esta ecuación. Convirtiendo en un
problema de punto fijo se tiene
x x2 + y 2 − 1
Φ(x, y) = −A
y sin x + sin y − 21
Ejercicios
1.- Sea A una matriz que es diagonal dominante, es decir
X
|aii | > |aij | , i = 1, . . . , n;
j6=i
f (x) = 0, (IV.3.1)
Ejemplos
1.- Considérese la ecuación de una sola variable dada por
f (x) = 2x − tan x,
para aplicar el método de Newton la derivada está dada por
1
f ′ (x) = 2 − ,
cos2 x
partiendo del punto inicial x0 = 1, 2 se obtiene los siguientes valores
mediante el método de Newton.
Tabla IV.3.1. Valores obtenidos por el método de Newton.
2
k xk yk kf (xk )k2 kek k2 / kek−1 k2
0 0.5 2. 0.25
1 .516666 1.96666 0.134722
2 0.526332 1.94921 0.764322 × 10−1 14.3688
−1
3 0.532042 1.93948 0.446506 × 10 28.3211
22 0.540690 1.92553 0.345530 × 10−5 446885.
−5
23 0.540690 1.92553 0.210661 × 10 732995.
de donde
1 f ′′ (xk ) 2
ek+1 = e + O((ek )3 ),
2 f ′ (xk ) k
mostrando ası́ el teorema siguiente:
Teorema IV.3.1.- Sea f : I −→ R, tres veces continuamente diferenciable,
x∗ una solución de la ecuación f (x) = 0. Si f ′ (x) 6= 0 en un vecindario de
x∗ , x0 bastante próximo de x∗ , entonces
1 f ′′ (xk ) 2
ek+1 = e + O((ek )3 ), (IV.3.3)
2 f ′ (xk ) k
IV.3 Método de Newton 177
donde ek = x∗ − xk .
Para el caso de una función de varias variables, la situación es bastante
similar, en efecto sea
f : U ⊂ Rn −→ Rn ,
donde U es un abierto de Rn , f es una función tres veces continuamente
derivable, cuya derivada es inversible para todo x ∈ U. La derivada de f
en el punto x ∈ U es una aplicación lineal, cuya matriz respecto a la base
canónica está dada por
∂f1
· · · ∂f1
∂x1 ∂xn
. ..
f ′ (x) =
..
. ,
∂fn ∂fn
···
∂x1 ∂xn
donde f1 , . . . , fn son las componentes de la función f ; la segunda derivada
de f en el punto x ∈ U es una aplicación bilineal simétrica, que respecto a
la base canónica, está dada por
X ∂2f
f ′′ (x)(h, k) = (x)hi , kj ,
i,j
∂xi ∂xj
Cálculo de la Derivada
Al implementar el método de Newton, se debe cálcular la derivada de f en
cada punto. La primera forma de determinar la matriz f ′ (xk ) es de manera
analı́tica, construyendo ası́ una subrutina para evaluar los coeficientes de
la matriz jacobiana en cada iteración. Pero lastimosamente, no siempre
178 IV Ecuaciones No Lineales
∂fj
(x) = g ′ (0).
∂xi
g(t) − g(0) 1
= g ′ (0) + g ′′ (0)t + O(t2 ),
t 2
1
error de redondeo ≤ 2 |g(0)| + |g ′ (0)t| eps. (IV.3.6)
|t|
IV.3 Método de Newton 179
Lo ideal será, por lo tanto escoger un valor de t de manera que los errores
de aproximación y de redondeo se aproximen, ver figura IV.3.1.
Err de aprox
Err de redon.
El Teorema de Newton-Misovski
Se ha formulado el método de Newton de una manera general, dando
inclusive una estimación del error cometido, deduciendo que si el método
converge, la convergencia es cuadrática. Pero sin embargo, no se enunció las
condiciones suficientes para obtener convergencia de este método. El siguien-
te teorema dará las condiciones suficientes para asegurar la convergencia del
método, cuando la función f cumple ciertas condiciones.
Teorema IV.3.3.- Newton-Misovski. Sean D ⊂ Rn abierto y convexo,
f : D −→ Rn continuamente diferenciable, f ′ (x) inversible para todo x ∈ D,
x0 ∈ D satisfaciendo las siguientes condiciones:
k△x0 k ≤
a)
α,
2
b)
(f ′ (y)−1 f ′ x + t(x − y) − f ′ (x) (y − x)
≤ ωt ky − xk , ∀x, y ∈
D, t ∈ [0, 1];
1
c) η := αω < 1;
2
α
d) ρ := < 1;
1−η
e) B̄(x0 , ρ) = {x ∈ Rn | kx − x0 k ≤ ρ}.
180 IV Ecuaciones No Lineales
Entonces:
i) La sucesión {xk } definida por el método de Newton se queda dentro
B(x0 , ρ) y converge hacia una solución x∗ de f (x) = 0.
ii) Se tiene la estimación k△xk k ≤ ω 2
2 k△xk−1 k .
ω 2
iii) kxk − x∗ k ≤ k△xk−1 k .
2k
2(1 − η )
Demostración.- Es claro por la definición del método de Newton que si
{xk } es convergente, entonces el lı́mite de la sucesión es igual a x∗ , donde
f (x∗ ) = 0. Se mostrarás la conclusiones por inducción. Se supone que
xk , xk−1 ∈ D, para k ≥ 1, entonces
ω
k△xk k ≤ k△xk−1 k2 ,
2
en efecto
k△xk k =
(f ′ (xk ))−1 f (xk )
=
(f ′ (xk ))−1 f (xk ) − f (xk−1 ) − f ′ (xk1 )△xk−1
Z 1
′
=
f (xk ) f (xk−1 + t△xk−1 ) − f (xk−1 ) △xk−1 dt
′ ′
0
Z 1
′
≤
f (xk ) f ′ (xk−1 + t△xk−1 ) − f ′ (xk−1 ) △xk−1
dt
0
Z 1
ω
≤ ωt k△xk−1 k2 dt = k△xk−1 k2 .
0 2
2 ω
ηk = ηk−1 , η0 = α = η.
2
Si x0 , x1 , . . . , xk ∈ D, entonces
ω
k△xk k ≤ ηk ;
2
ω ω 2
2
k△xk k ≤ k△xk−1 k ≤ ηk−1 = ηk .
2 2
k
como η0 = η, se tiene ηk = η 2 , puesto que η < 1,
lim ηk = 0.
k→∞
IV.3 Método de Newton 181
2 η2 2 η α
Para l = 0, se tiene kxk+1 − x0 k ≤ < = = ρ, de
ω 1 − η2 ω1−η 1−α
donde xk+1 ∈ B(x0 , ρ).
Por otro lado,
2 ηl2
kxk+1 − xl k ≤ −→ 0, cuando k ≥ l → ∞.
ω 1 − ηl2
se plantea:
ω 2
η̂k−1 = k△xk−1 k , η̂l = η̂l−1 ;
2
k
de donde η̂k−1 ≤ ηk−1 y η̂k ≤ ηk − η 2 , además
ω
k△xl k ≤ η̂l para l ≥ l − 1.
2
De donde
2
ω k△xk−1 k
kxl+1 − xk k ≤ ,
2 1 − η 2k
haciendo tender l al infinito queda demostrado el punto iii)
Es necesario remarcar el siguiente hecho concerniente a la hipótesis b)
del teorema que se acaba de demostrar. Si f es 3 veces derivable, utilizando
la fórmula de Taylor se tiene
3
[f ′ x + t(x − y)) − f ′ (x) ](y − x) = f ′′ (x)(t(y − x), y − x) + O(ky − xk ),
182 IV Ecuaciones No Lineales
por consiguiente
(f ′ (y))−1 [f ′ x + t(x − y)) − f ′ (x) ](y − x) = t(f ′ (y))−1 f ′′ (x)(y − x, y − x)+
3
O(ky − xk ),
3
si D es bastante pequeño, entonces se puede despreciar O(ky − xk ), de
donde
′
(f (y))−1 [f ′ x + t(x − y)) − f ′ (x) ](y − x)
≤ t
(f ′ (y))−1 f ′′ (x)
ky − xk2 ,
por consiguiente
ω ≈ sup
(f ′ (y))−1 f ′′ (x)
(IV.3.8)
x,y∈D
x0 arbitrario,
−1
△xk = − f ′ (x0 ) f (xk ), (IV.3.9)
xk+1 = xk + △xk .
Por consiguiente se debe calcular una sola vez f ′ (x0 ) y calcular una vez la
descomposición LR. Por lo tanto, la primera iteración consume aproximada-
mente n3 /3 en el cálculo de la descomposición, y las demás iteraciones nece-
sitan aproximadamente n2 operaciones. La desventaja de utilizar el método
de Newton simplificado reside en el hecho en que se pierde la convergencia
cuadrática, obteniendo una convergencia lineal. En efecto, considerando este
método como un método iterativo simple, dado en la sección precedente se
tiene:
−1
xk+1 = Φ(xk ), donde βΦ(x) = x − f ′ (x0 ) f (x);
′ ′
−1 ′
Φ (x) = I − f (x0 ) f (x).
ασ 1
h= 2 ≤ 2;
(1 − δ0 )
e) B(x0 , ρ) ⊂ D, con √
1− 1 − 2h α
ρ= ;
h 1 − δ0
entonces:
i) M (x) es inversible para x ∈ B(x0 , ρ),
ii) La sucesión {xk } definida por (IV.3.10) se queda en B(x0 , ρ) y converge
hacia una solución x∗ de f (x) = 0,
αω ω
iii) Se define h̄ = = h,
(1 − δ0 )2 σ
p
1± 1 − 2h̄ α
ρ± = ,
h̄ 1 − δ0
√ X 1/2 x
1−x= (−x)j = 1 − − c 2 x2 − c 3 x3 − · · · ,
j 2
j≥0
con los cj ≥ 0,
√
1− 1 − 2h
= 1 + 4c2 h + 8c2 h2 + 16c4 h3 + · · · ,
h
ρ_
D
x0 ρ
ρ+
por consiguiente
1
M (x)−1 M (x0 )
≤ kx − x0 k < ρ. (IV.3.11)
1 − µ kx − x0 k
De donde
kxk+1 − xk k ≤
1 nσ o
kxk − xk−1 k2 + (δ0 + (σ − µ kxk−1 − x0 k) kxk − xk−1 k .
1 − µ kxk − x0 k 2
t0 = 0,
t1 = α,
1
tk+1 − tk = σ(tk − tk−1 )2 + (δ0 + (σ − µ)tk−1 )(tk − tk−1 ) ,
1 − µtk
188 IV Ecuaciones No Lineales
kxk+1 − xk k ≤ tk+1 − tk ,
kxk − x0 k ≤ tk ;
σ
(1 − µtk )(tk+1 − tk ) = (t2k − 2tk tk−1 + t2k−1 ) + δ0 (tk − tk−1 )
2
+ σtk−1 (tk − tk−1 ) − µtk−1 (tk − tk−1 ),
σ 2
(1 − µtk )(tk+1 − tk ) − t + (1 − δ0 )tk
2 k
σ 2
= (1 − µtk−1 )(tk − tk−1 ) − t + (1 − δ0 )tk−1 = α,
2 k−1
σ 2
2 tk − (1 − δ0 )tk + α u(tk )
tk+1 = tk + = tk + = Φ(tk ),
1 − µtk v(tk )
σ 2
u(t) = t − (1 − δ0 )t + α, v(t) = 1 − µt.
2
donde ρ1,2 son las raices de u(t). Expresando ambas raices en función de h,
se obtiene √
1 ± 1 − 2h α
ρ1,2 = ,
h 1 − δ0
puesto que h ≤ 1/2, las dos raices de u son positivas, siendo ρ1 la raiz más
pequeña, se tiene:
ρ1 ≤ ρ2 , ρ1 = ρ.
Por otro lado, ambas raices son acotadas, en efecto
ρ1 + ρ2 1 α 1 − δ0 1
= = ≤ .
2 h 1 − δ0 σ µ
α α
α
1/µ 1/µ
ρ1 ρ2 1/µ
1 1 1
ρ1 ≤ ρ2 ≤ ρ1 < < ρ2 ρ2 =
µ µ µ
u(t)
Φ(t) = t + ,
v(t)
v(t) + u′ (t) v ′ (t)
Φ′ (t) = + u(t) 2 ,
v(t) v (t)
| {z }
>0
v(t) + u′ (t) = 1 − µt + σt − (1 − δ0 ) = δ0 + (σ − µ)t ≥ 0.
kxk+1 − xk k ≤ tk+1 − tk ,
kxk − x0 k ≤ tk ,
ky ∗ − xk k ≤ sk − tk
tk+1 = Ψ(tk ), t0 = 0;
∗
sk = Ψ(sk−1 ), s0 = ky − x0 k < ρ+ .
Ψ (t)
t
ρ− ρ
+
kx∗ − x0 k ≤ ρ− ,
ky ∗ −x∗ k ≤ sk − tk −→ 0,
y ∗ = x∗ .
IV.3 Método de Newton 193
Ejemplo
Considérese, la función f dada por
2
x1 + x22 − 1
f (x) = ,
x2 − x21
α = 0, 37; ω = 1, 2; δ0 = 0; δ1 = 0;
µ = ω; σ = 1, 2.
con 0 < λ ≤ 1. La base teórica de esta modificación está dada por la:
Proposición IV.3.5.- Sean D ⊂ Rn , f : D → Rn continuamente diferen-
−1
ciable, x0 ∈ D, f (x0 ) 6= 0 y p0 = −(f ′ (x0 )) f (x0 ). Entonces para toda
matriz A inversible, existe λ0 > 0 tal que para todo λ, 0 < λ < λ0 , se tiene
x′ = p(x). (IV.3.12)
−1
xk + λk ∆xk − x∗ = (f ′ (xk )) f (xk + λ∆xk ),
−1
A = (f ′ (xk )) ; (IV.3.16)
−1
Por lo tanto (IV.3.15), se convierte en g(λ) =
(f ′ (xk )) f (xk + λ∆xk )
y el
problema radica en determinar λ, para que g(λ) sea mı́nimo. A continuación
se da un algoritmo simple que permite determinar este λ:
Supóngase que se conoce xk y una aproximación λ̂k de λk . Se tiene dos
casos:
a) g(λ̂k ) ≥ 0, es decir xk + λ̂k es peor que xk .
Se busca el más pequeño de los j > 1, tal que
y se plantea λk = 2j λ̂k .
En ambos casos λk no debe ser más grande que 1.
Finalmente surge la última interrogante, ¿Como determinar λ̂k ? Uti-
lizando un desarrollo de Taylor se tiene:
Por otro lado f (xk ) + λf ′ (xk )∆xk = (1 − λ)∆xk y (f ′ (xk ))−1 f (xk ) = ∆xk ,
de donde utilizando el desarrollo de Taylor, la desigualdad del triángulo y
las observaciones anteriores, se tiene
λ2
g(λ) ≤ k∆xk k (1 − λ + hk + O(λ3 ))
2
donde hk =
(f ′ (xk ))−1 f ′′ (xk )(∆xk , ∆xk )
/ k∆xk k . Despreciando el tér-
mino O(λ3 ), se obtiene un polinomio de grado 2, cuyo mı́nimo se encuentra
en
1
λ̂k = , (IV.3.17)
hk
faltando determinar hk . Como es prácticamente imposible determinar con
exactitud hk solo se requiere encontrar una buena aproximación de hk . Para
tal efecto, se supone que se ha efectuado k − 1 iteraciones, teniendo:
de donde
k∆xk−1 k k∆xk k
λ̂k = min 1, λk−1
d
d
. (IV.3.18)
∆xk − ∆xk
∆x k
Ejemplo
Considérese, la función f definida por
−13x1 + x2 ((5 − x2 ) − 2)
f (x) =
−29 + x1 + x2 ((1 + x2 )x2 − 14)
Aproximación de Broyden
Uno de los principales problemas en la implementación del método de
Newton, tanto en su versión con relajación, como en su versión original, es
el cálculo de la matriz jacobiana f ′ (xk ) en cada iteración y por consiguiente
mediante el algoritmo de eliminación de Gauss determinar la descomposición
LR de esta matriz. Existen muchas alternativas para evitar el cálculo de la
matriz jacobiana y su descomposición LR en cada iteración. El siguiente
análisis permitirá encontrar algunas de estas alternativas. Utilizando las
relaciones dadas por (IV.3.17) y (IV.3.18) respecto a la determinación de los
coeficientes de relajación, la experiencia numérica indica que, si λk hk ≤ 10−1
se puede tomar en el lugar de f ′ (xk+1 ) f ′ (xk ). En este caso se tiene
la versión simplificada del método de Newton. Sin embargo, existe otra
alternativa descubierta por Broyden en 1965. Se supone, que se conoce una
aproximación Jk de f ′ (xk ), es decir
Jk ≈ f ′ (xk ) (IV.3.19)
Jk+1 p = Jk p ∀p⊥∆xk ;
(IV.3.20)
Jk+1 ∆xk = Jk ∆xk + q;
por lo tanto
de donde
Jk+1 ∆xk = Jk ∆xk + f (xk+1 ). (IV.3.20)
Proposición IV.3.6.- Si Jk es inversible y
∆x
¯ k+1
< k∆xk k, donde
Ejercicios
1.- Utilizando el teorema de Newton-Kantorovich encontrar ρ > 0 tal que
la iteración
f (zk )
zk+1 = zk − f (z) = z 3 − 1
f ′ (zk )
3.- En el artı́culo
R.S. Dembo, S.C. Eisenstat & T. Steighaug(1982): Inexact Newton
methods. SIAM J. Numer. Anal., vol. 19,400-408.
200 IV Ecuaciones No Lineales
con η < 1.
a) Mostrar el resultado:
Sea D ⊂ Rn abierto, f : D → Rn y τ : D → Rn continuamente
diferenciables en D. Si la condición (IV.3.23) es satisfecha con η < 1
y si k∆x0 k es suficientemente pequeño, entonces la iteración (IV.3.21)
converge hacia una solución de f (x) = 0.
b) El teorema precedente no es cierto, en general, si se remplaza η < 1
por η ≤ 1. Mostrarlo.
Indicación. Encontrar una matriz M (x) tal que la iteración (IV.3.21) se
vuelva equivalente a
4.- (U. Ascher & Osborne 1987). Considerar una función f : R2 → R2 que
satisfaga
√
1 4 √3 − 3 1 0
f (0) = − , f ′ (0) =
10 −4 3 − 3 0 1
√ √
1 4 ′ 1/ 3 −1/ 3
f (u) = , f (u) =
5 −3 1 1
X X ∂ 2 fi
donde M = max (x) .
i ∂xj ∂xl
j l
x1
6.- Sea f : D → R2 dada por D = | − 1 < x1 , x2 < 3 ,
x2
x1 − x2 0.125
f (x) = , x0 = .
(x1 − 8)x2 0.125
Jk ∆xk − = f (xk )
xk+1 = xk + ∆xk
E = {x|g(x) = 0}
f : D ⊂ Rn → Rm con n ≤ m,
m
! m
∂ X X ∂fi
2
fi (x) =2 (x) · fi (x) = 0, ∀j;
∂xj i=1 i=1
∂xj
de donde
t
f ′ (x) f (x) = 0. (IV.4.7)
Los resultados (IV.4.6) y (IV.4.7) están relacionados por el siguiente:
Proposición IV.4.1.- Se tiene
+ t
f ′ (x) f (x) = 0 ⇐⇒ f ′ (x) f (x). (IV.4.8)
remplazando, se tiene
σ1
.. 0
t
f ′ (x) = V . U t = 0,
σk
0 0
de donde
t
g ′ (x) = B(x)(f (x), ) + f ′ (x) f ′ (x),
con B(x) una forma bilineal simétrica. Por consiguiente el desarrollo de
Taylor de g en xk , el k-esimo valor obtenido en la iteración del método de
Gauss-Newton, es igual a
t t
0 = f ′ (xk ) f (xk ) + f ′ (xk ) f ′ (xk )(x∗ − xk ) + B(xk )(f (xk ), x∗ − xk )
+O(kx∗ − xk k22 ),
Ahora bien, supóngase además que rang f ′ (xk ) = n, es decir que el rango
sea maximal. De donde se tiene
−1
t 2
xk+1 − x∗ = − f ′ (xk ) f ′ (xk ) B(xk )(f (xk ), x∗ − xk ) + O(kx∗ − xk k2 ),
y diverge si
−1
t
ρ f ′ (xk ) f ′ (xk ) B(xk )(f (xk ), ) > 1.
Ejemplos
1.- Este ejemplo está relacionado con la subsección concerniente a la
convergencia del método de Gauss-Newton. Se busca x ∈ R tal que
g(t) = ext ajuste lo mejor posible m puntos (ti , yi ), i = 1, . . . , m; con
m ≥ 1. Por consiguiente, el problema consiste en determinar x tal que
m
X
(yi − exti ) −→ min,
i=1
siguientes puntos: (2, 3), (2, 1), (1, 2), (3, 2) y (2.5, 2.5). Ahora bien la
ecuación de una circunferencia de centro (h, k) y radio r está dada por
(x − h)2 + (x − k)2 − r 2 = 0,
(h − 2)2 + (k − 3)2 − r 2
(h − 2)2 + (k − 1)2 − r 2
f (h, k, r) = (h − 1)2 + (k − 2)2 − r 2
(h − 3)2 + (k − 2)2 − r 2
(h − 2.5)2 + (k − 2.5)2 − r 2
h =1.95833333333295,
k =1.95833333333295,
r =0.959239125904873
4.0
3.5
3.0
2.5
2.0
1.5
1.0
.5
.0
.0 .5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Figura IV.4.1. Circunferencia del método de Gauss-Newton.
IV.4 Método de Gauss Newton 211
El Método de Levenberg-Marquandt
El problema abordado en esta sección, es resolver kf (x)k → min, donde
f : Rn → Rm , con n ≤ m. El método propuesto en el anterior paragrafo
fue el método de Gauss-Newton. Como se ha visto, uno de los mayores
incovenientes es que para iniciar las iteraciones se debe partir de un punto
inicial bastante próximo de la solución, por otro lado los análisis hechos se
basan en el supuesto que f ′ (x) es de rango igual a n, es decir de rango ma-
ximal, además si f (x) no es lo suficientemente pequeño el método de Gauss-
Newton diverge. Por las razones expuestas es necesario formular un método
alternativo que permita evitar las situaciones enumeradas anteriormente.
El método de Levenberg-Marquandt que constituye un método alterna-
tivo para resolver el problema de encontrar x con kf (x)k mı́nima, se basa en
las siguientes ideas. Al formular el método de Gauss-Newton, se consideró
la serie de Taylor de f (x) en el punto xk , resultado de la k − 1 iteración y
se planteó
kx − xk k −→ min,
2
kf (xk ) + f ′ (xk )(x − xk )k2 + p kx − xk k22 −→ min, (IV.4.9)
1 t
∆xk ≈= − f ′ (xk ) f (xk ),
p
Ejercicios
1.- Encontrar una elipse, una hipérbola, que pasa lo mejor posible por los
puntos (xi , yi )i=1,...,m . Por ejemplo m = 10; (−1/2, 1), (−1/2, −0.1),
(2.5, −1), (1.5, 1.5), (0.3, −1.5), (0.5, −2), (3, 0.1), (3, −0.3), (2.5, 1),
(0.5, 3.5).
Indicaciones.- Plantear
Ax = λx. (V.1.1)
BT −1 v = T −1 AT T −1 v = T −1 Av = λT −1 v,
A∗ij = āji .
U ∗ U = I.
Q1 = (v1 , v2 , . . . , vn ),
y planteando
1 0
Q2 = ,
0 Q̄2
se tiene
λ1 ∗
∗ ··· ∗
0 λ2
AQ1 Q2 = Q2 Q1
0 .
..
. A(2)
0
repetiendo el procedimiento las veces que sea necesario, se tiene el resul-
tado deseado. Cabe recalcar que este procedimiento da la descomposicion
requerida en a lo más n pasos.
Teorema V.1.8.- Si A es normal, es decir A∗ A = AA∗ , entonces existe una
matriz unitaria Q tal que
λ1 0
Q∗ AQ = ..
.
0 λn
λ̄1 0 ··· λ1 ∗ ··· ∗
∗ λ̄2 0 0 λ2 ∗
.. ..
. .
∗ λ̄n 0 λn
λ1 ∗ ··· ∗ λ̄1 0 ···
0 λ2 ∗ ∗ λ̄2 0
=
..
.. ,
. .
0 λn ∗ λ̄n
de donde
2 2 2 2
|λ1 | = |λ1 | + |∗| + · · · + |∗| ,
dando como resultado que la primera fila fuera del coeficiente de la diagonal
es nulo. Se continua con el mismo procedimiento hasta mostrar que B es
diagonal.
donde āij son los coeficientes de Ā, aij los coeficientes de A y eps la precisión
de la computadora. Por consiguiente, el estudio de los valores propios de Ā
ǫij
pueden estudiarse de manera, más general, para A + ǫC, con cij = de
eps
donde |cij | ≤ |aij |. Definiendo
f (0, λ) = χA (λ).
f (0, λ1 ) = 0,
∂f
(0, λ1 ) 6= 0.
∂λ
218 V Cálculo de Valores Propios
f (ǫ, λ(ǫ)) = 0,
con
λ(ǫ) = λ1 + ǫλ′1 + O(ǫ2 ).
Por consiguiente, se tiene el siguiente:
Teorema V.1.9.- Sea λ1 una raiz simple de χA (λ), entonces para ǫ → 0,
existe un valor propio λ(ǫ) de A + ǫC, tal que
u∗1 Cv1
λ(ǫ) = λ1 + ǫ + O(ǫ2 ) (V.1.4)
u∗1 v1
(A + ǫC)v(ǫ) = λ(ǫ)v(ǫ),
mas precisamente
ǫ0 : Av1 = λ1 v1 ,
1
ǫ : Av1′ + Cv1 = λ1 v1′ + λ′1 v1 ,
de donde
(A − λ1 I) v1′ = −Cv1 + λ′1 v1 ,
multiplicando ésta última por u∗1 , se obtiene
Ejemplos
1.- Se considera la matriz A definida por
1 α
A= .
0 2
de donde
1
u∗1 v1 = p .
1 + α2
La matriz A es mal condicionada para el cálculo de los valores propios
cuando α → ∞, ya que u∗1 v1 → 0.
2.- El teorema de descomposición de Jordan indica que toda matriz A
es similar a una matriz de tipo Jordan, es decir existe una matriz T
inversible tal que
T −1 AT = J,
220 V Cálculo de Valores Propios
y
λi 1
J(ni , λi ) = .. .. .
. .
λi
Ahora bien, supóngase que A es similar a la matriz de tipo Jordan, dada
por
1 1 0 0
0 1 1 0
,
0 0 1 1
0 0 0 1
entonces se tiene que
Ejercicios
a) Verificar que
det(A − λI) = (−1)n λn + an−1 λn−1 + · · · + a1 λ + a0 .
n
X n
X
2 2
|λi | ≤ |aij | .
i=1 i,j=1
4.- Supóngase que los valores propios de A con aij ∈ R son: α + iβ, α − iβ,
λ3 , . . . , λn con β 6= 0, λ3 , . . . , λn diferentes. Mostrar que existe una
matriz T inversible con coeficientes reales tal que
α β
0
−β α
T −1 AT = λ3 .
..
0 .
λn
|λA − λB | ≤ kA − Bk2 .
v = (A − λB I)−1 (A − B)v,
deducir que
1 ≤
(A − λB I)−1 (A − B)
≤ kA − Bk
(A − λB I)−1
.
6.- Sea A una matriz simétrica. Para cada ı́ndice i existe un valor propio λ
de A tal que sX
|λ − aii | ≤ |aij |2 .
j6=i
y e∗1 T −1 y0 6= 0.
" Entonces la sucesión {yk } definida por yk+1 = Ayk satisface:
k !#
λ2
a) yk = λk1 a1 v1 + O ,
λ1
donde Av1 = λ1 v1 , Avj = λj vj ,
y0 = a1 v1 + a2 v2 + · · · + an vn , y
T = (v1 , · · · , vn ).
b) Se tiene el cociente de Rayleigh, dado por
k !
yk∗ Ayk λ2
∗ = λ1 + O , (V.2.2)
yk yk λ1
con lo queda demostrado el punto a). Para la demostración del punto b), se
tiene:
Ejemplo
Considérese, la matriz A definida por
2 1 0 0 0
1 2 1 0 0
A = 0 1 2 1 0,
0 0 1 2 1
0 0 0 1 2
V.2 Determinación de Valores Propios 225
(µI − A)−1 ,
Sea λ̄ el valor propio más grande de (µI − A)−1 , entonces se tiene que
1
λ1 = µ − . (V.2.5)
λ̄
El método de la potencia da una relación recursiva para los yk , que está dada
por
yk+1 = (µI − A)−1 yk ,
pero en lugar de calcular la inversa de la matriz, se puede resolver la ecuación
λ̄ = −232.83,
λ1 = 3.7334052.
por otro lado los vectores yk pueden ser descompuestos en un vector real y
otro imaginario, de la manera siguiente
yk = uk + ivk , uk , vk ∈ Rn ,
Algoritmo 1.
1.- Sea A una matriz arbitraria,
se busca |ak1 | = max |aj1 |,
j=2,...,n
se intercambia las filas k y 2 y también las columnas k y 2,
se define la matriz L2 por
1 0
0 1
ai1
L2 = 0 −l32 1 , li2 = , i = 2, . . . , n;
. . a
.. .. 21
0 −ln2 1
se obtiene
∗ ∗ ··· ∗
∗
L2 AL−1 = 0 .
2 .. A(1)
.
0
2.- Se aplica el paso 1 a la matriz A(1) , y se continua hasta obtener una
matriz de Hessenberg.
La principal desventaja de utilizar este primer algoritmo propuesto es
que, si A es una matriz simétrica, H no lo es en general. Recordando el
capı́tulo II.5, existe el algoritmo QR para reducir una matriz A a la forma
triangular. Es facil verificar que H = Qt AQ es simétrica, si Q es ortogonal
y A es simétrica. Por consiguiente, el segundo algoritmo propuesto utiliza
matrices de Householder para convertir una matriz A en una matriz de
Hessenberg.
Algoritmo 2.
1.- Sea A una matriz arbitraria, que puede escribirse, como
a11 · · · a1n
A= ,
A′1 · · · A′n
por consiguiente A′k ∈ Rn−1 .
Se define Q2 por
1 0
Q2 = ,
0 Q′2
donde Q′2 = I − 2u2 ut2 , u2 está determinado por la condición, ver
Capı́tulo V.2,
α2
0
Q′2 A′1 = ′
... , α2 = signo a21 kA1 k2 ;
0
V.2 Determinación de Valores Propios 229
obteniendo
∗ ∗ ··· ∗
∗
Q2 AQ−1 =
0 .
2
.. A(1)
.
0
p0 (x) = 1, (V.2.10)
donde
Ai 0
A= ,
0 ∗
Ai es la matriz formada por las primeras i filas y columnas de A. Por lo
tanto, se tiene
Pn (x) = det(A − xI). (V.2.12)
Por otro lado, los determinantes que definen estos polinomios cumplen la
siguiente relación recursiva
de donde
Teorema V.2.3.- Sea A una matriz tridiagonal y simétrica con los coefi-
cientes ei 6= 0 para i = 2, . . . , n. Entonces:
a) Las raices de pn (x) = χA (x) son simples,
b) p′n (λi ) · pn−1 (λi ) < 0 si λi es una raiz de pn (x),
c) pj (x∗ ) = 0 (1 ≤ j ≤ n − 1, x∗ ∈ R) ⇒ pj−1 (x∗ )pj+1 (x∗ ) < 0,
d) p0 (x) ≥ 0 para todo x ∈ R.
Demostración.- El punto d) se verifica inmediatamente puesto que p0 (x) =
1 por definición.
La demostración del punto c) se la realiza por el absurdo, en efecto,
si se tuviera pj (x∗ ) = 0 y pj+1 (x∗ ) = 0, utilizando (V.2.13), se tendrı́a
p0 (x∗ ) = 0 lo cual contradice el hecho que p0 (x∗ ) = 1. Ahora bien, utilizando
nuevamente (V.2.13) se tiene en el caso en que pj (x∗ ) = 0
El punto b) implica el punto a), ya que p′n (λi ) 6= 0 conduce a que λi sea
raiz simple. Sólo queda el punto b) por demostrar.
Se define, los polinomios:
1
qi (x) = (−1)i pi (x) , i = 1, . . . , n;
e2 e3 · · · ei+1
q0 (x) = p0 (x);
d1 − x e2 q (x)
e2 d2 − x e3 0 0
.. .. q1 (x) ..
. . = . .
e3 ..
.. . 0
... . en q
n−1 (x) −qn (x)
en dn − x | {z }
| {z } q(x) 6= 0
A − xI
Si λi es valor propio de A, entonces q(λi ) es un vector propio, derivando
la relación matricial, se obtiene
V.2 Determinación de Valores Propios 231
0
..
−q(x) + (A − xI)q ′ (x) = . ,
0
−qn′ (x)
multiplicando por la traspuesta de q(x), se tiene
0
..
−q t (x)q(x) + q t (x)(A − xI)q ′ (x) = q t (x) , .
| {z } 0
= 0 si x = λi −qn′ (x)
de donde
2
−qn′ (λi )qn−1 (λi ) = − kq(λi )k < 0,
dando por consiguiente
w(b) − w(a),
donde w(x) indica los cambios de signo de los polinomios pi (x). La
determinación exacta de los valores propios se efectua mediante el algoritmo
de la bisección, ya estudiado en la sección IV.1. Ahora bien, el problema
consiste en encontrar un algoritmo simple que permita evaluar w(x).
Algoritmo para calcular w(x)
Se define la sucesión fi (x), i = 1, . . . , n; por
pi (x)
fi (x) = , (V.2.14)
pi−1 (x)
lim qj = v1 ,
j→∞
(j)
lim λ1 = λ1 ,
j→∞
A : Cn −→ Cn
,
y −→ Ay
donde v ∈ V y
λ1 r12 · · · r1n
..
.
U ∗ AU = ..
.
λn
es la descomposición de Schur dada en teorema V.1.7.
V.2 Determinación de Valores Propios 235
por consiguiente
0
α2
v = U α, con α =
... ;
αn
de donde f (v) = AU α.
Ahora bien, si U es la matriz unitaria de la descomposición de Schur de
A, se tiene
λ1 r12 · · · r1n
..
. ∗
f (v) = U .. U U α,
.
λn
como U α = v, se tiene después de una simple verificación que
λ1 0 0
λ2 r22 · · · r2n ∗
f (v) = U
.. U v.
.
λn
lim rj = u2 ;
j→∞
236 V Cálculo de Valores Propios
(j)
lim λ2 = λ2 ,
j→∞
lim rj = u2 ,
j→∞
1 0
de donde planteando U0 = (q0 , r0 ) con = U0∗ U0 , el algoritmo de la
0 1
potencia generalizada, se expresa de manera matricial como
El Método QR
Al finalizar la última subsección, se dio una generalización del método de la
potencia. Por razones de presentación, se verá en esta sección un algoritmo
equivalente a este último, conocido como el método QR.
La versión simple del algoritmo QR es aplicable a matrices, cuyos valores
propios son reales y diferentes en valor absoluto, se lo define recursivamente
de la siguiente manera:
A1 = A = Q1 R1 ,
(V.2.24)
Aj+1 = Rj Qj = Qj+1 Rj+1 ,
donde Qj es una matriz ortogonal, y R es una matriz triangular superior. De
donde, este algoritmo es equivalente al método de la potencia generalizada.
En efecto, planteando
Uj = Q1 · · · Qj ,
se tiene
Uj+1 Rj+1 = Q1 Q2 · · · Qj Qj+1 Rj+1 ,
| {z }
Rj Qj
llegando finalmente a
Uj+1 Rj+1 = Q1 R1 Q1 Q2 · · · Qj .
| {z } | {z }
A Uj
Por otro lado, las matrices Aj+1 y Aj tienen los mismos valores propios, pues
Aj+1 = Q∗j Aj Qj
es decir j !
(j) λn
an,n−1 =O . (V.2.26)
λn−1
A − pI, (V.2.27)
A1 = A,
Qj Rj = Aj − pj I, (V.2.29)
Aj+1 = Rj Qj + pj I.
(k)
que es más próximo al coeficiente an,n .
Una interrogante muy importante surge, cuando detener el algoritmo
QR. Uno de los criterios más usados es el siguiente. Si
(k) (k) (k)
an,n−1 ≤ eps ann + an−1,n−1 , (V.2.30)
se plantea
(k)
λn = ann . (V.2.31)
Luego se continua con la matriz A(k) de dimension n − 1 resultante, hasta
obtener todos los valores propios de la matriz A.
La experiencia númerica muestra que el algoritmo QR converge lineal-
mente, mientras que el algoritmo QR con shift tiene convergencia cuadrática.
Ejemplos
1.- Considérese, la matriz A definida por
10 7 6
A = 0.1 5 3
0 0.1 1
matriz de tipo Hessenberg. Por lo tanto lista, para ser aplicado el método
QR y el método QR con shift. A continuación, se mostrará las iteraciones
resultantes del método QR sin shift
Ejercicios
1.- Calcular los valores propios y vectores propios de
2 1
1 2 12
A= ,
0 1 2 1
1 2
utilizando el método de la potencia inversa de Wielandt.
2.- Sea √ √ √
88 − 7 6 296 − 169 6 −2 + 3 6
360 √ 1800√ 225 √
−2 − 3 6
A = 296 + 169 6 88 + 7 6 .
1800
√ 360√ 225
16 − 6 16 + 6 1
36 36 9
Calcular α, β, λ y una matriz T a coeficientes reales, tal que
α β 0
T −1 = −β α 0 .
0 0 λ
La matriz A define un método de Runge-Kutta.
3.- Sea A una matriz de orden s que es diagonalizable, y sea J una matriz
de orden n. Se define el producto tensorial A ⊗ J por
a11 J · · · a1s J
. ..
A ⊗ J = .. . .
as1 J · · · ass J
242 V Cálculo de Valores Propios
b) Supóngase que
λ1
T −1 AT = Λ = ..
.
λs
y utilizar la descomposición
Xn Z b
xi−1 + xi
f (xi − xi−1 ) ≈ f (x)dx.
i=1
2 a
x0 x1 x2 x3 xn-1 xn
Figura VI.1.1. Regla del Punto Medio.
n
X Z b
f (xi−1 ) + f (xi )
(xi − xi−1 ) ≈ f (x)dx,
i=1
2 a
Z b
x 1 − x0 x2 − x0
f (x)dx ≈ f (x0 ) + f (x1 ) + ···
a 2 2
xn − xn−2 xn − xn−1
· · · + f (xn−1 ) + f (xn ) .
2 2
VI.1 Bases Teóricas 247
x0 x1 x2 x3 xn-1 xn
Figura VI.1.2. Regla del Trapecio.
c) Regla de Simpson
Consiste en aproximar f (ξi )(xi−1 − xi ), con el area de la superficie cuyo
lado superior, ver figura VI.1.3, esta dada por la parábola que pasa por
x +x x +x
los puntos (xi−1 , f (xi−1 ), ( i−12 i , f ( i−12 i )) y (xi , f (xi )). Para
simplificar los cálculos se toma para x0 , y x1 , obteniendo como polinomio
de interpolación
Z b n
X
1 4 hi 1
f (x)dx ≈ f (xi−1 ) + f xi−1 + + f (xi ) hi .
a i=1
6 6 2 6
inferior a 3.
x0 x1
Figura VI.1.3. Regla de Simpson.
d) Regla de Newton
Consiste en aproximar f (ξi )(xi−1 − xi ), con el area de la superficie cuyo
lado superior, ver figura VI.1.4, esta dada por la parábola cúbica que
2x + xi 2x + xi
pasa por los puntos (xi−1 , f (xi−1 ), ( i−13 , f ( i−13 )),
xi−1 + 2xi xi−1 + 2xi
( 3 , f( 3 )) y (xi , f (xi )). De la misma manera que en la
regla de Simpson, se calcula esta parábola cúbica utilizando por ejemplo
la fórmula de Newton para determinar polinomios de interpolación,
luego se integra para obtener
Z x1
1 3 h1 3 2h1 1
f (x)dx ≈ f (x0 )+ f x0 + + f x0 + + f (x1 ) h1 .
x0 8 8 3 8 3 8
x0 x1
Figura VI.1.4. Regla de Newton.
Fórmulas de Cuadratura
VI.1 Bases Teóricas 249
ci = 1 − cs+1−i ,
i = 1, . . . , s. (IV.1.3)
bi = bs+1−i ,
c1 c2 cs 1
0
X s
1 ck−1
Pk (0) = − bi i
k! i=1 (k − 1)!
" s
#
1 1 X k−1
= − bi c .
(k − 1)! k i=1 i
Ejemplo
La regla de Simpson es una fórmula de cuadratura, dada por
c1 = 0, c2 = 1/2, c3 = 1;
b1 = 1, /6 b2 = 4, /6 b3 = 1/6.
.6 .1
P2
P1
.4
.2
.0 .0
.0 .5 1.0 .0 .5 1.0
−.2
−.4
−.6 −.1
.01
P3 .004 P4
.003
.002
.001
.00 .000
.0 .5 1.0 .0 .5 1.0
−.001
−.002
−.003
−.004
−.01
VI.1 Bases Teóricas 255
donde h = max hi .
Demostración.- Se tiene
Z b n
" s #
X X
f (x)dx − hj bi f (xj−1 + ci hj ) =
a j=1 i=1
n
"Z s
#
X xj X
= f (x)dx − hj bi f (xj−1 + ci hj )
j=1 xj−1 i=1
Z 1
≤ hk+1
j |Pk (τ )| dτ max f (k) (x) ,
0 x∈[a,b]
n
X n
X
hk+1
j = hj hkj ≤ (b − a)hk .
i=1 i=1
256 VI Integración Numérica
Z b n
X s
X
f (x)dx = h bi f (xj−1 + ci h) + Chp + O(hp+1 ), (VI.1.8)
a j=1 i=1
C′
fe = ,
h
106
fe
105
104
103
102
101
err glob
100 0
10 10−1 10−2 10−3 10−4 10−5 10−6 10−7 10−8 10−9 10−10
Metodo de Euler
Metodo de Runge
Metodo de Heun
Metodo de Kutta
Metodo 3/8
Figura VI.1.7. Gráfica del Error vs fe.
Ejercicios
1.- Calcular el orden de la regla de Newton:
1 2 1 3 3 1
(ci ) = (0, , , 1), (bi ) = ( , , , ).
3 3 8 8 8 8
2.- Sean 0 ≤ c1 < c2 < · · · < cs ≤ 1 dados. Mostrar que existe una fórmula
de cuadratura única con nudos ci y con un orden ≥ s.
258 VI Integración Numérica
donde los ci son los nudos de la fórmula de cuadratura estudiada. Sea f (x)
un polinomio de grado ≤ s + m − 1, por la división con resto se tiene que
Ejemplo
El ejercicio 4 de la sección precedente demanda la construcción de una
fórmula de cuadratura del orden más elevado posible. En consecuencia,
se define
M (x) = (x − c1 )(x − c2 ).
Polinomios Ortogonales
Uno de los mayores inconvenientes en la construcción de fórmulas de
cuadratura de orden elevado utilizando el teorema VI.2.1, consiste en el hecho
siguiente: se deben resolver sistemas de ecuaciones no lineales para determi-
nar los nudos de la fórmula de cuadratura. Está claro que para fórmulas de
cuadratura con una cantidad no muy grande de nudos esto es posible, sin
embargo para s ya más grande esto presenta una desventaja. En esta sub-
sección se estudiarán polinomios ortogonales, cuyas raices son precisamente
los nudos.
260 VI Integración Numérica
hf, f i = 0 ⇐⇒ f = 0.
hf, gi = 0. (VI.2.5)
deg pj = j;
hpk , qi = 0, ∀q polinomio de grado ≤ k − 1.
Si se supone que pk (x) = xk + r(x) con deg r(x) ≤ k − 1, los polinomios son
únicos.
VI.2 Cuadraturas de Orden Elevado 261
donde
hxpk , pk i 2 hpk , pk i
δk+1 = , γk+1 = . (VI.2.6c)
hpk , pk i hpk−1 , pk−1 i
k
X
pk+1 (x) = xpk (x) + cj pj (x),
j=0
= hxpk , pk i + ck hpk , pk i,
de donde
hxpk , pk i
ck = − .
hpk , pk i
Por otro lado, aplicando nuevamente el producto escalar se tiene
0 = hpk+1 , pk−1 i
k
X
= hxpk , pk−1 i + cj hpj , pk−1 i
j=0
1 dk
pk (x) = Ck k
ω(x)(x − a)k (b − x)k . (VI.2.7)
ω(x) dx
de donde
(−1)k
Ck = ,
2k k!
264 VI Integración Numérica
por lo tanto
(−1)k dk
Pk (x) = k k
(1 − x2 )k . (VI.2.8)
2 k! dx
Los polinomios de Legendre pueden ser calculados mediante la fórmula
de Rodriguez, o mediante una relación recursiva, ver ejercicio 1. En la tabla
VI.2.2, se da los cuatro primeros polinomios de Legendre.
k Pk (x)
0 1
1 x
3 2 1
2 x −
2 2
5 3 3
3 x − x
2 2
Por otro lado, debe observarse que los coeficientes de una fórmula de
cuadratura de Gauss son extrictamente positivos, en efecto, se define
Ys
x − cj
li (x) =
j=1
c i − cj
j6=i
Ps (x)
lim C = CPs′ (xi ) = 1,
x→xi x − xi
Además,
s
X Z 1 2
1 Ps (x)
bi = bj li (cj ) = dx, (VI.2.13)
j=1
2 −1 (x − xi )Ps′ (xi )
s c1 c2 c3 b1 b2 b3
1
1 1
2
√ √
1 3 1 3 1 1
2 − +
2 6 2 6 2 2
√ √
1 15 1 1 15 5 8 5
3 − +
2 10 2 2 10 18 18 18
Ejercicios
1.- Para los polinomios de Legendre, demostrar que:
(k + 1)Pk+1 (x) = (2k + 1)xPk (x) − kPk−1 (x);
(1 − x2 )Pk′ (x) = −kxPk (x) + kPk−1 (x).
268 VI Integración Numérica
Verificar que:
T0 (x) = 1; T1 (x) = x;
Tk+1 (x) = 2xTk (x) − Tk−1 (x);
Z 1
1
p Tk (x)Tj (x), para i 6= j.
−1 1 − x2
3.- Calcular las raices de P8 (x) con un método iterativo, como por ejemplo
el método de la bisección.
4.- Mostrar que el nucleo de Peano Pk (t) de una fórmula de cuadratura
satisface Z 1 s
1 X
Pk (t)dt = − bi ck .
0 k + 1 i=1 i
n
X Z b
|E(f, xj , xj+1 )| ≤ TOL |f (x)| dx.
j=0 a
270 VI Integración Numérica
Algoritmo
— Calcular: res[a,b] , resabs[a,b] y err[a,b] .
err[a,b] ≤ TOL resabs[a,b] : si es cierto se ha terminado, si no continuar
el siguiente paso.
a+b
— Plantear c = c = y calcular:
2
res[a,c] , err[a,c] , resabs[a,c] ,
res[c,b] , err[c,b] , resabs[c,b] ;
err[a,c] + err[c,b] ≤ TOL resabs[a,c] + resabs[c,b] : si es cierto se ha
terminado, si no dividir el subintervalo con error maximal y continuar
con el siguiente paso.
— Continuar hasta que
X X
err[aj ,cj ] ≤ TOL resabs[aj ,cj ] .
es decir
{ĉ1 , . . . , ĉŝ } = {c1 , . . . , cs } ∪ {cs+1 , . . . , cs+m } ,
con s + m = ŝ. Sin embargo m debe ser más grande que s, si la fórmula de
cuadratura (ci , bi ) es una de tipo Gauss; en efecto, si m ≤ s, se tiene:
s+m
X 1
b̂i cij−1 = , j = 1, . . . , s + m;
i=1
j
Xs
1
bi cij−1 = , j = 1, . . . , 2s;
i=1
j
√
x [0, 1/2] 0, 98 × 10−5 0.14 × 10−8
Tratamiento de singularidades
Los métodos desarrollados en la anterior subsección, tal como se puede
observar en la tabla precedente, son utilizables para funciones lo suficiente-
mente derivables. Por lo tanto, no son muy eficientes para resolver integrales
definidas de funciones no muy lisas, además existen integrales impropias cuyo
cálculo es frecuente en diversas aplicaciones, como por ejemplo integrales de
los tipos:
Z 1 Z 1
f (x)
√ dx, (log x)f (x)dx.
0 x 0
Ejemplo
Considérese, la función
4x log x
f (x) = − ,
x4 + 100
R1
se desea calcular 0 f (x)dx. Esta integral es impropia, no obstante que
una fórmula de cuadratura de tipo Gauss proporciona resultados que
se aproximan al valor exacto de esta integral. Esto se debe a que los
nudos de la fórmula utilizada son diferentes de 0 y que la función f (x)
es singular en x = 0. Ahora bien, el error exacto al integrar sobre el
intervalo [0, 1] es del orden de 0.18 × 10−4 , el cual está cerca del 5% del
274 VI Integración Numérica
∆Sn+1 = ρ∆Sn ,
por consiguiente
∆Sn+1
ρ= . (VI.3.13)
∆Sn
Despejando S de la segunda ecuación de (VI.3.12), se tiene
1
S =Sn+1 − ∆Sn+1
ρ−1
∆Sn ∆Sn+1
=Sn+1 − ,
∆Sn+1 − ∆Sn
obteniendo ası́
∆Sn ∆Sn+1
Sn′ = Sn+1 − . (VI.3.14)
∆2 Sn
276 VI Integración Numérica
S n − S = C 1 ρ1 + C 2 ρ2 + · · · C k ρk , (VI.3.15)
Este resultado constituye una joya desde el punto de vista teórico, pero es una
catástrofe, si se quiere implementar numéricamente, las razones son obvias.
Por lo tanto es necesario construir un algoritmo que permita determinar
S (k) , sin necesidad de calcular explı́citamente los determinantes encontrados
en la última expresión. El método que será explicado constituye el algoritmo
epsilon o más simplemente ǫ-algoritmo.
Algoritmo Epsilon
El siguiente teorema formulado por Wynn en 1956, permite calcular S (k) .
(n)
Teorema VI.3.1.- Dados S0 , S1 , S2 , . . . , se define la sucesión ǫk k =
−1, 0, . . . ; n = 0, 1, . . . , de manera recursiva, como
(n)
ǫ−1 = 0,
(n)
ǫ0 = Sn , (VI.3.21)
(n) (n+1) 1
ǫk+1 = ǫk−1 + (n+1) (n)
;
ǫk − ǫk
entonces
(n) (n) (n)
ǫ2 = Sn′ , ǫ4 = Sn′′ , ǫ6 = Sn(3) , . . . (VI.3.22)
ǫ(0)
−1
ǫ(0)
0
ց
ǫ(1)
−1 −−−−−−→ ǫ(0)1
ր ց
ǫ0 −−−−−−→ ǫ(0)
(1)
2
(2) ց (1) ր ց
ǫ−1 −−−−−−→ ǫ1 −−−−−−→ ǫ(0) 3
ր ց ր ց
ǫ(2)
0 2 −
−−−−−−→ ǫ(1) −−−−−→ ǫ(0)
4
100
k=0
10−2
k=2
10−4
10−6 k=4
10−8 k=6
10−10
k=8
10−12
k=10
10−14
10−16
10−18
k=24 k=22
10−20
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
(n)
Figura VI.3.4. Error de ǫk en función de n.
Planteando Z xk+1
Ik = sin(x2 )dx, k = 0, 1, 2, . . . ;
xk
donde Ik pueden ser calculadas por GAUINT se define la sucesión {Sk }, por
k
X
Sk = Ij ,
j=0
Ejercicios
1.- Para una sucesión {Sn }n≥0 , el ǫ-algoritmo está definido por:
(n)
ǫ−1 = 0,
(n)
ǫ0 = Sn ,
(n) (n+1) 1
ǫk+1 = ǫk−1 + (n+1) (n)
.
ǫk − ǫk
Sn+1 − S = (ρ + αn )(Sn − S)
∆Sn ∆Sn+1
Sn′ = Sn+1 − , n = 0, 1, . . . .
∆2 Sn
Sn′ − S
lim = 0.
n→∞ Sn − S
hϕk , ϕj i = 0, si j 6= k.
Se la denota z = FN y.
Proposición VI.4.4.- La transformada discreta de Fourier satisface las
siguientes propiedades:
a) Para y ∈ PN , se tiene que FN y ∈ PN .
b) La aplicación Fn : PN → PN es lineal y biyectiva.
c) La aplicación inversa de FN está dada por
−1
FN = N · F̄N , (VI.4.9)
donde
N −1
1 X
(F̄N z)k := (FN z̄)k = zl ω kl . (VI.4.10)
N
l=0
N
X −1 N
X −1
km m k N si m = 0modN
ω = (ω ) = ω mN −1
ω m −1 =0 si no.
k=0 k=0
2πl
yl = f (xl ), xl = , l = 0, 1, . . . , N ;
N
N −1
! N −1
!
1 X X ˆ X 1 X
fˆN (k) = f (n)einxl ω −kl
= fˆ(n) ω (n−k)l
N N
l=0 n∈Z n∈Z l=0
| {z }
1 si n = k((mod)N
=
0 si no
X
= fˆ(k + jN )
j∈Z
N
fˆN (k) − fˆ(k) = O(N −p ), para |k| ≤ . (VI.4.12)
2
288 VI Integración Numérica
lo que significa que, para funciones lisas y periódicas, la fórmula del trapecio
es muy precisa.
Demostración.- Se mostrará primero que los coeficientes de Fourier satis-
facen
ˆ
f (k) ≤ C.k−p . (VI.4.14)
Interpolación Trigonométrica
Para la división equidistante (VI.4.6) del intervalo [0, 2π] y para
y0 , y1 , . . . , yN −1 dados, se busca un polinomio trigonométrico, es decir una
VI.4 Transformación de Fourier 289
combinación lineal finita de funciones eikx , que pase por (xl , yl ), para
l = 0, 1, . . . , N − 1. La existencia de tal polinomio trigonométrico está
asegurada por el siguiente:
Teorema VI.4.7.- Sea y ∈ PN y z = FN y su transformada discreta de
Fourier. Entonces, el polinomio trigonométrico
′
1
N/2
X X
pN (x) = zk eikx := z−N/2 e−iN x/2 + zN/2 eiN x/2 + zk eikx ,
2
k=−N/2 |k|<N/2
(VI.4.15)
satisface pn (xl ) = yl para l = 0, 1, . . . , N − 1.
Hay que remarcar que si los yk son reales, {zk } es una sucesión hermı́tica,
es decir z−k = z̄k y por lo tanto el polinomio pN (x) es un polinomio a
coeficientes reales.
Demostración.- Para l fijo, la sucesión {zk eikxl } es N -periódica, por
consiguiente
N
X −1
pN (xl ) = zk eikxl = N · (F̄N z)l = N (F̄N FN y)l = yl .
k=0
N/2
X X
pN (x) − f (x) = ′
fˆN (k) − fˆ(k) eikx − ′
fˆ(k)eikx .
k=−N/2 |k|≥N/2
2
Demostración.- Utilizando el hecho que ω2N = ωN , un cálculo directo da
para k arbitrario
2N
X −1
2N (F2N y)k = yj e−2πijk/2n
j=0
2N
X −1
−jk
= yj ω2N
j=0
N
X −1 N
X −1
−2lk −(2l+1)k
= y2l ω2N + y2l+1 ω2N
|{z} | {z } | {z } | {z }
l=0 ul −lk
l=0 vl −k −lk
ωN ω2N ···ωN
−k
= N (FN u)k + ω2N N (FN v)k.
VI.4 Transformación de Fourier 291
−N
La segunda fórmula de (VI.4.18) resulta de ω2N = −1.
La fórmula (VI.4.18) permite calcular, con N multiplicaciones y 2N
adiciones, la transformada discreta de Fourier de y ∈ P2N a partir de FN u
y FN v. El mismo procedimiento puede ser aplicado recursivamente a las
sucesiones u y v, si éstas tienen una longitud par.
Si se supone que N = 2m , se obtiene el algoritmo presentado en el
esquema siguiente (para N = 8 = 23 ).
* FN/8 y0 = y0
y0
FN/4
y4
FN/8 y4 = y4
y0 *
y2 * FN/8 y2 = y2
FN/2
y4 y2
y0 FN/4
y6 y6
y1 FN/8 y6 = y6
y2 *
y
FN 3 (VI.4.19)
y4
* FN/8 y1 = y1
y5 y1
FN/4
y6 y5
FN/8 y5 = y5
y7 y1 *
y3 * FN/8 y3 = y3
FN/2
y5 y3
FN/4
y7 y7
FN/8 y7 = y7
0=(0, 0, 0) 0=(0,0,0)
1=(0, 0, 1) 4=(1,0,0)
2=(0, 1, 0) 2=(0,1,0)
3=(0, 1, 1) ←→ 6=(1,1,0
4=(1, 0, 0) 1=(0,0,1)
5=(1, 0, 1) 5=(1,0,1)
6=(1, 1, 0) 3=(0,1,1)
7=(1, 1, 1) 7=(1,1,1)
Después, se efectua las operaciones de (VI.4.18) de la manera como indica
el esquema (VI.4.19).
292 VI Integración Numérica
N N2 N log2 N cociente
25 = 32 ≈ 103 160 ≈ 6.4
10 3 6 4
2 ≈ 10 ≈ 10 ≈ 10 100
20 6 12 7
2 ≈ 10 ≈ 10 ≈ 2 · 10 5· ≈ 104
Aplicaciones de la FFT
La transformada rápida de Fourier, tiene una gran cantidad de aplicaciones,
desde el cálculo de espectrogramas, resolución de ecuaciones diferenciales
ordinarias o a derivadas parciales, hasta la solución de sistemas lineales.
Definiendo el producto de convolución de dos sucesiones N -periódicas
y ∈ PN y z ∈ Pn , por
NX−1
(y ∗ z)k = yk−l zl . (VI.4.20)
l=0
FN (y ∗ z) = N · FN y · FN z, (VI.4.21)
Ejercicios
1.- Mostrar que
Fn (y ∗ z) = N · FN y · FN z,
para el producto de convolución
N
X −1
(y ∗ z)k = yk−l zl ,
l=0
graficar la solución.
Capı́tulo VII
Ecuaciones Diferenciales
de donde planteando
se tiene
z ′ (t) = F (t, z(t)). (VII.1.5)
La condición de Cauchy para el problema (VII.1.5) está dada por
y(t0 ), y ′ (t0 ), . . . , y (p−1) (t0 ).
Ahora bien, en este capı́tulo no será tratado el problema diferencial
general de orden p, dado por
Demostración.- Se tiene:
Z x
y(x) − v(x) = y(x0 ) − v(x0 ) + (y ′ (s) − v ′ (s))ds
x0
Z x
= y(x0 ) − v(x0 ) + (f (s, y(s)) − f (s, v(s)) + f (s, v(s)) − v ′ (s)) ds,
x0
VII.1 Generalidades 299
Planteando
Z x
u(x) = ky0 − v(x0 )k + (L ky(s) − v(s)k + δ) ds,
x0
se deduce
u′ (x) = L ky(x) − v(x)k + δ ≤ Lu(x) + δ,
de esta manera se obtiene la desigualdad diferencial
u′ (x) ≤ Lu(x) + δ
(VII.1.11)
u(x0 ) = ky0 − v(x0 )k .
1
wn′ (x) = Lwn (x) + δ, wn (x0 ) = u(x0 ) + , (VII.1.12)
n
cuyas soluciones están dadas por:
δ L(x−x0 )
wn (x) = wn (x0 )eL(x−x0 ) + e − 1) .
L
El siguiente paso en la demostración es mostrar que
por lo tanto
w(x0 ) ≤ u(x0 ),
llegando a una contradicción con −1/n ≥ 0.
donde f : R × Rn → Rn .
Un problema diferencial con valores en la frontera es darse una ecuación
diferencial del tipo (VII.1.14) con n condiciones para y(a) y y(b), donde
a, b ∈ R. Existe una gama de problemas diferenciales con valores en la
frontera. A continuación se mostrará los ejemplos más representativos.
Ejemplos
a) Problemas a valores iniciales. Son de la forma
y ′ = f (x, y),
y(x0 ) = y0 .
y(a) = A,
y ′′ = y;
y(b) = B.
y(x) = y(x + T ).
y ′ = f (x, y, λ),
y(0) = A,
y ′′ = f (x, y, y ′ ); y(l) = B,
y ′ (l) = 0;
y ′ = f (x, y),
(VII.1.15)
r(y(a), y(b)),
302 VII Ecuaciones Diferenciales
donde f : R × Rn → R y r : Rn × Rn → Rn .
Por consiguiente la función r en los diferentes ejemplos, será igual a:
y(x, a, ya ) (VII.1.16)
∂r ∂r ∂y
F ′ (ya ) = (ya , y(b, a, ya )) + (ya , y(b, a, ya )) (b, a, ya ). (VII.1.20)
∂ya ∂yb ∂ya
y ′ = A(x)y (VII.1.22)
∂y
(x, x0 , y0 ) = f (x, y(x, x0 , y0 )) (VII.1.25)
∂x
suponiendo que ∂y/∂y0 existe y el orden de derivación conmuta, se obtiene
∂ ∂y ∂f ∂y
(x, x0 , y0 ) = (x, y(x, x0 , y0 )) (x, x0 , y0 )
∂x ∂y0 ∂y ∂y0
con
∂y
(x0 , x0 , y0 ) = I,
∂y0
∂y
de donde (x, x0 , y0 ) es la resolvente de la ecuación diferencial lineal
∂y0
∂f
Ψ′ = (x, y(x, x0 , y0 ))Ψ. (VII.1.26)
∂y
Shooting Simple
Retomando el problema con valores en la frontera formulado bajo la forma
de las ecuaciones (VII.1.18) y (VII.1.19) puede ser resuelto utilizando el
método conocido como shooting simple, que en sı́ntesis es utilizar un método
304 VII Ecuaciones Diferenciales
númerico para resolver (VII.1.19). Este método puede ser Newton u otro
método numérico adaptado al problema. Sin pretender dar una teorı́a que
justifique tal método, para tal efecto referirse a Stoer, se mostrará este
método implementado en ejemplos.
Ejemplos
a) Considérese el problema con valores en la frontera dado por:
y ′′ = −ey ,
y(0) = 1, (VII.1.27)
1
y(1) = .
2
Utilizando la notación de la subsección precedente, se plantea
y(x, α),
la solución del problema diferencial a valores iniciales
y ′′ = −ey ,
y(0) = 1, (VII.1.27b)
y ′ (0) = α.
El problema (VII.1.27) se traduce en encontrar α, tal que
1
y(1, α) = .
2
En la figura VII.1.1, puede observarse en la gráfica los valores de y(1) en
función de α.
2 y(1)
0
0 2 4 6 8 10
α
−1
α = 0.9708369956661049,
α = 7.93719815816973.
5 5
4 4
3 3
2 2
1 1
0 0
0 1
Figura VII.1.2. Soluciones del Problema (VII.1.26).
y ′′ = (1 − y 2 )y ′ − y. (VII.1.28)
F (T + ∆T, y0 + ∆y0 ) = 0,
∂F ∂F
F (T, y0 ) + (T, y0 )∆T + (T, y0 )∆y0 = 0,
∂T ∂y0
∂y
y(T, 0, y0 ) − y0 + f (y(T, 0, y0 ))∆T + (T, 0, y0 ) − I ∆y0 = 0.
∂y0
se obtiene
∂y
(T, 0, y0 ) − I f (y(T, 0, y0 )) ∆y0 y(T, 0, y0 ) − y0
∂y0 =− .
t
f (y(T, 0, y0 )) 0 ∆T 0
(VII.1.32)
Partiendo de los valores iniciales
y1 (0) = 1.,
y2 (0) = 2.,
T = 7.;
y1 (0) = 2.00861986087296,
y2 (0) = 0.,
T = 6.66328685933633.
figura VII.1.3
0
−3 −2 −1 0 1 2 3
−1
−2
−3
Shooting Múltiple
La solución del problema con valores en la frontera
requiere que para todo punto x de la región donde está definida la solución y
se tenga una aproximación numérica de y(x). En el método shooting descrito
en la anterior subsección, solamente el valor inicial y(a) = ŷa es determinado.
En muchos problemas es suficiente conocer este valor, sin embargo en una
gran variedad de problemas con valores en la frontera conocer este valor no
es nada fiable. Para ilustrar esto, considérese la ecuación diferencial.
y ′′ − y ′ + 110y = 0, (VII.1.33)
y(0) = 1, y(10) = 1;
Suponiendo que los cálculos se hacen en doble precisión, se puede tomar por
ejemplo ǫ = 10−16 . Remplazando y0′ en (VII.1.35), se obtiene
10−15 110
y(100) ≈ e ≈ 2.8 × 1031 .
21
Otra de las dificultades mayores en la implementación del método
shooting en su versión simple, es la necesidad de contar con una buena
aproximación de ya , lo que en general no sucede. Por otra lado, los valores
que pueden tomar los ya , en muchas situaciones, están confinados a regiones
demasiado pequeñas; por ejemplo considerese el problema
y ′′ = y 3 ,
y(0) = 1, (VII.1.37)
y(100) = 2;
los valores que puede tomar y ′ (0), para que y(x) esté definida en el intervalo
[0, 100], están restringidos a un intervalo de longitudo no mayor a 10−6 . Por
este motivo puede deducirse la dificultad de implementar el método shooting
simple.
VII.1 Generalidades 309
Ejemplos
a) Considérese el problema (VII.1.37). Para su resolución se ha subdivi-
dido equidistantemente en 100 subintervalos. La solución del sistema
(VII.1.38) se la hecho utilizando el método de Newton. Las iteraciones
y las gráficas pueden apreciarse en la figura VII.1.4.
310 VII Ecuaciones Diferenciales
3
iter=0
2
0
0 20 40 60 80 100
3
iter=1
2
0
0 20 40 60 80 100
3
iter=2
2
0
0 20 40 60 80 100
3
iter=3
2
0
0 20 40 60 80 100
3
iter=4
2
0
0 20 40 60 80 100
3
iter=11
2
0
0 20 40 60 80 100
Z 10 p
y 1 + y ′2 dx −→ min,
0
Z 10
π y 2 dx = 550,
0
y(0) = 5,
y(10) = 2.5.
Planteando
p
55
L(λ, y, y ′ ) = y 1 + y ′2 − λ y 2 − ,
π
Z 10
L(λ, y, y ′ )dx → min .
0
p
d ∂ ′2 2 55
y 1 + y − λ(y − −
dx ∂y ′ π
p
∂ ′2 2 55
y 1 + y − λ(y − ) = 0.
∂y π
8 8
7 iter=0 7 iter=1
6 6
5 5
4 4
3 3
2 2
1 1
0 0
0 10 0 10
8 8
7 iter=2 7 iter=3
6 6
5 5
4 4
3 3
2 2
1 1
0 0
0 10 0 10
8 8
7 iter=4 7 iter=5
6 6
5 5
4 4
3 3
2 2
1 1
0 0
0 10 0 10
Ejercicios
1.- Resolver: p
y ′ = −x signo(y) |x|,
y ′ = exp(y) sin(x),
y ′ = (x − y + 3)2 .
Dibujar los campos de vectores.
2.- Dibujar el campo de vectores de la ecuación
p
xy ′ = x2 − y 2 + y.
VII.1 Generalidades 313
γM
r ′′ = − , r(0) = R, r ′ (0) = v0 . (VII.1.39)
r2
y ′ = y 2 + 1 − x2 . (VII.1.40)
y1
y2
y0 y3
y4
y5
y6
y(x)
x1 x2 x3 x4 x5 x6
Una pregunta muy natural, que uno puede plantearse, consiste en determinar
bajo que condiciones el método de Euler converge hacia la solución exacta
del problema diferencial de Cauchy, cuando n → ∞.
Considérese el problema
y ′ = f (x, y),
(VII.2.6)
y(x0 ) = y0 ,
Ahora bien,
entonces
kyh (x) − zh (x)k ≤ kx0 − z0 k eL(x−x0 ) . (VII.2.9)
316 VII Ecuaciones Diferenciales
y1 = y0 + h0 f (x0 , y0 ),
z1 = z0 + h0 f (x0 , z0 ),
donde h es una división con |h| < δ y ĥ una división más fina que h.
VII.2 Método de Euler 317
de donde
h i
yh (x) − y (x)
≤ ǫ (x1 − x0 )eL(x−x1 ) + · · · + (x − xk )eL(x−xk )
ĥ
Z x
eL(x−x0 ) − 1
≤ eL(x−s) ds = ǫ
x0 L
eLα − 1
≤ǫ ,
L
por consiguiente, {yh (x)} es una sucesión de Cauchy, con δ que no depende
de x. Como consecuencia inmediata, se tiene que la sucesión converge hacia
una función ϕ(x) que además es continua.
La demostración del punto b) se basa en los siguientes hechos: yh (x0 ) =
y0 implica que ϕ(x0 ) = y0 , se considera el módulo de continuidad de f ,
definido por
de donde, se tiene
D = {(x, y)|x0 ≤ x ≤ x0 + α, ky − y0 k ≤ b} ⊂ U.
318 VII Ecuaciones Diferenciales
∂f
Sobre D se tiene kf (x, y)k ≤ A,
(x, y)
≤ L,
∂f (x, y)
≤ M .
∂y
∂x
Entonces
M + AL L(x−x0 )
ky(x) − yh (x)k ≤ e − 1 |h| , (VII.2.10)
L
donde y(x) es solución de y ′ = f (x, y), y(x0 ) = y0 .
Demostración.- Remontando la demostración del teorema precedente, se
tiene
eL(x−x0 ) − 1
kyh (x) − y(x)k ≤ ǫ .
L
Puesto que f es diferenciable, se tiene
∂f 2
e∗n+1 = e∗n + hn [ (tn , yn )e∗n ] + hn µn + ̺n + O(ke∗n k ). (VII.2.13)
∂y
2
Planteando zn = hn e∗n , despreciando O(ke∗n k ) y suponiendo que hn = h
constante, se obtiene el siguiente esquema para zn , con
∂f
zn+1 = zn + h[ (tn , yn )zn ] + h(hµn + ̺n ), (VII.2.14)
∂y
VII.2 Método de Euler 319
C
kzh (t)k ≥ ∀t ∈ J, ∀h ≤ h0 .
2
Puesto que e∗n ≈ z(tn )/h, se tiene que
lim e∗n = ∞.
h→0
h
Figura VII.2.2. Error de Redondeo en el Método de Euler.
de donde
en = (λh + 1)n e0 . (VII.2.19)
Por consiguiente, el esquema (VII.2.17) será estable siempre y cuando
lim en = 0,
n→∞
situación que sucede cuando |λh + 1| < 1. Por consiguiente, para obtener un
método estable es necesario que
2
hmax = . (VII.2.20)
|λ|
y ′ = Ay, y(0) = y0 .
−1 1
−i
Ejercicios
1.- Aplicar el método de Euler al problema
y′ = y2 , y(0) = 1.
Evaluar y(1/4).
Utilizar pasos constantes, (por ejemplo h=1/6). Estimar el error con el
corolario VII.2.4. Comparar esta estimación con el error exacto.
2.- Demostrar el resultado siguiente: Si el problema
y ′ = f (x, y), y(x0 ) = y0 ,
n n
con f : U → R continua, U ⊂ ×R abierto y (x0 , y0 ) ∈ U posee una
y una sola solución sobre el intervalo I, entonces los polı́gonos de Euler
yh (x) convergen uniformemente sobre I hacia esta solución.
3.- Aplicar el método de Euler al sistema
y1′ = −y2 , y1 (0) = 1,
y2′ = y1 , y2 (0) = 0.
Utilizar pasos constantes para encontrar una aproximación de la solución
en el punto x = 0.4. Estimar el error como en el ejercicio 1 y compararla
con el error exacto. La solución exacta es y1 (x) = cos x, y2 (x) = − sin x.
VII.3 Métodos de Runge-Kutta
x0 x0 +h/2 x 0 +h
Figura VII.3.1 Método de Runge
k1 = f (x0 , y0 ),
k2 = f (x0 + c2 h, y0 + ha21 k1 ),
k3 = f (x0 + c3 h, y0 + h(a31 k1 + a32 k2 )),
.. (VII.3.6)
.
ks = f (x0 + cs h, y0 + h(as1 k1 + · · · + as,s−1 ks−1 ));
y1 = y0 + h(b1 k1 + · · · + bs ks );
326 VII Ecuaciones Diferenciales
c1 = 0
c2 a21
c3 a31 a32
.. .. .. .. (VII.3.7)
. . . .
cs as1 as2 · · · as,s−1
b1 b2 ··· bs−1 bs
Los métodos de Euler, como también los métodos de Runge y Heun están
dados en la tabla III.3.1
0
0 1/3 1/3
0 1/2 1/2 2/3 0 2/3
1 0 1 1/4 0 3/4
i−1
X
c1 = 0, ci = aij , i = 2, . . . , s. (VII.3.8)
j=1
El método de Runge está basado sobre la fórmula del punto medio que es
una fórmula de cuadratura de orden 2:
y(x0 + h) = y0 + hf (x0 + h/2, y(x0 + h/2)) + O(h3 ).
Remplazando y(x0 + h/2) por el valor y0 + (h/2)f (x0 , y0 ) del método de
Euler, se agrega un término de tamaño O(h3 ). Entonces, este método tiene
orden p = 2.
El método de Heun, ver tabla VII.3.1, se obtiene a partir de la fórmula
de cuadratura
h 2h 2h
y(x0 + h) = y0 + f (x0 , y0 ) + 3f x0 + , y(x0 + ) + O(h4 ),
4 3 3
si se remplaza y(x0 + 2h/3) por la aproximación del método de Runge. De
donde el método de Heun tiene el orden p = 3.
Utilizando la suposición (VII.3,8) que es una condición simplificadora,
se tiene la siguiente proposición.
Proposición VII.3.3.- La condición (VII.3.8) implica que es suficiente
considerar problemas autónomos de la forma y ′ = f (y) para verificar la
condición de orden.
Demostración.- Se supone que (VII.3.9) es satisfecha para los problemas
autonomos de la forma y ′ = F (y), y(x0 ) = y0 .
Considérese un problema de la forma y ′ = f (x, y), y(x0 ) = y0 , el cual es
equivalente al problema
ẏ = f (x, y), y(0) = y0 ,
ẋ = 1, x(0) = 0,
obteniendo ası́
′ x 1
Y = F (Y ), donde Y = , F (Y ) = (VII.3.10)
y f (x, y),
Ahora bien, se puede considerar (VII.3.13) como una ecuación a punto fijo,
pudiendo ası́ aproximar los ki por el método de las aproximaciones sucesivas.
Comenzando la primera aproximación de ki , se tiene
ki = f (y0 ) + O(h),
VII.3 Métodos de Runge-Kutta 329
Efectuando todavı́a una vez más una iteración, e introduciendo los valores
obtenidos en la definición (VII.3.5) de yi , se obtiene
! !
X h2 X
y1 = y0 + h bi f0 + 2 bi ci (f ′ f )0 (VII.3.14)
i
2 i
!
h3 X 2 X
+ 3 bi ci (f ′′ (f, f ))0 + 6 bi aij cj (f ′ f ′ f )0
3! i ij
!
h4 X 3 X
+ bi ci (f ′′′ (f, f, f ))0 + 8 bi ci aij cj (f ′′ (f ′ f ′ f ))0
4! i ij
X
+ 24 bi aij ajk ck (f ′ f ′ f ′ f )0 + O(h5 ),
ijk
donde el subı́ndice 0 indica que las evaluaciones deben ser hechas en el punto
y0 .
Comparando los coeficientes de (VII.3.12) y (VII.3.14), se encuentran
las condiciones que deben satisfacer los coeficientes ci , bi y aij para contar
con un método de orden 4. Estas condiciones se las enuncia en el:
Teorema VII.3.4.- Condiciones de Orden. El método de Runge-Kutta
(VII.3.6) tiene el orden 4 si los coeficientes satisfacen (VII.3.8) y
X
bi = 1, (VII.3.15a)
i
X 1
bi ci = , (VII.3.15b)
i
2
X 1
bi c2i = , (VII.3.15c)
i
3
330 VII Ecuaciones Diferenciales
X 1
bi aij = , (VII.3.15d)
ij
6
X 1
bi c3i = , (VII.3.15e)
i
4
X 1
bi ci aij cj = , (VII.3.15f )
ij
8
X 1
bi aij c2j = , (VII.3.15g)
ij
12
X 1
bi aij ajk bk = . (VII.3.15h)
24
ijk
0 0
1/2 1/2 1/3 1/3
1/2 0 1/2 2/3 −1/3 1
1 0 0 1 1 1 −1 1
1/6 2/6 2/6 1/6 1/8 3/8 3/8 1/8
Métodos Encajonados
Para resolver un problema realista, un cálculo a paso constante es en
general ineficiente. Existen diversas causas para esta ineficiencia: la primera
es que se debe conocer a priori una estimación del error local cometido,
lo cual es complicado en general ocasionando una perdida de generalidad
en los programas a implementarse. La otra razón fundamental que existen
intervalos donde los pasos de integración pueden ser de longitud mayor. El
principal problema reside en como escoger los pasos de integración. La idea
que puede resolver satisfactoriamente estos problemas consiste en escoger
pasos de integración de manera que el error local sea en todo caso inferior o
igual a T ol dado por el utilizador. Motivo por el cual es necesario conocer
una estimación del error local. Inspirados en el programa GAUINT descrito
en VI.3, se construye un método de Runge-Kutta con ŷ1 como aproximación
numérica, y se utiliza la diferencia ŷ1 − y1 como estimación del error local
del método menos preciso.
Se da un método de orden p a s pisos, con coeficientes ci , aij , bj . Se busca
un método de orden p̂ < p que utiliza las mismas evaluaciones de f , es decir
donde los ki están dados por (VII.3.3). Para tener más libertad, se agrega a
menudo un termino que contenga f (x1 , y1 ) a la fórmula (VII.3.19), de todas
maneras se debe calcular f (x1 , y1 ) para el paso siguiente, determinando ası́
ŷ1 , como
x0 := x0 + h, y0 := y1 , h := min(hopt , xend − x0 );
VII.3 Métodos de Runge-Kutta 333
si no el paso es rechazado
h := hopt .
C) Si x0 = xend se ha terminado, si no se recomienza por (A) y se calcula
el paso siguiente.
La práctica numérica muestra que es aconsejable remplazar (VII.3.23)
por
hopt = h · min 5, max(0.2, 0.9(T ol/err)1/p̂+1 .
Para la norma dada en la relación (VII.3.23), se utiliza en general
v
u n
u 1 X yi1 − ŷi1 2
ky1 − ŷ1 k = t , donde sci = 1 + max(|yi0 | , |yi1 |).
n i=1 sci
(VII.3.24)
En la literatura especializada, estos métodos encajonados con control
de paso automático, se los denota por RKpp̂ donde RK son las iniciales
de Runge-Kutta y p, p̂ son los ordenes de los métodos encajonados. En la
actualidad la utilización de tales métodos es muy común. En la tabla VII.3.4
se da el esquema del método de Dormand-Prince RK54 ; este método es
analizado minuciosamente en Hairer & Wanner.
Tabla VII.3.4. Método Dormand-Prince 5(4)
1 1
5 5
3 3 9
10 40 40
4 44 56 32
−
5 45 15 9
8 19372 25360 64448 212
− −
9 6561 2187 6561 729
9017 355 46732 49 5103
1 − −
3187 33 5247 176 18656
35 500 125 2187 11
1 0 −
384 1113 192 6784 84
35 500 125 2187 11
y1 0 − 0
384 1113 192 6784 84
5179 7571 393 92097 187 1
ŷ1 0 −
57600 16695 640 339200 2100 40
334 VII Ecuaciones Diferenciales
Soluciones Continuas
Uno de los incovenientes mayores de los métodos formulados en esta sección
consiste en el hecho que estos dan las soluciones en un conjunto discreto
de puntos. Una primera alternativa es unir estas soluciones con polı́gonos,
si los puntos donde el método ha dado las soluciones. El resultado no es
satisfactorio desde varios puntos de vista. Si el método es de orden elevado
la interpolación lineal, vista en el Capı́tulo III, tiene como efecto la perdida
de precisión. Desde el punto de vista gráfico las soluciones dejan de ser
VII.3 Métodos de Runge-Kutta 335
b1 + b2 + b3 = θ,
1 2 θ2
b2 + b3 = ,
3 3 2
1 4 θ3
b2 + b3 = ,
9 9 3
4 θ3
b3 = .
9 6
Como puede observarse es imposible que los coeficientes bi puedan
satisfacer las condiciones para obtener un método de orden 3, por lo
tanto, uno debe contentarse con obtener un método de orden 2 para θ
diferente de 1 y para θ = 1 un método de orden 3. Tomando las dos
primeras ecuaciones y planteando b2 = 0, como en el método de Heun,
3 3
se tiene para b3 = θ 2 y para b1 = θ(θ − θ). obteniendo ası́, el esquema
4 4
dado en la tabla VII.5.6.
Recursivamente, se obtiene
y(xn )
y0 En
e1
e n−1 E n−1
e
2
E1
y
x0 x1 x2 x 3 xn
Figura VII.3.2. Estimación del error global.
La desigualdad del triángulo, ası́ como (VII.3.30) da, ver la figura VII.3.3,
para la estimación de la suma
n
X n
X
ky(xn ) − yn k ≤ kEi k ≤ hp+1
i−1 e
Λ(xn −xi )
i=1 i=1
≤ Chp h0 eΛ(xn −x1 ) + · · · + hn−2 eΛ(xn −xn−1 ) + hn−1
Z xn
Chp Λ(xn −x0 )
≤ Ch p
eΛ(xn −t) dt = e −1 .
x0 Λ
Λ( x n −x)
e
x
x1 x n−1 xn
x0 x2
Figura VII.3.3. Estimación de la suma de Riemann.
338 VII Ecuaciones Diferenciales
donde
i−1
X
ki (y) = f x + ci h, y + h aij kj (y) . (VII.3.32)
j=1
Experiencias Numéricas
En esta subsección se mostrará varios ejemplos donde los métodos de Runge-
Kutta actúan. Se comparará varios métodos.
1.- Se considera la ecuación diferencial, con valor inicial,
y ′ = −y + sin x, y(0) = 1; (VII.3.35)
la solución de este problema, está dada por
3 −x 1 1
y(x) = e − cos x + sin x. (VII.3.36)
2 2 2
En la figura VII.3.4, se muestra las gráficas de diferentes métodos de
Runge-Kutta. El intervalo de integración es [0, 10]. Puede comprobarse,
que al igual que en los métodos de integración, existe una relación lineal
entre − log10 (Error Global) y el número de evaluaciones de la función,
fe. Esta relación lineal tiene una pendiente 1/p, donde p es el orden del
método.
106
fe
105
104
103
102
101
err glob
100 0
10 10−1 10−2 10−3 10−4 10−5 10−6 10−7 10−8 10−9 10−10
Metodo de Euler
Metodo de Runge
Metodo de Heun
Metodo de Kutta
Metodo 3/8
Figura VII.3.4. Relación del error global vs fe.
340 VII Ecuaciones Diferenciales
5 y2
4
1 y1
0 5 10
100
10−1
10−2
0 5 Error global 10
10−3
10−4
10−5
10−6
10−7
Ejercicios
1.- Aplicar el método de Runge al sistema
λ
y′ = y + g(x), y(0) = 0
x
con g(x) suficientemente derivable y λ ≤ 0. Mostrar que este problema
admite una y una sola solución. Las derivadas de la solución en el punto
x = 0 son −1
(j) λ
y (0) = 1 − g (j−1) (0).
j
p(t)
f n−k+1 f n−1 fn
k−1 j−1
!
X Y
p(t) = (t − xn−i ) f [xn , xn−1 , . . . , xn−j ], (VII.4.4)
j=0 i=0
∇j fn
f [xn , xn−1 , . . . , xn−j ] = , (VII.4.6)
j!hh
k−1
X
yn+1 = yn + h γj ∇j fn , (VII.4.7)
j=0
donde
Z 1 j−1
Y Z 1
1 s+j−1
γj = (i + s)ds = ds.
j! 0 0 j
i=0
j 0 1 2 3 4 5 6 7 8
1 5 3 251 95 19087 5257 1070017
γj 1
2 12 8 720 288 60480 17280 3628800
344 VII Ecuaciones Diferenciales
k
X
yn+1 = yn + h γj∗ ∇j fn+1 , (VII.4.13)
j=0
donde
Z 1 j−1
Y Z 1
1 s+j−2
γj∗ = (i + s − 1)ds = ds. (VII.4.14)
j! 0 0 j
i=0
j 0 1 2 3 4 5 6 7 8
1 1 1 19 3 863 375 33953
γj∗ 1 − − − − − − − −
2 12 24 720 160 60480 24192 3628800
Cada una de estas fórmulas representa una ecuación no lineal para yn+1 , que
es de la forma
yn+1 = ηn + hβf (xn+1 , yn+1 ). (VII.4.15)
que puede ser resuelta por el método de Newton o simplemente por el método
iterativo simple.
Métodos Predictor-Corrector
Los métodos de Adams implı́citos tienen la gran ventaja sobre la versión
explı́cita, por que las soluciones provistas son más realistas. Sin embargo la
gran dificultad de estos métodos es la resolución de (VII.4.15). En algunos
casos particulares, como en el caso de los sistemas lineales, esta resolución
346 VII Ecuaciones Diferenciales
Metodos BDF
Se ha visto que los métodos de Adams, tanto en su versión explı́cita, como
en su versión implı́cita consideran polinomios de interpolación que pasan
por los fj . Esta manera de abordar el problema de la aproximación de las
soluciones de un problema diferencial es eficaz cuando el problema diferencial
es bien condicionado, pero éstos pueden volverse muy costosos desde el
punto de vista computacional para los problemas diferenciales rı́gidos. Por
consiguiente, puede ser interesante de utilizar el método de las diferencias
retrógradas que será descrito en esta subseccion.
La idea central de los métodos BDF consiste en considerar el polinomio
q(t) de grado k, ver figura VII.4.2, definido por
k j−1
!
X Y
q(t) = (t − xn−i+1 ) y[xn+1 , xn , . . . , xn−j+1 ]. (VII.4.18)
j=0 i=0
VII.4 Métodos Multipasos 347
k j−1
!
X Y
(xn+1 − xn−i+1 ) y[xn+1 , xn , . . . , xn−j+1 ] = f (xn+1 , yn+1 ).
j=0 i=1
(VII.4.19)
yn+1
yn
q(t)
yn−k+1 yn−1
k
X 1
∇j yn+1 = hfn+1 . (VII.4.20)
j=1
j
k = 1 : yn+1 − yn = hfn+1 ;
3 1
k=2: yn+1 − 2yn + yn−1 = hfn+1 ;
2 2
11 3 1
k=3: yn+1 − 3yn + yn−1 − yn−2 = hfn+1 ;
6 2 3
25 4 1
k=4: yn+1 − 4yn + 3yn−1 − yn−2 + yn−3 = hfn+1 .
12 3 4
y(x)
yn+k−1
y n+1
yn yn+k
lo que es equivalente a
∂f
L(y, xn , h) = αk I − hβk (. . .) (y(xn+k ) − yn+k ), (VII.4.24)
∂y
VII.4 Métodos Multipasos 349
el argumento de ∂f /∂y puede ser diferente para cada linea de esta matriz,
ver el teorema del valor medio o incrementos finitos. La fórmula muestra que
el error local del método (VII.4.21) es O(hp+1 ) si y solamente si L(y, x, h) =
O(hp+1 ) para toda función y(x) que es suficientemente derivable.
Teorema VII.4.2.- Un método multipaso tiene el orden p, si y solamente
si sus coeficientes satisfacen
k
X k
X k
X
αi = 0 y αi iq = q βiq−1 para q = 1, . . . , p. (VII.4.25)
i=0 i=0 i=0
k
X X Xk X
(ih)q (ih)r
L(y, x, h) = αi y (q) (x) −h βi y (r+1) (x)
i=0
q! i=0
r!
g≥0 r≥0
k
! k k
!
X X hq X X
(q) q q−1
= y(x) αi + y (x) αi i − q βi .
i=0
q! i=0 i=0
g≥1
k
X
αi (x + ih)q − qβi (x + ih)q−1 h = 0
i=0
Estabilidad
A simple vista la relación (VII.4.25) permite formular métodos multipaso con
un número dado de pasos con un orden optimal. Sin embargo la experiencia
350 VII Ecuaciones Diferenciales
h=0.01 h=0.05
3.0
2.0
.0 .5 1.0
Figura VII.4.4. Inestabilidad del método VII.4.26.
VII.4 Métodos Multipasos 351
αk yn+k + · · · + α0 yn = 0, (VII.4.31)
Por consiguiente los métodos de Adams son estables para la definición que
acaba de ser enunciada. Por otro lado se muestra igualmente que los métodos
BDF son estables solamente para k ≤ 6.
Existe un resultado muy importante en la teorı́a de la estabilidad de los
métodos multipaso, cuya demostración escapa a los objetivos del libro. Este
resultado es conocido como la primera barrera de Dahlsquist.
Teorema VII.4.4.- Primera barrera de Dahlsquist. Para un método mul-
tipaso estable, el orden k satisface p ≤ k + 2 si k es par, p ≤ k + 1 si k es
impar y p ≤ k si el método es explı́cito.
Yn = (yn+k−1 , . . . , yn+1 , yn )t ,
y(xn )
y0 En
e1
e n−1 E n−1
e
2
E1
y
x0 x1 x2 x 3 xn
Ejercicios
1 1 1
γm + γm−1 + γm−2 + · · · + γ0 = 1.
2 3 m+1
Indicación.-Introducir la serie
∞
X Z 1
−s
G(t) = γj tj , γj = (−1)j ds
0 j
j=0
y demostrar que
Z 1
log(1 − t) 1
G(t) = (1 − t)−s ds y − G(t) = ,
0 t 1−t
k−1
X
yn+1 = yn−1 + h κj ∇j fn .
j=0
αj = −αk−j , βj = βk−j .
k
X k−1
X
αiP yn+1 = h βiP fn+1 , (P )
i=0 i=0
y un corrector de orden p
k
X k
X
αi yn+1 = h βi fn+1 . (C)
i=0 i=0
J.H Ahlberg, E.N. Nilson & J.L. Walsh (1967): The Theory of Splines
and Their Applications. Academic Press, New York. [III.2]
G. Arfken (1985): Mathematical Methods for Physicists. Academic Press,
London. [I.3], [VI.2].
V.I. Arnol’d (1992): Ordinary Differential Equations. Springer-Text-
book. [VII.1].
K.E. Atkinson (1978): An Introduction to Numerical Analysis. John
Wiley & Sons. [I], [III], [VI].
O.A Axelsson (1976): A class of iterative methods for finite element
equations. Comp. Math. in Appl. Mech. and Eng. 9. [II.4].
N. Bakhbalov (1976): Méthodes Numériques. Editions Mir, Moscou. [I],
[III], [VI].
C. de Boor (1978): A Practical Guide to Splines. Springer-Verlag, Berlin.
[III.2].
C. Brézinski (1977): Accélération de la Convergence en Analyse Numéri-
que. Lectures Notes in Mathematics, Nr. 584, Springer-Verlag. [III.3], [VI.3].
J.C Butcher (1987): The Numerical Analysis of Ordinary Differential
Equations. John Wiley & Sons. [VII].
H. Cartan (1977): Cours de Calcul Différentiel. Hermann, Paris. [IV.2],
[IV.3].
P.G Ciarlet (1982): Introduction à l’analyse numérique matricielle et à
l’optimisation. Mason, Paris. [II].
M. Crouzeix & A.L. Mignot (1984): Analyse Numérique des Equations
Differentielles. Mason, Paris. [III], [VI] , [VII].
G. Dahlquist & A. Björck (1974): Numerical Methods. Prentice-Hall. [I],
[III], [VI].
R. Dautray & J.L. Lions (1988): Mathematical Analysis and Numerical
Methods for Science and Technology, volume 2, Functional and Variational
Methods. Springer-Verlag. [VI.4].
P.J. Davis & P. Rabinowitz (1975): Methods of Numerical Integration.
Academic Press, New York. [VI].
358 Bibliografı́a
P(x) problema, 2.
arr(x) redondeo de x, 8.
eps precisión de la computadora, 8.
kk norma de vector, 25.
kk norma de matriz, 26.
1 vector 1, 29.
cond(A) condición de la matriz A, 29.
LR descomposición de Gauss, 37.
diag(r1 , r2 , . . . , rn ) matriz diagonal, 45.
D1/2 matriz raiz cuadrada, 45.
ω coeficiente de relajación, 56.
⊗ producto tensorial de matrices, 60.
kxkA norma natural, 72.
Q matriz ortogonal, 87.
A+ pseudo inversa de una matriz, 93.
y[xi0 , . . . , xik ] diferencia dividida de orden k, 107.
∇k yi diferencia finita progresiva, 109.
∇¯ k yi diferencia finita regresiva, 109.
Tn (x) polinomio de Chebichef, 113.
li (x) polinomio de Lagrange, 116.
Λn constante de Lebesgue, 116.
fx′ aplicación derivada, 168.
ρ(A) radio espectral, 171.
ker nucleo de una aplicación lineal, 214.
χA (λ) polinomio caracterı́stico, 214.
A∗ matriz adjunta, 215.
U matriz unitaria, 215.
Pk (τ ) nucleo de Peano de orden k, 251.
Pk (x) polinomio de Legendre, 262.
FN transformada discreta de Fourier, 286.
y∗k producto de convolución, 292.
Indice Alfábetico
ecuaciones factorización,
con derivadas parciales, 59 incompleta de Cholesky, 77
cuadráticas, 152 fenómeno de Runge, 124
cúbicas, 153 FFT, 290
de grado cuarto, 154 Fibonacci, busqueda, 129
diferenciales, 296 formas tridiagonales, 227
Euler-Lagrange, 310 fórmula
no resolubles por radicales, 155 de Cardano, 154
resolubles por radicales, 152 de Newton, 107
eficiencia, 3 de Nyström, 354
ǫ-algoritmo, 278 de Rodrı́guez, 262
error fórmula de cuadratura, 248
de aproximación, 5 error, 250
de la aproximación spline, 136 Gauss,
de interpolación, 111 264–266
del método, 5 orden, 249
de truncación, 4 orden elevado, 259
fórmula de cuadratura, 250 simétrica, 249
extrapolación, 149 Fourier
método gradiente, 68 error, 287
método gradiente condicionado, 72 serie de, 284
método Gauss-Newton, 205, transformada, 284
método Multipaso, 346 transformada discreta, 286
método Newton, 176 transformada rápida, 290
transformada discreta de Fourier, funcion
287 integrable, 244
errores de redondeo, 115 modelo, 83
estabilidad ortogonal, 260
algoritmo de Gauss, 41,42,43 peso, 259
backward analysis, 13 funciones con oscilaciones, 281
forward analysis, 12
método de Euler, 319 Galois, teorema, 155
método de Euler explı́cito, 322 GAUINT, 272
método multipaso, 348 Gauss,
numéricamente estable, 12 algoritmo de eliminación, 36, 37
Euler fórmulas de cuadratura,
efecto de los errores de redondeo, 264–266
317 convergencia Gauss-Newton, 204
estabilidad, 319 método Gauss-Newton, 203
método, 313 Gerschgorin, teorema, 156, 232
método implı́cito, 321 grado de aproximación, 120
polı́gono, 313 grafo dirigido, 49
extrapolación
polinomial, 145 Hermite, 104, 138
tablero, 147 Heun, 325
error, 149
Indice Alfábetico 365
ω optimal, 58
Sturm, 159
sucesiones
armónica, 148
Bulirsch, 148
Romberg, 148
Sturm, 159
Sylvester, 232
tablero de extrapolación, 147
teorema
Cauchy-Lipschitz, 297, 315
Chebichef, 74
Dirichlet, 285
del Muestreo, 289
Fundamental del Algebra, 152
Galois, 155
Gerschgorin, 156, 232
Jordan, 219
Newton-Kantorovich, 185
Newton-Misovski, 179
Pearson, 99
Perron-Frobenius, 52
punto fijo, 169
Schur, 215
Sylvester, 232
Weirstrass, 124
Wilkinson, 42
Wynn, 278
transformada
discreta de Fourier, 286
rápida de Fourier, 290
valor absoluto de un vector, 26
valor propio, 215
valores singulares, 94
Van der Pol, 305
vector propio, 215
Weirstrass, 124
Wilkinson, 42
Wynn, 278
368 Indice Alfábetico