| | | |

Matemática Numérica III

Ajude a manter o site livre, gratuito e sem propagandas. Colabore!

1.3 Métodos iterativos básicos

Os primeiros métodos iterativos desenvolvidos para a solução de grandes sistemas lineares foram os métodos de relaxação. Partindo-se de uma aproximação inicial 𝒙(0) da solução do sistema

A𝒙=𝒃, (1.80)

com matriz dos coeficientes A matriz n×n e vetor dos termos constantes 𝒃n, os métodos de relaxação constroem uma sequência de aproximações (𝒙(k))k. Cada nova aproximação 𝒙(k+1) é construída em etapas pela modificação de uma ou mais componentes da aproximação anterior 𝒙(k) buscando satisfazer a/s componentes selecionadas do resíduo do sistema

(𝒃A𝒙(k+1))i=0. (1.81)

Começamos por decompor a matriz A como

A=DLU, (1.82)

onde D é a matriz diagonal de A, L é a parte estritamente triangular inferior de A e U é a parte estritamente triangular superior de A.

1.3.1 Método de Jacobi

Dada uma aproximação inicial 𝒙0, o método de Jacobi é o método de relaxação que consiste nas iterações

D𝒙(k+1)=(L+U)𝒙(k)+𝒃, (1.83)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido.

Código 4: jacobi.py
1from numpy.linalg import norm
2from scipy.sparse import tril, triu
3
4def jacobi(A, b, x0, rtol=1e-5, atol=0.0, maxiter=1000):
5 L = -tril(A, -1, A.format)
6 U = -triu(A, 1, A.format)
7 d = A.diagonal()
8
9 info = 0
10 for k in range(maxiter):
11 x = ((L + U) @ x0 + b) / d
12
13 if norm(b - A@x) <= max(rtol*norm(b), atol):
14 info = 1
15 break
16 x0 = x.copy()
17
18 return x, info
Exemplo 1.3.1.

A tabela abaixo, mostra resultados da aplicação do método de Jacobi para a resolução do sistema linear associado à formulação de diferenças finitas do problema de Poisson1111endnote: 11Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D (Exemplo 1.1.3). Na tabela, n é o número de pontos da malha, #it é o número de iterações necessárias para satisfazer o critério de parada de rtol=105 e atol=0.

n #it
11 230
21 930
41 3729
81 14928

1.3.2 Método de Gauss-Seidel

Dada uma aproximação inicial 𝒙0, o método de Gauss-Seidel é o método de relaxação que consiste nas iterações

(DL)𝒙(k+1)=U𝒙(k)+𝒃, (1.84)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido.

Código 5: gs.py
1from numpy.linalg import norm
2from scipy.sparse import diags, tril, triu
3from scipy.sparse.linalg import spsolve
4
5def gs(A, b, x0, rtol=1e-5, atol=0.0, maxiter=100000):
6 L = -tril(A, -1, format=A.format)
7 D = diags(A.diagonal(), format=A.format)
8 U = -triu(A, 1, format=A.format)
9
10 info = 0
11 for k in range(maxiter):
12 x = spsolve(D - L, U @ x0 + b)
13
14 if norm(b - A@x) <= max(rtol*norm(b), atol):
15 info = 1
16 break
17
18 x0 = x.copy()
19
20 return x, info
Exemplo 1.3.2.

A tabela abaixo, mostra resultados da aplicação do método de Gauss-Seidel para a resolução do sistema linear associado à formulação de diferenças finitas do problema de Poisson1212endnote: 12Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D (Exemplo 1.1.3). Na tabela, n é o número de pontos da malha, #it é o número de iterações necessárias para satisfazer o critério de parada de rtol=105 e atol=0.

n #it
11 116
21 466
41 1866
81 7465

Método de Gauss-Seidel retropropagado

Dada uma aproximação inicial 𝒙0, o método de Gauss-Seidel retropropagado é o método de relaxação que consiste nas iterações

(DU)𝒙(k+1)=L𝒙(k)+𝒃, (1.85)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido. Implemente!

Método de Gauss-Seidel simétrico

Dada uma aproximação inicial 𝒙0, o método de Gauss-Seidel simétrico é o método de relaxação que consiste nas iterações

