Você está na página 1de 18

Aluno:

Matrícula:
Disciplina: Computação Científica

Este trabalho pretende observar o comportamento de um conjunto de


matrizes esparsas extraído do SuiteSparse Matrix Collection1 para os métodos
iterativos não estacionários, considerando precondicionamento e
reordenamento.

Todos os resultados apresentados foram obtidos pelo programa Octave,


instalado em um computador com sistema operacional 32 Bits, Windows 7
Professional, processador Intel® Core ™ i3-3240 CPU @3.4GHz e memória
RAM de 4,00GB (utilizável: 3,40GB).

A tarefa se subdivide em dois momentos, a qual se baseia em relatórios


passados para uma possível comparação.

A primeira parte consiste no estudo das matrizes mesh3em5, 662_bus,


pdb1HYS e Dubcova3 do exercício computacional 2. Para cada matriz, os
objetivos específicos são:

1. Resolver o sistema trivial Ax = b, sendo b = A*ones(n; 1) pelo


método dos gradientes conjugados, considerando
precondicionamento ICC(0); ICC com type = "crout"; droptol = 10-4, e
os precondicionadores com e sem reordenamento.;
2. Plotar o gráfico do resíduo das variações do item (1) em um mesmo
sistema de eixos;
3. Discutir as características do processo iterativo quanto à
convergência, levando em consideração as características da matriz
dos coeficientes e as características do método adotado;
4. Construir uma tabela contendo métricas importantes ao processo.

A segunda parte consiste no estudo das matrizes cavity05, cz2548 e


Dubcova1 do exercício computacional 3. Para cada matriz, os objetivos
específicos são:

1. Resoler o sistema trivial Ax = b, sendo b = A*ones(n; 1) pelo método


GMRES para o número de vetores de Krylov k que obteve o melhor
desempenho observado no exercício 3, considerando:
 método sem precondicionamento;
 precondicionamento ILU(0);
 precondicionamento ILU com type = "crout";
 droptol = 10-4;
 Considerar cada precondicionador com e sem reordenamento
RCM;
 precondicionmaneto Gauss- Seidel.

1
default: armazenamento na estrutura CCR (Compressed Column Sparse).
2. Discutir as características do processo iterativo em vista de tabelas
contendo métricas importantes;
3. Plotar o gráfico do resíduo relativo (no mesmo sistema de eixos)
para as diferentes formas de resolver cada sistema linear.

As matrizes investigadas, assim como as características intrínsecas a


elas, são expostas na tabela 1.

Simetria Simetria Grau de Diagonal Elementos Definida


Nome Ordem Cond(A)
de Entrada Numérica Esparsidade Dominante Não Nulos Positiva
mesh3em5 289 100,00% 100,00% 98,351% VERDADE 1377 4,966000E+03 Sim
662_bus 662 100,00% 100,00% 99,435% FALSO 2474 7,941311E+05 Sim
pdb1HYS 36417 100,00% 100,00% 99,672% FALSO 4344765 3,534404E+11 Sim
Dubcova3 146689 100,00% 100,00% 99,983% FALSO 3636643 - Sim
cavity05 1182 90,50% 61,00% 97,664% FALSO 32632 5,770648E+05 Não
cz2548 2548 43,20% 23,50% 99,605% FALSO 25674 2,563753E+06 Não
Dubcova1 16129 100,00% 100,00% 99,903% FALSO 253009 9,971199E+02 Sim
Tabela 1 - Características intrínsecas às matrizes.

A seguir, são apontadas as observações a cerca do método iterativo não


estacionário para os momentos 1 e 2.

Momento 1: Método dos Gradientes Conjugados

A princípio, o sistema linear trivial Ax = b, sendo b = A*ones(n,1), foi


resolvido pelo método dos gradientes conjugados (PCG) assumindo tolerância
relativa e número máximo de iterações conforme melhores valores do exercício
computacional 2 para cada matriz. Seguidamente, foi feito um
precondicionamento com e sem reordenamento.

Matriz cavity05

A matriz mesh3em5 é uma matriz dominante de ordem 289, grau de


esparsidade de 98,351% e possui 1377 elementos não nulos. Seu
condicionamento está na ordem de 103, ou seja, é bem condicionada.

Nota-se pela tabela 2 que a fatoração incompleta de Cholesky (ICC),


