Sistemes Lineals. x 1 x 2. ., x = x m

Texto completo

(1)

M`etodes Num`erics Sistemes Lineals. 0.1 Introducci´on

Consideremos el sistema de ecuaciones lineales          a1,1x1 + a1,2x2 + · · · + a1,mxm = b1, a2,1x1 + a2,2x2 + · · · + a2,mxm = b2, .. . ... . .. ... ... an,1x1 + an,2x2 + · · · + an,mxm = bn, (1)

que en lenguaje matricial se escribe como Ax=b,siendo

A=      a1,1 a1,2 · · · a1,m a2,1 a2,2 · · · a2,m .. . ... . .. ... an,1 an,2 · · · an,m      ,x=      x1 x2 .. . xm      y b=      b1 b2 .. . bn     

donde A es la matriz de los coeficientes,x es vector de las incognitas yb es elvector independiente.

La existencia de soluciones del sistema (1) esta resumida en la siguiente versi´on del Teorema de Rouch´e–Frobenius.

• Si Rang(A) = Rang(A|b) (donde porA|bdenotamos la matriz ampliada) entonces se dice que (1) es un sistema compatible, equivalentemente tiene soluci´on.

– Si Rang(A) = m, entonces la soluci´on es ´unica y el sistema se denomina sistema determinado.

– Si Rang(A)< m, entonces existen infinitas soluciones y el sistema se denomina sis-tema indeterminado.

• Si Rang(A)<Rang(A|b),el sistema (1) no tiene soluci´on y se denominasistema incom-patible.

En este cap´ıtulo buscamos algoritmos y estrat´egias para el c´alculo de la soluci´on de un sistema de ecuaciones lineales (1) compatible y determinado que sean f´aciles de implementar en un ordenador y supongan un bajo coste en operaciones. De estos m´etodos los hay de dos tipos. • M´etodos directos, que permiten obtener la soluci´on exacta (salvo errores de redondeo) en un n´umero finito de pasos. A esta categor´ıa pertenecen los m´etodos de resoluci´on de matrices especiales (diagonales y triangulares), el m´etodo de Gauss, la factorizaci´on LU, factorizaci´on QR.

• M´etodos iterativos, en los que se construye una sucesi´on de soluciones que tiende a la soluci´on exacta. A esta categor´ıa pertenecen los m´etodos de Jacobi, de Gauss-Seidel y de sobrerelajaci´on.

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.

(2)

0.2 M´etodos directos 0.2.1 Sistemas diagonales

Consideremos el caso especialA= (ai,j)1≤i,j≤n con

ai,j= 0 si i6=j

ai,i =ai

que se denominamatriz diagonal y se denota por A = diag{a1, a2, . . . , an}.Como asumimos

que la matriz es regular se sigue que ai6= 0.

• For i=1,2, . . . ,n xi= bi

ai

Este algoritmo necesita ndivisiones para resolver el problema. 0.2.2 Sustituci´on hacia atras

Consideremos el casoA= (ai,j)1≤i,j≤nconai,j = 0 sii > jque se denominamatriz triangular

superior. Como det(A) =Qn

i=1ai,i,se sigue que ai,i6= 0 para todo i.

• xn = bn an,n • For i=n−1, . . . ,1 xi = bi− Pn j=i+1ai,jxj ai,i

Para el calculo de xk se necesitann−k multiplicaciones, n−k restas y una division, que

en total sonn(n−1)/2 multiplicaciones, n(n−1)/2 restas y ndivisiones, equivalentementen2 operaciones.

0.2.3 Sustituci´on hacia adelante

Consideremos el casoA= (ai,j)1≤i,j≤nconai,j = 0 sii < jque se denominamatriz triangular

inferior. Como det(A) =Qn

i=1ai,i,se sigue que ai,i 6= 0 para todo i.

• x1 = b1 a1,1 • For i=2, . . . ,n xi= bi− Pi−1 j=1ai,jxj ai,i

Para el calculo de xk se necesitan k−1 multiplicaciones, k−1 restas y una division, que

en total sonn(n−1)/2 multiplicaciones, n(n−1)/2 restas y ndivisiones, equivalentementen2 operaciones.

(3)

0.2.4 M´etodo de Gauss

El m´etodo de Gauss es el primero de los m´etodos que estudiaremos para la resoluci´on de un sistema de ecuaciones lineales con matriz de coeficientes general y no singular. El m´etodo 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´onde dos ecuaciones.