Propagação: (1.86)
(DL)𝒙(k+12)=U𝒙(k)+𝒃, (1.87)
Retropropagação: (1.88)
(DU)𝒙(k+1)=L𝒙(k+12)+𝒃, (1.89)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido. Implemente!

Exemplo 1.3.3.

A tabela abaixo, mostra resultados da aplicação do método de Gauss-Seidel simétrico para a resolução do sistema linear associado à formulação de diferenças finitas do problema de Poisson1313endnote: 13Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D (Exemplo 1.1.3). Na tabela, n é o número de pontos da malha, #it é o número de iterações necessárias para satisfazer o critério de parada de rtol=105 e atol=0.

n #it
11 62
21 237
41 937
81 3737

1.3.3 Método SOR

Dada uma aproximação inicial 𝒙(0), os métodos de Jacobi e de Gauss-Seidel têm ambos a forma iterada

M𝒙(k+1)=N𝒙(k)+𝒃, (1.90)

proveniente de uma decomposição (do tipo splitting) da matriz A, i.e.

A=MN. (1.91)

De fato, M=D para o método de Jacobi e M=DL para o método de Gauss-Seidel.

A ideia do método de Sobre-Relaxação de Gauss-Seidel (SOR) é introduzir um fator de relaxação ω>0 na iteração acima, baseada na decomposição

ωA=(DωL)M((1ω)D+ωU)N, (1.92)

o que leva às iterações do método SOR

(DωL)𝒙(k+1)=((1ω)D+ωU)𝒙(k)+ω𝒃, (1.93)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido.

1.3.4 Método SSOR

Dada uma aproximação inicial 𝒙(0), o método de Sobre-Relaxação de Gauss-Seidel Simétrico (SSOR) é o método de relaxação que consiste nas iterações

Propagação: (1.94)
(DωL)𝒙(k+12)=((1ω)D+ωU)𝒙(k)+ω𝒃, (1.95)
Retropropagação: (1.96)
(DωU)𝒙(k+1)=((1ω)D+ωL)𝒙(k+12)+ω𝒃, (1.97)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido.

1.3.5 Métodos de relaxação como precondicionadoras

Dada a decomposição da matriz

A=MN, (1.98)

para algum método de relaxação, temos que a iteração

M𝒙(k+1)=N𝒙(k)+𝒃, (1.99)

pode ser escrita como

𝒙(k+1)=G𝒙(k)+𝒄, (1.100)

onde G=M1N e 𝒄=M1𝒃 são chamados de matriz e vetor de iteração, respectivamente. Por exemplo, para o método de Jacobi, temos

GJ=D1(L+U) (1.101)

e, para o método de Gauss-Seidel, temos

GGS=(DL)1U. (1.102)

A iteração (1.100) pode ser vista como uma iteração de ponto fixo para resolver o sistema linear

(IG)𝒙=𝒄. (1.103)

Observando que

IG=IM1N=M1(MN)=M1A, (1.104)

vemos que o sistema é equivalente ao sistema original A𝒙=𝒃 precondicionado à esquerda por M, i.e.

M1A𝒙=M1𝒃. (1.105)

As precondicionadoras de Jacobi (JA), Gauss-Seidel (GS), SOR e SSOR são, portanto, respectivamente

MJA=D, (1.106)
MGS=DL, (1.107)
MSOR=DωL, (1.108)
MSSOR=DωU)D1(DωL). (1.109)

1.3.6 Aspectos de convergência

Como observado anteriormente, os métodos de relaxação podem ser escritos na forma

𝒙(k+1)=G𝒙(k)+𝒄, (1.110)

onde G=M1N e 𝒄=M1𝒃 são a matriz e o vetor de iteração do método obtido a partir de uma decomposição A=MN.

