(Informatica)/0809/Thmni01.fig.10.eps

Transcripción

(Informatica)/0809/Thmni01.fig.10.eps
Mètodes Numèrics.
El curso está dividido en dos apartados. En el primero de ellos se introducen los elemento
básicos del estudio de funciones en varias variables. En la segunda parte se presentan métodos
para resolver problemas propios del análisis en una y varias variables de forma efectiva.
1
1.1
Cálculo diferencial e integral en varias variables
La geometrı́a de Rn
Todo el análisis, tanto el de una como el de varias variables, está basado en la noción de distancia
entre los elementos del conjunto Rn . A partir del concepto de distancia se pueden introducir
el de lı́mite y de aquı́ el de continuidad y diferenciabilidad. En este apartado establecemos las
bases para llegar a una definición de distancia rigurosa.
Los elementos p del plano R2 se representan mediante un par ordenado de números reales
(a, b) que se denominan las coordenadas reales de p. A su vez, los elementos p del espacio R3 se
representan por una tupla de tres elementos (a, b, c) denominados las coordenadas de p.
De forma general, los elementos p del conjunto Rn se denominan vectores y se representan
mediante n–tuplas (p1 , p2 , . . . , pn ) de n números reales (coordenadas). Concretamente
Rn = {(p1 , p2 , . . . , pn ) : pi ∈ R}.
En el conjunto Rn podemos definir las siguientes operaciones.
• Suma. Dados dos vectores p = (p1 , p2 , . . . , pn ) y q = (q1 , q2 , . . . , qn ) de Rn llamamos suma
de p y q y la denotamos por p + q al vector (p1 + q1 , p2 + q2 , . . . , pn + qn ) de Rn .
• Producto externo. Dados un vector p = (p1 , p2 , . . . , pn ) de Rn y un número real α llamamos
producto externo de α y p y lo denotamos por αp al vector (αp1 , αp2 , . . . , αpn ).
• Producto escalar. Dados dos vectores p = (p1 , p2 , . . . , pn ) y q = (q1 , q2 , . . . , qn ) de Rn
llamamos producto escalar de p y q y la denotamos por < p, q >, al número real p1 q1 +
p2 q 2 + . . . + pn q n .
Ejercicio 1 Dado un vector p de Rn , definimos el vector −p como el producto externo (−1)p.
Demostrar que p + (−p) = 0, donde 0 es el vector (0, . . . , 0). Tradicionalmente se suele utilizar
la notación p − p en lugar de p + (−p).
Ejercicio 2 Demostrar que el producto escalar es conmutativo. Probar que además es distributivo con respecto de la suma, esto es < p, q >=< q, p > y < p + q, r >=< p, r > + < q, r > .
Dado un vector p = (p1 , p2 , . . . , pn ) de Rn , definimos la norma de p como
q
kpk = p21 + p22 + . . . + p2n .
La norma de p mide la distancia del punto al origen de coordenadas. Las siguientes propiedades
son satisfechas por la norma de un vector.
kpk ≥ 0 y kpk = 0 si y solo si p = 0.
Desigualdad triangular: kp + qk ≤ kpk + kqk.
Desigualdad de Cauchy-Schwarz: | < p, q > | ≤ kpkkqk.
1
Definimos la distancia entre dos elementos p y q de Rn como d(p, q) = kp − qk.
Dado un punto p de Rn y un número real r > 0 definimos la bola abierta de centro p y rádio
r como el conjunto
B(p, r) = {q ∈ Rn : d(p, q) < r}.
Ejercicio 3 Para n = 2, 3 dibujar la bola abierta de centro 0 y rádio 1.
Diremos que un conjunto S de Rn es un conjunto abierto si para todo p ∈ S existe un valor
r > 0 tal que la bola B(p, r) ⊂ Rn .
Ejercicio 4 Demostrar que el conjunto S = {(x1 , x2 ) ∈ R2 : x1 < 0} es un conjunto abierto.
Ejercicio 5 Demostrar que el conjunto S = {(x1 , x2 ) ∈ R2 : x1 + x2 < 0} es un conjunto
abierto.
1.2
Funciones de diversas variables
1.2.1
Gráficas y curvas de nivel
Sea S un subconjunto abierto de Rn y f : S → R una función que a cada punto (x1 , x2 , . . . , xn ) ∈
S asocia un valor f (x1 , x2 , . . . , xn ) ∈ R. Al conjunto S donde la función está definida se le
denomina dominio de definición de la función.
0.5
y2+x2
0.4
x/(x2+1)
0.3
0.2
50
0.1
40
30
0
20
-0.1
10
0
-0.2
6
4
-0.3
-6
2
-4
-0.4
0
-2
0
-2
2
4
-0.5
-4
-2
0
x
2
-4
6 -6
4
sqrt(-y2-x2+1)
f
10
9
8
7
6
5
4
3
2
1
0
-1 -0.8
-0.6 -0.4
-0.2
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.2 0.4
0.6 0.8
-0.2
-0.4
-0.6
-0.8
1 -1
0
0.8
0.6
0.4
0.2
1
-1 -0.8
-0.6 -0.4
-0.2
Figure 1: Solución Ejemplo 7.
Ejercicio 6 Calcular el dominio de las funciones:
• f (x) =
x
.
1+x2
• f (x, y) = x2 + y 2 .
2
0
0.2 0.4
0.6 0.8
-0.2
-0.4
-0.6
-0.8
1 -1
0
0.8
0.6
0.4
0.2
1
• f (x, y) =
1
x2 +y 2
• f (x, y) =
p
1 − (x2 + y 2 ).
Dada una función f : S ⊂ Rn → R definimos la gráfica de f como el subconjunto de Rn+1
dado por
Gr(f ) = {(x1 , x2 , . . . , xn , f (x1 , x2 , . . . , xn )) : (x1 , x2 , . . . , xn ) ∈ S}
Ejemplo 7 Dibujar las gráficas de las funciones del Ejercicio 6.
Solución: Ver Figura 1.
Notad que cuando n = 1 la gráfica de la función es una curva en R2 , y que cuando n = 2 la
gráfica es una superficie en R3 .
Dada una función f : S ⊂ Rn → R y un número real k definimos el conjunto de nivel k de f
como el subconjunto de S dado por
Ik = {(x1 , x2 , . . . , xn ) ∈ S : f (x1 , x2 , . . . , xn ) = k}
Ejercicio 8 Dada la función f (x, y) = x + y + 2, dibujar sus conjuntos de nivel.
Solución:
12
10
8
6
4
2
0
-2
-4
-6
-4
-3
-2
-1
0
1
2
3
4
5 -4
-3
-2
-1
0
1
2
3
4
5
Ejercicio 9 Dibujar los conjuntos de nivel de las funciones del Ejercicio 6.
Solución: Ver Figura 2.
Notad que para n = 2 los conjuntos de nivel son curvas y para n = 3 son superficies.
Ejercicio 10 Dibujar las curvas de nivel de las funciones:
• f (x, y) = x2 − y 2 .
• f (x, y, z) = x2 + y 2 + z 2 .
Solución: Ver Figura 3.
3
2
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
25
20
15
10
5
0
-1 -0.8
-0.6 -0.4
-0.2
0
0.2 0.4
0.6 0.8
-0.2
-0.4
-0.6
-0.8
1 -1
0
0.8
0.6
0.4
0.2
1
1
0.5
-1
0
-0.5
-0.5
0
0.5
1 -1
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
-1 -0.8
-0.6 -0.4
-0.2
0
0.2 0.4
0.6 0.8
-0.2
-0.4
-0.6
-0.8
1 -1
0
0.8
0.6
0.4
0.2
1
Figure 2: Solución del Ejercicio 10.
1.2.2
Continuidad de las funciones de dos variables
Una vez estudiada la apariencia de la función mediante su representación gráfica, pasamos a
ocuparnos de su regularidad, entendida como la brusquedad con la que varia f (x) al variar x en
su dominio. La diferente gradación en esta sensibilidad con respecto al cambio en las variables
nos lleva a los conceptos de continuidad y diferenciabilidad. Sin embargo la piedra angular
de ésta teorı́a es el concepto de lı́mite, fuertemente basado en la idea de distancia que hemos
introducido en el apartado anterior.
En lo sucesivo y para favorecer la exposición nos restringimos al caso n = 2. El caso general
se sigue de forma análoga. A los elementos de R2 los denotamos por (x, y).
Sea f una función definida en un dominio D ⊂ R2 y sea (x0 , y0 ) un punto de D. Diremos que
f tiene lı́mite L cuando tiende a (x0 , y0 ), y lo denotaremos por lim(x,y)→(x0 ,y0 ) f (x, y) = L, si
para todo ε > 0 existe un δ > 0 tal que, cuando d((x, y), (x0 , y0 )) < δ, entonces d(f (x, y), L) < ε.
f
1
1
0.5
0.5
0
0
-0.5
-0.5
-1
-1
1
1
0.5
-1
0.5
-1
0
-0.5
0.5
0
-0.5
-0.5
0
-0.5
0
0.5
1 -1
Figure 3: Solución del Ejercicio 11.
4
1 -1
El cálculo del lı́mite de una función a partir de la definición no es sencilla. Sin embargo y
únicamente para ciertas funciones se puede intentar. Veamos algunos ejemplos.
Ejemplo 11 Demostrar que lim(x,y)→(x0 ,y0 ) x = x0
Solución:
Dado ε > 0 tomamos δ = ε > 0. Ası́, si k(x, y) − (x0 , y0 )k < δ entonces
p
|f (x, y) − x0 | = |x − x0 | ≤ (x − x0 )2 + (y − y0 )2 < δ = ε
Ejercicio 12 Demostrar que
lim
(x,y)→(x0 ,y0 )
y = y0 .
Para el cálculo de lı́mites utilizaremos diferentes resultados al margen de la demostración.
En particular, en el siguiente teorema se prueba que el lı́mite de una función es independiente
de la forma en que nos aproximemos al punto (x0 , y0 ).
Teorema 1 Sigui f : Rn → R y (x0 , y0 ) ∈ Rn tal que
lim
(x,y)→(x0 ,y0 )
f (x, y) = L. Si g : R → R es
continua y y0 = g(x0 ), entonces lim f (x, g(x)) = L.
x→x0
Ası́ el lı́mite es independiente de la curva a lo largo de la cuál nos aproximemos al punto
(x0 , y0 ). Esto puede ser utilizado en algunos casos para demostrar que una función carece de
lı́mite. Destacamos que en el teorema anterior la implicación recı́proca no es cierta, lo que
significa que aunque al aproximarnos a un punto mediante diferentes curvas obtengamos el
mismo valor, eso no significa que necesariamente la función tenga lı́mite.
Ejemplo 13 Calcular
lim
(x,y)→(0,0) x2
xy
.
+ y2
Solución:
Si calculamos el lı́mite a lo largo de la recta g(x) = mx tenemos que
mx2
m
xg(x)
=
lim
=
,
2
2
2
2
2
x→0 x + m x
x→0 x + g(x)
1 + m2
lim
de donde se sigue que el lı́mite depende de la recta elegida. Por tanto la función no
tiene limite ya que en otro caso éste serı́a independiente de la dirección.
En el siguiente resultado veremos una forma alternativa de calcular el lı́mite.
Teorema 2 El
lim
(x,y)→(0,0)
f (x, y) = L si y sólo si para todo valor de θ en el intervalo [0, 2π]
tenemos que lim f (r cos(θ), r sin(θ)) = L.
r→0
Ejercicio 14 Enunciar un resultado sobre
lim
(x,y)→(x0 ,y0 )
anterior.
Ejemplo 15 Calcular
lim
(x,y)→(x0 ,y0 )
=
x2 y
.
x2 + y 2
5
f (x, y) = L basandonos en el teorema
Solución:
Haciendo el cambio de variable x = r cos(θ), y = r sin(θ) obtenemos que
r 3 cos2 (θ) sin(θ)
= lim r cos2 (θ) sin(θ) = 0
r→0
r→0
r2
lim f (r cos(θ), r sin(θ)) = lim
r→0
Dada una función f : D ⊂ R2 → R y (x0 , y0 ) ∈ D decimos que f es continua en (x0 , y0 )
si
lim
f (x, y) = f (x0 , y0 ). Diremos que f es continua en D si es continua en todos los
(x,y)→(x0 ,y0 )
puntos de D.
Ejemplo 16
(a) Toda función constante es continua en todo el dominio R2 .
(b) Las funciones f (x, y) = x y g(x, y) = y son funciones continuas en R2 .
Solución:
(a) Consideramos la función f (x, y) = k y veamos que
lim
(x,y)→(x0 ,y0 )
f (x, y) = k.
Tomemos ε > 0. Como |f (x, y) − k| = 0 que es menor que cualquier ε, entonces
podemos tomar el valor de δ que queramos.
(b) Calculemos el lı́mite para la función f (x, y) = x. El lı́mite de la función g(x, y) =
y se hace similarmente. Dado que
p
|f (x, y) − f (x0 , y0 )| = |x − x0 | ≤ (x − x0 )2 + (y − y0 )2 = k(x, y) − (x0 , y0 )k
entonces, para ǫ > 0 basta tomar δ = ε.
Teorema 3 Sean f y g dos funciones continuas en un punto (x0 , y0 ) ∈ R2 . La suma f + g, el
producto por un número real λf y el producto f g son funciones continuas en (x0 , y0 ). Si además
g(x0 , y0 ) 6= 0, entonces el cociente f /g es una función continua en (x0 , y0 ).
Ejercicio 17
(a) Toda función polinómica P (x, y) es continua en R2 .
(b) Toda función racional R(x, y) = P (x, y)/Q(x, y) es continua en R2 \ Z, donde Z es la
region del plano que continen todas las raices de Q(x, y).
Ejercicio 18 Estudiar la continuidad de las siguientes funciones:
( 2 2
( 2 2
x −y
x y
si
(x,
y)
=
6
(0,
0),
2
2
x +y
x2 +y 2
f (x, y) =
f (x, y) =
0
si (x, y) = (0, 0),
0
si (x, y) 6= (0, 0),
si (x, y) = (0, 0).
Ejercicio 19 Calcular el valor de f (0, 0) para que f (x, y) = sin(x2 + y 2 )/(x2 + y 2 ) sea continua
en (0, 0).
6
1.3
Derivadas direccionales. Diferenciabilidad.
Sea f una función real definida en D ⊂ R2 , (x0 , y0 ) un punto del dominio D y v = (v1 , v2 ) un
vector unitario de R2 , esto es kvk = 1. Si existe, al lı́mite
lim
t→0
f ((x0 , y0 ) + t(v1 , v2 )) − f (x0 , y0 )
t
se le denomina derivada direccional de f en el punto (x0 , y0 ) según la dirección v y la denotaremos
por Dv f (x0 , y0 ).
A las derivadas direccionales en las direcciones e1 = (1, 0) y e2 = (0, 1) se les denomina
∂f
∂f
derivadas parciales y se denotan por
(x0 , y0 ) y
(x0 , y0 ) respectivamente.
∂x
∂y
Consideremos la función h(x) = f (x, y0 ). Entonces
f (x0 + t, y0 ) − f (x0 , y0 )
h(x0 + t) − h(x0 )
∂f
(x0 , y0 ) = lim
= lim
.
t→0
t→0
∂x
t
t
Por tanto, ∂f
∂x (x0 , y0 ) se calcula manteniendo la variable y constante y derivando f respecto de
x con las mismas reglas del cálculo diferencial de una variable.
Denominamos gradiente
de una función f enun punto (x0 , y0 ) y lo denotamos por ∇f (x0 , y0 )
∂f
∂f
al vector ∇f (x0 , y0 ) =
(x0 , y0 ),
(x0 , y0 )
∂x
∂y
Ejemplo 20
(a) Calcula las derivadas parciales de f (x, y) = x2 sin(y).
(b) Calcula las derivadas parciales de f (x, y) = xy .
(c) Calcula todas las derivadas direccionales en (0, 0) de la función
xy
si (x, y) 6= (0, 0),
x2 +y 2
f (x, y) =
0
si (x, y) = (0, 0).
Solución:
∂f
∂f
= 2x sin(y),
= x2 cos(y).
∂x
∂y
∂f
∂f
(b)
= yxy−1 ,
= xy ln(x).
∂x
∂y
(c) Sea v = (v1 , v2 ) tal que kvk = 1. Ası́
(a)
Dv f (0, 0) = lim
t→0
f (tv1 , tv2 ) − f (0, 0)
.
t
Como la norma del vector v es 1, sus componentes v1 y v2 no son simultanev1 v2
t2 v1 v2
= v1 v2 . De aquı́ se
=
amente nulas, por lo que f (tv1 , tv2 ) = 2 2
kvk
t (v1 + v22 )
sigue que
v1 v2
0 si v1 v2 = 0,
Dv f (0, 0) = lim
=
∞ si v1 v2 6= 0.
t→0 t
Por tanto, la función únicamente tiene derivadas en las direcciones e1 y e2 . Esto
es, tiene derivadas parciales, pero no tiene derivadas en ninguna otra dirección.
7
El concepto de derivada direccional es análogo al de lı́mite de una función a lo largo de una
recta. Como acabamos de ver, una función puede tener derivada en una dirección y no tenerla en
otra. Un concepto más fuerte que el de derivada direccional es el de diferencial, que no depende
de direcciones. Diremos que una función f es diferenciable en un punto (x0 , y0 ) si existen las
∂f
∂f
(x0 , y0 ) y
(x0 , y0 ) y además
derivadas parciales en el punto
∂x
∂y
∂f
∂f
f (x0 + h1 , y0 + h2 ) − f (x0 , y0 ) −
(x0 , y0 )h1 −
(x0 , y0 )h2
∂x
∂y
p
= 0.
lim
(h1 ,h2 )→(0,0)
h21 + h22
Teorema 4 Si f es una función diferenciable en (x0 , y0 ), entonces f es continua en (x0 , y0 ).
Teorema 5 Sean f y g dos funciones diferenciables en un punto (x0 , y0 ) ∈ R2 . La suma f + g,
el producto por un número real λf y el producto f g son funciones diferenciables en (x0 , y0 ). Si
además g(x0 , y0 ) 6= 0, entonces el cociente f /g es una función diferenciable en (x0 , y0 ).
Ejemplo 21
(a) Toda función constante es diferenciable en todo el dominio R2 .
(b) Las funciones f (x, y) = x y g(x, y) = y son funciones diferenciables en R2 .
Solución:
(a) Consideremos la función constante f (x, y) = k. Es sencillo comprobar que las
derivadas parciales existen en cualquier punto y que ambas valen 0. Por tanto,
∂f
∂f
(x0 , y0 )h1 −
(x0 , y0 )h2
f (x0 + h1 , y0 + h2 ) − f (x0 , y0 ) −
∂x
∂y
p
lim
(h1 ,h2 )→(0,0)
h21 + h22
k − k − 0h1 − 0h2
p
= 0.
=
lim
(h1 ,h2 )→(0,0)
h21 + h22
∂f
(x0 , y0 ) = 1
(b) Consideremos la función f (x, y) = x. Las derivadas parciales son
∂x
∂f
y
(x0 , y0 ) = 0. Por tanto
∂y
∂f
∂f
f (x0 + h1 , y0 + h2 ) − f (x0 , y0 ) −
(x0 , y0 )h1 −
(x0 , y0 )h2
∂x
∂y
p
lim
(h1 ,h2 )→(0,0)
h21 + h22
x0 + h1 − x0 − h1 − 0h2
p
=
lim
= 0.
(h1 ,h2 )→(0,0)
h21 + h22
Ejercicio 22
(a) Toda función polinómica P (x, y) es diferenciable en R2 .
(b) Toda función racional R(x, y) = P (x, y)/Q(x, y) es diferenciable en R2 \ Z, donde Z es la
region del plano que continen todas las raices de Q(x, y).
Teorema 6 Sea f : R2 → R.
8
(a) Si f es diferenciable, entonces f es continua.
(b) Si f es diferenciable, entonces existen f admite derivadas en cualquier dirección (derivable). Además Dv f (x0 , y0 ) = ∇f (x0 , y0 )T v, donde kvk = 1.
Del apartado (b) del teorema anterior se deduce que
Dv f (x0 , y0 ) = k∇f (x0 , y0 )kkvk cos(θ)
de donde la dirección de crecimiento máximo de la función es ∇f (x0 , y0 ).
Veamos que la jerarquı́a que se intuye en el teorema anterior es estricta, es decir, que hay
funciones continuas que no son diferenciables. Del mismo modo, existen funciones derivables
que no son diferenciables.
Ejercicio 23 Probar que la siguiente función no es diferenciable, pero sı́ es continua y derivable.
( x|y|
√ 2 2 si (x, y) 6= (0, 0),
x +y
f (x, y) =
0
si (x, y) = (0, 0).
Solución:
Las parciales de f en (0, 0) existen y ambas son cero,
f (t, 0) − f (0, 0)
0
∂f
(0, 0) = lim
= lim = 0.
t→0
t→0 t
∂x
t
∂f
f (0, t) − f (0, 0)
0
(0, 0) = lim
= lim = 0.
t→0
t→0 t
∂y
t
Por otra parte el lı́mite
∂f
∂f
f (h1 , h2 ) − f (0, 0) −
(0, 0)h1 −
(0, 0)h2
∂x
∂y
p
lim
(h1 ,h2 )→(0,0)
h21 + h22
es sencillo concluir que es igual a
h1 |h2 |
2.
(h1 ,h2 )→(0,0) h2
1 + h2
lim
Si hacemos el cambio a polares h1 = r cos(θ) y h2 = r sin(θ), entonces el lı́mite
anterior se escribe de la siguiente forma
r 2 cos(θ) sin(θ)
= cos(θ) sin(θ).
r→0
r2
lim
Al depender del angulo θ concluimos que no tienen limite, por tanto la función no
es diferenciable en el origen.
Sin embargo, mediante el cambio a polares calculamos mediante el siguiente lı́mite.
lim
(x,y)→(0,0)
f (x, y) =
lim
(x,y)→(0,0)
x|y|
p
x2 + y 2
= lim r cos(θ)| sin(θ)| = 0
r→0
Como es independiente del angulo θ concluimos que la funció tiene por lı́mite 0 y
por tanto la función es continua en el origen.
9
Para una dirección v = (v1 , v2 ) con kvk = 1, calculamos el lı́mite siguiente.
lim
t→0
tv1 |t||v2 |
f (tv1 , tv2 ) − f (0, 0)
= lim
= v1 |v2 |.
t→0
t
t|t|
Que existe en cualquier dirección. Por tanto la función es derivable en el origen en
cualquier dirección.
Hemos visto que el concepto de diferenciabilidad se consever a través de la la suma y el
producto de funciones, veamos ahora cómo se comporta con la composición. Esta idea en
funciones de variable real se conoce como regla de la cadena.
Consideremos tres funciones diferenciables F (u, v), ϕ(x, y), y ψ(x, y). Supongamos que u =
ϕ(x, y) y v = ψ(x, y), en tal caso F se puede observar como una función de las variables x e y
de la siguiente forma G(x, y) = F (ϕ(x, y), ψ(x, y)). En tal caso G es una función diferenciable y
se cumple que
∂G
∂x
=
∂F ∂ϕ ∂F ∂ψ
+
∂u ∂x
∂v ∂x
∂G
∂y
=
∂F ∂ϕ ∂F ∂ψ
+
∂u ∂y
∂v ∂y
Consideremos ahora una función diferenciable F (u, v) y dos funciones derivables x(t) y y(t).
Supongamos que u = x(t) y v = y(t). Ası́ F puede entenderse como una función de variable real
del siguiente modo h(t) = F (x(t), y(t)). En tal caso, h(t) es una función derivable y
h′ (t) =
∂F ′
∂F ′
u (t) +
v (t).
∂u
∂v
2
Las derivadas parciales de una función f : R2 → R son a su vez funciones ∂f
∂x : R → R y
: R2 → R. Por tanto, nos podemos plantear la existencia a su vez de derivadas parciales de
estas nuevas funciones. En el caso de que existan se denominan derivadas parciales de segundo
orden y se denotan por
∂2f
∂ ∂f
∂ ∂f
∂2f
=
=
2
∂x
∂x ∂x
∂x∂y
∂y ∂x
∂f
∂y
∂2f
∂ ∂f
=
2
∂y
∂y ∂y
∂2f
∂ ∂f
=
∂y∂x
∂x ∂y
El orden de derivación depende de la función y puede llegar a ser infinito.
Teorema 7 Sea f una función que tiene derivadas parciales de segundo orden. Si éstas son
continuas, entonces las derivadas cruzadas son iguales.
1.4
Extremos de funciones de varias variables
Sea f una funció definida sobre un dominio D de R2 y x0 un punto en D. Diremos que f tiene
un mı́nimo local (máximo local) en x0 si existe una bola Br (x0 ) centrada en el punto y de radio
r > 0 tal que f (x) ≥ f (x0 ) para todo punto en la bola.
Diremos que un punto x0 del dominio D de la función f es un punto crı́tico si ∇f (x0 ) = 0.
Un punto crı́tico que no es máximo ni mı́nimo se denomina punto silla.
Ejercicio 24 Demostra que la función f (x, y) = (x − 1)2 + (y − 1)2 − 1 tiene un mı́nimo global
en (1, 1).
10
Teorema 8 Sea f una función diferenciable en x0 . Si la función tiene un extremo en x0 entonces x0 es un punto crı́tico.
Ejemplo 25 Demostrar que (0, 0) es un punto crı́tico de f (x, y) = x2 −y 2 pero no es un extremo
de la función.
Solución:
De la expresión del gradiente ∇f (x, y) = (2x, −2y) se sigue que en efecto el origen
es un punto crı́tico.
Consideremos ahora la bola Bε (0, 0) centrada en el origen y de radio ε y sean x1 =
(ε/2, 0) y x2 = (0, ε/2). Es inmediato que f (x1 ) > f (0, 0) por tanto el origen no es
un máximo. Además como f (mathbf x2 ) < f (0, 0) tenemos que el origen tampoco
es un mı́nimo.
Teorema 9 Sea f una función con derivadas parciales continuas hasta tercer orden y sea (x0 , y0
un punto crı́tico de f.
2 (x , y ) > 0 entonces (x , y ) es un
• Si fxx (x0 , y0 ) < 0 y δ = fxx (x0 , y0 )fyy (x0 , y0 ) − fxy
0 0
0 0
máximo.
• Si fxx (x0 , y0 ) > 0 y δ > 0 entonces (x0 , y0 ) es un mı́nimo.
• Si δ < 0 entonces f no tiene máximo ni mı́nimo.
• Si δ = 0 se necesita un estudio más detallado.
Ejemplo 26 Calcular todos los extremos de la función f (x, y) = x2 − xy + y 2 + 3x − 2y + 1.
1.5
Integración múltiple
En este apartado tratamos de la integración de funciones reales de varias variables. Extendiendo
la interpretación de la integral de variable real, como el área de la superficie encerrada entre
el eje de abcisas y la curva, la integral doble se interpreta como el volumen encerrado entre la
superficie y el plano {z = 0}.
1.5.1
Integral doble sobre un rectángulo
Consideremos un rectángulo R = [a, b] ×
[c, d] en R2 . Definimos la partición regular de
R de orden n como la colección de puntos
{(xi , yj )}1≤i,j≤n donde xk = a + k△x con △ =
c−d
b−a
n y yk = c + k△y con △y = n .
Asociada
a
la
partición
regular
{(xi , yj )}1≤i,j≤n
existe
una
partición
{ri,j }0≤i,j≤n−1 de R en rectángulos disjuntos
ri,j = [xi , xi+1 ] × [yj , yj+1 ] y un conjunto de
valores ci,j ∈ ri,j .
11
yn = d
R
yj+1
yj
ri,j
y1
y0 = c
x0 = a x1 x2
xi xi+1 b = xn
Sea f : R ⊂ R2 → R diremos que f es integrable si la sucesión de sumas parciales
Sn =
n−1
X
i,j
f (ci,j )△x △y
es convergente cuando n tiende a ∞ y el lı́mite no depende de los valores ci,j . Al lı́mite
de
RR la sucesión de sumas parciales se le denomina integral de f sobre R y la denotamos por
R f (x, y)dxdy.
Notemos que con esta definición la integral de una función no negativa tiene una interpretación geométrica. Consideremos el grafo de
RR una función f (x, y) ≥ 0 como la tapa de un
sólido de base el rectángulo R. De esta forma R f (x, y)dxdy es el volúmen del sólido bajo el
grafo de f.
Ejercicio 27 Demostrar que toda función constante f (x, y) = K es integrable en el rectángulo
[0, 1] × [0, 1].
Teorema 10 Cualquier función continua es integrable.
Con el teorema de Fubbini reducimos el cálculo de integrales dobles sobre rectángulos al
cálculo de integrales simples iteradas.
Teorema 11 (Fubbini) Sea f : R ⊂ R2 →
R una función
sobre el rectángulo
R=
continua
R d R b
R b R d
RR
[a, b] × [c, d], entonces R f (x, y)dxdy = a c f (x, y)dy dx = c
a f (x, y)dx dy.
RR
(a) Calcular R (x2 + y)dxdy sobre el rectángulo R = [0, 1] × [0, 1].
RR
(b) Calcular R y(x3 − 12x)dxdy sobre el rectángulo R = [−2, 1] × [0, 1].
Ejercicio 28
Teorema 12 Sean f, g : R ⊂ R2 → R dos funciones integrables sobre un rectángulo R.
(a) Las funciones f + g y cf (donde c ∈ R) son integrables sobre el rectángulo R. Además:
ZZ
ZZ
ZZ
g(x, y)dxdy
f (x, y)dxdy +
(f + g)(x, y)dxdy =
R
R
ZR
Z
ZZ
f (x, y)dxdy.
(cf )(x, y)dxdy = c
R
R
(b) Si f (x, y) ≥ g(x, y) en R, entonces
1.5.2
RR
R f (x, y)dxdy
≥
Integral doble sobre regiones más generales
RR
R g(x, y)dxdy.
Queremos definir integrales dobles sobre regiones más generales que rectángulos. Definimos tres
tipos diferentes de rectángulos y generalizarmeos el concepto de integral doble sobre cada uno
de estos dominios.
Dominio de tipo I. Consideremos dos funciones continuas φ1 : [a, b] → R y φ2 : [a, b] → R de
forma que φ1 ≤ φ2 en [a, b]. Definimos el dominio de tipo I como D = {(x, y) : x ∈ [a, b], φ1 (x) ≤
y ≤ φ2 (x)}.
Dominio de tipo II. Consideremos dos funciones continuas ψ1 : [c, d] → R y ψ2 : [c, d] → R
de forma que ψ1 ≤ ψ2 en [c, d]. Definimos el dominio de tipo II como D = {(x, y) : ψ1 (y) ≤ x ≤
ψ2 (y), y ∈ [c, d]}.
12
Dominio de tipo III. Denominaremos dominio de tipo III a aquellos que tanto son dominios
de tipo I como de tipo II.
A los dominios del tipo I, del tipo II y del tipo III se denominan regiones elementales.
Sea D una región elemental del plano y R un rectángulo que contenga a D. Diremos que f
es integrable sobre la región D si la función
f (x, y) si (x, y) ∈ D
∗
f (x, y) =
0
si (x, y) ∈ R \ D
es integrable enRRel rectángulo R. En tal caso, denominamos
integral doble de f sobre D y lo
RR
denotamos por D f (x, y)dxdy a la integral doble R f ∗ (x, y)dxdy.
Teorema 13
(a) Si D es una region del tipo I entonces
!
Z b Z φ2 (x)
ZZ
f (x, y)dy dx
f (x, y)dxdy =
φ1 (x)
a
D
(b) Si D es una region del tipo II entonces
Z
ZZ
f (x, y)dxdy =
d
c
D
Z
!
ψ2 (y)
f (x, y)dx dy
ψ1 (y)
Teorema 14 Sigui D un domini del tipo I,II o III. Llavors
el área de D.
RR
D
dxdy = A(D) donde A(D) es
Ejercicio 29 Calcular la integral doble de f (x, y) = x3 y + cos x sobre el triángulo
o
n
π
T = (x, y) : 0 ≤ x ≤ , 0 ≤ y ≤ x .
2
Solución:
Considerando φ( x) = 0 y φ2 (x) = x es sencillo comprobar que T = {(x, y) : 0 ≤ x ≤
π/2, φ( x) ≤ y ≤ φ2 (x)}. Aplicando el apartado (a) del teorema anterior llegamos a
que
Z π Z x
ZZ
2
3
3
x y + cos xdy dx
x y + cos xdxdy =
0
T
0
π
2
x5
=
+ x cos(x) dx
2
0
π
π6
+ −1
=
768
2
Z
Ejercicio 30 Calcular el volumen del tetraedro acotado por los plano y = 0, x = 0, z = 0 y
y − x + z = 1.
Solución:
El volumen del tetraedro se puede considerar como el volumen bajo la gráfica de la
función f (x, y) = 1 + x − y definida en el triangulo D = {(x, y) : −1 < x < 0, 0 <
y < x + 1}. Por tanto hemos de calcular
Z 0 Z x+1
Z 0
ZZ
(x + 1)2
2
(1 + x − y)dxdy =
1 + x − ydydx =
(1 + x) −
dx
2
−1 0
−1
D
Z 0
1
(x + 1)2
=
=
2
6
−1
13
1.5.3
Integral triple sobre paralelepı́pedos rectangulares
Sea f : B → R una función continua definida sobre un paralelepı́pedo B = [a, b] × [c, d] × [p, q].
Del mismo modo en que hemos definido una malla en el caso plano, podemos definir una malla
en dimensión 3 de pasos hx , hy y hz con (N + 1)3 nodos. Podemos identificar cada un de los
volumenes definidos por la malla por {Bi,j,k }i,j,k=0,1,...,N y un punto ci,j,k en cada una de esas
regiones. Consideremos las sumas
SN =
N
N X
N X
X
f (ci,j,k )hx hy hz .
i=0 j=0 k=0
Diremos que la función f es integrable sobre el paralelepı́pedo B si existe el lı́mite de la
sucesión {SN }∞
N =0 . En tal caso llamamos integral de f sobre B al valor del lı́mite. En resumen
ZZZ
f (x, y, z)dxdydz = lim Sn .
nր∞
B
Teorema 15 (Fubinni) Sea f : B ⊂ R3 → R una función continuaRRR
sobre el paralelepı́pedo
B = [a, b] × [c, d] × [p, q], entonces f es integrable sobre B y además
B f (x, y, z)dxdydz =
RbRdRq
RqRdRb
a c p f (x, y, z)dzdydx = p c a f (x, y)dxdydz.
1.5.4
Integrales triples sobre dominios más generales
Si tenemos un dominio más general W ⊂ R3 y consideramos un paralelepı́pedo B tal que W ⊂ B
entonces podemos definir una función f ∗ que extienda f a B de la siguiente forma
f (x, y, z) si (x, y, z) ∈ W
∗
f (x, y, z) =
0
si (x, y, z) ∈ B \ W
y definir la integral de f sobre W como la integral de f ∗ sobre B.
Como en el caso de funciones en el plano, aquı́ también podemos definir diferentes tipos de
regiones.
Regiones del tipo I: Sea D un dominio en el plano xy del tipo I o del tipo II y ψ1 , ψ2 : D → R
dos funciones continuas. Llamamos region del tipo I a una región de la forma
{(x, y, z) : (x, y) ∈ D, ψ1 (x, y) ≤ z ≤ ψ2 (x, y)} .
Regiones del tipo II: Sea D un dominio en el plano yz del tipo I o del tipo II y ψ1 , ψ2 :
D → R dos funciones continuas. Llamamos region del tipo II a una región de la forma
{(x, y, z) : (y, z) ∈ D, ψ1 (y, z) ≤ x ≤ ψ2 (y, z)} .
Regiones del tipo III: Sea D un dominio en el plano xz del tipo I o del tipo II y ψ1 , ψ2 :
D → R dos funciones continuas. Llamamos region del tipo III a una región de la forma
{(x, y, z) : (x, z) ∈ D, ψ1 (x, z) ≤ y ≤ ψ2 (x, z)} .
Regiones del tipo IV: Llamamos región del tipo IV a una región que es simultaneamente del
tipo I, II y III.
Teorema 16
(a) Si W es una region del tipo I entonces
ZZZ
f (x, y, z)dxdydz =
W
ZZ
D
Z
ψ2 (x,y)
f (x, y, z)dz
ψ1 (x,y)
!
dxdy
(b) Si W es una region del tipo II entonces
ZZZ
W
f (x, y, z)dxdydz =
ZZ
14
D
Z
ψ2 (y,z)
!
f (x, y, z)dx dydz
ψ1 (y,z)
(c) Si W es una region del tipo III entonces
ZZ
ZZZ
f (x, y, z)dxdydz =
W
D
Z
ψ2 (x,z)
f (x, y, z)dy
ψ1 (x,z)
!
dxdz
Teorema 17 Sea W una región del tipo I,II o III. La integral de la función constante igual a 1
sobre el dominio W es volumen de W
Ejercicio 31 Comprobar que el volumen de una esfera de radio 1 es 34 π.
Solución:
La esfera de radio 1 está definda por la ecuación W = {(x, y, x) : x2 + y 2 + z 2 ≤
1}.√ Podemos considerar
W como una región del tipo I de forma que φ1 (x) =
√
2
2 , D = {(x, y) : −1 ≤ x ≤ 1, φ (x) ≤ y ≤ φ (x)}, ψ (x, y) =
−
1
2
1
p 1 − x , φ2 (x) = 1 − x p
2
2
1 − x + y y ψ2 (x, y) = 1 − x2 + y 2 . Aplicando el teorema anterior obtenemos
que
ZZZ
√
R 1 R √1−x2 R 1−x2 +y2
√
dxdydz = −1 − 1−x2 √ 2 2 dzdydx
W
R 1 R √1−x2
−
1−x +y
p
= −1 −√1−x2 2 1 − x2 − y 2 dydx.
p
1 − x20 sin(t).
Es
Fijado un x0 en (−1, 1) √
hacemos el cambio de variables y√ =
√
sencillo concluir que dy = 1 − x2 cos(t)dt. Además si y = − 1 − x2 o y = 1 − x2 ,
entonces t = −π/2 o t = π/2 respectivamente. Por tanto
Z 1
Z π/2
Z 1
ZZZ
1 + cos(2t)
2
dtdx = π
(1 − x2 )dx,
dxdydz = 2
(1 − x )
2
−1
−π/2
W
−1
de donde se obtiene el resultado.
Ejercicio 32 Sea W = {(x, y, z) : x ≥ 0, y ≥ 0, x2 + y 2 ≤ z} la región acotada por los planos
x = 0, y = 0, z = 2 y la superficie z = x2 + y 2
1.5.5
Teorema de cambio de variables
∗ → D. Sea f :
Consideremos dos regiones D y D ∗ en R2 y una aplicación diferenciable T : DRR
D → R una función continua definida sobre la región D, podemos plantearnos RRD f (x, y)dxdy.
Por otra parte f ◦ T : D ∗ → R es una función continua y podemos plantearnos D∗ f ◦ T dudv.
Una pregunta natural es conocer la relación existente entre integrales.
Obviamente la igualdad no se da en general puesto que tomando f = 1 cada una de las
integrales proporciona el area de sus respectivas regiones, que por lo general no serán iguales.
En el siguiente resultado proporcionamos la relación deseada con independencia de la dimensión del espacio.
Teorema 18 Sean D y D∗ dos regiones elementales en Rn y T : D ∗ → D una función diferenciable de forma que el determinante de la matriz Jacobiana
∂T1 ∂T1
∂T1 ∂u
. . . ∂u
∂u2
n ∂T1 ∂T
∂T2 2
2
.
.
.
∂u
∂u2
∂un det(JT )(u1 , u2 . . . , un ) = . 1
..
.. ..
.
. ∂Tn ∂Tn . . . ∂Tn ∂u1
∂u2
∂un (u ,...,u )
1
15
n
es diferente de cero en D ∗ . Si f es una función integrable sobre D entonces
Z
Z
f ◦ T det(JT )(u1 , u2 . . . , un )du1 . . . dun .
f (x1 , . . . , xn )dx1 . . . dxn =
D∗
D
EjemploR33 Sea P el paralelogramos acotado por las rectas y = 2x, y = 2x−2, y = x, y = x+1.
Calcular P xydxdy.
Solución:
Consideremos el cambio de variables T : D ∗ = [0, 1] × [0, 2] → P según x = u − v y
y = 2u − v. Notemose que en efecto
1 −1 =1
JT (u, v) = 2 −1 es un cambio de variables. Como f ◦ T (u, v) = 2u2 − 3uv + v 2 entonces
ZZ
f (x, y)dxdy =
ZZ
D∗
P
=
Z
0
1
(2u2 − 3uv + v 2 )dudv =
4
8
(4u2 + 6u + )du =
3
3
Z
0
1Z 2
0
(2u2 − 3uv + v 2 )dvdu
R
Ejemplo 34 Calcular D ln(x2 + y 2 )dxdy donde D es la región del primer cuadrante comprendida entre las circunferencias de rádios a y b con 0 < a < b.
Solución:
Consideremos el cambio de variables T : [a, b] × [0, 2π] → D tal que T (r, θ) =
(r cos(θ), r sin(θ)).
16
2
2.1
Tema II: Métodos Numéricos
Errores
En este tema se presentan algoritmos y estrategias para el cálculo de soluciones aproximadas z̄
a soluciones exactas z de algunos problemas matemáticos. La no coincidencia de los valores z y
z̄ se conoce como error. La medida del error se caracteriza por dos valores:
• Error absoluto:
• Error relativo:
E = |z − z̄|
ε=
|z − z̄|
|z − z̄|
≈
|z|
|z̄|
Una parte esencial en el estudio de los diferentes métodos será el cálculo de una cota del
error que se comete al aplicar el método. Este error puede descomponerse en tres partes cada
una de ellas originada por una causa diferente.
• Errores en los datos: Provienen del error en la medida de los datos necesarios para un
problema. Pese a que algunas veces su contribución al error total es la más importante,
su naturaleza es más fı́sica que matemática por lo que no se tendrán en cuenta.
• Errores de redondeo: Los métodos de resolución que estudiaremos se basan en la manipulación mecánica de números, y esta a su vez en el almacenamiento de los números en las
máquinas de cálculo. La diferencia entre la aritmética infinita de los cálculos teóricos y
la aritmética finita de los mecánicos da origen a los errores de redondeo. En el siguiente
apartado analizamos la aritmética finita.
• Errores de truncamiento: Las estrategias desarrolladas para la resolución numérica problemas suelen contar con un número infinito de requisitos (nodos en la integración de Simpson)
i/o pasos (cálculo de ceros por el método de Newton). La imposibilidad de satisfacer todos
los requisitos i/o realizar todos los pasos da origen a estos errores. El análisis de este error
es especı́fico del algoritmo y lo realizaremos siempre tras la presentación de un algoritmo
2.1.1
Aritmética en los ordenadores
La totalidad de los algoritmos que se estudian en esta asignatura están diseñados para ser realizados por máquinas. Veamos, por tanto, el proceso de manipulación mecánica de números. El
primero de estos procesos consiste en el almacenamiento del número en la máquina.
Representación de números
El problema consiste en representar una cantidad infinita de valores mediante un conjunto finito
de simbolos dı́gitos . El sistema de representación usual es la representación decimal de un
número.
• El conjunto de dı́gitos: {0, 1, . . . , 9}.
• El valor de un dı́gito depende de la posición que ocupa en la expresión, el sistema es
posicional.
17
Otros sistemas de representación utilizan un conjunto más reducido de dı́gitos, por ejemplo el
binario. En general la representación en base b ∈ N con b ≥ 1 de
Px ∈ R consiste
Pen una expresión
de la forma (ae ae−1 . . . a1 a0 .a−1 . . . a−d )(b) , de forma que x = ( ek=0 ak bk ) + ( dk=1 a−k b−k ), con
0 ≤ ai < b. Al primero de los sumando se le conoce como parte entera y al segundo como
parte fracionaria. La base usual en la representación de números en ordenadores es la base 2.
La representación binaria es suficiente para almacenar números, sin embargo su artimética es
compleja para una máquina. Ası́, se utiliza la representación en coma flotante para almacenar
cantidades en una máquina. Ésta consiste en aquella representación en base b de un número de
forma que su parte entera quede nula, junto con el signo; esto es
x = s(0.d−1 d−2 . . . d−m )bq ,
con b−1 ≤ d−1 < 1 y qmin ≤ q ≤ qmax . A la expresión (0.d−1 d−2 . . . d−m ) se le denomina mantisa y al número q se le denomina exponente.
Almacenamiento
Existen dos estándares de almacenamiento denominados IEEE simple y IEEE doble. El la
siguiente tambla se recogen los valores de los parámetros utilizados en cada uno de ellos.
IEEE simple
IEEE doble
b
2
2
m
24
53
qmin
−125
−1021
qmax
128
1024
n. bits
32.
64.
• Los 39 bits del formato IEEE simple se utilizan segün:
– 1 bit para el signo 0 si x ≥ 0 y 1 si x < 0,
– 8 bits para el exponente. Esto permite almacenar 256 exponentes diferentes. Utilizamos 125 de ellos para exponentes negativos, 128 para exponentes positivos y 1 para
el exponente nulo. Quedan dos exponentes que se utilizan para marcar el Underflow
(todos los bits a 0) y el Overflow (todos los bits a 1). Por tanto almacenamos q +126.
– 23 bits para la mantisa. Notar que el primer dı́gito de la mantisa no es necesario
almacenarlo pues siempre será 1.
• Los 64 bits del formato IEEE doble se utilizan segün:
– 1 bit para el signo 0 si x ≥ 0 y 1 si x < 0,
– 11 bits para el exponente. Esto permite almacenar 2048 exponentes diferentes. Utilizamos 1021 de ellos para exponentes negativos, 1024 para exponentes positivos y
1 para el exponente nulo. Quedan dos exponentes que se utilizan para marcar el
Underflow (todos los bits a 0) y el Overflow (todos los bits a 1). Por tanto almacenamos q + 1022.
– 52 bits para la mantisa. De nuevo el primer dı́gito no es necesario almacenarlo pues
siempre será 1.
Ejemplo 35 Representar 1, 1/2, 1/3, π = 3.141592654 y −0.1 en formato IEEE simple y doble.
0
1
10000000
10000001
10010010000111111011010
10001100011000110001100
Consecuencias del almacenamiento:
18
• La cantidad de números que se pueden almacenar en un ordenador es finita. ¿En el ejemplo
anterior, cuántos?
• La distribución de los números no es homogénea. ¿Cuántos números reconoce el ordenador
en el intervalo [bn , bn+1 ]?
• Al almacenar un número z en un ordenador lo que realmente almacenamos es una aproximación z̄. ¿Cuál es el error absoluto y relativo máximo que se comete en el ejemplo
anterior?
Veamos como estudiar el error absoluto y relativo máximo (precisión de la máquina, δ) en
el caso de un ordenador de mantisa de m dı́gitos, exponente de e dı́gitos y base b.
Si z = pbq con p = 0.a1 a2 . . . am am+1 . . . , su representación flotante y truncada a m dı́gitos de
mantisa es z̄ = p̄bq con p̄ = 0.a1 a2 . . . am . Los errores absoluto y relativo por truncamiento
son
E = |z − z̄| = |p − p̄|bq = |0.am+1 . . . |bq−m < bq−m
e=
bq−m
|z − z̄|
<
< b1−m
|z|
|0.a1 a2 . . . am am+1 . . . , |bq
En el caso de almacenamiento flotante con redondeo a m dı́gitos de mantisa la representación
de z es z̄ = p̄¯bq con p̄¯ = p̄ si am+1 < b/2 o con p̄¯ = p̄ + b−m /2 si am+1 ≥ b/2. Por tanto, los
errores absoluto y relativo por redondeo son
(
|0.am+1 . . . |bq−m
si am+1 < b/2
1
q
¯
< bq−m
E = |z − z̄| = |p − p̄|b =
1 q−m
2
si b/2 ≤ am+1 < b
|0.am+1 . . . − |b
2
e=
1 q−m
1
|z − z̄|
2b
<
< b1−m
q
|z|
|0.a1 a2 . . . am am+1 . . . , |b
2
Diremos que una aproximación z̄ a un valor z tiene t decimales correctos si E(z) < 12 10−t y
tiene t dı́gitos significativos si e(z) ≤ 12 101−t .
Operaciones básicas
Como consecuencia del error en el almacenamiento, al finalizar una operación en punto flotante
cometemos un error, que tambien hay que tener presente. Estas operaciones aproximadas la
denotamos por ⊕, ⊖, ⊗, ⊘ y el error cometido en cada una es el siguiente:
• Suma: x ⊕ y = [x(1 + δ) + y(1 + δ)](1 + δ) = (x + y)(1 + δ)2 ≈ (x + y)(1 + 2δ).
• Resta: x ⊖ y = [x(1 + δ) − y(1 + δ)](1 + δ) = (x − y)(1 + δ)2 ≈ (x − y)(1 + 2δ).
• Multiplicación: x ⊗ y = [x(1 + δ)y(1 + δ)](1 + δ) = xy(1 + δ)3 ≈ xy(1 + 3δ).
• División: x ⊘ y = [x(1 + δ)/y(1 + δ)](1 + δ) ≈ x/y(1 + δ).
2.1.2
Propagación de errores
En este apartado estudiamos cómo se propagan los errores de redondeo debidos al almacenamiento a lo largo de las diferentes operaciones a que sometemos a los números. La formula de
propagación del error se basa en el desarrollo de Taylor tanto en una como en varias variables.
• Una variable: |f (z) − f (z̄)| = |f ′ (ε)| |z − z̄| , donde ε es un valor desconocido en el intervalo
definido por z y z̄.
19
• Varias variables:
n X
∂f (ε) kf (z) − f (z̄)k ≤
∂xk kz − z̄k
k=1
donde ε es un valor desconocido en la envoltura convexa de z y z̄.
Propagación de errores en las operaciones algebraicas elementales:
• Suma: Ex+y ≤ Ex + Ey y ex+y ≤
|x|
|y|
ex +
ey .
|x + y|
|x + y|
|x|
|y|
ex +
ey . Notamos que el error relativo de
|x − y|
|x − y|
la resta de dos números crece si los números son muy parecidos.
• Resta: Ex−y ≤ Ex + Ey y ex−y ≤
• Multiplicación: Exy ≤ |y|Ex + |x|Ey y exy ≤ ex + ey .
|y|Ex + |x|Ey
y ex/y ≤ ex + ey . Aunque no tiene influencia en el error
|y 2 |
relativo, dividir por número pequeños amplifica el error absoluto.
• División: Ex/y ≤
√
6
2 − 1 tomando el valor aproximado de 1.4 como
Ejemplo 36 Queremos calcularel valor de
√
valor de 2. Elegir la fórmulas (algoritmo) siguiente, el más adecuado desde el punto de vista
numérico:
√ 3
√
1
1
1
√ .
;
3
−
2
2 ;
√
√ 3 ; 99 − 70 2 ;
6
99 + 70 2
2+1
3+2 2
Ejemplo 37 Con qué exactitud se ha de medir el rádio de una esfera y con cuántos decimales
se ha de dar el número π para que su volumen se conozca con un error relativo menor que 0.01?
Considerad los dos efectos por separado.
x
a
a , con a = 1 ± 0.01 y estudia el efecto de la incertidumbre
Ejemplo 38 Resuelve = 0.2 −
x
100
de a sobre las soluciones de la ecuación.
√
Ejemplo 39 Queremos calcular ln x − x2 − 1 para x = 30. Si la raiz se obtiene de una
tabla con 6 decimales, coom sera el error absoluto en el logaritmo? Da una expresión que sea
matemáticamente equivalente a la expresión anterior pero numéricamente mejor y calcular el
error en este caso.
2.1.3
Algoritmos estables e inestables
Diremos que un algoritmo es numéricamente inestable si pequeños errores en los datos conducen a grandes errores en los resultados. Diremos que un algoritmo es numéricamente estable si grandes errores en los datos conducen a pequeños errores en los resultados. Si para un
problema dado cualquier algoritmo que lo resuelva es inestable diremos que el problemas es un
problema mal condicionado.
R1
• Ejemplo de algoritmo inestable: Las integrales In = 0 xn ex−1 dx se pueden calcular mediante la recurrencia In = 1 − nIn−1 , que es inestable.
• Ejemplo de algoritmo estable: Las integrales In tambien se pueden calcular mediante la
1 − In
que es estable.
recurrencia In−1 =
n
• Ejemplo de algoritmo mal condicionado: Problema 17.
20
Ejemplo 40 Usando un métode recurrente calcular el valor de las integrales
Z 1
xn
dx, n = 1, 2, 3, ...20.
In =
0 x + 10
Estudiar la estabilidad del método encontrado.
2.2
Sistemas lineales
Consideremos el sistema de ecuaciones lineales

a1,1 x1 + a1,2 x2 +



 a2,1 x1 + a2,2 x2 +
..
..

.
.



an,1 x1 + an,2 x2 +
···
···
..
.
···
+ a1,m xm = b1 ,
+ a2,m xm = b2 ,
..
..
.
.
+ an,m xm = bn ,
que en lenguaje matricial se escribe como Ax = b, siendo



a1,1 a1,2 · · · a1,m
x1
 a2,1 a2,2 · · · a2,m 
 x2



A= .
..
..  , x =  ..
.
.
.
 .
 .
.
.
. 
an,1 an,2 · · · an,m
xm






 y b=


(1)
b1
b2
..
.
bn





donde A es la matriz de los coeficientes, x es vector de las incognitas y b es el vector
independiente.
La existencia de soluciones del sistema (1) esta resumida en la siguiente versión del Teorema
de Rouché–Frobenius.
• Si Rang(A) = Rang(A|b) (donde por A|b denotamos la matriz ampliada) entonces se dice
que (1) es un sistema compatible, equivalentemente tiene solución.
– Si Rang(A) = m, entonces la solución es única y el sistema se denomina sistema
determinado.
– Si Rang(A) < m, entonces existen infinitas soluciones y el sistema se denomina sistema indeterminado.
• Si Rang(A) < Rang(A|b), el sistema (1) no tiene solución y se denomina sistema incompatible.
En este capı́tulo buscamos algoritmos y estratégias para el cálculo de la solución de un
sistema de ecuaciones lineales (1) compatible y determinado que sean fáciles de implementar en
un ordenador y supongan un bajo coste en operaciones. De estos métodos los hay de dos tipos.
• Métodos directos, que permiten obtener la solución exacta (salvo errores de redondeo)
en un número finito de pasos. A esta categorı́a pertenecen los métodos de resolución de
matrices especiales (diagonales y triangulares), el método de Gauss, la factorización LU,
factorización QR.
• Métodos iterativos, en los que se construye una sucesión de soluciones que tiende a la
solución exacta. A esta categorı́a pertenecen los métodos de Jacobi, de Gauss-Seidel y de
sobrerelajación.
Como los sistemas a estudiar son compatibles y determinados, las matrices de coeficientes
son cuadradas (n = m) y regulares, esto es, det(A) 6= 0.
21
2.2.1
Métodos directos
Sistemas diagonales: Consideremos el caso especial A = (ai,j )1≤i,j≤n con
ai,j = 0 si i 6= j
ai,i = ai
que se denomina matriz diagonal y se denota por A = diag{a1 , a2 , . . . , an }. Como asumimos
que la matriz es regular se sigue que ai 6= 0.
• For i = 1, 2, . . . , n
xi =
bi
ai
Este algoritmo necesita n divisiones para resolver el problema.
Sustitución hacia atras. Consideremos el caso A = (ai,j Q
)1≤i,j≤n con ai,j = 0 si i > j que se
denomina matriz triangular superior. Como det(A) = ni=1 ai,i , se sigue que ai,i 6= 0 para
todo i.
bn
• xn =
an,n
• For i = n − 1, . . . , 1
P
bi − nj=i+1 ai,j xj
xi =
ai,i
Para el calculo de xk se necesitan n − k multiplicaciones, n − k restas y una division, que
en total son n(n − 1)/2 multiplicaciones, n(n − 1)/2 restas y n divisiones, equivalentemente n2
operaciones.
Sustitución hacia adelante Consideremos el caso A = (aQ
i,j )1≤i,j≤n con ai,j = 0 si i < j que
se denomina matriz triangular inferior. Como det(A) = ni=1 ai,i , se sigue que ai,i 6= 0 para
todo i.
b1
• x1 =
a1,1
• For i = 2, . . . , n
P
bi − i−1
j=1 ai,j xj
xi =
ai,i
Para el calculo de xk se necesitan k − 1 multiplicaciones, k − 1 restas y una division, que
en total son n(n − 1)/2 multiplicaciones, n(n − 1)/2 restas y n divisiones, equivalentemente n2
operaciones.
2.2.2
Método de Gauss
El método de Gauss es el primero de los métodos que estudiaremos para la resolución de un
sistema de ecuaciones lineales con matriz de coeficientes general y no singular. El método de
Gauss se basa en transformar el sistema de ecuaciones conservando invariante el conjunto de las
soluciones, hasta obtener un sistema triangular superior. Las trasnformaciones que permiten
hacer esto de una manera sencilla son:
• Permutar la posición de dos ecuaciones.
• Multimplicar por un número real no nulo una de las ecuaciones.
22
• Restar a una ecuación una combinación lineal del resto de las ecuaciones.
Otra forma de enterder el método de Gauss es pensar que en cada paso despejamos una variable
en una ecuación y la sustituimos en el resto de las ecuaciones. Partiendo de la matriz ampliada
(A1 |b1 ) = (A|b) pasamos a (A2 |b2 ) según:
 1


 1
a1,1 a11,2 · · · a11,n b11 ,
a1,1 a11,2 · · · a11,n b11 ,
F11 →
−−1−−→  0 a2
1
1
1
1  −−−−−−−−−−
a22,n b22 , 
F21 → 
=
a1
2,2 · · ·
i,1 /a 1, 1


 a2,1 a2,2 · · · a2,n b2 ,  mi,1
2
1
1
F
=
F
−
m
F
 ..
 ..
..
..
..
..
..
1
..  ii = i2, 3, . .i,1
..  .
..
..
.
,
n



.
.
.
.
.
.
.
.
.
.
. 
Fn1 →
a1n,1 a1n,2 · · ·
a1n,n b1n ,
0
a2n,2 · · ·
a2n,n b2n ,
En este nuevo sistema tenemos que la variable x1 únicamente interviene en la primera ecuación.
Análogos razonamientos nos llevan del sistema (A2 |b2 ) al sistema (A3 |b3 ) que para el que la
segunda variable x2 intervine únicamente en las dos primeras ecuaciones. El procedimiento
concluye al obtener en n − 1 pasos una matriz An triangular superior, que corresponde a un
sistema de ecuaciones lineales con el mismo conjunto de soluciones que el original, pero ahora
facil de resolver por el método de sustitución hacia atras.
• For k = 1, 2, . . . , n − 1
For i = k + 1, k + 2, . . . , n
ai,k
mi,k =
ak,k
ai,k = 0
For j = k + 1, k + 2, . . . , n
ai,j = ai,j − mi,k ak,j
bi = bi − mi,k bk
En el algoritmo anterior aparece una operación que no siempre está definida, y aún cuando
lo está, puede no ser numéricamente aceptable, no referimos a la división. Recordamos que la
división por números pequeños amplifica el error absoluto. Para evitar este problema existen
dos variantes del método de Gauss conocidas como método de Gauss con pivote máximo por
columnas y método de Gauss con pivote maximal.
Pivotage máximo por columnas. Para este método, en el paso k antes de calcular mi,k
buscamos en la columna k la fila m tal que |akm,k | ≥ |aki,k | para k ≤ i ≤ n e intercambiamos la
fila k por la fila m. Supongamos que akm,k = 0, en ese caso aki,k = 0 para k ≤ i ≤ n y det(A) = 0,
en contradicción con las hipótesis. Por tanto akm,k 6= 0.
Como hemos visto, si det(A) = 0, entonces para algún k el pivote akm,k podrı́a ser cero. En
tal caso, podemos dejar esta fila como está y continuar el proceso con la fila siguiente, no siendo
necesaria la detención del algoritmo. Llegamos al siguiente resultado.
Teorema 19 El método de Gauss con pivotage máximo por columnas se puede aplicar a toda
matriz cuadrada. En el caso de matrices regulares, esta alternativa disminuye la cota del error
en la solución en comparación con el método de Gauss general.
• For k = 1, 2, . . . , n − 1
For i = k + 1, k + 2, . . . , n
m=k
For r = k + 1, k + 2, . . . , n
If |ar,k | > |am,k | then m = r
23
If am,k = 0 then
Alerta! → det(A) = 0
mi,k = 1
else
intercabiar filas k y m
ai,k
mi,k =
ak,k
ai,k = 0
For j = k + 1, k + 2, . . . , n
ai,j = ai,j − mi,k ak,j
bi = bi − mi,k bk
Pivotage maximal. En esta variante del método de Gauss el pivote no se busca únicamente
entre los elementos de la columna, si no que se busca de entre todos los elementos de la submatriz
Ak , formada por las filas k, . . . , n y las columnas k, . . . , n.
Ejemplo: Resolver el siguiente sistema de ecuaciones usando aritmetica flotante con mantisa
de 4 dı́gitos y los algoritmos de Gauss sin y con pivote.

x1
+x3 = 1 
x1 +0.0001x2 +2x3 = 2

x1
+x2
+x3 = 0
En ambos casos:



.1 × 101
0
.1 × 101 .1 × 101
.1 × 101
0
.1 × 101 .1 × 101
 .1 × 101 .1 × 10−3 .2 × 101 .2 × 101  → 
0
.1 × 10−3 .1 × 101 .1 × 101 
.1 × 101 .1 × 101 .1 × 101
0
.1 × 101
0
0
−.1 × 101

Sin pivotaje se sigue:


.1 × 101
x̄1 = 0
.1 × 101
0
.1 × 101
−3
1
1


0
.1 × 10
.1 × 10
→ x̄2 = 0
.1 × 10
x̄3 = 1
0
0
−.1 × 105 −.1 × 105
Con pivotaje:

.1 × 101
0
.1 × 101 .1 × 101
x̃1 = 0

0
.1 × 101
0
−.1 × 101  → x̃2 = −1
0
0
.1 × 101 .1 × 101
x̃3 = 1

Veamos en cual de las dos soluciones x̄, x̃ cometemos menos error. Si x es la solución correcta
de un sistema Ax = b y x̄ es la aproximada, esto es, Ax̄ = b̄, entonces
el error es la solución
del sistema Aex = b − b̄. En nuestro caso ex̄ = −10−4 , −1, 10−4 y ex̃ = −10−4 , 0, 10−4 . De
donde se sigue que la solución x̃ es más aproximada.
Contemos el número de operaciones que necesitamos para resolver un sistema lineal n×n por
el método de eliminación Gaussiana sin pivotaje. Para para k = 1, . . . , n − 1 y i = k + 1, . . . , n
hacemos 1 división, n − k productos, n − k restas, 1 producto y 1 resta. Para k = 1, . . . , n − 1
tenemos n − k divisiones, (n − k)2 + (n − k) productos y (n − k)2 + (n − k) restas. En total:
3
n−1
X
k=1
k+2
n−1
X
k=1
k2 = 3
n(n − 1)(2n − 1)
2n3
n(n − 1)
+2
=
+ O(n2 ).
2
6
3
24
Supongamos que queremos utilizar el método de Gauss para el cálculo de la inversa de A.
Habriamos de resolver los n sistemas Ax = ek para k = 1, 2, . . . , n. Como cada uno necesita
del orden de n3 operaciones, en total necesitamos del orden de n4 operaciones. Si miramos el
algoritmo de Gauss vemos que cada nuevo sistema hemos de volver a calcular los multiplicadores
y todos los pasos de la triangulación cuando en realidad la matriz de coeficientes no cambia.
Parece pues necesario almacenar los multiplicadores y la matriz triangularizada una vez obtenida
y no volver a calcularlos. El método de factorización LU trata de obtener beneficios de esta
idea.
2.2.3
Método LU
En este apartado presentamos otra método para resolver el sistema de ecuaciones lineales
Ax = b, donde la matriz A es regular. En este caso se expresa la matriz de los coeficientes
A como producto de dos matrizes A = LU tal que L = (li,j )1≤i,j≤n es triangular inferior y
U = (ui,j )1≤i,j≤n triangular superior.
Veamos que siempre que podemos aplicar el método de Gauss, existe una posible factorización
para la matriz A. Llamemos U a la matriz triangular superior obtenida al aplicar el método de
Gauss a A y sean mi,k los factores que construimos en el método de Gauss. Entonces:




 1 
F11
F11
F1


 F 2 = F 1 − m2,1 F 1 
 F1 
F22
1 
2


 2
 2 
 F 3 = F 2 − m3,2 F 2 
 F 2 = F 1 − m3,1 F 1 
 F1 
A = A1 =  3  → A2 =  3
2  → . . . U.
3
3
1  → A3 = 
3




 .. 
..
..




 . 
.
.
Fn2 = Fn1 − mn,1 F11
Fn1


1
0
0 ...
1
0 0 ... 0
 0
 m2,1 1 0 . . . 0 
1
0 ...






.
.

←
. 
 ←  0 m3,2 1
 m3,1 0 1
 ..
 ..
.. . .
..
.. .. . . .. 
 .
 .
.
. . 
.
.
. .
0 mn,2 0 . . .
mn,1 0 0 . . . 1
De donde se sigue que si li,i = 1 para 1 ≤ i ≤ n y li,j = mi,j
A = LU. Sabiendo que la diagonal de L está formada por unos,
almacenar en la misma matriz A.

Fn3 = Fn2 − mn,2 F22

0
0 

.. 
. 
 ← ...
.. 
. 
1
con 1 ≤ j < i ≤ n, entonces
las matrices L y U se pueden
• For k = 1, 2, . . . , n − 1
For i = k + 1, k + 2, . . . , n
ai,k
ai,k =
ak,k
For j = k + 1, k + 2, . . . , n
ai,j = ai,j − ai,k ak,j
En este algoritmo guardamos los multiplicadores en debajo de la diagonal y la matriz U en la
diagonal y arriba de ella.
Teorema 20
(a) La factorización de A existe si se le puede aplicar el método de Gauss.
(b) Si existe, la factorización LU de una matriz A es única.
Demostración: (a) Es consecuencia del algoritmo.
(b) Consideremos las siguientes afirmaciones sobre matrices triangulares.
25
• El producto de dos matrices triangulares inferiores (superiores) es una matriz triangular
inferior (superior).
• La inversa de una matriz triangular inferior (superior) es una matriz triangular inferior
(superior).
Supongamos que A = L1 U1 = L2 U2 . Entonces U1 U2−1 = L−1
1 L2 . Aplicando las afirmaciones
anteriores se sigue que la matriz de la izquierda de la igualdad es triangular superior y la de la
derecha es triangular inferior, por tanto ambas son diagonales. Como la de la derecha tienes
unos en la diagonal ambas son la identidad, esto es U1 U2−1 = L−1
1 L2 = I, de donde se sigue que
U1 = U2 y L1 = L2 .
Sabemos que la descomposición LU esta basada en el método de Gauss. Sin embargo este
no puede aplicarse directamente a todas las matrices, ni tan siquiera a las regulares. Para ello
introduciamos una modificación de método de Gauss que consiste en permutar convenientemente
las filas. Como la filas elegidas como pivote únicamente se mueven una vez, si sabemos de
antemano las transformaciones a realizar las podemos hacer antes y aplicar el método de Gauss
sin pivotar. De esta forma tenemos el siguiente resultado.
Teorema 21 Sea A una matriz regular. Existen P una matriz de permutación, L una matriz
triangular inferior con unos en la diagonal y U una matriz triangular superior, de forma que
P A = LU.
Ejemplo:



1 2 3
−−−−→ 7


4 5 6
(3, 2, 1)  4
A=
1
7 8 1

7
8
−−−−→

(3, 1, 2)
1/7 6/7
4/7 3/7
Y por tanto, las matrices L, U

1
0

1/7
1
L=
4/7 1/2
2.2.4


8 1
−−
−
−
−
−
−
→
= −4/7 
5 6  ll2,1
3,2 = −1/7
2 3


1
−−−−−−−→
20/7  l2,1 = −1/2 
38/7

7
8
1
4/7 3/7 38/7 
1/7 6/7 20/7

7
8
1
1/7 6/7 20/7 
4/7 1/2
4
y P son las siguientes.





0 0 1
7 8
1
0
0  , U =  0 6/7 20/7  y P =  1 0 0 
0 1 0
0 0
4
1
Método QR
Antes de describir el método, introducimos algunas definiciones. Dada una matriz A = (ai,j )1≤i,j≤n
definimos matriz transpuesta y la denotamos por AT a la matriz (ãi,j )1≤i,j≤n donde ai,j = ãj,i .
Diremos que A es una matriz simétrica si A = AT . En el caso de matrices reales diremos que
A es una matriz ortogonal si A−1 = AT . De la definición se sigue que las filas (columnas) de
una matriz ortogonal son vectores ortonormales.
El objeto del método QR es factorizar la matriz A en dos matrices una triangular superior
que denotamos por R y otra ortogonal que denotamos por Q. En consecuencia, para resolver el
sistema Ax = b es suficiente resolver el sistema triangular Rx = QT b.
Las matrices ortogonales conservan la norma euclı́dea (kAxk2 = xT AT Ax = kxk2 ). El determinante de una matriz ortogonal es ±1 (ejercicio). El producto de matrices ortogonales es
una matriz ortogonal (ejercicio). Por tanto, multiplicaremos la matriz A por matrices ortogonales convenientemente elegidas hasta conseguir la mariz R. Pasemos a introducir las matrices
ortogonales de Householder.
26
Matrices de Householder.
Dado un vector u de Rn denotamos por uT = (u1 , . . . , un ) al vector transpuesto, por uT u al
producto escalar, por uuT la matriz simétrica (ui uj ))1≤i,j≤n y por P (u) la matriz de Householder
2
P (u) = I − T uuT
u u
que tiene las siguientes propiedades:
• Para todo c ∈ R se sigue que
P (u)cu = cu −
2
uT u
uuT cu = cu −
2
uT u
c(uT u)u = −cu
• Si u⊥ = {v ∈ Rn : uT v = 0} es el hiperplano ortogonal al vector u y v ∈ u⊥ , entonces
P (u)v = v −
2
uT u
u(uT v) = v
• Si w ∈ Rn , entonces existe c ∈ R tal que w = cu + v. Pot tanto P (u)w = −cu + v. Por
lo que P (u) es una simetrı́a respecto del hiperplano u⊥ . Además, uT w = cuT u, de donde
c=
uT w
.
uT u
De esta forma podemos calcular P (u)w sin construir la matriz de Householder y con un
mı́nimo coste de operaciones
P (u)w = w −
2
uT u
(uT w)u.
• Como uuT es un matriz simétrica, entonces P (u) es una matriz simétrica.
• Además
P (u)P (u) = P (u)(I −
2
2
2
uuT ) = P (u) − T P (u)uuT = P (u) + T uuT = I.
uT u
u u
u u
Por tanto P (u) = P (u)−1 . Como además P (u) es simétrica, se sigue que P (u) es ortogonal.
• Para todo α 6= 0 se sigue que
P (αu) = I −
2
α2 uuT = P (u).
α2 uT u
• Si a, b ∈ Rn con a 6= b y kak2 = kbk2 , entonces P (a − b)a = b. Tomando u = a − b,
como la norma euclı́dea de ambos vectores es igual si definimos v = 12 (a + b), entonces
v ∈ u⊥ y a = 21 u+v. De donde P (a − b)a = − 21 u + v = b. Como las matrices ortogonales
conservan la norma euclı́dea, no tiene sentido preguntarse que pasa si kak2 6= kbk2 .
• Finalmente, si aT = (a1 , . . . , an ) ∈ Rn con ai 6= 0 para i = 2, . . . , n, entonces P (a + kak2 e1 )a =
−kak2 e1 y P (a − kak2 e1 )a = kak2 e1 .
Veamos cómo utilizar las matrices de Householder para triangularizar una matriz A =
(ai,j )1≤i,j≤n .
i Denotemos A0 = A y por aj = (a1,j , . . . , an,j )T el vector de la j–esima columna de A0 .
27
ii Si a22,1 + . . . + a2n,1 = 0, entonces pasamos al punto .
iii Si a22,1 + . . . + a2n,1 6= 0, entonces definimos s = ka1 k2 si a1,1 < 0 o s = −ka1 k2 si a1,1 > 0.
iv Calculamos u = a1 − se1 . Por tanto P (u)a1 = se1 .
v Para calcular P (u)A0 = (se1 , P (u)a2 , . . . , P (u)an ) hacemos
α =
P (u)a
2.2.5
j
2
uT u
=
j
−1
ka1 k2 (ka1 k2
T j
+ |a1,1 |)
= a − α(u a )u
=
−1
,
su1
Métodos iterativos
Los métodos iterativos para resolver un sistema de ecuaciones lineales Ax = b consisten en encontrar una matriz B, y dos vectores c, x0 ∈ Rn de forma que la sucesión {xk }∞
k=1 construida
según xk+1 = Bxk + c sea convergente a la solución del sistema original. Para ello necesitamos
de los siguientes conceptos previos.
Preliminares:
• Dado un K–espacio vectorial V, donde K = R, C, llamamos norma vectorial a una
aplicación kk : V → R tal que:
kxk = 0 si y solo si x = 0,
kλxk = |λ|kxk,
kx + yk ≤ kxk + kyk.
P
• Para todo p ∈ N la aplicación kxkp = ( ni=1 |xi |p )1/p es una norma vectorial. Únicamente
es necesario probar la desigualdad triangular, el resto son inmediatas.
Desigualdad de Minkowski:
n
X
k=1
!1
n
X
p
|xk + yk |p
≤
k=1
!1
p
|xk |p
+
n
X
k=1
!1
p
|yk |p
.
Elevamos a p ambos lados de la desigualdad.
Desarrollando el lado izquierdo obten Pn
Pn
Pp−1 p Pn
p
p
r
p−r . Desarrollando el lado dereemos k=1 |xk | + k=1 |yk | + r=1
k=1 |xk | |yk |
r
p−r
r P
P
P
P
P
p
cho obtenemos nk=1 |xk |p + nk=1 |yk |p + p−1
( nk=1 |xk |p ) p ( nk=1 |yk |p ) p . De
r=1
r
Pn
r
p−r ≤
donde resta por probar que para todo 1 ≤ r ≤ p tenemos que
k=1 |xk | |yk |
p−r
r P
Pn
( k=1 |xk |p ) p ( nk=1 |yk |p ) p . Para ello probamos la desigualdad de Hölder
n
X
k=1
|xk yk | ≤
n
X
k=1
|xk |p
!1/p
n
X
k=1
|yk |q
!1/q
para cualesquiera p > 1 y q > 1 tales que 1/p + 1/q = 1. Notemos que si la desigualdad de
Hölder es cierta para vectores
lo es para vectores λx
Pn x e y,pentonces
Pn tambien
Pynµy. Por tanto
p
podemos considerar que k=1 |xk | = k=1 |yk | = 1. Veamos pues que
k=1 |xk yk | ≤ 1.
Ra
Consideremos la función y = xp−1 y su inversa x = y q−1 . Si S1 = 0 xp−1 dx = ap /p y
28
Rb
S2 = 0 y q−1 dy = bq /q, mirando la representación
gráfica
inmediato que
Pn
Pnde S1 yp S2 esP
p
q
ab ≤ S1 + S2 = a /p + b /q. De donde k=1 |xk yk | ≤ 1/p k=1 |xk | + 1/q nk=1 |yk |q = 1.
A las normas p se las denomina normas Hölder. El caso particular p = 2 se denomina
norma euclideana.
• La aplicación kxk∞ = maxi=1,...,n {|xi |} es una norma vectorial y se denomina norma del
máximo.
• Diremos que una aplicación kk : Mn (K) → R es una norma matricial, si es una norma
vectorial y además satisface que kABk ≤ kAkkBk.
• Una norma matricial es una norma consistente con la norma vectorial del espacio
si kAxk ≤ kAkkxk. Aunque la notación puede inducir a confusión las normas de la desigualdad anterior significan cosas diferentes, y es bueno tenerlo presente. La aplicación
kAk = max{kAxk/kxk} es una norma matricial consistente con la norma vectorial que se
denomina norma subordinada.
• Si A ∈ Mn (Rn ) diremos que un vector v 6= 0 es un vector propio si existe un valor
λ ∈ R tal que Av = λv. Al valor λ se le llama valor propio asociado al vector propio
v. Denominamos polinomio caracterı́stico de A al polinomio det(A − λI). Los valores
propios son las raices del polinomio caracterı́stico.
• La matriz A y su transpuesta AT tienen los mismos valores propios.
• Una matriz es inversible si y solo si tiene todos sus valores propios diferentes de cero.
Como det(A−1 − λI) = (−λ)n det(A−1 ) det(A − λ1 I), los valores propios de la inversa son
los inversos de los valores propios de A.
Teorema 22 (Teorema de Gerschgorin) Los valores propios de una matriz A = (ai,j )1≤i,j≤n
están contenidos dentro del plano complejo en la unión F de los discos






n


X
|ai,j | para todo i = 1, 2, . . . , n,
Fi = z : |z − ai,i | ≤




j =1


j 6= i
y tambien en la unión C de los discos






n


X
Cj = z : |z − aj,j | ≤
|ai,j | para todo j = 1, 2, . . . , n.




i=1


i 6= j
Además, si una componente conexa de F o de C esta formada por k discos, entonces esta
componente contiene exáctamente k valores propios teniendo en cuenta la multiplicidad.
Demostración: Sea v un vector propio de A y λ el valor propio asociado, esto es (A −
|vi |
. + (ak,k −
λI)v = 0. Sea |vk | = kvk∞ 6= 0, entonces |v
| ≤ 1 para todo i. De ak,1 v1 + . .P
k
P
vi
λ)vk +. . .+ak,n vn = 0 se sigue que ak,k −λ = i6=k ai,k vk , de donde |ak,k −λ| ≤ i6=k |ai,k |.
En consecuencia λ ∈ Fk ⊂ F. Para ver que λ ∈ C tomamos la matriz transpuesta.
m
n
Supongamos que ∪m
i=1 Fi es una componente conexa de F, esto es ∪i=1 Fi ∩ ∪i=m+1 Fi = ∅
y veamos que A tiene m valores propios en la componente conexa. Descomponemos A
como suma de la matriz diagonal y del resto, A = D + R. Definimos la familia de matrices
29
At = D + tR en el intervalo [0, 1] de forma que A0 = D y A1 = A. Los valores propios de
A0 son los centros de los discos Fi por lo que A0 tiene exactamente m valores propios en la
componente conexa. Como los valores propios de At varian continuamente con t, existen
exactamente m en la componente conexa. Lo que prueba el teorema.
• Si λi para i = 1, 2, . . . , m son los valores propios de la matriz A llamamos radio espectral
de A y lo denotamos por ρ(A) al maxi {|λi |}.
• Las normas matriciales subordinadas a las normas vectoriales kk1 , kk2 y kk∞ son:
P
kAk1 = maxj=1,...,n { ni=1 |ai,j |} ,
P
kAk1 = maxkxk1 =1 {kAxk1 } ≥ kAek k1 = ni=1 |ai,k | parta todo k por tanto, es
mayor que el máximo de la suma por columnas,
SupongamosPque el máximo de la sumaPpor columnas se alcanza en la columna
n
n
j0 , esto es
|ai,j |} . Para
i=1 |ai,j0 | = maxj=1,...,n
Pn { Pi=1
Pncualquier
Pn vector x de
n
norma
1
se
tiene
que
kAxk
=
|
a
x
|
≤
(
i=1
j=1 i,j j
j=1
i=1 |ai,j |) |xj | ≤
Pn Pn
P1 n
j=1 ( i=1 |ai,j0 |) |xj | ≤ ( i=1 |ai,j0 |) .
p
kAk2 = ρ(AT A).
∗ En primer lugar definimos el cociente de Rayleigh (1842-1919) de una matriz M
como la aplicación RM : V \ {0} → C definida según
RM (v) =
vT M v
.
vT v
∗ Si v es una valor propio de M de valor propio λ, entonces RM (v) = λ.
∗ Si M es simétrica, tiene todos los valores propios reales (λ1 ≤ . . . ≤ λn ) y existe
una base de vectores propios ortogonal {p1 , . . . pn }(ver ”Introduction à l’analyse
numérique matricielle et à l’optimisation” [Philippe G. Ciarlet] Dunod). Si U es la
matriz con columnas los vectores propios, entonces U T M U es una matriz diagonal
D con los valores propios en la diagonal. Por tanto si v = U w, entonces RM (v) =
Pk
P
λi |αi |2
. De donde
RD (w). Tomando v = ki=1 αi pi , se sigue que RM (v) = Pi=1
k
2
i=1
|αi |
es sencillo ver que λk = max{RM (v) : v ∈ Vk }, siendo Vk =< p1 , . . . pk > .
∗ De lo anterior se deduce que cuando M es simétrica, ρ(M ) = max{RM (v) : v ∈
T T
V }. Por otra parte, kAk22 = sup v vAT vAv = max{RAT A (v) : v ∈ V } = ρ(AT A).
nP
o
n
kAk∞ = maxi=1,...,n
|a
|
.
j=1 i,j
Pn
Supongamos
que
el
máximo
por
filas
se
da
en
la
fila
i
,
esto
es
0
j=1 |ai0 ,j | =
Pn
maxi { j=1 |ai,j |}. Sea v tal que P
vj = 1 si ai0 ,j >P
0 y vj = −1 en otro caso. Por
tanto, kAk∞ ≥ kAvk∞ = maxi {| nj=1 ai,j vj |} ≥ nj=1 |ai0 ,j |.
Pn
Para cualquier
vector x de norma
Pn
Pn1 se sigue que kAxk∞ = maxi {| j=1 ai,j xj |} ≤
maxi { j=1 |ai,j ||xj |} ≤ maxi { j=1 |ai,j |}.
• El radio espectral es menor que cualquier norma matricial de la matriz: ρ(A) ≤ kAk.
En efecto, si λ es el valor propio tal que |λ| = ρ(A) y v es el vector propio asociado,
entonces para cualquier vector w tal que la matriz vwT no tenga norma nula tenemos que
ρ(A)kvwT k = kλvwT k = kAvwT k ≤ kAkkvwT k. De donde se sigue el resultado• Dada una matriz A y un valor ε > 0 existe una norma matricial subordinada a una norma
vectorial tal que kAk ≤ ρ(A) + ε. Una demostración se puede encontrar en ”Introduction
à l’analyse ....” [Philippe G. Ciarlet] Dunod.
30
Criterios de convergencia de los métodos iterativos.
Para ver que la sucesión {xk } generada por un método iterativo es convergente veamos que
es de Cauchy (Rn es un espacio de Banach) kxk+1 − xk k ≤ kB(xk − xk−1 )k ≤ kBkkxk − xk−1 k ≤
kBkk kx1 − x0 k. Luego una condición suficiente para la convergencia es que kBk < 1 para alguna
norma matricial consistente con la norma vectorial. En particular, si ρ(B) < 1 entonces el
método es convergente para alguna norma; mientras que si ρ(A) ≥ 1 el método es divergente en
cualquier norma. Finalmente, si kBk < 1 y la sucesión de iterados converge a z, entonces
k
k+n
kz − x k ≤ kz − x
k+
n−1
X
i=0
kxk+1+i − xk+i k ≤ . . . ≤
kBkk
kx1 − x0 k
1 − kBk
Método de Jacobi.
Si los elementos de la diagonal de la matriz A son diferentes de 0 podemos descomponer A
como A = D(L + I + U ) donde D es la matriz de la diagonal de A, L es una matriz triangular
inferior con ceros en la diagonal y U es una matriz triangular superior con ceros en la diagonal.
El sistema Ax = b es por tanto equivalente al sistema x = −(L + U )x + D−1 b. El método de
Jacobi consiste en tomar BJ = −(L + U ) y cJ = D −1 b, que en lenguaje algorı́tmico se puede
escribir como:
1 − kBJ k
ln ε 1
kx − x0 k
• Sea n ≥
ln kBJ k
• For k = 1, 2, . . . , n
P
1 k
b
−
a
x
=
xk+1
i
i,j
j
i
j6=i
ai,i
Método de Gauss–Seidel.
Al igual que el método de Jacobi, se aplica a sistemas lineales donde la matriz A no tiene
ceros en la diagonal. Notar que con transformaciones elementales podemos eliminar los ceros de
la diagonal sin alterar el conjunto de soluciones del sistema. Partiendo de A = D(L+ I + U ) y de
que D y L + I son matrices invertibles, el sistema es equivalente al sistema x = −(L + I)−1 U x +
(L+I)−1 D −1 b. El método de Gauss–Seidel consiste pues en tomar BGS = −(L+I)−1 U y cGS =
(L+I)−1 D−1 b. Sin embargo consideraremos la siguiente versión: xk+1 = −Lxk+1 −U xk +D−1 b,
donde se aprecia que el método de Gauss–Seidel aprovecha la información que va opteniendo en
el paso k + 1. Este método en leguaje algoritmico se puede escribir según:
1 − kBGS k
ln ε 1
kx − x0 k
• Sea n ≥
ln kBGS k
• For k = 1, 2, . . . , n
Pn
Pi−1
1 k+1
k
=
xk+1
−
a
x
b
−
a
x
i,j
i
i,j
j
i
j
j=i+1
j=1
ai,i
Método de sobrerelajación.
Se trata de una familia de métodos que generaliza el método de Gauss–Seidel. De nuevo
exige que A no tenga ceros en la diagonal, y partimos del sistema equivalente x = x−ω(Lx+(I +
U )x− D −1 x), que podemos escribir como x = Bω x+ cω donde Bω = (I + ωL)−1 [(1 − ω)I − ωU ]
y cω = ω(I + ωL)−1 D −1 b. A partir de aqui podemos construir el siguiente algoritmo:
1 − kBω k
ln ε 1
kx − x0 k
• Sea n ≥
ln kBω k
31
• For k = 1, 2, . . . , n
+
= xk+1
xk+1
i
i
Pn
P
ω k+1
k
−
a
x
bi − i−1
a
x
j=i i,j j
j=1 i,j j
ai,i
Convergéncia de Jacobi, Gauss–Seidel y sobrerelajación.
Consideraciones sobre la convergencia.
• El método de Jacobi, Gauss–Seidel o sobrerelajación converge si el rádio espectral de BJ ,
BGS o Bω es menor que 1.
• Si A es estrı́ctamente diagonal, los métodos de Jacobi y Gauss–Seidel convergen.
• Si ω 6∈ (0, 2) el rádio espectral de la matriz de sobrerelajación es mayor que 1.
Q
)
= (1 − ω)n , entonces ni=1 λi = (1 − ω)n . Por otra
Como det(Bω ) = det((1−ω)I−ωU
det(I+ωL)
parte ρ(Bω ) ≥ |λi | para todo i. En consecuencia, ρ(Bω ) ≥ |1 − ω|.
• Si A simétrica, con valores positivos en la diagonal y definida positiva, el método de
sobrerelajación converge siempre que ω ∈ (0, 2).
Consideraciones sobre la velocidad de convergencia.
• Para matrices A definidas positivas, tridiagonal por bloques y tales que los bloques de la
diagonal sean matrices diagonales tenemos que ρ(BGS ) = ρ(BJ )2 .
• Si además los valores propios de BJ están en el intervalo (−1, 1), entonces ρ(Bω ) alcanza
su mı́nimo en
2
p
<2
1 < ω̃ =
1 + 1 − ρ(BJ )2
y además ρ(Bω̃ ) = ω̃ − 1.
2.3
Ceros de funciones no lineales en Rn .
Dada una función f : Rn → Rn , en este capı́tulo estamos interesados en cálcular, cuando existan,
los posibles valores que satisfacen la ecuación no lineal f (x) = 0. Estos valores se conocen como
ceros de la función o raices en el caso particular de que f sea una función polinomica.
Dividimos el tema en dos grandes secciones, en la primera estudiamos el caso particular n = 1,
y dejamos el caso general para la segunda.
2.3.1
Caso unidimensional
Presentamos diferentes métodos iterativos para el cálculo del cero α de una función f (x). Por lo
general estos métodos consisten en generar, a partir de un valor inicial x0 , una sucesión {xn }∞
n=0
de valores convergentes a α.
La bondad de un método la clasificaremos por la velocidad de convergencia de la sucesión
de iterados xn ∞
n=0 a
2.3.2
Método de bisección
A partir del Teorema de Bolzano que asegura que toda función continua en un intervalo [a, b] de
forma que f (a)f (b) < 0, tiene un cero α en (a, b), construimos un algoritmo para aproximarnos a
α. Dividimos el intervalo por la mitad c = a+b
2 y nos quedamos con el subintervalo que contenga
a la raiz, por el Teorema de Bolzano es suficiente con analizar el signo de f (c)f (a). De esta forma
generamos una sucesión de intervalos que contienen a la raiz y que cada uno tienen longitud la
mitad que el anterior.
32
2.3.3
Métodos de secante y regula–falsi
2.3.4
Método de Newton
2.3.5
Método de punto fijo
Sea g una función tal que las ecuaciones f (x) = 0 y x = g(x) tienen las mismas soluciones. A
las soluciones de la segunda ecuación se les denomina punto fijo de g. El siguiente teorema
nos garantiza, bajo ciertas hipótesis, la existencia de un único punto fijo α y un método para
calcularlo.
Teorema 23
(a) Toda función continua g : [a, b] → [a, b], con a, b ∈ R, tiene un punto fijo α.
(b) Además, si existe 0 ≤ L < 1 tal que |g(x) − g(y)| < L|x − y|, entonces:
- el punto fijo es único,
- para todo x0 en [a, b], la sucesión de iterados {xn }∞
n=0 generada según xn+1 = g(xn )
converge a α,
- y además
|α − xn | ≤
Ln
|x1 − x0 |.
(1 − L)
• Supongamos g : [a, b] → [a, b] es una función derivable, entonces existe un punto fijo α.
• Si 0 < g′ (α) < 1, la sucesión de iterados en un entorno de α converge con velocidad 1/g′ (α)
y orden 1.
• Si 0 = g′ (α) = . . . = gp−1) (α) y gp) (α) 6= 0 entonces la sucesión converge con velocidad
1/gp (α) y orden p.
• El método de biseción tiene orden 1 y velocidad 2.
• Si f ′ (α) 6= 0 el método de la secante tiene orden almenos (1 +
√
5)/2.
• Si f ′ (α) 6= 0, entonces el método de Newton tiene orden 2 y si f ′ (α) = 0 entonces tiene
orden 1.
2.3.6
Métodos para polinomios
Aunque todos los métodos anteriores son aplicables al caso particular en que la función f (x) es
un polinomio, en esta sección desarrollaremos otros métodos que en la práctica únicamente se
aplican al caso polinomial pn (x) = a0 + a1 x + a2 x2 + . . . + an xn . Pero, por qué distinguimos el
caso polinomial del resto.
• Un polinomio de grado n tiene n raices.
• Si α es una raiz de pn (x), entonces (x − α) divide a pn (x) dicho de otra forma,
pn−1 (x) =
pn (x)
x−α
es un polinomio de grado n − 1. En consecuencia, podemos calcular todas las raices de
pn (x), o al menos las reales. Esta forma de proceder se conoce como deflacción de un
polinomio.
– Veamos un algoritmo útil para el cálculo de pn−1 (x) = b0 + b1 x + . . . + bn−1 xn−1 .
33
bn−1 = an
For j = n − 2, . . . , −1
bj = bj+1 α + aj+1
En el algoritmo anterior b−1 contiene el valor del resto de la división, que deberı́a ser
cero en el caso de α raiz de pn (x).
– Si estudiamos la propagación de un posible error E(α) en la raiz α a lo largo del
algoritmo anterior es fácil concluir que el error E(bk ) en el coeficiente bk se escribe
según E(bk ) = (|bk+1 | + |α||bk+2 | + . . . + |α|n−k−1 |bn−1 |)E(α).
– Por tanto la deflacción introduce errores en los coeficientes de los polinomios que van
apareciendo. Con el fin de minimizar esos errores es preferible calcular en primer
lugar la raiz α de módulo más pequeño.
– En el caso de que α sea la raiz de módulo mayor de pn (x), entonces 1/α es la raiz de
módulo más pequeño de qn (x) = an + an−1 x + . . . + a0 xn , donde pn (x) = xn qn (1/x).
Ası́ podemos aplicar la deflacción a qn (x) obteniendo qn−1 (x) = qn (x)/(x − 1/α) y
por tanto αpn (x) = −(x − α)qn−1 (x).
• Toda raiz α de pn (x) satisface que:
(
|α| ≤ max 1,
|α| ≤
n−1
X
k=0
|ak |
|an |
)
,
|ak |
1+
.
k=0,...,n−1
|an |
max
Recordamos que esto se obtenia al demostrar que (−1)n (d0 + d1 x + . . . + dn−1 xn−1 + xn )
es el polinomio caracteristico de una matriz cuya primera fila contiene a los coeficiente en
orden inverso y cambiados de signo y unos en la subdiagonal.
2.3.7
Método de Sturm
Diremos que una sucesión de polinomios p0 (x), p1 (x), . . . , pm (x) es una sucesión de Sturm en
(a, b) con a y b no necesariamente finitos, si:
• pm (x) no se anula en (a, b),
• si pk (α) = 0 con k = 1, . . . , m − 1 entonces pk−1 (α)pk+1 (α) < 0.
De la definición se deduce que si {pk } es una sucesión de Sturm y α un cero de p0 entonces
p1 (α) 6= 0. En otro caso, aplicando la segunda propiedad tenemos que p0 (α)p2 (α) < 0, en
contradicción con que p0 (α) = 0.
Dada una sucesión de Sturm {pk }m
k=0 y x0 ∈ (a, b) tal que p0 (x0 ) 6= 0, definimos V (x0 ) como
el número de cambios de signo en la secuencia {signo(p0 (x0 )), signo(p1 (x0 )), . . . , signo(pm (x0 ))},
x
si x 6= 0 y signo(0) = 0. Si a
siendo los valores 0 ignorados y la función signo(x) igual a |x|
es finito, definimos V (a) = V (a + ε) con ε suficientemente pequeño para que la sucesión no
tenga ceros en (a, a + ε). De forma similar, si b es finito, definimos V (b) = V (b − ε). Si a
es infinito, entonces definimos V (a) = limxց−∞ V (x). Análogamente, si b ր +∞, definimos
V (b) = limxր+∞ V (x).
Sea R(x) una función racional en (a, b) y x0 un polo de R(x). Diremos que x0 es un polo
positivo (respectivamente, negativo) si en un entorno punteado suyo (quitando x0 ) la función
R′ (x) > 0 (respectivamente, R′ (x) < 0). Los polos en los que la derivada es positiva a un lado
y negativa en el otro los denominaremos nulos. Definimos el indice de Cauchy de R(x) en
(a, b) y lo denotamos por Iab R(x) como el número de polos positivos menos el número de polos
negativos que R(x) tiene en el intervalo (a, b).
34
Teorema 24 Si {pk (x)}m
k=0 es una sucesión de Sturm en (a, b) con p0 (a) 6= 0 y p0 (b) 6= 0,
entonces
p1 (x)
= V (a) − V (b).
Iab
p0 (x)
Esquema de la demostración
• Notar que V (x) sólo puede cambiar de valor al pasar por un cero de uno de los polinomios
de la sucesión. Sin embargo, por la propiedad segunda se ve que únicamente puede cambiar
de valor al pasar por los ceros p0 (x).
• Por la propiedad segunda, sabemos que si α es un cero de p0 no es cero de p1 . Luego p1
no cambia de signo en un entorno de α, entonces el conjunto de ceros de p0 es el mismo
que el conjunto de polos de p1 /p0 .
• Si α es un cero de orden par de p0 (x), el valor de V (x) y de Iab pp10 no cambia.
• Si α es un cero de orden impar de p0 (x), el valor de V (x) y de Iab pp01 si cambia. V (x)
aumenta en 1 si p0 y p1 tienen el mismo signo a la izquierda de α. Disminuye en 1 si tienen
signo contrario a la izquierda de α. Notar que Iab pp01 se incrementa en 1 si p0 y p1 tienen
signo contrario a la izquierda de α y disminuye en 1 si tienen el mismo signo.
Llamamos método del Sturm al método para calcular todas las raices reales de un polinomio
pn (x) y que utiliza una sucesión de Sturm para separar las raices reales y una combinación del
método de bisección y Newton para obtener con precisión su valor.
35

Documentos relacionados