• Multimplicar por un n´umero real no nulo una de las ecuaciones.

• Restar a una ecuaci´on una combinaci´on linealdel resto de las ecuaciones.

Otra forma de enterder el m´etodo de Gauss es pensar que en cada paso despejamos una variable en una ecuaci´on y la sustituimos en el resto de las ecuaciones. Partiendo de la matriz ampliada (A1|b1) = (A|b) pasamos a (A2|b2) seg´un:

F1 1 → F21 → .. . Fn1 →      a11,1 a11,2 · · · a11,n b11, a1 2,1 a12,2 · · · a12,n b12, .. . ... . .. ... ... a1n,1 a1n,2 · · · a1n,n b1n,      −−−−−−−−−−−−−−→ mi,1 = a1i,1/a11,1 Fi2 = Fi1−mi,1F11 i = 2,3, . . . , n      a11,1 a11,2 · · · a11,n b11, 0 a2 2,2 · · · a22,n b22, .. . ... . .. ... ... 0 a2n,2 · · · a2n,n b2n,      .

En este nuevo sistema tenemos que la variablex1 unicamente interviene en la primera ecuaci´´ on.

An´alogos razonamientos nos llevan del sistema (A2|b2) al sistema (A3|b3) que para el que la

segunda variable x2 intervine ´unicamente 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´etodo de sustituci´on hacia atras.

• For k=1,2, . . . ,n−1 For i=k+1,k+2, . . . ,n mi,k = ai,k ak,k ai,k =0 For j=k+1,k+2, . . . ,n ai,j=ai,j−mi,kak,j bi =bi−mi,kbk

En el algoritmo anterior aparece una operaci´on que no siempre est´a definida, y a´un cuando lo est´a, puede no ser num´ericamente aceptable, no referimos a la divisi´on. Recordamos que la divisi´on por n´umeros peque¨ı¿12os amplifica el error absoluto. Para evitar este problema existen dos variantes del m´etodo de Gauss conocidas como m´etodo de Gauss con pivote m´aximo por columnas y m´etodo de Gauss con pivote maximal.

Pivotage m´aximo por columnas. Para este m´etodo, en el pasok antes de calcularmi,k

buscamos en la columna k la fila m tal que |ak

m,k| ≥ |aki,k| parak ≤i≤n e intercambiamos la

filakpor la filam.Supongamos queakm,k = 0,en ese casoaki,k = 0 parak≤i≤nydet(A) = 0, en contradicci´on con las hip´otesis. Por tantoak

m,k 6= 0.

Como hemos visto, si det(A) = 0,entonces para alg´un kel pivote ak

m,k podr´ıa ser cero. En

tal caso, podemos dejar esta fila como est´a y continuar el proceso con la fila siguiente, no siendo necesaria la detenci´on del algoritmo. Llegamos al siguiente resultado.

(4)

Teorema 1. El m´etodo de Gauss con pivotage m´aximo 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´on en comparaci´on con el m´etodo 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 If am,k=0 then Alerta! → det(A) =0 mi,k=1 else intercabiar filas k y m mi,k= ai,k ak,k ai,k=0 For j=k+1,k+2, . . . ,n ai,j =ai,j−mi,kak,j bi =bi−mi,kbk

Pivotage maximal. En esta variante del m´etodo de Gauss el pivote no se busca ´unicamente entre los elementos de la columna, si no que se busca de entre todos los elementos de la submatriz Ak,formada por las filask, . . . , n y las columnask, . . . , 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 .1×10−3 .2×101 .2×101 .1×101 .1×101 .1×101 0  →   .1×101 0 .1×101 .1×101 0 .1×10−3 .1×101 .1×101 0 .1×101 0 −.1×101  

Sin pivotaje se sigue:   .1×101 0 .1×101 .1×101 0 .1×10−3 .1×101 .1×101 0 0 −.1×105 −.1×105  → ¯ x1 = 0 ¯ x2 = 0 ¯ x3 = 1 Con pivotaje:   .1×101 0 .1×101 .1×101 0 .1×101 0 −.1×101 0 0 .1×101 .1×101  → ˜ x1 = 0 ˜ x2=−1 ˜ x3 = 1

Veamos en cual de las dos soluciones ¯x,x˜cometemos menos error. Sixes la soluci´on correcta de un sistema Ax=b y x¯ es la aproximada, esto es, A¯x=b,¯ entonces el error es la soluci´on