Vamos analisar alguns aspectos sobre a convergência das iterações (1.110).

  1. a)

    Se a iteração (1.110) converge para qualquer aproximação inicial 𝒙(0), então, converge para a solução do sistema linear original A𝒙=𝒃?

    Se a iteração (1.110) converge, então, existe 𝒙(k)𝒙 é tal que

    𝒙=G𝒙+𝒄. (1.111)

    Assim, temos

    (IG)𝒙=𝒄. (1.112)

    Como IG=M1A e 𝒄=M1𝒃, temos

    M1A𝒙=M1𝒃, (1.113)

    o que implica que A𝒙=𝒃, ou seja, 𝒙 é a solução do sistema linear original.

  2. b)

    Sobre quais condições a iteração (1.110) converge para qualquer aproximação inicial 𝒙(0)?

    Pode-se mostrar que a iteração (1.110) converge para qualquer aproximação inicial 𝒙(0), se (IG) for não singular e o raio espectral de G for estritamente menor que 1, i.e. ρ(G)<1. Outro importante resultado é uma consequência do teorema de Gershgorin1414endnote: 14Semyon Aronovich Gershgorin, 1901 - 1933, matemático russo-soviético. Fonte: Wikipedia.. Temos que os métodos de Jacobi e de Gauss-Seidel convergem para qualquer aproximação inicial 𝒙(0), se A for estritamente diagonal dominante, i.e. se

    |aii|>j=1jin|aij|, (1.114)

    para todo i=1,2,,n. Ainda, se A for simétrica positiva definida e 0<ω<2, então, o método SOR converge para qualquer aproximação inicial 𝒙(0).

  3. c)

    Quando a iteração (1.110) converge, qual é a taxa de convergência?

    Do fato dos métodos de relaxação serem iterações de ponto fixo (1.110), temos que a taxa de convergência é linear e dada por

    𝒙k+1𝒙kG𝒙k𝒙k1 (1.115)
    Gk𝒙1𝒙0. (1.116)

    Lembrando que ρ(G)G para qualquer norma natural, temos que a taxa de convergência é governada por ρ(G), i.e.

    𝒙k+1𝒙kρ(G)k𝒙1𝒙0. (1.117)

1.3.7 Exercícios

E. 1.3.1.

Implemente o método de Gauss-Seidel retropropagado e aplique-o para resolver o sistema linear associado ao problema de Poisson1515endnote: 15Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D discutido no Exemplo 1.1.3. Compare os resultados com os obtidos pelos métodos de Jacobi e de Gauss-Seidel, para diferentes tamanhos de malha.

E. 1.3.2.

Implemente o método de Gauss-Seidel simétrico e aplique-o para resolver o sistema linear associado ao problema de Poisson1616endnote: 16Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D discutido no Exemplo 1.1.3. Compare os resultados com os obtidos pelos métodos de Jacobi, de Gauss-Seidel e de Gauss-Seidel retropropagado, para diferentes tamanhos de malha.

E. 1.3.3.

Implemente o método SOR e aplique-o para resolver o sistema linear associado ao problema de Poisson1717endnote: 17Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D discutido no Exemplo 1.1.3. Compare os resultados com os obtidos pelos métodos de Jacobi, de Gauss-Seidel, de Gauss-Seidel retropropagado e de Gauss-Seidel simétrico, para diferentes tamanhos de malha e valores do fator de relaxação ω.

E. 1.3.4.

Implemente o método SSOR e aplique-o para resolver o sistema linear associado ao problema de Poisson1818endnote: 18Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D discutido no Exemplo 1.1.3. Compare os resultados com os obtidos pelos métodos de Jacobi, de Gauss-Seidel, de Gauss-Seidel retropropagado, de Gauss-Seidel simétrico e de SOR, para diferentes tamanhos de malha e valores do fator de relaxação ω.

E. 1.3.5.

Para um sistema A𝒙=b, com A matriz definida positiva e tridiagonal, a escolha ótima de ω para o método SOR é dada por [1]

ωopt=21+1ρ(GJA)2, (1.118)

onde GJA é a matriz de iteração do método de Jacobi. Verifique este resultado numericamente para o sistema linear associado ao problema de Poisson1919endnote: 19Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 1D dado no Exemplo 1.1.2, para diferentes tamanhos de malha.


Envie seu comentário

Aproveito para agradecer a todas/os que de forma assídua ou esporádica contribuem enviando correções, sugestões e críticas!

Opcional. Preencha seu nome para que eu possa lhe contatar.
Opcional. Preencha seu e-mail para que eu possa lhe contatar.
As informações preenchidas são enviadas por e-mail para o desenvolvedor do site e tratadas de forma privada. Consulte a política de uso de dados para mais informações.

Licença Creative Commons
Este texto é disponibilizado nos termos da Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional. Ícones e elementos gráficos podem estar sujeitos a condições adicionais.

Matemática Numérica III

Ajude a manter o site livre, gratuito e sem propagandas. Colabore!