sem a tolerância estabelecida, tornou-se desinteressante para o número de
elementos não nulos. Entretanto, houve uma redução e um ganho
computacional consideráveis no número de iterações e no tempo,
respectivamente, assim como uma melhora no resíduo final relativo.

Ao passo que não aconteceram mudanças relacionadas ao número de


elementos não nulos na fatoração ICC sem o uso da tolerância, com a
utilização dela verificou-se um decréscimo com ou sem reordenamento da
matriz, além de um ganho computacional expressivo em relação ao PCG
somente.

Matriz mesh3em5.mat
Nº de elementos Norma máxima Resíduo final Tempo (s)
Procedimento não nulos (nnz)
Flag Iter
da solução relativo ICC PCG RCM Total
PCG 1377 0 19 1,000000 6,495063E-12 - 7,000397E-02 - 7,000397E-02
ICC(0) 1377 0 2 1,000000 2,865405E-15 3,200101E-02 3,000990E-03 - 3,500200E-02
ICC(0)+RCM 1377 0 2 1,000000 1,789972E-15 9,998935E-04 1,999966E-03 1,300102E-02 1,600088E-02
-4
ICC(10 ) 833 0 2 1,000000 1,142175E-14 9,999941E-04 2,999901E-03 - 3,999895E-03
-4
ICC(10 )+RCM 833 0 2 1,000000 1,142175E-14 9,999241E-04 2,000115E-03 1,300102E-02 1,600106E-02
-11
Tabela 2 - Resultados gerados pela matriz mesh3em5 com maxite=10000 e rtol=10 .

O gráfico 1 apresenta a convergência da solução da matriz mesh3em5


para os métodos utilizados.

Gráfico 1 - Comportamento residual ao passo das iterações da matriz mesh3em5 com maxit=10000
-11
e rtol=10 .

O reordenamento RCM trouxe resultados satisfatórios para a matriz


mesh3em5, figura 1, aproximadamente 94% de redução sobre a largura de
banda original.
Figura 1 - Comparativo do reordenamento RCM para a matriz mesh3em5.

Em vista da tabela 2, o melhor procedimento para a matriz mesh3em5


foi com a utilização do ICC com tolerância de 10-4, sem o reordenamento,
considerando, evidentemente, os parâmetros de entrada pré-estabelecidos
aqui.

Matriz 662_bus

A matriz 622_bus não é uma matriz dominante e possui ordem de 662,


grau de esparsidade de 99,435% e possui 2474 elementos não nulos. Seu
número de condicionamento, tendo em vista a matriz anterior, é bem maior, na
ordem de 105.

Considerando a tabela 3, os procedimentos trouxeram mais melhorias


relacionadas à qualidade do resíduo final, uma vez que ele se aproximava mais
do zero, com exceção do procedimento ICC(0) com reordenamento, que,
apesar de convergir, piorou a qualidade residual final relativa da solução. É
pertinente destacar ainda que a fatoração incompleta de Cholesky, embora
reduzisse o número de iterações em vista à sua fatoração sem tolerância e
com reordenamento, ela trouxe um acrescimento no número de elementos não
nulos para a matriz.

Matriz 662_bus.mat
Nº de elementos Norma máxima Resíduo final Tempo (s)
Procedimento Flag Iter
não nulos (nnz) da solução relativo ICC PCG RCM Total
PCG 2474 0 742 1,000000 6,665081E-12 - 2,100119E-01 - 2,100119E-01
ICC(0) 2474 0 80 1,000000 6,039196E-12 3,000112E-03 2,500209E-02 - 2,800220E-02
ICC(0)+RCM 2474 0 56 1,000000 5,023498E+00 1,000075E-03 2,000098E-02 3,000023E-03 2,400108E-02
-4
ICC(10 ) 10328 0 6 1,000000 8,535777E-14 3,999916E-03 5,000040E-03 - 8,999956E-03
-4
ICC(10 )+RCM 7708 0 6 1,000000 4,885245E-14 9,999530E-04 5,001098E-03 3,000023E-03 9,001074E-03
-11
Tabela 3 - Resultados gerados pela matriz 662_bus com maxite=10000 e rtol=10 .

O gráfico 2 corrobora com a tabela 3 no aspecto da evolução do resíduo


final relativo ao longo das iterações, mostrando de forma visual o melhor
comportamento dos resíduos para os procedimentos ICC com tolerância e
reordenamento.