(5)

del sistemaAex =b−¯b. En nuestro caso ex¯ = −10−4,−1,10−4

ye˜x = −10−4,0,10−4

. De donde se sigue que la soluci´on ˜xes m´as aproximada.

Contemos el n´umero de operaciones que necesitamos para resolver un sistema linealn×npor el m´etodo de eliminaci´on Gaussiana sin pivotaje. Para parak= 1, . . . , n−1 y i=k+ 1, . . . , n hacemos 1 divisi´on,n−k productos, n−k restas, 1 producto y 1 resta. Para k= 1, . . . , n−1 tenemos n−kdivisiones, (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= 3n(n−1) 2 + 2 n(n−1)(2n−1) 6 = 2n3 3 +O(n 2).

Supongamos que queremos utilizar el m´etodo de Gauss para el c´alculo 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´on 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´etodo de factorizaci´on LU trata de obtener beneficios de esta idea.

0.2.5 M´etodo LU

En este apartado presentamos otra m´etodo 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´etodo de Gauss, existe una posible factorizaci´on para la matrizA. LlamemosU a la matriz triangular superior obtenida al aplicar el m´etodo de Gauss aA y seanmi,k los factores que construimos en el m´etodo de Gauss. Entonces:

A=A1 =        F11 F21 F31 .. . Fn1        →A2 =        F11 F22=F21−m2,1F11 F32=F31−m3,1F11 .. . Fn2 =Fn1−mn,1F11        →A3 =        F11 F22 F33 =F32−m3,2F22 .. . Fn3 =Fn2−mn,2F22        →. . . U. ←         1 0 0 . . . 0 m2,1 1 0 . . . 0 m3,1 0 1 ... .. . ... ... . .. ... mn,1 0 0 . . . 1         ←         1 0 0 . . . 0 0 1 0 . . . 0 0 m3,2 1 ... .. . ... ... . .. ... 0 mn,2 0 . . . 1         ←. . .

De donde se sigue que si li,i = 1 para 1 ≤ i ≤ n y li,j = mi,j con 1 ≤ j < i ≤ n, entonces

A =LU. Sabiendo que la diagonal de L est´a formada por unos, las matrices L y U se pueden almacenar en la misma matrizA.

• 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,kak,j

(6)

En este algoritmo guardamos los multiplicadores en debajo de la diagonal y la matriz U en la diagonal y arriba de ella.

Teorema 2. (a) La factorizaci´on de A existe si se le puede aplicar el m´etodo de Gauss.

(b) Si existe, la factorizaci´on LU de una matrizA es ´unica.

Demostraci´on: (a) Es consecuencia del algoritmo.

(b) Consideremos las siguientes afirmaciones sobre matrices triangulares.

• 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 =L1U1 =L2U2.Entonces U1U2−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 esU1U2−1=L

−1

1 L2=I,de donde se sigue que

U1 =U2 yL1 =L2.

Sabemos que la descomposici´on LU esta basada en el m´etodo de Gauss. Sin embargo este no puede aplicarse directamente a todas las matrices, ni tan siquiera a las regulares. Para ello introduciamos una modificaci´on de m´etodo de Gauss que consiste en permutar convenientemente las filas. Como la filas elegidas como pivote ´unicamente se mueven una vez, si sabemos de antemano las transformaciones a realizar las podemos hacer antes y aplicar el m´etodo de Gauss sin pivotar. De esta forma tenemos el siguiente resultado.

Teorema 3. Sea A una matriz regular. Existen P una matriz de permutaci´on, L una matriz

triangular inferior con unos en la diagonal y U una matriz triangular superior, de forma que

P A=LU. Ejemplo: A=   1 2 3 4 5 6 7 8 1   −−−−→ (3,2,1)   7 8 1 4 5 6 1 2 3   −−−−−−−→ l2,1=−4/7 l3,2=−1/7   7 8 1 4/7 3/7 38/7 1/7 6/7 20/7   −−−−→ (3,1,2)   7 8 1 1/7 6/7 20/7 4/7 3/7 38/7   −−−−−−−→ l2,1=−1/2   7 8 1 1/7 6/7 20/7 4/7 1/2 4  

Y por tanto, las matricesL, U yP son las siguientes.

L=   1 0 0 1/7 1 0 4/7 1/2 1  , U =   7 8 1 0 6/7 20/7 0 0 4   yP =   0 0 1 1 0 0 0 1 0   0.2.6 M´etodo QR

Antes de describir el m´etodo, introducimos algunas definiciones. Dada una matrizA= (ai,j)1≤i,j≤n

definimosmatriz transpuestay la denotamos porAT a la matriz (˜ai,j)1i,jndondeai,j = ˜aj,i.

(7)

A es unamatriz ortogonal si A−1 =AT.De la definici´on se sigue que las filas (columnas) de una matriz ortogonal son vectores ortonormales.

El objeto del m´etodo QR es factorizar la matriz A en dos matrices una triangular superior que denotamos por Ry otra ortogonal que denotamos por Q. En consecuencia, para resolver el sistemaAx=b es suficiente resolver el sistema triangular Rx=QTb.

Las matrices ortogonales conservan la norma eucl´ıdea (kAxk2 =xTATAx =kxk2). El

de-terminante 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 ortogo-nales convenientemente elegidas hasta conseguir la mariz R. Pasemos a introducir las matrices ortogonales de Householder.

Matrices de Householder.

Dado un vectoru deRndenotamos poruT = (u1, . . . , un) al vector transpuesto, poruTu al

producto escalar, poruuT la matriz sim´etrica (uiuj))1≤i,j≤n y porP(u) la matriz de