1.3 Métodos iterativos básicos

Os primeiros métodos iterativos desenvolvidos para a solução de grandes sistemas lineares foram os métodos de relaxação. Partindo-se de uma aproximação inicial 𝒙(0) da solução do sistema

A𝒙=𝒃, (1.80)

com matriz dos coeficientes A matriz n×n e vetor dos termos constantes 𝒃n, os métodos de relaxação constroem uma sequência de aproximações (𝒙(k))k. Cada nova aproximação 𝒙(k+1) é construída em etapas pela modificação de uma ou mais componentes da aproximação anterior 𝒙(k) buscando satisfazer a/s componentes selecionadas do resíduo do sistema

(𝒃A𝒙(k+1))i=0. (1.81)

Começamos por decompor a matriz A como

A=DLU, (1.82)

onde D é a matriz diagonal de A, L é a parte estritamente triangular inferior de A e U é a parte estritamente triangular superior de A.

1.3.1 Método de Jacobi

Dada uma aproximação inicial 𝒙0, o método de Jacobi é o método de relaxação que consiste nas iterações

D𝒙(k+1)=(L+U)𝒙(k)+𝒃, (1.83)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido.

Código 4: jacobi.py
1from numpy.linalg import norm
2from scipy.sparse import tril, triu
3
4def jacobi(A, b, x0, rtol=1e-5, atol=0.0, maxiter=1000):
5 L = -tril(A, -1, A.format)
6 U = -triu(A, 1, A.format)
7 d = A.diagonal()
8
9 info = 0
10 for k in range(maxiter):
11 x = ((L + U) @ x0 + b) / d
12
13 if norm(b - A@x) <= max(rtol*norm(b), atol):
14 info = 1
15 break
16 x0 = x.copy()
17
18 return x, info
Exemplo 1.3.1.

A tabela abaixo, mostra resultados da aplicação do método de Jacobi para a resolução do sistema linear associado à formulação de diferenças finitas do problema de Poisson1111endnote: 11Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D (Exemplo 1.1.3). Na tabela, n é o número de pontos da malha, #it é o número de iterações necessárias para satisfazer o critério de parada de rtol=105 e atol=0.

n #it
11 230
21 930
41 3729
81 14928

1.3.2 Método de Gauss-Seidel

Dada uma aproximação inicial 𝒙0, o método de Gauss-Seidel é o método de relaxação que consiste nas iterações

(DL)𝒙(k+1)=U𝒙(k)+𝒃, (1.84)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido.

Código 5: gs.py
1from numpy.linalg import norm
2from scipy.sparse import diags, tril, triu
3from scipy.sparse.linalg import spsolve
4
5def gs(A, b, x0, rtol=1e-5, atol=0.0, maxiter=100000):
6 L = -tril(A, -1, format=A.format)
7 D = diags(A.diagonal(), format=A.format)
8 U = -triu(A, 1, format=A.format)
9
10 info = 0
11 for k in range(maxiter):
12 x = spsolve(D - L, U @ x0 + b)
13
14 if norm(b - A@x) <= max(rtol*norm(b), atol):
15 info = 1
16 break
17
18 x0 = x.copy()
19
20 return x, info
Exemplo 1.3.2.

A tabela abaixo, mostra resultados da aplicação do método de Gauss-Seidel para a resolução do sistema linear associado à formulação de diferenças finitas do problema de Poisson1212endnote: 12Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D (Exemplo 1.1.3). Na tabela, n é o número de pontos da malha, #it é o número de iterações necessárias para satisfazer o critério de parada de rtol=105 e atol=0.

n #it
11 116
21 466
41 1866
81 7465

Método de Gauss-Seidel retropropagado

Dada uma aproximação inicial 𝒙0, o método de Gauss-Seidel retropropagado é o método de relaxação que consiste nas iterações

(DU)𝒙(k+1)=L𝒙(k)+𝒃, (1.85)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido. Implemente!

Método de Gauss-Seidel simétrico

Dada uma aproximação inicial 𝒙0, o método de Gauss-Seidel simétrico é o método de relaxação que consiste nas iterações

Propagação: (1.86)
(DL)𝒙(k+12)=U𝒙(k)+𝒃, (1.87)
Retropropagação: (1.88)
(DU)𝒙(k+1)=L𝒙(k+12)+𝒃, (1.89)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido. Implemente!