Gráfico 2 - Comportamento residual ao passo das iterações da matriz 662_bus com maxit=10000 e
-11
rtol=10 .

O reordenamento RCM trouxe resultados satisfatórios para a matriz


662_bus, figura 2, em torno de 60% de redução sobre a largura de banda
original.

Figura 2 - Comparativo do reordenamento RCM para a matriz 662_bus.

A julgar pela tabela 3, corroborada pelo gráfico 2, o procedimento que


melhor trouxe eficiência computacional ao método foi o ICC com tolerância pré-
estabelecida e sem reordenamento, considerando os parâmetros de entrada
aqui julgados como ideias.
Matriz pdb1HYS

A matriz pdb1HYS não é uma matriz dominante e possui ordem de


36417, grau de esparsidade de 99,672% e possui 4344765 elementos não
nulos. Seu número de condicionamento fica na ordem de 1017.

A matriz pdb1HYS foi a única do rol de matrizes que não convergiu para
nenhum dos casos e, apesar do que se propõe o precondicionamento e o
ordenamento, esses procedimentos acarretaram em um deterioramento ao
método.

A tabela 4 mostra o estagnamento do resíduo final relativo para todos os


procedimentos. Ao passo que restringimos mais o número para as iterações
acontecerem, a matriz atinge esse máximo de iterações antes de ocorrer a
convergência, tabela 5. Nota-se em ambas as tabelas que para a fatoração
incompleta de Cholesky com tolerância e sem reordenamento, o procedimento
encontra um pivô de valor negativo, gerando erro ao programa.

Matriz pdb1HYS.mat
Nº de elementos Norma máxima Resíduo final Tempo (s)
Procedimento não nulos (nnz)
Flag Iter
da solução relativo ICC PCG RCM Total
PCG 4344765 3 5867 1,000001 5,026486E-06 - 1,077772E+02 - 1,077772E+02
ICC(0) 4344765 3 1287 1,000001 7,883739E-07 2,880170E-01 3,193683E+01 - 3,222485E+01
ICC(0)+RCM 4344765 3 1006 1,000001 1,062692E-06 2,980170E-01 2,477142E+01 8,410481E-01 2,591049E+01
-4
ICC(10 ) erro: ichol: negative pivot encountered
-4
ICC(10 )+RCM 16461303 3 255 1,000001 2,140252E-08 3,780216E+00 1,090862E+00 8,410481E-01 5,712126E+00
-11
Tabela 4 - Resultados gerados pela matriz pdb1HYS com maxite=10000 e rtol=10 .

Matriz pdb1HYS.mat
Nº de elementos Norma máxima Resíduo final Tempo (s)
Procedimento Flag Iter
não nulos (nnz) da solução relativo ICC PCG RCM Total
PCG 4344765 1 0 0,000000 1,000000E+00 - 1,769101E+00 - 1,769101E+00
ICC(0) 4344765 1 0 0,000000 1,000000E+00 2,890161E-01 2,497143E+00 - 2,786159E+00
ICC(0)+RCM 4344765 1 0 0,000000 1,000000E+00 2,990169E-01 2,506143E+00 8,130470E-01 3,618207E+00
-4
ICC(10 ) erro: ichol: negative pivot encountered
-4
ICC(10 )+RCM 16461303 1 91 1,072120 2,773313E-01 3,767215E+00 4,376250E+00 8,130470E-01 8,956512E+00
-11
Tabela 5 - Resultados gerados pela matriz pdb1HYS com maxite=100 e rtol=10 .

Os gráficos 3 e 4 representam o comportamento do resíduo final relativo


para as duas situações descritas anteriormente, para os máximos de iterações
de 10000 e 100, respectivamente.
Gráfico 3 - Comportamento residual ao passo das iterações da matriz pdb1HYS com maxite=10000
-11
e rtol=10 .

Gráfico 4 - Comportamento residual ao passo das iterações da matriz pdb1HYS com maxite=100 e
-11
rtol=10 .

Nota-se uma oscilação considerável nos resíduos com maxite = 10000,


gráfico 3, e um comportamento mais estável, apesar de crescente, gráfico 4,
para a fatoração incompleta de Cholesky com e sem reordenamento.
O reordenamento RCM produziu resultados convincentes na matriz
662_bus, figura 3, por volta de 90% de redução sobre a largura de banda
original.