House-holder

P(u) =I− 2 uTuuu

T

que tiene las siguientes propiedades: • Para todo c∈Rse sigue que

P(u)cu=cu− 2 uTuuu

Tcu=cu 2

uTuc(u

Tu)u=−cu

• Siu⊥ ={v∈Rn:uTv= 0}es el hiperplano ortogonal al vectoru yvu,entonces P(u)v=v− 2

uTuu(u

Tv) =v

• Siw∈Rn,entonces existe c

R tal que w=cu+v.Pot tanto P(u)w=−cu+v.Por

lo queP(u) es una simetr´ıa respecto del hiperplanou⊥.Adem´as,uTw=cuTu,de donde c= u

Tw

uTu.

De esta forma podemos calcularP(u)w sin construir la matriz de Householder y con un m´ınimo coste de operaciones

P(u)w=w− 2 uTu(u

Tw)u.

• ComouuT es un matriz sim´etrica, entoncesP(u) es una matriz sim´etrica. • Adem´as

P(u)P(u) =P(u)(I− 2 uTuuu T) =P(u) 2 uTuP(u)uu T =P(u) + 2 uTuuu T =I.

Por tantoP(u) =P(u)−1.Como adem´asP(u) es sim´etrica, se sigue queP(u) es ortogonal. • Para todo α6= 0 se sigue que

P(αu) =I− 2 α2uTuα

(8)

• Si a,b ∈ Rn con a 6= b y kak

2 = 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⊥ya= 12u+v.De dondeP(a−b)a=−1

2u+v=b.Como las matrices ortogonales

conservan la norma eucl´ıdea, no tiene sentido preguntarse que pasa sikak26=kbk2.

• Finalmente, siaT = (a1, . . . , an)∈Rnconai6= 0 parai= 2, . . . , n,entoncesP(a+kak2e1)a=

−kak2e1 y P(a− kak2e1)a=kak2e1.

Veamos c´omo utilizar las matrices de Householder para triangularizar una matriz A = (ai,j)1≤i,j≤n.

i DenotemosA0=Ay por aj = (a1,j, . . . , an,j)T el vector de la j–esima columna deA0.

ii Sia22,1+. . .+a2n,1= 0,entonces pasamos al punto . iii Si a2

2,1+. . .+a2n,16= 0,entonces definimoss=ka1k2 si a1,1 <0 os=−ka1k2 sia1,1>0.

iv Calculamosu=a1−se1.Por tanto P(u)a1 =se1.

v Para calcular P(u)A0 = (se1, P(u)a2, . . . , P(u)an) hacemos

α = 2 uTu = −1 ka1k 2(ka1k2+|a1,1|) = −1 su1 , P(u)aj = aj−α(uTaj)u 0.2.7 M´etodos iterativos

Los m´etodos iterativos para resolver un sistema de ecuaciones linealesAx=b consisten en en-contrar una matriz B, y dos vectores c,x0Rn de forma que la sucesi´on {x

k}∞k=1 construida