Exemplo 1.3.3.

A tabela abaixo, mostra resultados da aplicação do método de Gauss-Seidel simétrico para a resolução do sistema linear associado à formulação de diferenças finitas do problema de Poisson1313endnote: 13Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D (Exemplo 1.1.3). Na tabela, n é o número de pontos da malha, #it é o número de iterações necessárias para satisfazer o critério de parada de rtol=105 e atol=0.

n #it
11 62
21 237
41 937
81 3737

1.3.3 Método SOR

Dada uma aproximação inicial 𝒙(0), os métodos de Jacobi e de Gauss-Seidel têm ambos a forma iterada

M𝒙(k+1)=N𝒙(k)+𝒃, (1.90)

proveniente de uma decomposição (do tipo splitting) da matriz A, i.e.

A=MN. (1.91)

De fato, M=D para o método de Jacobi e M=DL para o método de Gauss-Seidel.

A ideia do método de Sobre-Relaxação de Gauss-Seidel (SOR) é introduzir um fator de relaxação ω>0 na iteração acima, baseada na decomposição

ωA=(DωL)M((1ω)D+ωU)N, (1.92)

o que leva às iterações do método SOR

(DωL)𝒙(k+1)=((1ω)D+ωU)𝒙(k)+ω𝒃, (1.93)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido.

1.3.4 Método SSOR

Dada uma aproximação inicial 𝒙(0), o método de Sobre-Relaxação de Gauss-Seidel Simétrico (SSOR) é o método de relaxação que consiste nas iterações

Propagação: (1.94)
(DωL)𝒙(k+12)=((1ω)D+ωU)𝒙(k)+ω𝒃, (1.95)
Retropropagação: (1.96)
(DωU)𝒙(k+1)=((1ω)D+ωL)𝒙(k+12)+ω𝒃, (1.97)

para k=0,1,2,,nitmax, onde nitmax é o número máximo de iterações permitido.

1.3.5 Métodos de relaxação como precondicionadoras

Dada a decomposição da matriz

A=MN, (1.98)

para algum método de relaxação, temos que a iteração

M𝒙(k+1)=N𝒙(k)+𝒃, (1.99)

pode ser escrita como

𝒙(k+1)=G𝒙(k)+𝒄, (1.100)

onde G=M1N e 𝒄=M1𝒃 são chamados de matriz e vetor de iteração, respectivamente. Por exemplo, para o método de Jacobi, temos

GJ=D1(L+U) (1.101)

e, para o método de Gauss-Seidel, temos

GGS=(DL)1U. (1.102)

A iteração (1.100) pode ser vista como uma iteração de ponto fixo para resolver o sistema linear

(IG)𝒙=𝒄. (1.103)

Observando que

IG=IM1N=M1(MN)=M1A, (1.104)

vemos que o sistema é equivalente ao sistema original A𝒙=𝒃 precondicionado à esquerda por M, i.e.

M1A𝒙=M1𝒃. (1.105)

As precondicionadoras de Jacobi (JA), Gauss-Seidel (GS), SOR e SSOR são, portanto, respectivamente

MJA=D, (1.106)
MGS=DL, (1.107)
MSOR=DωL, (1.108)
MSSOR=DωU)D1(DωL). (1.109)

1.3.6 Aspectos de convergência

Como observado anteriormente, os métodos de relaxação podem ser escritos na forma

𝒙(k+1)=G𝒙(k)+𝒄, (1.110)

onde G=M1N e 𝒄=M1𝒃 são a matriz e o vetor de iteração do método obtido a partir de uma decomposição A=MN.