Figura 3 - Reordenamento RCM para a matriz pdb1HYS.

Respaldado pelas tabelas 4 e 5, considerando o tempo do


processamento e os parâmetros adotados de entrada, o melhor procedimento
para essa matriz é o próprio PCG sem ICC e sem reordenamento. Embora a
largura da banda tenha sido bem reduzida, figura 3, sua eficiência na
convergência adotando o reordenamento e o ICC não foi satisfatória.

Matriz Dubcova3

A matriz Dubcova3 não é uma matriz dominante e possui ordem de


146689, grau de esparsidade de 99,983% e possui 3636643 elementos não
nulos. Seu número de condicionamento não foi especificado pelo site e nem
cuspido pelo Octave, possivelmente de tão grande que é.

A tabela 6 diz que a matriz Dubcova3 convergiu em todos os


procedimentos utilizados e com pouca diferença nos resíduos finais relativos. À
medida que o número de elementos não nulos cresceu conforme o método
utilizado, a quantidade de iterações para a convergência diminuiu, assim como
o tempo total, mostrando a eficiência computacional dos métodos.

Matriz Dubcova3.mat
Nº de elementos Norma máxima Resíduo final Tempo (s)
Procedimento não nulos (nnz)
Flag Iter
da solução relativo ICC PCG RCM Total
PCG 3636643 0 246 1,000000 9,758967E-12 - 5,612321E+00 - 5,612321E+00
ICC(0) 3636643 0 161 1,000000 7,890511E-12 1,930109E-01 5,331305E+00 - 5,524316E+00
ICC(0)+RCM 3636643 0 105 1,000000 8,888576E-12 1,750101E-01 3,366192E+00 4,650259E-01 4,006228E+00
-4
ICC(10 ) 35158627 0 16 1,000000 6,400425E-12 8,036460E+00 1,547089E+00 - 9,583549E+00
-4
ICC(10 )+RCM 11623075 0 12 1,000000 4,042989E-12 1,081062E+00 6,640380E-01 4,650259E-01 2,210126E+00
-11
Tabela 6 - Resultados gerados pela matriz Dubcova3 com maxite=10000 e rtol=10 .
O gráfico 5 representa o comportamento do resíduo final relativo para
as situações descritas anteriormente. Fica claro a convergência eficiente dos
métodos quando comparados em um único gráfico, deixando o ICC(10-4) com
reordenamento em destaque.

Gráfico 5 - Comportamento residual ao passo das iterações da matriz Dubcova3 com maxite=10000
-11
e rtol=10 .

O reordenamento RCM causou um resultado oportuno ao que se propõe


na matriz 662_bus, figura 4, próximo de 98% de redução sobre a largura de
banda original.

Figura 4 - Comparativo do reordenamento RCM para a matriz Dubcova3.

Ancorado na tabela 6, é aceitável dizer que o procedimento que


ofereceu um melhor custo computacional, assim como um bom resultado foi a
fatoração incompleta de Cholesky com tolerância e com reordenação.
Momento 2: GMRES

No início, o sistema linear trivial Ax = b, sendo b = A*ones(n,1) foi


resolvido pelo método GMRES, considerando tolerância relativa, número
máximo de ciclos e número de vetores na base segundo melhores resultados
do exercício computacional 3 para cada matriz. Em seguida, foram feitas
formas distintas de precondicionamentos para comparações pertinentes aos
procedimentos.

Matriz cavity05

A matriz cavity05 possui uma característica não simétrica de ordem


1182, grau de esparsidade 97,664% e possui 32632 elementos não nulos. Seu
condicionamento está na ordem de 105, configurando-a como uma matriz mal
condicionada.

Entre todas do estudo, a matriz cavity05 foi a que mais se comportou de


forma ineficiente segundo os precondicionadores utilizados. Pela tabela 7,
nota-se os erros ocasionados em cada procedimento. Apesar das dificuldades
em se trabalhar com a matriz, para o precondicionador ILU com tolerância de
10-4, a matriz convergiu, mesmo não tendo antes convergido com os mesmos
parâmetros de entrada adotados.