seg´un xk+1 =Bxk+c sea convergente a la soluci´on 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´onkk:V →Rtal que: kxk= 0 si y solo six= 0, kλxk=|λ|kxk,

kx+yk ≤ kxk+kyk.

• Para todop∈Nla aplicaci´on kxkp = (Pni=1|xi|p)1/p es una norma vectorial. ´Unicamente

es necesario probar la desigualdad triangular, el resto son inmediatas. Desigualdad de Minkowski: n X k=1 |xk+yk|p !p1 ≤ n X k=1 |xk|p !1p + n X k=1 |yk|p !1p .

Elevamos a p ambos lados de la desigualdad. Desarrollando el lado izquierdo obten-emosPn k=1|xk|p+Pnk=1|yk|p+Ppr=1−1 p r Pn

k=1|xk|r|yk|p−r.Desarrollando el lado

dere-cho obtenemosPn k=1|xk|p+Pnk=1|yk|p+Ppr=1−1 p r (Pn k=1|xk|p) r p (Pn k=1|yk|p) p−r p .De

(9)

donde resta por probar que para todo 1 ≤ r ≤ p tenemos que Pn k=1|xk|r|yk|p−r ≤ (Pn k=1|xk|p) r p(Pn k=1|yk|p) p−r

p .Para ello probamos la desigualdad de H¨older

n X k=1 |xkyk| ≤ n X k=1 |xk|p !1/p n X k=1 |yk|q !1/q

para cualesquierap >1 yq >1 tales que 1/p+ 1/q = 1.Notemos que si la desigualdad de H¨older es cierta para vectoresxey,entonces tambien lo es para vectoresλxyµy.Por tanto podemos considerar que Pn

k=1|xk|p=

Pn

k=1|yk|p = 1.Veamos pues que

Pn

k=1|xkyk| ≤1.

Consideremos la funci´on y = xp−1 y su inversa x = yq−1. Si S1 =

Ra 0 x p−1dx = ap/p y S2 = Rb 0 y

q−1dy = bq/q, mirando la representaci´on gr´afica de S

1 y S2 es inmediato que

ab≤S1+S2 =ap/p+bq/q.De donde Pnk=1|xkyk| ≤1/pPnk=1|xk|p+ 1/qPnk=1|yk|q= 1.

A las normas p se las denomina normas H¨older. El caso particular p= 2 se denomina norma euclideana.

• La aplicaci´onkxk∞= maxi=1,...,n{|xi|}es una norma vectorial y se denominanorma del

m´aximo.

• Diremos que una aplicaci´onkk:Mn(K)→R es unanorma matricial, si es una norma

vectorial y adem´as satisface quekABk ≤ kAkkBk.

• Una norma matricial es una norma consistente con la norma vectorial del espacio si kAxk ≤ kAkkxk. Aunque la notaci´on puede inducir a confusi´on las normas de la de-sigualdad anterior significan cosas diferentes, y es bueno tenerlo presente. La aplicaci´on kAk= max{kAxk/kxk} es una norma matricial consistente con la norma vectorial que se denominanorma subordinada.

• Si A ∈ Mn(Rn) diremos que un vector v6=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´ısticode A al polinomio det(A−λI).Los valores propios son las raices del polinomio caracter´ıstico.

• La matriz Ay 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) = (−λ)ndet(A−1) det(A− 1

λI),los valores propios de la inversa son

los inversos de los valores propios deA.

Teorema 4(Teorema de Gerschgorin). Los valores propios de una matrizA= (ai,j)1≤i,j≤n

est¨ı¿12n contenidos dentro del plano complejo en la uni´on F de los discos

Fi =        z:|z−ai,i| ≤ n X j= 1 j6=i |ai,j|        para todo i= 1,2, . . . , n,

y tambien en la uni´onC de los discos

Cj =        z:|z−aj,j| ≤ n X i= 1 i6=j |ai,j|        para todoj = 1,2, . . . , n.

Adem´as, si una componente conexa deF o de C esta formada pork discos, entonces esta

(10)

Demostraci´on: Sea v un vector propio de A y λ el valor propio asociado, esto es (A− λI)v=0.Sea |vk| =kvk∞ 6= 0,entonces ||vvi|

k| ≤ 1 para todo i. De ak,1v1+. . .+ (ak,k −

λ)vk+. . .+ak,nvn= 0 se sigue queak,k−λ=Pi6=kai,kvvki,de donde|ak,k−λ| ≤Pi6=k|ai,k|.