Vamos analisar alguns aspectos sobre a convergência das iterações (1.110).

  1. a)

    Se a iteração (1.110) converge para qualquer aproximação inicial 𝒙(0), então, converge para a solução do sistema linear original A𝒙=𝒃?

    Se a iteração (1.110) converge, então, existe 𝒙(k)𝒙 é tal que

    𝒙=G𝒙+𝒄. (1.111)

    Assim, temos

    (IG)𝒙=𝒄. (1.112)

    Como IG=M1A e 𝒄=M1𝒃, temos

    M1A𝒙=M1𝒃, (1.113)

    o que implica que A𝒙=𝒃, ou seja, 𝒙 é a solução do sistema linear original.

  2. b)

    Sobre quais condições a iteração (1.110) converge para qualquer aproximação inicial 𝒙(0)?

    Pode-se mostrar que a iteração (1.110) converge para qualquer aproximação inicial 𝒙(0), se (IG) for não singular e o raio espectral de G for estritamente menor que 1, i.e. ρ(G)<1. Outro importante resultado é uma consequência do teorema de Gershgorin1414endnote: 14Semyon Aronovich Gershgorin, 1901 - 1933, matemático russo-soviético. Fonte: Wikipedia.. Temos que os métodos de Jacobi e de Gauss-Seidel convergem para qualquer aproximação inicial 𝒙(0), se A for estritamente diagonal dominante, i.e. se

    |aii|>j=1jin|aij|, (1.114)

    para todo i=1,2,,n. Ainda, se A for simétrica positiva definida e 0<ω<2, então, o método SOR converge para qualquer aproximação inicial 𝒙(0).

  3. c)

    Quando a iteração (1.110) converge, qual é a taxa de convergência?

    Do fato dos métodos de relaxação serem iterações de ponto fixo (1.110), temos que a taxa de convergência é linear e dada por

    𝒙k+1𝒙kG𝒙k𝒙k1 (1.115)
    Gk𝒙1𝒙0. (1.116)

    Lembrando que ρ(G)G para qualquer norma natural, temos que a taxa de convergência é governada por ρ(G), i.e.

    𝒙k+1𝒙kρ(G)k𝒙1𝒙0. (1.117)

1.3.7 Exercícios

E. 1.3.1.

Implemente o método de Gauss-Seidel retropropagado e aplique-o para resolver o sistema linear associado ao problema de Poisson1515endnote: 15Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D discutido no Exemplo 1.1.3. Compare os resultados com os obtidos pelos métodos de Jacobi e de Gauss-Seidel, para diferentes tamanhos de malha.

E. 1.3.2.

Implemente o método de Gauss-Seidel simétrico e aplique-o para resolver o sistema linear associado ao problema de Poisson1616endnote: 16Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D discutido no Exemplo 1.1.3. Compare os resultados com os obtidos pelos métodos de Jacobi, de Gauss-Seidel e de Gauss-Seidel retropropagado, para diferentes tamanhos de malha.

E. 1.3.3.

Implemente o método SOR e aplique-o para resolver o sistema linear associado ao problema de Poisson1717endnote: 17Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D discutido no Exemplo 1.1.3. Compare os resultados com os obtidos pelos métodos de Jacobi, de Gauss-Seidel, de Gauss-Seidel retropropagado e de Gauss-Seidel simétrico, para diferentes tamanhos de malha e valores do fator de relaxação ω.

E. 1.3.4.

Implemente o método SSOR e aplique-o para resolver o sistema linear associado ao problema de Poisson1818endnote: 18Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 2D discutido no Exemplo 1.1.3. Compare os resultados com os obtidos pelos métodos de Jacobi, de Gauss-Seidel, de Gauss-Seidel retropropagado, de Gauss-Seidel simétrico e de SOR, para diferentes tamanhos de malha e valores do fator de relaxação ω.

E. 1.3.5.

Para um sistema A𝒙=b, com A matriz definida positiva e tridiagonal, a escolha ótima de ω para o método SOR é dada por [1]

ωopt=21+1ρ(GJA)2, (1.118)

onde GJA é a matriz de iteração do método de Jacobi. Verifique este resultado numericamente para o sistema linear associado ao problema de Poisson1919endnote: 19Siméon Denis Poisson, 1781 - 1840, matemático francês. Fonte: Wikipédia:Siméon Denis Poisson. 1D dado no Exemplo 1.1.2, para diferentes tamanhos de malha.


Envie seu comentário

Aproveito para agradecer a todas/os que de forma assídua ou esporádica contribuem enviando correções, sugestões e críticas!

Opcional. Preencha seu nome para que eu possa lhe contatar.
Opcional. Preencha seu e-mail para que eu possa lhe contatar.
As informações preenchidas são enviadas por e-mail para o desenvolvedor do site e tratadas de forma privada. Consulte a política de uso de dados para mais informações.

Licença Creative Commons
Este texto é disponibilizado nos termos da Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional. Ícones e elementos gráficos podem estar sujeitos a condições adicionais.

Pedro H A Konzen
| | | |