Matriz cavity05.mat
Nº de elementos Norma máxima Resíduo final Tempo (s)
Procedimento Flag Iter
não nulos (nnz) da solução relativo ILU GMRES RCM Total
GMRES 32632 1 1200 1,037665 3,267646E-06 - 8,620490E-01 - 8,620490E-01
ILU(0) erro: ilu: a has a zero on the diagonal
ILU(0)+RCM erro: ilu: a has a zero on the diagonal
-4
ILU(10 ) 188509 0 7 1,000006 1,185707E-07 3,300189E-02 7,999986E-03 - 4,100188E-02
-4
ILU(10 )+RCM erro: ilu: encountered a pivot equal to 0
Seidel erro: inv: division by zero
Seidel+RCM erro: inv: division by zero
-6
Tabela 7 - Resultados gerados pela matriz cavity05 com maxite=100, rtol=10 e k=30.

Os gráficos 6 e 7, sendo o segundo em escala reduzida para melhor


visualização, representam o comportamento do resíduo final relativo para os
únicos dois casos processados. É importante salientar que, apesar do número
de não nulos ter aumentado consideravelmente de um procedimento a outro,
tendendo à matriz se tornar mais custosa e de difícil convergência, não foi isso
que aconteceu. A matriz, pelo contrário, convergiu em pouquíssimas iterações
e melhorando a qualidade de sua solução, em vista de sua norma máxima e
seu resíduo final relativo, corroborado pela tabela 7.
Gráfico 6 - Comportamento residual ao passo das iterações da matriz cavity05 com maxite=100,
-6
rtol=10 e k=30.

Gráfico 7 – (Escala reduzida) Comportamento residual ao passo das iterações da matriz cavity05
-6
com maxite=100, rtol=10 e k=30.

O reordenamento RCM causou um resultado inoportuno quando


relacionado à largura de banda da matriz, figura 5. A função do reordenamento
é reduzir ou tentar minimizar esse número, entretanto, houve um aumento
aproximado de 23% sobre a largura de banda original.
Figura 5 - Comparativo do reordenamento RCM para a matriz cavity05.

Embora tenha acontecido o inconveniente demonstrado na figura 7, a


tabela 7 confirma a eficiência do precondicionador ILU com tolerância de 10 -4
sem reordenamento.

Matriz cz2548

A matriz cz2548 possui uma característica não simétrica de ordem 2548,


grau de esparsidade 99,605% e possui 25674 elementos não nulos. Seu
condicionamento está na ordem de 106, configurando-a como uma matriz mal
condicionada.

Para essa matriz, a tabela 8 indica que os precondicionadores, quando


aliados a um reordenamento, reduz o tempo computacional, com exceção do
ILU, onde houve aumento no número de iterações e no tempo. Entretanto, é
fato que, embora tenha acontecido essa ressalva, todos os precondicionadores
reduziram drasticamente o gasto computacional em relação a não utilizar
algum procedimento.

Matriz cz2548.mat
Nº de elementos Norma máxima Resíduo final Tempo (s)
Procedimento Flag Iter
não nulos (nnz) da solução relativo ILU GMRES RCM Total
GMRES 25674 0 1163 1,000000 9,943657E-07 - 5,153995E+01 - 5,153995E+01
ILU(0) 25674 0 209 1,000004 8,451376E-07 6,001041E-03 2,071118E+00 - 2,077119E+00
ILU(0)+RCM 25674 0 229 1,000097 7,911768E-07 1,999964E-03 2,567147E+00 4,000006E-03 2,573147E+00
-4
ILU(10 ) 68273 0 7 1,000002 5,775744E-07 3,100207E-02 1,900103E-02 - 5,000310E-02
-4
ILU(10 )+RCM 41011 0 5 1,000001 5,021830E-07 2,100090E-02 1,300112E-02 4,000006E-03 3,800203E-02
Seidel 25674 0 368 1,000030 9,079605E-07 9,410539E-01 1,006058E+01 - 1,100163E+01
Seidel+RCM 25674 0 337 1,000328 9,851390E-07 5,430310E-01 7,669438E+00 4,000006E-03 8,216469E+00
-6
Tabela 8 - Resultados gerados pela matriz cz2548 com maxite=100, rtol=10 e k=500.

O gráfico 8 representa o comportamento do resíduo final relativo para os


seis casos de precondicionadores, com e sem reordenamento. É importante
destacar um fato único observado para essa matriz. A mesma dá saltos no
intervalo aproximado de 200 iterações. Comparado a outros relatórios, a matriz
não se comportou dessa maneira, embora usando o mesmo código e mesmos
valores de entrada. Não se sabe explicar tal tendência advinda para essa
matriz específica, visto que no exercício computacional 3 mais saltos, inclusive,
foram dados pelos resíduos, gráfico 9.

