24
  UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA MECÂNICA MÉTODOS ITERATIVOS PARA SOLUÇÃO DE SISTEMAS LINEARES Disciplina: Métodos Matriciais Professora: Liliane Basso Barichello Aluno: Tiago dos Santos Porto Alegre 2010

Métodos Iterativos_Sistemas Lineares

Embed Size (px)

Citation preview

Page 1: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 1/24

 

 

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL

PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA MECÂNICA

MÉTODOS ITERATIVOS PARA SOLUÇÃO DE SISTEMAS LINEARES

Disciplina: Métodos MatriciaisProfessora: Liliane Basso BarichelloAluno: Tiago dos Santos 

Porto Alegre

2010

Page 2: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 2/24

 

 

2

SUMÁRIO

RESUMO.......................................................................................................................... 3 

1  MÉTODOS ITERATIVOS PARA SOLUÇÃO DE SISTEMAS LINEARES ................. 4 

1.1  Introdução .......................................................................................................... 4 1.2  Condição de Convergência ................................................................................ 5 1.3  Critério de Parada .............................................................................................. 6 1.4  Método Iterativo de Jacobi ................................................................................. 6 

1.4.1  Algorítmo e Complexidade .......................................................................... 8  1.5  Método Iterativo de Gauss-Seidel ...................................................................... 9 

1.5.1 

Algorítmo e Complexidade ........................................................................ 10  

1.6  Método Iterativo da Sobre-Relaxação Sucessiva ............................................ 12 1.6.1  Algorítmo e complexidade ........................................................................ 13  

2  RESULTADOS NUMÉRICOS ................................................................................. 15 

2.1  Primeiro Caso .................................................................................................. 15 2.2  Segundo Caso ................................................................................................. 17 

3  DISCUSSÃO DOS RESULTADOS ......................................................................... 22 

4  CONCLUSÃO ......................................................................................................... 23 

REFERÊNCIAS BIBLIOGRÁFICAS ............................................................................... 24 

Page 3: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 3/24

 

 

3

RESUMO

Neste trabalho serão apresentados e implementados computacionalmente,

utilizando o programa Matlab, três métodos iterativos para solução de sistemas lineares:

método de Jacobi, método de Gauss-Seidel e método da sobre-relaxação prograssiva.

Onde, por meio da solução de dois problemas numéricos, os métodos acima citados

serão comparados utilizando-se uma análise de convergência para os problemas.

Também serão analisados os raios espectrais das matrizes de iteração de cada método

nos distintos problemas solucionados.

Particularmente para o método da sobre-relaxaçã sucessiva, será analisada a

influência do parâmetro ω  na convergência da solução.

Com base nos resultados obtidos, método da sobre-relaxação mostrou melhor

convergência nos dois problemas, em segundo lugar está o método de Gauss-Seidel.

Essa ordem também foi verificada nos raios espectrais das matrizes de iteração, onde a

matriz de iteração da sobre-relaxação apresentou menor raio espectral e o método de

Jacobi aprsentou o maior valor, em ambos sistemas lineares solucionados.

Page 4: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 4/24

 

 

4

1 MÉTODOS ITERATIVOS PARA SOLUÇÃO DE SISTEMAS LINEARES

1.1 Introdução

Um sistema de equações lineares  b Ax = pode ser resolvido por um processo

