Download - Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Transcript
Page 1: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Analisis Numerico deEcuaciones en Derivadas Parciales

2. Metodos Iterativos

G. Dıaz

Matematica AplicadaUCM

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 1 / 67

Page 2: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional

Como es bien sabido el operador autoadjunto

H2(0,L) ∩H10(0,L)

A−→ L2(0,L)u 7→ −∆u

admiteλn =

(nπL

)2(autovalores), n ≥ 1, 2, . . .

Xn(x) =

√2

Lsenx

√λn (autofunciones)

Para u ∈ L2(0,L), u(0) = 0 = u(L), se obtiene el desarrollo en L2(0,L)

u(x) =∑n≥1

Bn(u)Xn(x) (uniforme si u ∈ C0,α([0,L]))con

Bn(u) = 〈u,Xn〉2 =

√2

L

∫ L

0u(x) senx

√λndx, n ≥ 1.

Se prueba

‖u‖22 =∑n≥1

|Bn(u)|2 (identidad de Parseval).

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 2 / 67

Page 3: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional

Utilicemos esa herramienta para abordar el problema continuo−u′′ = f en ]0,L[,u(0) = 0 = u(L),

Se tiene

Bn(f) = 〈f,Xn〉 = 〈−u′′,Xn〉 = 〈u,−X′′n〉 = λn〈u,Xn〉 = λnBn(u), n ≥ 1,

de donde

u(x) =∑n≥1

Bn(f)

λnXn(x) =

∫ L

0G(x, ξ)f(ξ)dξ, 0 ≤ x ≤ L.

con

G(x, ξ) =

funcion de Green︷ ︸︸ ︷∑n≥1

Xn(x)Xn(ξ)

λn=

2L

π2

∑n≥1

sennπx

Lsen

nπξ

Ln2

, 0 ≤ x, ξ ≤ L.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 3 / 67

Page 4: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional

Se prueba la representacion

G(x, ξ) =

−(L + ξ)x

L, 0 ≤ x ≤ ξ ≤ L,

(L− x)ξ

L, 0 ≤ ξ ≤ x ≤ L.

0 0.5 1 1.5 2 2.5 3 3.5 40

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8Función aproximada de Green−Dirichlet del operador −u", con n = 100

x

G(x

,s)

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 4 / 67

Page 5: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional. Un ejemplo

Para la funcion de Heaviside enL

2, la solucion viene dada por

u(x) =

L

8x, 0 ≤ x ≤ L

2,

L− x2

(x− L

4

),

L

2≤ x ≤ L.

• Aunque f ∈ C([0,L] \ L2 ) se verifica u ∈ C1([0,L]) ∩ C2([0,L] \ L

2 ).

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 5 / 67

Page 6: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional. Un ejemplo

0 0.5 1 1.5 2 2.5 3 3.5 4

−1

−0.5

0

0.5

1

1.5

2

Solución exacta de −u"=HL/2

x

u(x

)

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 6 / 67

Page 7: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Armonicidad discreta en un intervalo

Sobre Ω =]0,L[ se considera el mallado unidimensional de paso

uniforme, h, en los nodos xj = jh, j = 0, . . . ,M + 1 =L

hcuyo conjunto

sera denotado por Ωh.

Nodos de contorno

Nodos interiores

Distinguimos dos tipos de nodos:• interiores xj ∈ Ωh dados por j = 1, . . . ,M.• contorno xj ∈ ∂Ωh dados por j = 0,M + 1.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 7 / 67

Page 8: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Armonicidad discreta en un intervalo

Usemos la discretizacion en diferencias centradas

∆u(x) =

∆hu(x)︷ ︸︸ ︷u(x+ h)− 2u(x) + u(x− h)

h2+O(h2),

se tienecontinuo︷ ︸︸ ︷∆u(x) =

discreto︷ ︸︸ ︷∆hu(x) +

truncamiento︷ ︸︸ ︷O(h2) .

Por tanto, estamos interesados en el esquema

∆hUj.=

Uj+1 − 2Uj + Uj−1

h2, j = 1, . . . ,M,

para ciertos valores Uj , sobre los nodos xj , destinados a aproximar auj = u(xj), que determinan funciones nodales U ∈ Nh,M+2.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 8 / 67

Page 9: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Armonicidad discreta en un intervalo

Observacion

• Para j = 1, . . . ,M, se tiene la equivalencia

Armonicidad discreta︷ ︸︸ ︷∆hUj = 0 ⇔ Uj =

Uj+1 + Uj−1

2︸ ︷︷ ︸Teorema del Valor Medio

• En ∆hUj , con j = 1,M, intervienen valores nodales de contornoU0, UM+1, respectivamente.• La armonicidad discreta es independiente del paso, h, del mallado.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 9 / 67

Page 10: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Armonicidad discreta en un intervalo. Version matricial

La funcion nodal

U =

U0

U1...

UM

UM+1

.=

U0

Uint

UM+1

∈ RM+2

es armonica si es solucion del problema discreto

Uj+1 − 2Uj + Uj−1 = 0, j = 1, . . . ,M,

es decir,

2U1 −U2 = U0

−U1 +2U2 −U3 = 0. . .

. . .. . .

...−UM−2 +2UM−1 −UM = 0

−UM−1 +2UM = UM+1

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 10 / 67

Page 11: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Armonicidad discreta en un intervalo. Version matricial

Por tanto, solucion de la ecuacion matricial

K1DUint = ΦU0,UM+1en RM

para

K1D =

2 −1−1 2 −1

. . .. . .

. . .

−1 2 −1−1 2

, ΦU0,UM+1=

U0

0...0

UM+1

Debido a que la matriz K1D es no singular, la unica funcion nodalarmonica con U0 = UM+1 = 0 es la identicamente nula.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 11 / 67

Page 12: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional discreto

Regresemos al problema de Poison en el dominio en los nodos

xj = jh, j = 0, . . . ,M + 1 =L

h.

Nodos de contorno

Nodos interiores

Para los valores nodales, Uj , fj = f(xj), 1 ≤ j ≤ M, se tiene elproblema discreto

−Uj+1 + 2Uj −Uj−1 = h2fj , j = 1, . . . ,M,U0 = 0 = UM+1

o equivalentemente en su forma matricial

K1Dh Uint = Fint en RM,

con K1Dh = h−2K1D.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 12 / 67

Page 13: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional discreto. Codigo

1 function U = Poisson1DDirichletDirecto(x,F);2 % Resuelve la ecuacion -u''= f con datos fuente f y condiciones de contorno3 % de tipo Dirichlet definida por la malla x mediante un esquema de4 % segundo orden usando un metodo directo5 %6 % Variables de entrada:7 % x: Vector de puntos equiespaciados que definen la malla espacial8 % h: Paso del mallado9 % F: Vector fila con el dato fuente f

10 %11 % Variables de salida12 % U: Poisson1DDirichletDirecto(x,F)13

14

15 h = x(2)-x(1); M = length(x);16 nu=1/h; nu2 = nu*nu;17 e = ones(M,1);18 K=spdiags([-nu2*e 2*nu2*e -nu2*e],-1:1,M,M);19 U = K\F';20 titulo = ['Solucion por metodo directo de -u"=f, con paso h = ' num2str(h)];

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 13 / 67

Page 14: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional discreto. Codigo

21 plot(x,U,'LineWidth',2); title(titulo);22 xlabel('x','Fontsize',11); ylabel('u a(x)','Fontsize',11);23 %Axis('off')24 %Axis('equal')

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 14 / 67

Page 15: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional discreto. Codigo

1 %%% Variables de entrada para usar con el fichero Poisson1DDirichletDirecto.m2 %3 % L= longitud intervalo4 % h= paso del mallado5 % x: Vector de puntos equiespaciados que definen la malla espacial6 % F: Vector fila con el dato fuente f7 format long8 prompt='Introduce la longitud del intervalo L','Introduce el paso del mallado h';9 def='4','.001';

10 title='Dominio computacional';11 lineNo=1;12 datos=str2num(char(inputdlg(prompt,title,lineNo,def)));13 L=datos(1);14 h=datos(2);15 % L=input('Longitud del intervalo ');16 % %L=4;17 % h=input('paso del mallado ');18 % %h=0.001;19 x=0:h:L;20 F=0*(x≤.5*L)+1*(x>.5*L); %funcion de Heaviside en .5*L

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 15 / 67

Page 16: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional discreto. Codigo

21 U=Poisson1DDirichletDirecto(x,F); % U=nombreficheroejecutable22 pause(3)23 %%% La aproximacion24 exact=(((Lˆ2)*x)/(8*L)).*(x≤.5*L)+(((L-x)/2).*(x-((L)/4))).*(x>.5*L);

%Solucion exacta25 error=abs(U' - exact);26 prompt='Puntos interiores','Valores aproximados','Error' ;27 s=num2str(x),num2str(U'),num2str(error);28 title='Informacion de la aproximacion';29 lineNo=1;30 str2num(char(inputdlg(prompt,title,lineNo,s)));31 pause(3)32 %%% Calculo del error en norma infinito33 [errinf i]=max(error);34 prompt='Error en norma infinito','Se alcanza en el punto';35 s=num2str(errinf),num2str(x(i));36 title='Informacion de la aproximacion';37 lineNo=1;38 str2num(char(inputdlg(prompt,title,lineNo,s)));39 warndlg('El programa ha finalizado','Mensaje')40 format

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 16 / 67

Page 17: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional discreto

0 0.5 1 1.5 2 2.5 3 3.5 40

0.2

0.4

0.6

0.8

1

1.2

1.4Solución por método directo de −u"=f, con paso h = 0.001

x

ua(x

)Error en norma infinito 0.0015,se alcanza en el punto x=4

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 17 / 67

Page 18: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Ecuacion de Poisson unidimensional

La expresion anterior

2U1 −U2 = h2f1 + U0

−U1 +2U2 −U3 = h2f2

. . .. . .

. . ....

−UM−2 +2UM−1 −UM = h2fM−1

−UM−1 +2UM = h2fM + UM+1

permite abordar el problema con condiciones de tipo Dirichlet nohomogeneas

−u′′ = f en ]0,L[,u(0) = α u(L) = β,

para fj = f(xj), 1 ≤ j ≤ M y U0 = α, UM+1 = β.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 18 / 67

Page 19: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Comentarios a los metodos directos

La propagacion de los errores de redondeo es grande.

Las matrices que aparecen en las aplicaciones, por ejemplo K1D,son huecas: gran cantidad de elementos nulos (de orden M)

Si los elementos no nulos estan en distribuidos sobre la diagonalprincipal los metodos de factorizacion LU o de Cholesky nopresentan ningun problema, pues conservan esas propiedades.En caso contrario (matrices dispersas) los metodos directos tiendena rellenar la matriz, con lo que en cada paso aumenta el numero deelementos que hay que anular. Ası ocurre con la ecuacion de Poissonsujeta a condiciones de tipo periodico. De todas formas, existentecnicas refinadas para adaptar los metodos directos a matricesdispersas.Los metodos iterativos, aunque solo aportan solucionesaproximadas, usan reiteradamente las matrices originales,diagonales o triangulares en la mayorıa de las aplicaciones, con loque el coste de cada iteracion no es mayor que el producto de unamatriz por un vector.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 19 / 67

Page 20: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Indice

1 Ecuacion de Poisson con condiciones de contorno de tipo Dirichlet2 Comentarios a los metodos directos3 Introduccion

Teorıa espectral elementalMatrices ToeplitzNormas matricialesDetencion de las iteraciones

4 Esquemas estacionarios5 Esquema de Richardson

PrecondicionamientoRelajacion

6 Metodos estacionarios clasicosMetodo de JacobiMetodo de Gauss–SeidelMetodo de relajacion

7 Algunos codigosMetodo de JacobiMetodo de Gauss SeidelG. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 20 / 67

Page 21: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Introduccion

Los metodos iterativos pretenden resolver el sistema

Ax = f

mediante una convergencia

lımn→∞

xn = x

de valores aproximados xn obtenidos por un algun recurso iterativo:

estacionario xn+1 = F(xn), no depende de la historia anterior

x0, x1, . . . ,xn−1

no estacionario xn+1 = F(xn,xn−1,xn−2, . . .

)Claramente la convergencia anterior require el uso de normasmatriciales en las que

lımn→∞

‖xn − x‖ = 0.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 21 / 67

Page 22: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Teorıa espectral de matrices

Asociado a cada matriz A ∈M(R,M) se tiene el polinomiocaracterıstico

PA(λ) = det (A− λI) =

m(A)∏`=1

(λ− λ`)ma(λ`), 1 ≤ m(A) ≤ M.

Autovalores son los ceros, λ`, del polinomio caracterıstico con sucorrespondiente multiplicidad algebraica ma(λ`), 1 ≤ ` ≤ m(A),

m(A)∑`=1

ma(λ`) = M.

El espectro de A es σ(A) = λ1, . . . , λm(A) ⊂ C y su radio espectral

%(A) = max1≤`≤m(A)

|λ`|

La matriz A es diagonalizable si todos los autovalores son distintos.G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 22 / 67

Page 23: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Teorıa espectral de matrices

Teorema (Teorema de los cırculos de Gerschgorin)

Se verifica la localizacion

σ(A) ⊂M⋃i=1

Bri(aii) ⊂ C, ri =∑j 6=i|aij |.

Idea de la prueba Sea λ ∈ σ(A) y v tal que Av = λv. Entonces(λ− aii

)vi =

M∑j=1j 6=i

aijvj ⇒ |λ− aii| · |vi| ≤M∑j=1j 6=i

|aij | · |vj |

En particular, para i0 = argmax1≤j≤M|vj |, |vi0 | > 0 se tiene

|λ− ai0i0 | ≤

M∑j=1j 6=i0

|ai0j | · |vj |

|vi0 |≤

M∑j=1j 6=i0

|ai0j | ⇒ λ ∈ Bri0(aii0ii0).

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 23 / 67

Page 24: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Teorıa espectral de matricesPara la matriz

K1D =

2 −1−1 2 −1

. . .. . .

. . .

−1 2 −1−1 2

∈M(R,M)

se tiene la estimacion

−0.5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5−2

−1.5

−1

−0.5

0

0.5

1

1.5

2Círculo de Gershgorin: Autovalores de K1D de orden M = 10

Eje real

Eje

imag

inar

io

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 24 / 67

Page 25: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Matrices Toeplitz

Las matrices constantes en sus diagonales se denominan Toeplitz

d0 d1 · · · · · · dM−2 dM−1

d−1 d0 d1. . .

. . . dM−2

d2 d−1 d0 d1. . . · · ·

.... . .

. . .. . .

. . .. . .

.... . .

. . .. . .

. . . d1

d−M+1 · · · · · · · · · d−1 d0

∈M(R,M)

aparecen en la discretizacion de operadores en derivadas parcialessujetos a condiciones de contorno.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 25 / 67

Page 26: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Matrices Toeplitz. Matrices tridiagonal

Las matrices Toeplitz mas frecuentes son las tridiagonales, definidaspor las condiciones dj 6= 0, j = −1, 1 y dj = 0, j 6= −1, 0, 1. Surgen enesquemas centrados de tres puntos.

d0 d1 · · · · · · · · · · · ·

d−1 d0 d1. . .

. . . · · ·... d−1 d0 d1

. . . · · ·...

. . .. . .

. . .. . .

. . ....

. . .. . . d−1 d0 d1

· · · · · · · · · · · · d−1 d0

∈M(R,M)

tieneλ` = d0 + 2d1

√d−1

d1cos

M + 1, (autovalores)

v` =

(√

d−1

d1

)jsen

`πj

M + 1, j = 1, . . . ,M,

, (autovectores)

` = 1, . . . ,M.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 26 / 67

Page 27: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Elementos de aproximacion. Matrices circulantes

Un caso interesante de matrices Toeplitz son las circulantes

d0 d1 · · · · · · · · · dM

dM d0 d1. . .

. . . dM−1

dM−1 dM d0 d1. . . · · ·

.... . .

. . .. . .

. . .. . .

.... . .

. . .. . .

. . .. . .

d1 d2 · · · · · · dM d0

∈M(R,M + 1)

en las que si dj = dj−M−1. Surgen al considerar condiciones periodicasde contorno. Sus autovalores vienen dados por

λ` =

M∑k=0

dke2πık`M+1 , ` = 1, . . . ,M + 1, (ı =

√−1),

con lo que λM+1 =

M∑k=0

dk.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 27 / 67

Page 28: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Matrices Toeplitz. Matrices circulantes

En la discretizacion del operadord2

dx2con condiciones periodicas surge

2 −1 −1−1 2 −1

−1 2 −1. . .

. . .. . .

−1 2 −1−1 −1 2

∈M(R,M + 1)

Se trata de una matriz singular, cuyo nucleo es una variedad linealunidimensional generada por(

v0

)t=(1, 1, . . . , 1, 1

),

que coincide con los autovalores del autovalor nulo. Notese que susautovalores vienen dados por

λ` = 2− e2πı`M+1 − e

2πıM`M+1 , ` = 1, . . . ,M + 1, (ı =

√−1),

con lo que λM+1 = 0.G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 28 / 67

Page 29: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Introduccion. Normas subordinadas

Definicion

Una norma sobre el espacio vectorial M(R,M) es matricial si verifica

|||AB||| ≤ |||A||| · |||B|||.

Definicion

Toda norma ‖ · ‖ sobre RM induce sobre M(R,M) la la norma inducidao subordinada

|||A||| .= supx 6= 0

‖Ax‖‖x‖

= sup‖x‖ = 1

‖Ax‖.

Observacion

Toda norma inducida o subordinada es matricial, pues

‖ABx‖ ≤ |||A||| · ‖Bx‖ ≤ |||A||| · |||B||| · ‖x‖,

y verifica |||I||| = 1, por construccion. G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 29 / 67

Page 30: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Introduccion. Normas subordinadas

Si Av = λmaxv, %(A) = |λmax|, y w tal que vwt es una matriz no nula,entonces

%(A)|||vwt||| = |λmax| · |||vwt||| = |||λmaxvwt||| ≤ |||A||| · |||vwt|||,

es decir,%(A) ≤ |||A|||,

para cualquier norma matricial (subordinada o no). Por tanto,(%(A)

)n= %(An)≤ |||An|||.

De hecho se prueba

Proposicion

%(A) = lımn→∞

|||An|||1n ,

para cualquier norma matricial (subordinada o no).

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 30 / 67

Page 31: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Introduccion. Normas subordinadas

Se obtiene el siguiente resultado

Proposicion

Para cada matriz A y cada ε > 0 existe una norma matricialsubordinada ||| · |||A,ε tal que

|||A|||A,ε ≤ %(A) + ε.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 31 / 67

Page 32: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Introduccion. Normas subordinadas

Proposicion

Se verifica la subordinacion

‖x‖1 =

M∑i=1

|xi| ⇒ |||A|||1 = maxj

∑i

|aij |.

Idea de la prueba

‖Ax‖1 =∑i

∣∣∣∣∑j

aijxj

∣∣∣∣ ≤∑j

(maxk

∑k

|aik|

)|xj | =

(maxk

∑k

|aik|

)‖x‖1.

Por otra parte, para x con xi = δij , j = argmaxk∑i

|aik| se verifica

(Ax)i

= δijaij ⇒ ‖Ax‖1 =∑i

|aij | = maxk

∑k

|aik|

=1︷ ︸︸ ︷‖x‖1 .

Observacion

Para una funcion g real y continua en un compacto K se usa la notacion

x = argmaxy∈Kg(y) ⇔ g(x) ≥ g(y), y ∈ K

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 32 / 67

Page 33: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Introduccion. Normas subordinadas

Proposicion

Se verifica la subordinacion

‖x‖∞ = maxi|xi| ⇒ |||A|||∞ = max

i

∑j

|aij |.

Idea de la prueba

‖Ax‖∞ = maxi

∣∣∣∣∣∑j

|aijxj |

∣∣∣∣∣ ≤ maxi

∑j

|aik| · |xj | ≤ maxi

∑j

|aik|‖x‖∞.

Por otra parte, para x con xj = signaij , i = argmaxk∑j

|akj | se

verifica

‖Ax‖∞ = maxi

∣∣∣∣∑k

aikxj

∣∣∣∣ = maxk

∑k

|aik|

=1︷ ︸︸ ︷‖x‖∞ .

Observacion

|||A|||1 = |||At|||∞. G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 33 / 67

Page 34: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Introduccion. Normas subordinadas

Proposicion

Se verifica la subordinacion

‖x‖2 =

√√√√ M∑i=1

x2i ⇒ |||A|||2 =

√%(AtA).

Cuando A es simetrica se obtiene |||A|||2 = %(A).

Idea de la prueba

B = AtA es simetrica

σ(B) = λ1, . . . , λM ⊂ R,los autovectores v1, . . . ,vM verifican vtivj = δij .

Ademas

xtBx =(∑

i

〈x,vi〉vti)(∑

j

〈x,vj〉λjvj)

=∑ij

〈x,vi〉〈x,vj〉λjvtivj =∑i

(〈x,vi〉

)2λi,

de donde

|||A|||22 = maxx6=0

xtBx

xtx= max

x 6=0

∑i

(〈x,vi〉

)2λi∑

i

(〈x,vi〉

)2 = maxj|λj |.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 34 / 67

Page 35: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Introduccion. Normas subordinadas

La norma de Frobenius

|||A|||F.=

√∑ij

|aij |2

es matricial, pero no es subordinada pues |||I|||F =√

M > 1, M ≥ 2. Severifican las desigualdades |||A|||∞ ≤ |||A|||p ≤

p√

M|||A|||∞, p ≥ 1,

|||A|||2 ≤ |||A|||F ≤√

M|||A|||2,

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 35 / 67

Page 36: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Introduccion. Detencion de las iteracionesEs imposible conocer todas las iteraciones, xn, por lo que se detiene suobtencion con una tolerancia admisible

‖en‖ = ‖xn − x‖ < tol (error absoluto) o‖en‖‖x‖ < tol (error relativo)

pero no es realista (x no es conocido). En su lugar, se usan los residuos rn = f − Axn = Aen ⇒ ‖rn‖ ≤ |||A||| · ‖en‖, ‖en‖ ≤ |||A−1||| · ‖rn‖,

‖f‖ ≤ |||A||| · ‖x‖, ‖x‖ ≤ |||A−1||| · ‖f‖

Lema

1

|||A||| · |||A−1|||‖rn‖‖f‖ ≤

‖en‖‖x‖ ≤ |||A||| · |||A

−1||| ‖rn‖‖f‖ .

Interesa que

condicion︷ ︸︸ ︷κ(A) = |||A||| · |||A−1||| ≥ 1 sea lo menor posible. Se mejora

con precondicionamientos BAx = Bf con 1 ≤ κ(BA) ≤ κ(A). Se tiene

κ2(A) =

√λmax(AtA)

λmin(AtA).

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 36 / 67

Page 37: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Esquemas estacionarios

El mas sencillo esta basado en el razonamiento de punto fijo

x = x+(f−Ax

)⇒ xn+1 = xn +

rn︷ ︸︸ ︷(f − Axn

)︸ ︷︷ ︸esquema de Richardson

o xn+1 =(I−A

)xn+f

y en general, para la matriz de iteracion o amplificacion, M,

x = Mx + c ⇒ xn+1 = Mxn + cen=xn−x︷︸︸︷ en+1 = Men

que da lugar a la iteracion

xn =

(n−1∑i=0

Mi

)c + Mnx0 en = Mne0

Notese que un razonamiento telescopico lleva a la equivalencia,

x = (I + . . .+ Mn + . . .+) (I−M)x ⇔ (I−M)−1 =

(serie de von Neumann)︷ ︸︸ ︷∑n≥0

Mn

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 37 / 67

Page 38: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Esquemas estacionarios

Lema

Si |||M||| < 1 entonces I−M es no singular y

|||(I−M

)−1||| ≤ |||I|||1− |||M|||

.

para cualquier norma matricial (subordinada o no)

Idea de la prueba

%(M) ≤ |||M||| < 1

1 6∈ σ(M)︷︸︸︷⇔ det (M− I) 6= 0.

De donde

(M−I)(M−I)−1 = I ⇔ M(M−I)−1−(M−I)−1 = I ⇔ (M−I)−1 = I−M(I−M)−1

Observacion

|||M||| < 1 ⇒ |||(I−M)−1||| ≤∑n≥0

|||M|||n =|||I|||

1− |||M||| .

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 38 / 67

Page 39: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Esquemas estacionarios

Teorema

Las siguientes afirmaciones son equivalentes

el esquema es convergente.

%(M) < 1.

|||M||| < 1, para alguna norma matricial, que se puede tomarsubordinada.

Idea de la prueba Para cualquier e0

lımn→0

en = 0

en = Mne0︷︸︸︷⇔ lım

n→0Mne0 = 0 ⇔ %(M) < 1.

• %(M) ≥ 1⇒ ∃λ ∈ σ(A), |λ| ≥ 1 lleva a

lımn→∞

‖Mnv‖ = lımn→∞

|λ|n‖v‖ 6= 0 (v autovector correspondiente).

• %(M) < 1⇒ |||M|||M,ε < 1, para < ε < 1− %(M) lleva a

|||Mn|||M,ε≤(|||M|||M,ε

)n→ 0, n→∞.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 39 / 67

Page 40: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Esquemas estacionarios

Observacion

Por tanto, para abordar el esquema iterativo

xn+1 = Mxn + cen=xn−x︷︸︸︷ en+1 = Men

interesa mostrar %(M) < 1 o, de una forma mas practica, |||M||| < 1 paraalguna norma matricial (subordinada o no). En ese caso, se satisface latasa de convergencia

lımn→∞ (|||Mn|||)1n = %(M)

⇓sup

‖e0‖ = 1‖en‖ = sup

‖e0‖ = 1‖Mne0‖ = |||Mn||| ∼ (%(M))n , n→∞.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 40 / 67

Page 41: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Esquemas estacionarios. Esquema de Richardson

• Precondicionamiento Regresemos al esquema

x = x +(f − Ax

)⇒ xn+1 = xn +

rn︷ ︸︸ ︷(f − Axn

)︸ ︷︷ ︸esquema de Richardson

que converge si y solo si %(I− A) < 1, o de una forma mas practica si|||I− A||| < 1 para alguna norma matricial (subordinada o no). Esto noslleva a considerar precondicionamiento

x = x +(Bf − BAx

)⇒ xn+1 = xn +

Brn︷ ︸︸ ︷(Bf − BAxn

)︸ ︷︷ ︸esquema de Richardson precondicionado

para alguna matriz no singular B (inversa aproximada de A) tal que,verificando %(I− BA) < 1 o |||I− BA||| < 1, mejore el metodo iterativo,para alguna norma matricial (subordinada o no).

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 41 / 67

Page 42: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Esquemas estacionarios. Esquema de Richardson

Teorema (Lema de Banach)

Si B es una inversa aproximada de A entonces A y B son no singularesy

|||A−1||| ≤ |||I||| · |||B|||1− |||I− BA||| , |||B−1||| ≤ |||I||| · |||A|||

1− |||I− BA||| ,

|||A−1 − B||| ≤ |||I||| · |||B||| · |||I− BA|||1− |||I− BA||| , |||B−1 − A||| ≤ |||I||| · |||A||| · |||I− BA|||

1− |||I− BA||| .

Idea de la prueba Definiendo M = I−BA las propiedades anterioresmuestran que I−M = BA es no singular y, por tanto, tambien B y A.Ademas, por analogıa, basta probar una pareja de desigualdades.

|||(BA)−1||| = |||A−1B−1||| ≤ |||I|||

1− |||I− BA|||⇓

|||A−1||| ≤ |||A−1B−1||| · |||B||| ≤ |||I||| · |||B|||1− |||I− BA||| ,

|||A−1 − B||| ≤ |||(I− BA

)A−1||| ≤ |||I||| · |||B||| · |||I− BA|||

1− |||I− BA|||

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 42 / 67

Page 43: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos iterativos. Esquema de Richardson

• Relajacion xn+1 = (I− A)xn + f xn+1 = (I− ωA)xn + ωf .Entonces si A es simetrica y definida positiva se tiene σ(A) ⊂ R+ y

σ(I− ωA

)= 1− ωσ(A) =

1− ωλ : λ ∈ σ(A)

⊂ R,

con 1− ωλmax ≤ 1− ωλ ≤ 1− ωλmin < 1

%(I− ωA

)= max1− ωλmin,−1 + ωλmax.

La convergencia se verifica si ω ≤ ωcrit

.=

2

λmax

≥ 2

λmax + λmin

= ωopt

%(I− ωA

)< 1 ⇔ −1 < 1− ωλmax,

%(I− ωA

)=

−1 + ωλmax ≥ 1− ωλmin

o

1− ωλmin ≥ −1 + ωλmax

≥ %(I− ωoptA

),

ωopt =2

λmax + λmin

=1

1 +(κ2(A)

)−1ωcrit.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 43 / 67

Page 44: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodos splittings

Veamos algunos metodos splittings basados en la descomposicion

A = A1 + A2Ax = f⇒ x = A−1

1

(f − A2x

)con lo que interesa que A1 sea no singular y facil de factorizar. Demodo que todo consiste en probar %

(− A−1

1 A2

)< 1.

Notese la relacion

−A−11 A2V = λ−A−1

1 A2V ⇔ (A− A1)V = −λ−A−11 A2A1V

de dondeAV =

(1− λ−A−1

1 A2)A1V.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 44 / 67

Page 45: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de Jacobi

Metodo de Jacobi, aii 6= 0, 1 ≤ i ≤ M. Interesa

A =

diagonal de A︷︸︸︷D +

triangular inferior de A︷︸︸︷Tl +

triangular superior de A︷︸︸︷Tu

con J = −D−1(Tl + Tu

)(matriz de Jacobi). La implementacion

efectiva es

Dxn+1 = f −(Tl +Tu

)xn = f −

(A−D

)xn ⇒ xn+1 = D−1rn +xn.

Todo xn+1 ∈ RM se obtiene simultaneamente.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 45 / 67

Page 46: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de Jacobi

Teorema

Toda matriz diagonal estrictamente dominante

|aii| >∑j 6=i|aij |, i = 1, . . . ,M,

es no singular y determina un metodo de Jacobi convergente.

Idea de la Prueba La matriz de Jacobi correspondienteJ = −D−1

(Tl + Tu

)= mij , 1 ≤ i, j ≤ M verifica∑j 6=i|mij | =

∑j 6=i |aij ||aii|

< 1,

es decir, %(J ) ≤ |||J |||∞ < 1. Por tanto la iteracion converge a

x = J x+D−1f ⇒ x =(I−D−1A)x+D−1f ⇒

Ax = f ,I− J = D−1A es no singular,A es no singular.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 46 / 67

Page 47: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de Jacobi

Detallemos esas iteraciones para la expresion discreta del problema dePoisson con condiciones homogeneas de tipo Dirichlet

K1DUint = h2Fint en RM,

con

K1D =

2 −1−1 2 −1

−1 2 −1

−1 2 −1−1 2

∈M(R; M),

en la forma(2I + K1D

l + K1Du )Uint = h2Fint

siendo K1Dl y K1D

u las matrices triangulares estrictamente inferior ysuperior a la diagonal. Notese

λK1D

` = 2

(1− cos

M + 1

), ` = 1, . . . ,M ⇒ %

(K1D) = 2

(1− cos

M + 1

)> 1.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 47 / 67

Page 48: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de Jacobi

Consiste en tomar

K1D = A1 + A2, A1 = 2I, A2 = K1Dl + K1D

u ,

determinado la matriz de Jacobi

J = −I−1

(K2Dl + K2D

u

2

)= −K1D

l + K2Du

2

(= −A−1

1 A2

)y, escribiendo la iteracion como exponente,

Un+1int =

iteraciones simultaneas︷ ︸︸ ︷JUn

int + h2Fint

2⇒

convergencia︷ ︸︸ ︷%(J ) < 1

es decir,

Un+1j =

Unj+1 + Un

j−1

2+h2

2fj , 1 ≤ j ≤ M.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 48 / 67

Page 49: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de Jacobi

Los autovalores de J = −K1Dl + K2D

u

2vienen dados por

JVint = λJVint ⇔ Vj+1 + Vj−1 = 2λJVj

con

1 ≤ ` ≤ M︷ ︸︸ ︷2λJ` = 2 cos

M + 1⇒ %(J ) = cos

π

M + 1≈ 1− 1

2

M + 1

)2

.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 49 / 67

Page 50: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de Gauss–Seidel

Metodo de Gauss–Seidel, aii 6= 0, 1 ≤ i ≤ M. Hagamos

A =

diagonal de A︷︸︸︷D +

triangular inferior de A︷︸︸︷Tl +

triangular superior de A︷︸︸︷Tu

como D + Tl es inversible, ahora interesa

(D+Tl

)xn+1 = f −Tuxn

A = D + Tl + Tu︷︸︸︷⇒ xn+1 = D−1 (rn − Tl

(xn+1 − xn

))+ xn,

con L1 = −(D + Tl

)−1Tu)

(matriz de Gauss-Seidel). Aquı se vanobteniendo las componentes de xn+1 ∈ RM sin necesidad de conocertodas las de xn (solo las precedentes), por lo que debe ser mas rapido.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 50 / 67

Page 51: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de Gauss–Seidel

Regresemos al problema de Poisson con condiciones homogeneas detipo Dirichlet. Se trata de considerar la descomposicion

K1D = A1 + A2, A1 = 2I +

precedentes︷︸︸︷K1Dl , A2 = K1D

u ,

determinando la matriz de Gauss–Seidel L1 = −(2I + K1D

l

)−1K1Du y la

iteracion

2IUn+1int +

precedentes︷ ︸︸ ︷K1Dl Un+1

int = −K1Du Un

int + h2Fint,

escribiendo la iteracion como exponente, es decir,

Un+1j =

Unj+1 +

precedentes︷ ︸︸ ︷Un+1j−1

2+h2

2fj , 1 ≤ j ≤ M.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 51 / 67

Page 52: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos iterativos. Metodo de Gauss–Seidel

Los autovalores de L1 = −(2I + K1D

l

)−1K1Du vienen dados por

L1Vint = λL1Vint ⇔ −(λL1K1D

l + K1Du

)Vint = 2λL1Vint

es decir,λL1Vj−1 − 2λL1Vj + Vj+1 = 0,

caracterizados por

0 = det

−2λL1 1λL1 −2λL1 1

λL1 −2λL1 1

λL1 −2λL1 1λL1 −2λL1

=∏`

λL1 − λL1 I

con lo que

0 =

M∏`=1

[−2λL1 + 2

√λL1 cos

M + 1

]=(2√λL1

)M M∏`=1

[−√λL1 + λJ`

],

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 52 / 67

Page 53: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de Gauss–Seidel

que determina

√λL1 =

0, unico de orden M,

λJ` , ` = 1, . . . ,M.

La primera igualdad no es posible, pues implicarıa que 0 sea el unicoautovalor, con autovector Vint ∈ RM, Vj+1 = 0, j = 1, . . . ,M, comounico autovector que no puede generar RM. Tampoco pude ocurrir quesolo se anulen algunos factores, pues tampoco los correspondienteautovectores generarıan todo el espacio RM. De modo que se obtiene

λL1` =

(λJ`)2

= cos2 `π

M + 1≈ 1−

M + 1

)2

, ` = 1, . . . ,M,

y por tanto,

%(L1) =(%(J )

)2= cos2 π

M + 1< cos

π

M + 1= %(J ).

La convergencia es mas rapida que en el metodo de Jacobi.G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 53 / 67

Page 54: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de relajacion

Metodo de relajacion, aii 6= 0, 1 ≤ i ≤ M. Tomemos

ωA =(D + ωTl

)−((1− ω)D− ωTu

)es decir,

A = A1 + A2, A1 =1

ωD + Tl, A2 = −

(1− ωω

D− Tu

),

determinado la matriz de relajacion

Lω =

(1

ωD + Tl

)−1(1− ωω

D− Tu

)y la implementacion efectiva

D

ω(xn+1 − xn) = f − Tlxn+1 − (D + Tu)xn

⇓xn+1 = D−1ω

(rn − Tl

(xn+1 − xn

))+ xn.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 54 / 67

Page 55: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de relajacion

Teorema (Kahan)

%(Lω)≥ |1− ω|, ω 6= 0.

Entonces%(Lω)< 1 ⇒ 0 < ω < 2.

Idea de la PruebaM∏`=1

λLω` = det Lω = det

(1

ωD + Tl

)−1(1− ωω

D− Tu

)

=det

1− ωω

D− Tu

det1

ωD + Tl

=det

1− ωω

D

det1

ωD

= (1− ω)M

de donde (%(Lω))M ≥ M∏

`=1

λLω` = (1− ω)M.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 55 / 67

Page 56: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de relajacion

Teorema (Kahan)

%(Lω)≥ |1− ω|, ω 6= 0.

Entonces%(Lω)< 1 ⇒ 0 < ω < 2.

Idea de una segunda Prueba

0 = det[Lω − λLω I

]= det

[(1

ωD + Tl

)−1(1− ωω

D− Tu

)− λLωI

]= ωMdet

[(1− ω)D− ωTu − λLω

(D + ωTl

)]= (−ω)Mdet

[(λLω + ω − 1

)I + ωD−1Tu + λLωωD−1Tl

)]= (−ω)M

[(λLω

)M+ . . .+ (ω − 1)M

]de donde (

%(Lω))M ≥ M∏

`=1

λLω` = (1− ω)M. G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 56 / 67

Page 57: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de relajacion

Una vez mas ilustramos con el problema de Poisson con condicioneshomogeneas de tipo Dirichlet, para el que se forma

ωK1D =(2I + ωK1D

l

)−(2(1− ω)I− ωK1D

u

)que determina la matriz de relajacion

Lω =

(2

ωI + K1D

l

)−1(2

1− ωω

I−K1Du

)y, escribiendo la iteracion como exponente,

Un+1j = (1− ω)Un

j + ωUnj+1 + Un+1

j−1

2+ ω

h2

2fj .

Los autovalores de Lω vienen dados por

LωVint = λLωVint ⇔ −(λLωK1D

l + K1Du

)Vint = 2

λLω + ω − 1

ωVint

es decir,

λLωVj−1 + Vj+1 = 2λLω + ω − 1

ωVj

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 57 / 67

Page 58: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de relajacion

Escribamos

λLωVj−1 − 2λLω + ω − 1

ωVj + Vj+1 = 0,

caracterizados por

0 = det

−2λLω + ω − 1

ω1

λLω −2λLω + ω − 1

ω1

λLω −2λLω + ω − 1

ω

=∏`

λLω − λLω I

=

M∏`=1

[−2

λLω + ω − 1

ω+ 2√λLω cos

M + 1

]= 2M

M∏`=1

[−λLω + ω − 1

ω+√λLωλJ`

].

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 58 / 67

Page 59: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de relajacionComo en el metodo de Gauss–Seidel se requieren que todos los factoresse anulen, pues en caso contrario los correspondiente autovectores nopodrıan generar el espacio RM. Por tanto, para ` = 1, . . . ,M,

λLω` + ω − 1

ω︸ ︷︷ ︸recta de pendiente ω−1

=

√λLω` λJ` ⇔

√λLω` =

ωλJ` ±√ω2(λJ`)2 − 4(ω − 1)

2.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 59 / 67

Page 60: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodos estacionarios clasicos. Metodo de relajacion

A efectos de convergencia, el valor optimo de ω se corresponde con elvalor mınimo de %(Lωopt), que es determinado por la tangencia, es decir,

ω2opt

(%(J )

)2 − 4(ωopt − 1) = 0 ⇔ ωopt = 21±

√1−

(%(J )

)2(%(J )

)2y como los valores admisibles han de verificar 0 < ω < 2 se obtiene

ωopt = 21−

√1−

(%(J )

)2(%(J )

)2 =2

1 +√

1−(%(J )

)2 = 1 +

%(J )

1 +√

1−(%(J )

)22

,

%(Lωopt) =

(ωopt%(J )

)24

= ωopt − 1 =

%(J )

1 +√

1−(%(J )

)22

<(%(J )

)2︸ ︷︷ ︸%(L1)

< %(J ) < 1.

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 60 / 67

Page 61: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodo de Jacobi. Codigo para Ax = f

1 %%% Resolucion Ax=f mediante el metodo de Jacobi por puntos.2 %% A=D+Tl+Tu D*xn+1=f-(Tl+Tu)xn ANEDP 2010/20113 function x=JacobiG(A,f,maxit,e,x0)4 % x0=vector inicial;5 % maxit=numero maximo de iteracciones e=precision de error6 xn = x0;7 M = length(x0);8 for j = 1:maxit9 for i = 1:M

10 suma = 0;11 for j = [1:i-1 i+1:M]12 suma = suma+A(i,j)*xn(j);13 end14 xv(i) = (1/A(i,i))*(f(i)-suma);15 end16 if norm(xv-xn)≤e*norm(xn)17 disp('La solucion aproximada es: ')18 disp(xv')19 break20 else xn=xv;21 end22 endG. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 61 / 67

Page 62: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodo de Jacobi. Codigo para Ax = f (sobre el resto)

1 %%% Resolucion Ax=f mediante el metodo de Jacobi por puntos.2 %% A=D+Tl+Tu Dxn+1=(f-A*xn)+Dxn ANEDP 2010/20113 % maxit=numero maximo de iteracciones e=precision de error4 function x=JacobiGresto(A,f,maxit,e,x0) % x0=vector inicial5 xn=x0;6 M=length(x0);7 for j=1:maxit8 for i=1:M9 suma=0;

10 for j=1:M;11 suma=suma + A(i,j)*xn(j); % resto rn=f-A*xn12 end13 xv(i)=(1/A(i,i))*(f(i)-suma)+xn(i);14 end15 if norm(xv-xn)≤e*norm(xn)16 disp('La solucion aproximada es: ')17 disp(xv)18 break19 else xn=xv20 end21 end

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 62 / 67

Page 63: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodo de Gauss Seidel. Codigo para Ax = f (1)

1 %%% Resolucion Ax=f mediante el metodo de Gauss Seidel por puntos.2 %% A=D+Tl+Tu (D+Tl)x=f-Tu*x ANEDP 2010/20113 function [x] = GaussSeidelG2(A,f,tol)4 f=f';5 x=zeros(length(A),1);6 L=zeros(size(A));7 U=L;8 D=L;9 for j=1:length(A)

10 for k=1:length(A)11 if j>k12 U(j,k)=A(j,k);13 elseif j<k14 L(j,k)=A(j,k);15 else16 D(j,k)=A(j,k);17 end18 end19 end20 DL inv=inv(D+L);

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 63 / 67

Page 64: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodo de Gauss Seidel. Codigo para Ax = f (1)

1 while norm(f-A*x)>tol2 x=-DL inv*U*x+DL inv*f;3 end

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 64 / 67

Page 65: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodo de Gauss Seidel. Codigo para Ax = f (2)

1 %%% Resolucion Ax=f mediante el metodo de Gauss Seidel por puntos.2 %% A=D+Tl+Tu (D+Tl)x=f-Tu*x ANEDP 2010/20113 function [x,itns] = GaussSeidelG1(A,f,x,tol,maxit)4 f=f';5 x=x';6 itns = 0;7 r0 = norm(f-A*x);8 r = r0;9 n = length(x);

10 while (r/r0 > tol)11 for i=1:n,12 x(i) = (f(i)- A(i,:)*x + A(i,i)*x(i) ) / A(i,i);13 end14 r = norm(f-A*x);15 itns = itns + 1;16 if (itns > maxit)17 disp('Falla la convergencia.')18 break19 end20 end

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 65 / 67

Page 66: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodo de Gauss Seidel. Codigo para Ax = f (3)

1 %%% Resolucion Ax=f mediante el metodo de Gauss Seidel por puntos.2 %% A=D+Tl+Tu (D+Tl)x=f-Tu*x ANEDP 2010/20113 function [x, steps, relres] = GaussSeidelG3(A,f,tol,maxit,x0)4 f=f';5 x0=x0';6 n = length(x0);7 steps = 0;8 relres = 1;9 x = zeros(n,1);

10 while (relres > tol) && (steps ≤ maxit)11 steps = steps + 1;12 for i = 1:n13 x(i) = (f(i) - (sum(A(i,:)*x0) - A(i,i)*x0(i))) / A(i,i);14 x0(i) = x(i); % solo un poco distinto del metodo de Jacobi15 end16 relres = norm(f - A*x)/norm(f);17 x0=x;18 end

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 66 / 67

Page 67: Análisis Numérico de Ecuaciones en Derivadas Parciales 2 ... · An alisis Num erico de Ecuaciones en Derivadas Parciales 2. M etodos Iterativos G. D az Matem atica Aplicada UCM

Metodo de Gauss Seidel. Codigo para Ax = f (3)

1 if steps > maxit2 relres,3 error('El metodo de Gauss-Seidel no converge en %d iteraciones', maxit);4 end

G. Dıaz (Matematica Aplicada UCM) 2. Metodos iterativos (ANEDP) Indice 67 / 67