Gráfico 8 - Comportamento residual ao passo das iterações da matriz cz2548 com maxite=100,
-6
rtol=10 e k=500.

-6
Gráfico 9 – (Exercício computacional 2) Matriz cz2548 com maxit = 100 e rtol = 10 .
Ainda que exista essa desconformidade na curva dentre as demais
matrizes, quando mudado o valor de k para 50, mantendo os outros parâmetros
de entrada, a matriz residual não apresenta mais os saltos observados
anteriormente, gráfico 10.

Gráfico 10 - Comportamento residual ao passo das iterações da matriz cz2548 com maxite=100,
-6
rtol=10 e k=50.

O reordenamento RCM forneceu um desfecho ideal na matriz cz2548,


figura 6, mais ou menos 79% de redução sobre a largura de banda original.

Figura 6 - Comparativo do reordenamento RCM para a matriz cz2548.

Por intermédio da tabela 8, é plausível considerar o procedimento ILU


com tolerância de 10-4 e reordenação a melhor opção para essa matriz,
utilizando os parâmetros de entrada aqui adotados.
Matriz Dubcova1

A matriz “Dubcova1” possui uma característica simétrica de ordem


16129, grau de esparsidade 99,903% e possui 253009 elementos não nulos.
Seu condicionamento está na ordem de 10 2, configurando-a como a matriz
melhor condicionada de todo rol estudado aqui.

A tabela 9 exibe os resultados gerados pela matriz utilizando parâmetros


de entradas específicos do relatório anterior. É conclusivo que nem todos os
métodos se propuseram a gerar a convergência como o esperado, em menor
número de iterações, apesar da eficiência no tempo com o reordenamento ter
ocorrido em todos.

Matriz Dubcova1.mat
Nº de elementos Norma máxima Resíduo final Tempo (s)
Procedimento Flag Iter
não nulos (nnz) da solução relativo ILU GMRES RCM Total
GMRES 253009 0 134 1,000011 9,600194E-07 - 4,780270E-01 - 4,780270E-01
ILU(0) 253009 0 58 1,000020 5,306803E-07 2,400197E-02 2,540139E-01 - 2,780159E-01
ILU(0)+RCM 253009 0 29 1,000030 8,252070E-07 2,000091E-02 1,330070E-01 3,100188E-02 1,840098E-01
-4
ILU(10 ) 2982953 0 5 1,000002 2,540484E-07 1,987113E+00 5,600305E-02 - 2,043116E+00
-4
ILU(10 )+RCM 1248597 0 5 1,000000 9,554525E-08 8,900510E-01 3,700208E-02 3,100188E-02 9,580550E-01
Seidel 253009 0 65 1,000047 8,448609E-07 4,845777E+01 2,790161E-01 - 4,873679E+01
Seidel+RCM 253009 0 91 1,000027 9,498489E-07 3,835620E+01 4,430249E-01 3,100188E-02 3,883023E+01
-6
Tabela 9 – Resultados gerados pela matriz Dubcova1 com maxite=100, rtol=10 e k=30.

O gráfico 11 mostra claramente a convergência eficiente dos métodos


quando comparados em um único gráfico.

Gráfico 11 - Comportamento residual ao passo das iterações da matriz Dubcova1 com maxite=100,
-6
rtol=10 e k=30.
O reordenamento RCM forneceu um resultado fantástico na matriz
Dubcova1, figura 7, perto de 98% de redução sobre a largura de banda original.

Figura 7 - Comparativo do reordenamento para a matriz Dubcova1.

Basta ver que, enquanto o ILU(0) com reordenamento apresentou o


menor tempo computacional para os métodos utilizados, o que melhor cuspiu
uma solução mais refinada, vistos sua norma e seu resíduo final relativo, foi o
ILU(10-4) com reordenação. A considerar o custo computacional, o melhor
seria, então, o ILU(0) com reordenamento para essa matriz, observados os
seus parâmetros de entrada.

Conclusão

É sabido que o GMRES não precisa computar e armazenar a matriz de