onde, a partir de um vetor inicial0

 x , uma seqüência de vetores }{321

KK , , , , , k  x x x x  

é gerada de modo a convergir para a solução  x do sistema. Nesse processo é

realizada uma série de operações repetidas, e por isso tal processo é denominado

iterativo.

Dado o sistema linear:

;3,2,1;

;

1

mi x Abn

 j

 jiji K==

=

∑=

 b Ax

  (1.1.1)

Onde,  b é um vetor de constantes de ordm m ,  A é a matriz de coeficientes de

tamanho nm× e  x é o vetor solução de ordem n .

Sendo  A uma matriz quadrada nn× , isolando-se o ésimoi − valor de  x para

cada linha i do sistema, obtém-se:

;3,2,1;1

;3,2,1;

1

1

ni x A A A

b x

ni x Ab x A

n

i j j

 jij

iiii

ii

n

i j j

 jijiiii

K

K

=−=

=−=

=

=

 

(1.1.2)

(1.1.3)

No processo iterativo a eq. (1.1.3) pode ser representada conforme eq. (1.1.4).

Page 5: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 5/24

 

 

5

;1

 c Mx x +=+ k k 

  (1.1.4)

Onde, é a matriz de iteração e  c é um vetor constante. O processo iterativo

é dito estacionário se não for alterada durante o processo. A seguir serão

apresentados três métodos iterativos estacionários: método de Jacobi, método de

Gauss-Seidel e método da sobre-relaxação sucessiva.

1.2 Condição de Convergência

A sequência de vetores solução }{321

KK , , , , , k  x x x x converge para a solução

do sistema linear  b Ax = , quando satisfeito o seguinte teorema:

Teorema 1.1: O método iterativo da eq. (1.1.4) converge com qualquer valor

inicial0

 x se e somente se, 1)( < M  , sendo )( M  o raio espectral (módulo do

maior autovalor) da matriz de iteração  M  .

No entanto, a determinação de )( M  ρ  pode requerer maior esforço numérico

que a própria solução do sistema  b Ax = . Por isso, usualmente se utiliza o chamado

critério das linhas para convergência, segundo o teorema:

Teorema 1.2 : É condição suficiente para a convergência dos métodos iterativos

de Jacobi e de Gauss-Seidel que a matriz dos coeficientes  A seja diagonalmente

predominante, ou seja:

niaan

i j j

ijii K3,2,1;1

=>∑≠

=

  (1.2.1)

Pelos Teoremas 1.1 e 1.2 , nota-se que a convergência não depende da escolha

do vetor inicial0

 x . Outro critério de convergência é que o sistema iterativo (1.1.4)

converge se e somente se 0→k 

 M  com ∞→k  .

Page 6: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 6/24

 

 

6

1.3 Critério de Parada

A cada iteração do processo descrito na eq. (1.1.4) o vetor solução obtido é mais

próximo da solução do sistema linear  b Ax = , isto é:

;lim x x =→∞

k   (1.3.1)

Como critério de parada do processo pode-se definir um erro relativo máximo

aceitável ε  :

;

1

k k 

 x

 x x−

−≥ε    (1.3.2)

Ou limitar o número de operações, conforme a seguinte relação:

;máxk k ≥   (1.3.3)

Onde, máxk  é o número máximo de iterações.

Para a determinação da tolerência ε  , deve-se considerar a perda de precisão

devido à aritmética de ponto flutuante, para que não se defina uma exatidão impossível

de ser alcançada.

1.4 Método Iterativo de Jacobi

Considerando um sistema linear:

; b Ax =   (1.4.1)

Page 7: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 7/24

 

 

7

A matriz  A pode ser decomposta em:

;U  D L A ++=   (1.4.2)

Onde,  D é uma matriz diaginal,  L e U  são duas matrizes triangulares inferior

e superior, respectivamente, com a diagonal nula. Substituindo a eq. (1.4.2) na eq.

(1.4.1), obtém-se:

;

;)(

;)(

;)(;)(

1

111

 c Jx x

 b D xU  L D x

 b xU  L Dx

 b xU  L Dx b xU  D L

+=

++−=

++−=

=++

=++

+

−−+

k k 

k k  

(1.4.3)

(1.4.4)

(1.4.5)

A eq. (1.4.5) é semelhante à eq. (1.1.4), onde )(1

U  L D J  +=−

é a matriz de

iteração do método de Jacobi.

Usualmente, utiliza-se como valor inicial 0 x =0

; no entanto, substituindo esse

valor na eq. (1.4.5), obtem-se:

;1

ii

ii

 A

b x =→=  c x  

Assim, será tomado como valor inicial

.0

ii

ii

 A

b x =   (1.4.6)

Page 8: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 8/24

 

 

8

1.4.1 Algorítmo e Complexidade 

Figura 1.4.1 – Rotina do método iterativo de Jacobi em Matlab.

function [x,Niter,erros,Conv]=ijacobi(A,b,Tol,IterMax)

% Esta rotina soluciona um sistema linear do tipo Ax=b, pelo método % iterativo de Jacobi. % Parâmetros de entrada: % A: Matriz de coeficientes nxn; % b: Vetor de constantes; % Tol: Tolerância desejada; % IterMax: Número máximo de iterações desejado. % Parâmetros de saída: % x: vetor solução; % Niter: Número de iterações realizadas; % erro: Erro relativo em norma infinita; 

% Conv: Informação de convergência (Conv=1 houve convergência; Conv=1 não % houve convergência).

[m,n]=size(A); % Verifica tamanho da matriz A if m == n % Verifica se A é uma matriz quadrada 

xi = zeros(m,1); % Cria vetor solução inicial x = zeros(m,1); % Cria vetor solução final for i = 1 : m 

if A(i,i) == 0 error('A possui zero na diagonal') 

end xi(i) = b(i)/A(i,i); % Monta vetor solução inicial 

end erro = 1; % Atribui valor inicial ao erro Niter = 0; % Número de iterações 

while erro > Tol Niter = Niter + 1; if Niter == IterMax 

Conv = 0; error('Número máximo de iterações foi atingido') 

end for i = 1 : m 

soma = 0; for j = 1 : n 

if i ~= j soma = A(i,j)*xi(j) + soma; 

end end 

x(i) = (-soma + b(i))/A(i,i); end erro = norm(x - xi, inf)/norm(x,inf); % Erro relatifo (N inf) erros(Niter) = erro; % Vetor contendo o erro de cada iteração xi = x; 

end Conv = 1; 

else disp('A não é uma matrix quadrada') 

end 

Page 9: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 9/24

 

 

9

Na fig. (1.4.1) é apresentada a rotina, criada no ambiente Matlab, que resolve um

sistema linear do tipo  b Ax = pelo método iterativo de Jacobi. Os parâmetros deentrada são: a matriz  A , o vetor  b , a tolerância desejada ε  e o número máximo de

iterações máxk  . Os dois últimos parâmetros são utilizados como critérios de parada,

conforme eqs. (1.3.2) e (1.3.3), respectivamente. E tem como parâmetros de saída o

vetor solução  x , o número de iterações k , o erro relativok 

ε  em norma infinita de

cada iteração e informa se ocorreu convergência dentro do número de iterações

escolhido com base na tolerância informada ( 1=Conv ) ou não ( 0=Conv ).

A complexidade computacional do algorítmo é dada segundo a tab. (1.4.1).

Operações Complexidade

adições k knkn ++2

 

multiplicações knnk  −+2

)1(  

divisões k n +  

Tabela 1.4.1 – Complexidade de Jacobi usando k iterações em sistema de ordem n > 1.(Campos, filho, 2001).

1.5 Método Iterativo de Gauss-Seidel

Seja o sistema linear mostrado na eq. (1.4.1), com a matriz  A sendo

decomposta em U  D L A ++= , sendo  D uma matriz diaginal,  L e U  duas

matrizes triangulares inferior e superior, respectivamente, com a diagonal nula. O

sistema linear pode, então, ser reescrito na seguinte forma:

;

;)()(

;)(

;)(

1

111

 d Sx x

 b L DUx L D x

 bUx x L D

 b xU  D L

+=

+++−=

+−=+

=++

+

−−+

k k 

k k   

(1.5.1)

(1.5.2)

(1.5.3)

Page 10: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 10/24

 

 

10

Onde, U  L DS 1)( −+−= é a matriz de iteração do método de Gauss-Seidel.

Uma maneira mais simples de implementar, sem a necessidade de calcular a matriz

inversa é mostrado abaixo:

;

;)(

;)(

;)(

11

1

 bUx Lx Dx

 bUx x L D

 bUx x L D

 b xU  D L

+−−=

+−=+

+−=+

=++

++

+

k k k 

k k   

(1.5.4)

Na eq. (1.5.4) fica clara a diferença entre os métodos de Jacobi e Gauss-Seidel.

No método de Jacobi o vetor1+k 

 x é calculado usando somente valoresk 

i x , enquanto,

no método de Gauss-Seidel o vetor1+k 

 x é obtido a partir dos elementos mais recentes,

incluindo1+k 

 x ek 

 x . O valor inicial utilizado será o mesmo da eq. (1.4.6).

1.5.1 Algorítmo e Complexidade 

Na fig. (1.5.1) é apresentada a rotina, criada no ambiente Matlab, que resolve um

sistema linear do tipo  b Ax = pelo método iterativo de Gauss-Seidel. Os parâmetros

de entrada são: a matriz  A , o vetor  b , a tolerância desejada ε  e o número máximo de

iterações máxk  . Os dois últimos parâmetros são utilizados como critérios de parada,

conforme eqs. (1.3.2) e (1.3.3), respectivamente. E tem como parâmetros de saída o

vetor solução  x , o número de iterações k , o erro relativok 

ε  em norma infinita de

cada iteração e informa se ocorreu convergência dentro do número de iterações

escolhido com base na tolerância informada ( 1=Conv ) ou não ( 0=Conv ).

Page 11: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 11/24

 

 

11

Figura 1.5.1 – Rotina do método iterativo de Jacobi em Matlab.

function [x,Niter,erros,Conv]=igauss_seidel(A,b,Tol,IterMax) % Esta rotina soluciona um sistema linear do tipo Ax=b, pelo método % iterativo de Gauss-Seidel. % Parâmetros de entrada: % A: Matriz de coeficientes nxn; % b: Vetor de constantes; % Tol: Tolerância desejada; % IterMax: Número máximo de iterações desejado. % Parâmetros de saída: % x: vetor solução; % Niter: Número de iterações realizadas; % erro: Erro relativo em norma infinita; % Conv: Informação de convergência (Conv=1 houve convergência; Conv=1 não % houve convergência). [m,n]=size(A); % Verifica tamanho da matriz A 

if m == n % Verifica se A é uma matriz quadrada xi = zeros(m,1); % Cria vetor solução inicial x = zeros(m,1); % Cria vetor solução final for i = 1 : m 

if A(i,i) == 0 error('A possui zero na diagonal') 

end xi(i) = b(i)/A(i,i); % Monta vetor solução inicial xi1 = xi; % Vetor que armazena valores iniciais de xi 

end erro = 1; % Atribui valor inicial ao erro Niter = 0; % Número de iterações while erro > Tol 

Niter = Niter + 1; if Niter == IterMax 

Conv = 0; error('Número máximo de iterações foi atingido') 

end for i = 1 : m 

soma = 0; for j = 1 : n 

if i ~= j soma = A(i,j)*xi(j) + soma; 

end end x(i) = (-soma + b(i))/A(i,i); xi(i) = x(i); % Atualiza o vetor solução inicial 

end erro = norm(x - xi1, inf)/norm(x,inf); % Erro relatifo (N inf) erros(Niter) = erro; % Vetor contendo o erro de cada iteração xi = x; xi1 = xi; 

end Conv = 1; 

else disp('A não é uma matrix quadrada') 

end 

Page 12: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 12/24

 

 

12

A complexidade computacional do algorítmo é dada segundo a tab. (1.5.1).

Operações Complexidade

adições k knkn ++2

 

multiplicações knnk  −+2

)1(  

divisões k n +  

Tabela 1.5.1 – Complexidade de Gauss-Seidel usando k iterações em sistema de ordem n > 1.(Campos, filho, 2001).

1.6 Método Iterativo da Sobre-Relaxação Sucessiva

Considerando o sistema linear da eq. (1.4.1), com a matriz  A sendo

decomposta em U  D L A ++= , sendo  D uma matriz diaginal,  L e U  duas

matrizes triangulares inferior e superior, respectivamente, com a diagonal nula.

Multiplicando o sistema linear por um parâmetro ω , tem-se:

;)( b xU  D L ω ω  =++   (1.6.1)

Somando o vetor nulo  x D D )( − ao primeiro termo:

;

;)(])1[()(

;])1[()(

;])1[()(

;)()(

1

111

1

e Rx x

 b L D xU  D L D x

 b xU  D x L D

 b xU  D x L D

 b xU  D L x D D

+=

++−−+=

+−−=+

+−−=+

=+++−

+

−−+

+

k k 

k k 

k k 

ωωωω

ωωω

ωωω

ω 

ω 

ω 

ω ω 

 (1.6.2)

(1.6.3)

Onde, ])1[()(1

U  D L D R ωωω −−+=−

é a matriz de iteração do método da

sobre-relaxação sucessiva (SOR: sucessive over-relaxation ).

Page 13: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 13/24

 

 

13

Uma outra maneira de representar a forma de iteração do método da sobre-

relaxação é a seguinte, a partir da eq. (1.6.2):

;)1()(

;)1()(

;])1[()(

111

11

1

k k k k 

k k k k 

k k 

ωω

ωω

ωωω

 x bUx Lx D x

 Dx bUx Lx Dx

 b xU  D x L D

−++−−=

−++−−=

+−−=+

+−+

++

+ω 

 

(1.6.4)

O valor inicial utilizado para a iteração será o mesmo da eq. (1.4.6).

A convergência do método SOR depende da escolha do parâmetro ω , énecessário que 20 <<ω  para garantir a convergência. Usualmente, utiliza-se

21 <<ω  . Um valor ótimo de ω  pode ser calculado segundo a eq. (1.6.5).

;)(11

2

2 J  ρ −+

=otimω   (1.6.5)

Onde,  J  é a matriz iterativa do método de Jacobi.

Na equação anterior otimω é determinado de forma a produzir o menor raio

espectral da matriz de iteração no método SOR.

1.6.1 Algorítmo e complexidade 

Na fig. (1.6.1) é apresentada a rotina, criada no ambiente Matlab, que resolve umsistema linear do tipo  b Ax = pelo método iterativo da sobre-relaxação sucessiva. Os

parâmetros de entrada são: a matriz  A , o vetor  b , a tolerância desejada ε  , o número

máximo de iterações máxk  e o parâmetro ω . Os valores de ε  e máxk  são utilizados

como critérios de parada, conforme eqs. (1.3.2) e (1.3.3), respectivamente.

A complexidade do método SOR é a mesma mostrada na tab. (1.5.1).

Page 14: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 14/24

 

 

14

Figura 1.6.1 – Rotina do método iterativo de Jacobi em Matlab.

function [x,Niter,erros,Conv]=SOR(A,b,Tol,IterMax,w) % Esta rotina soluciona um sistema linear do tipo Ax=b, pelo método % iterativo da sobre-relaxação sucessiva. % Parâmetros de entrada: % A: Matriz de coeficientes nxn; b: Vetor de constantes; % Tol: Tolerância desejada; % IterMax: Número máximo de iterações desejado; % w: parâmetro 0 < w < 2 % Parâmetros de saída: % x: vetor solução; % Niter: Número de iterações realizadas; % erro: Erro relativo em norma infinita; % Conv: Informação de convergência (Conv=1 houve convergência; Conv=1 não % houve convergência). [m,n]=size(A); % Verifica tamanho da matriz A 

if m == n % Verifica se A é uma matriz quadrada xi = zeros(m,1); % Cria vetor solução inicial x = zeros(m,1); % Cria vetor solução final for i = 1 : m 

if A(i,i) == 0 error('A possui zero na diagonal') 

end xi(i) = b(i)/A(i,i); % Monta vetor solução inicial xi1 = xi; % Vetor que armazena valores iniciais de xi 

end erro = 1; % Atribui valor inicial ao erro Niter = 0; % Número de iterações while erro > Tol 

Niter = Niter + 1; if Niter == IterMax 

Conv = 0; error('Número máximo de iterações foi atingido') 

end for i = 1 : m 

soma = 0; for j = 1 : n 

if i ~= j soma = A(i,j)*xi(j) + soma; 

end end x(i) = w*(-soma + b(i))/A(i,i) + (1 - w)*xi(i); xi(i) = x(i); % Atualiza o vetor solução inicial 

end erro = norm(x - xi1, inf)/norm(x,inf); % Erro relatifo (N inf) erros(Niter) = erro; % Vetor contendo o erro de cada iteração xi = x; xi1 = xi; 

end Conv = 1; 

else disp('A não é uma matrix quadrada') 

end 

Page 15: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 15/24

 

 

15

E tem como parâmetros de saída o vetor solução  x , o número de iterações k , o

erro relativo k ε  em norma infinita de cada iteração e informa se ocorreu convergência

dentro do número de iterações escolhido com base na tolerância informada ( 1=Conv )

ou não ( 0=Conv ).

2 RESULTADOS NUMÉRICOS

Nessa seção serão analisados dois sistemas lineares distintos, utilizando-se os

três métodos iterativos apresentados no trabalho: método de Jacobi, método de Gauss-

Seidel e método da sobre-relaxação sucessiva. Sobre esses dois problemas serão

realizadas análises de convergência e do raio espectral de cada matriz de iteração.

2.1 Primeiro Caso

O primeiro problema numérico a ser análisado consiste em um exercício

proposto por Datta, 1995, exercício 49 página 307. Dado pelo seguinte sistema linear:

;

0

0

0

0

0

1

410100

141010

014001

100410

010141

001014

6

5

4

3

2

1

=

−−

−−−

−−

−−

−−−

−−

 x

 x

 x

 x

 x

 x

 (2.1.1)

Como critérios de parada serão utilizados os seguintes valores:

;30

;001.0

=

=

máxk 

ε 

  (2.1.2)

Page 16: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 16/24

 

 

16

Na resolução do sistema linear pelo método SOR será utilizado o valor ótimo do

parâmetro ω , o qual resulta em 128.1=otimω .

Foram obtidos os seguintes valores valores para os raios espectrais das matrizes

de iteração para cada processo, conforme tab. (2.1.1).

( ) 6036,0= J  ρ    ( ) 3643,0=S ρ    ( ) 1128,0= R ρ   

Tabela 2.1.1 – Raios espectrais das matrizes de iteração para o primeiro caso.

Na fig. (2.1.1) são mostrados os valores dos erros relativos, obtidos pela norma

infinita, para cada iteração nos três métodos utilizados.

0 1 2 3 4 5 6 7 8 9 10 11 12

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

Número de iterações - κ 

   E  r  r  o

  r  e   l  a   t   i  v  o

  -       ε

Análise de Convergência

 

Método de Jacobi

Método de Gauss-Seidel

Método da Sobre-Relaxação

 Figura 2.1.1 – Análise de convergência para o primeiro caso.

Particularmente para o método SOR, é analisada a influência do parâmetro ω  

na convergência da solução. A análise é realizado comparando-se o número de

iterações necessárias para que se atinja a tolerância desejada, para valores de

5,11 <<ω  , com incrementos de 05,0=∆ω  . Conforme fig. (2.1.2).

Page 17: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 17/24

 

 

17

1 1.05 1.1 1.15 1.2 1.25 1.3 1.35 1.4 1.45 1.55

5.5

6

6.5

7

7.5

8

8.5

9

9.5

10

Parâmetro ω

   N   ú  m  e  r  o   d  e   i   t  e  r  a  ç   õ  e  s  -     κ

Análise de convergência com relação aω

 Figura 2.1.2 – Análise de convergência com relação a ω para o primeiro caso.

2.2 Segundo Caso

No segundo problema será resolvido um sistema linear cuja matriz de

coeficientes  A é uma matriz esparsa de ordem 3636× , mostrada nas tabs. (2.2.1),

(2.2.2) e (2.2.3). E  b é um vetor de ordem 36 , dado por:

.36,...,2,1:];34,14,1[:;0

;34:;2

];14,1[:;1

=

=

=

=icom

i parai para

i para

bi   (2.2.1)

Como critérios de parada serão utilizados os seguintes valores:

;100

;005.0

=

=

máxk 

ε 

  (2.2.2)

Page 18: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 18/24

 

 

18

Matriz  A - coluna 01 a 12

0,0216 0 0 0 0 0 0 0 0 0 0 00 0,1963 0 0 0 0 0 0 0 0 0 0

0 0 5,7512 0 0 0 0 0 0 0 0 0

0 0 0 1,081 0 0 0 0 0 0 0 0

0 0 0 0 5,7512 0 0 0 0 0 0 -0,4601

0 0 0 0 0 0,0202 0 0 0 0 0 0

0 0 0 0 0 0 0,1618 0 0 0 0 0

0 0 0 0 0 0 0 0,1618 0 0 0 0

0 0 0 0 0 0 0 0 1,0135 0 0 0

0 0 0 0 0 0 0 0 0 5,3918 0 0

0 0 0 0 0 0 0 0 0 0 5,3918 00 0 0 0 -0,4601 0 0 0 0 0 0 0,1963

-0,0108 0 0 0 0 0 0 0 0 0 0 0

0 -0,0982 0,4601 0 0 0 0 0 0 0 0 0

0 -0,4601 1,4378 0 0 0 0 0 0 0 0 0

0 0 0 -0,5405 0 0 0 0 0 0 0 0

0 0 0 0 1,4378 0 0 0 0 0 0 0

0 0 0 0 0 -0,0101 0 0 0 0 0 0

0 0 0 0 0 0 -0,0809 0 0 0 -0,4044 0

0 0 0 0 0 0 0 -0,0809 0 0,4044 0 0

0 0 0 0 0 0 0 0 -0,5067 0 0 00 0 0 0 0 0 0 -0,4044 0 1,3479 0 0

0 0 0 0 0 0 0,4044 0 0 0 1,3479 0

0 0 0 0 0 0 0 0 0 0 0 -0,0982

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0,4601

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

Tabela 2.2.1 – Matriz de coeficientes  A, coluna 01 a 12.

Page 19: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 19/24

 

 

19

Matriz  A - coluna 13 a 24

-0,0108 0 0 0 0 0 0 0 0 0 0 00 -0,0982 -0,4601 0 0 0 0 0 0 0 0 0

0 0,4601 1,4378 0 0 0 0 0 0 0 0 0

0 0 0 -0,5405 0 0 0 0 0 0 0 0

0 0 0 0 1,4378 0 0 0 0 0 0 0

0 0 0 0 0 -0,0101 0 0 0 0 0 0

0 0 0 0 0 0 -0,0809 0 0 0 0,4044 0

0 0 0 0 0 0 0 -0,0809 0 -0,4044 0 0

0 0 0 0 0 0 0 0 -0,5067 0 0 0

0 0 0 0 0 0 0 0,4044 0 1,3479 0 0

0 0 0 0 0 0 -0,4044 0 0 0 1,3479 00 0 0 0 0 0 0 0 0 0 0 -0,0982

0,0216 0 0 0 0 0 0 0 0 0 0 0

0 0,1963 0 0 0 0 0 0 0 0 0 0

0 0 5,7512 0 0 0 0 0 0 0 0 0

0 0 0 1,081 0 0 0 0 0 0 0 0

0 0 0 0 5,7512 0 0 0 0 0 0 -0,4601

0 0 0 0 0 0,0202 0 0 0 0 0 0

0 0 0 0 0 0 0,1618 0 0 0 0 0

0 0 0 0 0 0 0 0,1618 0 0 0 0

0 0 0 0 0 0 0 0 1,0135 0 0 00 0 0 0 0 0 0 0 0 5,3918 0 0

0 0 0 0 0 0 0 0 0 0 5,3918 0

0 0 0 0 -0,4601 0 0 0 0 0 0 0,1963

-0,0108 0 0 0 0 0 0 0 0 0 0 0

0 -0,0982 0,4601 0 0 0 0 0 0 0 0 0

0 -0,4601 1,4378 0 0 0 0 0 0 0 0 0

0 0 0 -0,5405 0 0 0 0 0 0 0 0

0 0 0 0 1,4378 0 0 0 0 0 0 0

0 0 0 0 0 -0,0101 0 0 0 0 0 0

0 0 0 0 0 0 -0,0809 0 0 0 -0,4044 0

0 0 0 0 0 0 0 -0,0809 0 0,4044 0 0

0 0 0 0 0 0 0 0 -0,5067 0 0 0

0 0 0 0 0 0 0 -0,4044 0 1,3479 0 0

0 0 0 0 0 0 0,4044 0 0 0 1,3479 0

0 0 0 0 0 0 0 0 0 0 0 -0,0982

Tabela 2.2.2 – Matriz de coeficientes  A, coluna 13 a 24.

Page 20: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 20/24

 

 

20

Matriz  A - coluna 25 a 36

0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0,4601 0 0 0 0 0 0 0

-0,0108 0 0 0 0 0 0 0 0 0 0 0

0 -0,0982 -0,4601 0 0 0 0 0 0 0 0 0

0 0,4601 1,4378 0 0 0 0 0 0 0 0 0

0 0 0 -0,5405 0 0 0 0 0 0 0 0

0 0 0 0 1,4378 0 0 0 0 0 0 0

0 0 0 0 0 -0,0101 0 0 0 0 0 0

0 0 0 0 0 0 -0,0809 0 0 0 0,4044 0

0 0 0 0 0 0 0 -0,0809 0 -0,4044 0 0

0 0 0 0 0 0 0 0 -0,5067 0 0 00 0 0 0 0 0 0 0,4044 0 1,3479 0 0

0 0 0 0 0 0 -0,4044 0 0 0 1,3479 0

0 0 0 0 0 0 0 0 0 0 0 -0,0982

0,0216 0 0 0 0 0 0 0 0 0 0 0

0 0,1963 0 0 0 0 0 0 0 0 0 0

0 0 5,7512 0 0 0 0 0 0 0 0 0

0 0 0 1,081 0 0 0 0 0 0 0 0

0 0 0 0 5,7512 0 0 0 0 0 0 -0,4601

0 0 0 0 0 0,0202 0 0 0 0 0 0

0 0 0 0 0 0 0,1618 0 0 0 0 0

0 0 0 0 0 0 0 0,1618 0 0 0 0

0 0 0 0 0 0 0 0 1,0135 0 0 0

0 0 0 0 0 0 0 0 0 5,3918 0 0

0 0 0 0 0 0 0 0 0 0 5,3918 0

0 0 0 0 -0,4601 0 0 0 0 0 0 0,1963

Tabela 2.2.3 – Matriz de coeficientes  A, coluna 25 a 36.

Page 21: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 21/24

 

 

21

Na resolução do sistema linear pelo método SOR será utilizado o valor ótimo do

parâmetro ω , o qual resulta em 4784.1=otimω .

Foram obtidos os seguintes valores valores para os raios espectrais das matrizes

de iteração para cada processo, conforme tab. (2.2.4).

( ) 9357,0= J  ρ    ( ) 8755,0=S ρ    ( ) 4784,0= R ρ   

Tabela 2.2.4 – Raios espectrais das matrizes de iteração para o primeiro caso.

Na fig. (2.2.1) são mostrados os valores dos erros relativos, obtidos pela norma

infinita, para cada iteração nos três métodos utilizados.

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 3435

0

0.2

0.4

0.6

0.8

Número de iterações - κ 

   E  r  r  o  r  e   l  a   t   i  v  o  -     ε

Análise de Convergência

 

Método de JacobiMétodo de Gauss-Seidel

Método da Sobre-Relaxação

 Figura 2.2.1 – Análise de convergência para o segundo caso.

A análise de convergência em função do parâmetro ω  para o segundo problema

é mostrada na fig. (2.2.2), para valores de 75,125,1 <<ω  , com incrementos de

05,0=∆ω  .

Page 22: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 22/24

 

 

22

1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6 1.65 1.7 1.759

10

11

12

13

14

15

16

17

Parâmetro ω

   N   ú  m  e  r  o   d  e   i   t  e  r  a  ç   õ  e  s  -     κ

Análise de convergência com relação a ω

 Figura 2.2.2 – Análise de convergência com relação a ω para o segundo caso.

3 DISCUSSÃO DOS RESULTADOS

Nas tabs. (3.1.1) e (3.1.2) são mostrados os números de iterações necessárias

para a convergência do primeiro e segundo problema apresentados, sob a condição da

tolerância desejada, e os valores finais dos erros relativos obtidos para cada método.

Jacobi Gauss-Seidel SOR

Número de iter. 12 7 5

Erro relativo 0,0007 0,0005 0,0006

Tabela 3.1.1 – Resultados de convergência para o primeiro caso.

Jacobi Gauss-Seidel SOR

Número de iter. 31 21 9

Erro relativo 0,005 0,0048 0,005

Tabela 3.1.2 – Resultados de convergência para o segundo caso.

Page 23: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 23/24

 

 

23

Em observação às figs. (2.1.1), (2.2.1) e às tabs. (3.1.1), (3.1.2) nota-se, que

apesar de obter um erro inicial mais alto, o método iterativo SOR convergiu maisrapidamente para ambos os sistemas lineares solucionados, atingindo a tolerância

desejada para cada um deles. O segundo mais rápido foi o método de Gauss-Seidel.

Esses resultados de convergência eram esperados, pois os raios espectrais das

matrizes de iteração dos diferentes métodos seguem a mesma ordem apresentada na

análise de convergência, para ambos os problemas.

Nas análises realizadas em função do parâmetro ω , mostradas nas figs. (2.1.2)

e (2.2.2), observa-se que realmente o método SOR converge para a solução, mais

rapidamente, quando utilizado o valor de otimω  , que para o primeiro caso foi

128.1=otimω  e para o segundo 4784.1=otimω  .

4 CONCLUSÃO

Com a realização desse trabalho é possível notar que cada um dos métodosnuméricos utilizados possui suas características próprias, estritamente ligadas às

propriedades das matrizes de iteração. Para os problemas analisados o método

iterativo da sobre-relaxação sucessiva se mostrou ser mais eficiente. Porém, os três

métodos são limitados quanto à generalidade da matriz de coeficientes  A , essa não

pode possuir valores nulos na diagonal principal, o que vai de encontro à condição de

ser uma matriz diagonalmente dominante, Teorema 1.2. E essa mesma matriz deve

possuir um baixo valor do raio espectral, Teorema 1.1.Também é possível perceber que a implementação computacional desses

métodos numéricos possui diferenças e particularidades quando comparada ao

problema analítico. Algumas pré-analises são necessárias para a definição e

implementação do métódo numérico a ser utilizado.

Page 24: Métodos Iterativos_Sistemas Lineares

5/10/2018 Métodos Iterativos_Sistemas Lineares - slidepdf.com

http://slidepdf.com/reader/full/metodos-iterativossistemas-lineares 24/24

 

 

24

REFERÊNCIAS BIBLIOGRÁFICAS

Bronson, R. "Matrix Operations", Mac Graw Hill, 1989.

Campos, filho, F. F. “Algorítmos Numéricos”, LTC, 2001.

Datta, B. N. “Numerical Linear Algebra and Applications”. Brooks/Cole Publishing,

1995.

Golub, G., Van Loan, C."Matrix Computations", John Hopkins, 1984.