En consecuenciaλ∈ Fk ⊂ F.Para ver que λ∈ C tomamos la matriz transpuesta. Supongamos que∪m

i=1Fi es una componente conexa deF,esto es∪mi=1Fi∩ ∪ni=m+1Fi =∅

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 At=D+tR en el intervalo [0,1] de forma que A0 =D yA1 =A. Los valores propios de

A0 son los centros de los discosFi por lo queA0 tiene exactamentemvalores propios en la

componente conexa. Como los valores propios de At varian continuamente con t, existen

exactamentem en la componente conexa. Lo que prueba el teorema.

• Siλiparai= 1,2, . . . , mson los valores propios de la matrizAllamamosradio espectral

de Ay lo denotamos por ρ(A) al maxi{|λi|}.

• Las normas matriciales subordinadas a las normas vectorialeskk1,kk2 ykk∞ son: kAk1= maxj=1,...,n{Pni=1|ai,j|},

kAk1 = maxkxk1=1{kAxk1} ≥ kAekk1 = Pni=1|ai,k| parta todo k por tanto, es

mayor que el m¨ı¿12ximo de la suma por columnas,

Supongamos que el m´aximo de la suma por columnas se alcanza en la columna j0, esto es Pni=1|ai,j0| = maxj=1,...,n{

Pn

i=1|ai,j|}. Para cualquier vector x de

norma 1 se tiene que kAxk1 = Pni=1|Pnj=1ai,jxj| ≤ Pnj=1(Pni=1|ai,j|)|xj| ≤

Pn j=1( Pn i=1|ai,j0|)|xj| ≤( Pn i=1|ai,j0|). kAk2=pρ(ATA).

∗ En primer lugar definimos el cociente de Rayleigh (1842-1919) de una matrizM como la aplicaci¨ı¿12n RM :V \ {0} →Cdefinida seg´un

RM(v) =

vTMv vTv .

∗ Sives una valor propio de M de valor propioλ,entoncesRM(v) =λ.

∗ SiM es sim´etrica, tiene todos los valores propios reales (λ1≤. . .≤λn) y existe

una base de vectores propios ortogonal{p1, . . .pn}(ver ”Introduction `a l’analyse

num´erique matricielle et `a l’optimisation” [Philippe G. Ciarlet] Dunod). SiU es la matriz con columnas los vectores propios, entoncesUTM U es una matriz diagonal

Dcon los valores propios en la diagonal. Por tanto siv=Uw,entoncesRM(v) =

RD(w). Tomando v =Pki=1αipi, se sigue queRM(v) =

Pk

i=1λi|αi|2

Pk

i=1|αi|2 . De donde

es sencillo ver queλk = max{RM(v) :v∈Vk},siendoVk=<p1, . . .pk> .

∗ De lo anterior se deduce que cuandoM es sim´etrica,ρ(M) = max{RM(v) :v∈

V}.Por otra parte, kAk2

2 = supv

TATAv

vTv = max{RATA(v) :v∈V}=ρ(ATA).

kAk∞= maxi=1,...,n

n Pn

j=1|ai,j|

o .

Supongamos que el m´aximo por filas se da en la fila i0, esto es Pnj=1|ai0,j| = maxi{

Pn

j=1|ai,j|}. Seavtal que vj = 1 si ai0,j >0 y vj =−1 en otro caso. Por tanto,kAk∞≥ kAvk∞= maxi{|Pnj=1ai,jvj|} ≥Pnj=1|ai0,j|.

Para cualquier vectorxde norma 1 se sigue quekAxk∞= maxi{|Pnj=1ai,jxj|} ≤