iteração de forma explícita, uma vez que o processo envolve apenas sua
multiplicação por um vetor definido. Ademais, a literatura informa que o método
GMRES, quando usado na sua forma convencional, sem nenhuma estratégia
numérica adicional, pode apresentar um desempenho abaixo do esperado se
comparado a um método direto, uma vez que o espaço de memória e o custo
computacional são diretamente proporcionais ao tamanho da matriz.

Seguindo na contramão do GMRES, o Método dos Gradientes


Conjugados, mesmo desprovido de algum artifício computacional que o
melhore, a literatura diz que a sua taxa de convergência consegue ainda ser
mais rápida.

Notou-se que as técnicas de precondicionamento não são só essenciais


para a melhoria da performance, assim como não são somente para a
viabilidade dos métodos. Não obstante, apenas esta técnica pode não garantir
a qualidade necessária para a construção da solução. A esparsidade da matriz
é uma peça fundamental para os métodos iterativos. Ao tentar descartar alguns
elementos para garantir esparsidade, no processo de aproximação dos fatores,
pode se perde a qualidade. Daí a necessidade, por vezes, de um ordenamento
aliado ao precondicionador.
Quando reordenadas, o preenchimento das matrizes pode representar
um fator limitante à eficiência dos precondicionadores ILU(k) quando k cresce,
por isso limitou-se para um k constante de 10-4.

Isto posto, sugerem-se os melhores procedimentos para as matrizes


convergirem de forma eficiente, considerando unicamente os parâmetros aqui
discutidos e adotados para a geração dos resultados, baseados em relatórios
anteriores, tabela 10.

Máximo de Norma máxima Resíduo final


Matriz Procedimento K Tolerância Tempo total (s)
iterações da solução relativo

mesh3em5 ICC(10-4) - 10-11 10000 1,000000 1,142175E-14 3,999895E-03


-4 -11
662_bus ICC(10 ) - 10 10000 1,000000 8,535777E-14 8,999956E-03
-11
pdb1HYS PCG - 10 100 0,000000 1,000000E+00 1,769101E+00
-4 -11
Dubcova3 ICC(10 )+RCM - 10 10000 1,000000 4,042989E-12 2,210126E+00
-4 -6
cavity05 ILU(10 ) 30 10 100 1,000006 1,185707E-07 4,100188E-02
-4 -6
cz2548 ILU(10 )+RCM 500 10 100 1,000001 2,100090E-02 3,800203E-02
-6
Dubcova1 ILU(0)+RCM 30 10 100 1,000030 8,252070E-07 1,840098E-01
Tabela 10 - Melhores procedimentos para cada matriz, conforme parâmetros pré-selecionados.

Já as tabela 11 e 12 fazem referência ao tempo gasto exclusivamente


dos métodos PCG e GMRES, respectivamente, a cada procedimento com e
sem precondicionador e com e sem reordenamento.

Tempo PCG (s)


Procedimento Mesh3em5 662_bus pdb1HYS Dubcova3
PCG 0,0700 0,2100 1,7691 5,6123
ICC(0) 0,0030 0,0250 2,4971 5,3313
ICC(0)+RCM 0,0020 0,0200 2,5061 3,3662
-4
ICC(10 ) 0,0030 0,0050 0,0000 1,5471
-4
ICC(10 )+RCM 0,0020 0,0050 4,3763 0,6640
Tabela 11 - Tempo GMRES de cada procedimento para cada matriz.

Tempo GMRES (s)


Procedimento cz2548 cavity05 Dubcova1
GMRES 51,5400 2,0561 0,4780
ILU(0) 2,0711 0,0000 0,2540
ILU(0)+RCM 2,5671 0,0000 0,1330
-4
ILU(10 ) 0,0190 0,0100 0,0560
-4
ILU(10 )+RCM 0,0130 0,0000 0,0370
Seidel 10,0606 0,0000 0,2790
Seidel+RCM 7,6694 0,0000 0,4430
Tabela 12 - Tempo PCG de cada procedimento para cada matriz.
Nota-se pelas tabelas 11 e 12 que o tempo de CPU dos métodos
reduziu, na maioria das vezes, com o auxílio de precondicionadores e
reordenamentos, embora se percebeu que nem sempre uma boa escolha do
método é suficiente para garantir uma convergência eficiente.

Por fim, várias estratégias devem, sim, serem levadas em consideração,


como a construção de precondicionadores, reordenamentos, aumento da
eficiência computacional, paralelização do código, dentre outras nos métodos
iterativos não estacionários.

Você também pode gostar