maxi{

Pn

j=1|ai,j||xj|} ≤maxi{

Pn

(11)

• 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 vectorwtal que la matrizvwT no tenga norma nula tenemos que ρ(A)kvwTk=kλvwTk=kAvwTk ≤ kAkkvwTk.De donde se sigue el

resultado-• Dada una matrizAy un valorε >0 existe una norma matricial subordinada a una norma vectorial tal que kAk ≤ρ(A) +ε. Una demostraci´on se puede encontrar en ”Introduction `

a l’analyse ....” [Philippe G. Ciarlet] Dunod.

Criterios de convergencia de los m´etodos iterativos.

Para ver que la sucesi´on {xk}generada por un m´etodo iterativo es convergente veamos que

es de Cauchy (Rnes un espacio de Banach)kxk+1−xkk ≤ kB(xk−xk−1)k ≤ kBkkxk−xk−1k ≤

kBkkkx

1−x0k.Luego una condici´on suficiente para la convergencia es quekBk<1 para alguna

norma matricial consistente con la norma vectorial. En particular, si ρ(B) < 1 entonces el m´etodo es convergente para alguna norma; mientras que siρ(A)≥1 el m´etodo es divergente en cualquier norma. Finalmente, sikBk<1 y la sucesi´on de iterados converge az,entonces

kz−xkk ≤ kz−xk+nk+ n−1 X i=0 kxk+1+i−xk+ik ≤. . .≤ kBk k 1− kBkkx 1x0k M´etodo 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 Des la matriz de la diagonal deA, L es una matriz triangular inferior con ceros en la diagonal yU es una matriz triangular superior con ceros en la diagonal. El sistemaAx=b es por tanto equivalente al sistema x= −(L+U)x+D−1b.El m´etodo de Jacobi consiste en tomar BJ = −(L+U) y cJ = D−1b, que en lenguaje algor´ıtmico se puede

escribir como: • Sea n≥ ln ε 1− kBJk kx1x0k lnkBJk • For k=1,2, . . . ,n xk+1i = 1 ai,i bi−P j6=iai,jxkj M´etodo de Gauss–Seidel.

Al igual que el m´etodo 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 deA=D(L+I+U) y de queDyL+I son matrices invertibles, el sistema es equivalente al sistema x=−(L+I)−1Ux+ (L+I)−1D−1b.El m´etodo de Gauss–Seidel consiste pues en tomarBGS =−(L+I)−1U ycGS =

(L+I)−1D−1b.Sin embargo consideraremos la siguiente versi´on: xk+1=−Lxk+1−Uxk+D−1b,

donde se aprecia que el m´etodo de Gauss–Seidel aprovecha la informaci¨ı¿12n que va opteniendo en el pasok+ 1.Este m´etodo en leguaje algoritmico se puede escribir seg´un:

• Sea n≥ ln ε1− kBGSk kx1x0k lnkBGSk • For k=1,2, . . . ,n xk+1i = 1 ai,i bi−Pi−1 j=1ai,jxk+1j − Pn j=i+1ai,jxkj

(12)

M´etodo de sobrerelajaci´on.

Se trata de una familia de m´etodos que generaliza el m´etodo de Gauss–Seidel. De nuevo exige queAno tenga ceros en la diagonal, y partimos del sistema equivalentex=x−ω(Lx+(I+ U)x−D−1x),que podemos escribir comox=B

ωx+cω dondeBω= (I+ωL)−1[(1−ω)I−ωU]

ycω =ω(I +ωL)−1D−1b.A partir de aqui podemos construir el siguiente algoritmo:

• Sea n≥ ln ε1− kBωk kx1x0k lnkBωk • For k=1,2, . . . ,n xk+1i =xk+1i + ω ai,i bi−Pi−1 j=1ai,jxk+1j − Pn j=iai,jxkj

Converg´encia de Jacobi, Gauss–Seidel y sobrerelajaci´on. Consideraciones sobre la convergencia.

• El m´etodo de Jacobi, Gauss–Seidel o sobrerelajaci´on converge si el r´adio espectral de BJ,

BGS oBω es menor que 1.

• SiA es estr´ıctamente diagonal, los m´etodos de Jacobi y Gauss–Seidel convergen. • Siω6∈(0,2) el r´adio espectral de la matriz de sobrerelajaci´on es mayor que 1.

Como det(Bω) = det((1det(I+ωL)−ω)I−ωU) = (1−ω)n, entoncesQni=1λi = (1−ω)n. Por otra

parte ρ(Bω)≥ |λi|para todoi. En consecuencia, ρ(Bω)≥ |1−ω|.

• Si A sim´etrica, con valores positivos en la diagonal y definida positiva, el m´etodo de sobrerelajaci´on 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´as los valores propios deBJ est¨ı¿12n en el intervalo (−1,1),entoncesρ(Bω) alcanza

su m´ınimo en

1<ω˜ = 2

1 +p1−ρ(BJ)2

<2 y adem´asρ(B˜ω) = ˜ω−1.

Figure

Actualización...

Referencias

Actualización...

Related subjects :