• Nenhum resultado encontrado

Precondicionamento do método GMRES para Z-matrizes

N/A
N/A
Protected

Academic year: 2021

Share "Precondicionamento do método GMRES para Z-matrizes"

Copied!
103
0
0

Texto

(1)Universidade Federal do Rio Grande do Norte Centro de Ciências Exatas e da Terra Programa de Pós-Graduação em Matemática Aplicada e Estatística Mestrado em Matemática Aplicada e Estatística. Precondicionamento do método GMRES para Z-matrizes. Josimara Tatiane da Silva. Natal-RN Julho de 2016.

(2) Josimara Tatiane da Silva. Precondicionamento do método GMRES para Z-matrizes. Trabalho apresentado ao Programa de Pós-Graduação em Matemática Aplicada e Estatística da Universidade Federal do Rio Grande do Norte, em cumprimento com as exigências legais para obtenção do título de Mestre. Área de Concentração: Modelagem Matemática. Linha de Pesquisa: Otimização, Problemas Inversos e Matrizes.. Orientador. Dr. Nir Cohen Coorientadora. Dra. Julia Victoria Toledo Benavides Universidade Federal do Rio Grande do Norte – UFRN Programa de Pós-Graduação em Matemática Aplicada e Estatística – PPGMAE. Natal-RN Julho de 2016.

(3)

(4) Dissertação de Mestrado sob o título Precondicionamento do método GMRES para Z-matrizes apresentada por Josimara Tatiane da Silva e aceita pelo Programa de Pós-Graduação em Matemática Aplicada e Estatística da Universidade Federal do Rio Grande do Norte, sendo aprovada por todos os membros da banca examinadora abaixo especificada:. Dr. Nir Cohen Orientador Departamento de Matemática Universidade Federal do Rio Grande do Norte. Dra. Julia Victoria Toledo Benavides Coorientadora Departamento de Matemática Universidade Federal do Rio Grande do Norte. Dr. Luiz Mariano Paes de Carvalho Filho Departamento de Matemática Aplicada Universidade do Estado do Rio de Janeiro.

(5) Dr. Santos Demetrio Miranda Borjas Departamento de Matemática Universidade Federal do Rio Grande do Norte. Natal-RN, 19 de julho de 2016..

(6) Aos meus pais, Fátima e Batista. A minha irmã, Thaynara..

(7) Agradecimentos Primeiro, gradeço a Deus por tudo, por todo o cuidado comigo. Por ter permitido que eu chegasse até aqui. A Ele devo toda honra e toda glória. Sem Ele não teria conseguido passar por muitos momentos difíceis. Por todo o cuidado em cada detalhe, inclusive pelas maravilhosas pessoas que Ele colocou em meu caminho. Aos meus grandes amores, os meus pais, João Batista e Maria de Fátima, por todo apoio, dedicação e cuidado incondicional que sempre tiveram comigo. E a minha querida irmã, Josimeiry Thaynara, por todo o carinho, amor e momentos de descontração. Amo vocês! Aos meus avóis, João e Carmelita, Zé Danta e Carminha; a minha tia Ném; a madrinha Dacira; as minhas outras avós de coração: Assunção, Chiquita; a minha grande amiga Carme (in memoriam); pela confiança, pelo apoio. As minhas grandes amigas, Silvana, Edione e Elyzama, pelos altos momentos de descontração e por toda essa amizade, apoio que me deram. A meu amigo Paulo Sérgio, pelo encorajamento de sempre, inclusive nos momentos em que falhei ainda estava ali me incentivando a continuar. A meu orientador Nir, por todas as brilhantes sugestões e paciência comigo. A minha coorientadora Julia, pela amizade e por ter permitido meu primeiro contato com o tema Métodos de Krylov onde tive a oportunidade de estudar um pouco sobre isso durante a iniciação científica. Ao professor Mariano, por ter aceitado fazer parte de minha banca, por ter ajudado bastante mesmo com todos os seus comentários e discussões..

(8) Aos professores do Departamento de Estatística, Jeanete, Dione, Damião, Mariana e Luz, pelos maravilhosos ensinamentos, incentivo e compreensão pois durante o mestrado também cursava a graduação em Estatística. Aos professores do Departamento de Matemática, Giselle, Liliane, Claúdio, Viviane Klein, Carlos Gomes, por todo o incentivo, confiança em mim depositada e pela significativa contribuição durante a minha formação na graduação em Matemática Licenciatura. Em especial, a professora Elaine, um amor de pessoa, que foi minha professora na graduação em Matemática e no mestrado, sem palavras para descrever o quanto já me ajudou até aqui, me ensinou e é para mim, um exemplo de profissional extremamente competente. Aos colegas do mestrado, Camila, Tito, Laís, Paulo, Messias, Daniel, Alexandre, Bárbara, Nildo, Djackson, Jéssica Stefanny, pelos momentos de descontração e de conhecimentos compartilhados. Aos colegas Waldson, Eduardo e July, pelas conversas, pelas dicas com a programação no Matlab, escrita no Latex (“Errors!”). A Daniel, secretário do PPgMAE, pelas inúmeras vezes sempre disponível a ajudar, por ter sido sempre competente. Enfim, a todos aqueles que de uma forma ou de outra foram colocados por Deus em meu caminho para me apoiar em todos os momentos. A CAPES, pelo apoio financeiro..

(9) O SENHOR é o meu pastor; nada me faltará. Salmos 23:1.

(10) Precondicionamento do método GMRES para Z-matrizes. Autora: Josimara Tatiane da Silva Orientador: Dr. Nir Cohen Coorientadora: Dra. Julia Victoria Toledo Benavides. Resumo Este trabalho tem por objetivo investigar o comportamento de convergência do método GMRES (Generalized Minimal RESidual) e sua versão GMRES(m), sem e com precondicionador ILU (0) aplicado à sistemas lineares não simétricos esparsos. Nosso interesse principal é verificar se o comportamento destes algoritmos pode ser influenciado pela estrutura das matrizes consideradas, em particular, as Z-matrizes e a influência da escolha do grau de esparsidade. Entre os parâmetros observados, concentramos no raio espectral dessas matrizes, tanto como a norma do resíduo relativo obtido por estes algoritmos. Palavras-chave: Z-matrizes, Métodos de Krylov, GMRES, GMRES(m), Precondicionador ILU (0)..

(11) Preconditioning of the GMRES method for Z-matrices. Author: Josimara Tatiane da Silva Advisor: Ph.D. Nir Cohen Co-advisor: Ph.D. Julia Victoria Toledo Benavides. Abstract This study aims to investigate the convergence behavior of the GMRES (Generalized Minimal Residual) method and its version GMRES(m), without and with preconditioner ILU(0) applied to sparse non-symmetric linear systems. Our main interest is to see if the behavior of these algorithms can be influenced by the structure of the matrices considered, in particular, the Z-matrices. Furthermore, the influence of the choice of the degree of sparsity. Among the observed parameters, we focus on the spectral radius of these matrices, as well as the relative residual norm obtained by these algorithms. Keywords: Z-matrices, Krylov Methods, GMRES, GMRES(m), ILU (0) Preconditioner..

(12) Lista de figuras 1. Matriz esparsa. nz(A) é o número de elementos não nulos da matriz. p. 23. 2. A ideia é buscar a solução aproximada de um sistema de equações Ax = b em um subespaço de dimensão menor. . . . . . . . . . .. p. 39. 3. Projeção de r, resíduo, sobre K e ortogonal a L. . . . . . . . . .. p. 40. 4. Representação esquemática da condição de ortogonalidade do resíduo do GMRES. Essa figura é a mesma encontrada em (CARVALHO et al.,. 2010) porém, a reproduzimos colocando tais cores.. p. 41. 5. spy da matriz Z1 com grau de esparsidade 90.26%. . . . . . . .. p. 50. 6. spy da matriz Z1 com grau de esparsidade 99.57%. . . . . . . .. p. 50. 7. Gráfico do grau de esparsidade × Norma residual relativa do GMRES. Matrizes Z1 de ordem 300. . . . . . . . . . . . . . . . . . .. 8. Gráfico do grau de esparsidade × Norma residual relativa do GMRES(60). Matrizes Z1 de ordem 300. . . . . . . . . . . . . . . .. 9. p. 53. Gráfico da norma residual relativa da matriz K × Norma residual relativa do GMRES(60). Matriz K de ordem 300. . . . . . . . .. 11. p. 52. Gráfico do grau de esparsidade × Norma residual relativa do GMRES. Matriz K de ordem 300. . . . . . . . . . . . . . . . . . . .. 10. p. 51. p. 53. Gráfico do grau de esparsidade da matriz Z1 × Raio espectral da matriz Z1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. p. 54.

(13) 12. Gráfico do grau de esparsidade da matriz K × Raio espectral da matriz K. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 13. Gráfico referente às matrizes Z1, Z2 e K com o GMRES. Matrizes de ordem 300. . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 14. p. 66. Perfil de desempenho para o número de iterações com 50 problemas envolvendo a matriz K. Matrizes de ordem 300. . . . . . . .. 24. p. 65. Perfil de desempenho para o tempo com 50 problemas envolvendo a matriz Z1 . Matrizes de ordem 300. . . . . . . . . . . . . . . .. 23. p. 63. Perfil de desempenho para o número de iterações com 50 problemas envolvendo a matriz Z1 . Matrizes de ordem 300. . . . . . .. 22. p. 62. Gráfico para GMRES(60). Problemas menos esparsos. Matrizes de ordem 300. . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 21. p. 61. Gráfico para GMRES(60). Problemas mais esparsos. Matrizes de ordem 300. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 20. p. 60. Gráfico para GMRES. Problemas menos esparsos. Matrizes de ordem 300. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 19. p. 58. Gráfico para GMRES. Problemas mais esparsos. Matrizes de ordem 300. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 18. p. 57. Gráfico referente às matrizes Z1, Z2 e K menos esparsas consideradas com o GMRES. Matrizes de ordem 300. . . . . . . . . . .. 17. p. 57. Gráfico referente às matrizes Z1, Z2 e K com o GMRES. Matrizes de ordem 300. . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 16. p. 56. Gráfico referente às matrizes Z1, Z2 e K menos esparsas consideradas com o GMRES. Matrizes de ordem 300. . . . . . . . . . .. 15. p. 55. p. 67. Perfil de desempenho para o tempo com 50 problemas envolvendo a matriz K. Matrizes de ordem 300. . . . . . . . . . . . . . . . .. p. 68.

(14) Lista de tabelas 1. Resultados numéricos para as matrizes Z1 . . . . . . . . . . . . .. p. 77. 2. Continuação dos resultados numéricos para as matrizes Z1 . . . .. p. 79. 3. Continuação dos resultados numéricos para as matrizes Z1 . . . .. p. 81. 4. Continuação dos resultados numéricos para as matrizes Z1 . . . .. p. 83. 5. Resultados numéricos para as matrizes K. . . . . . . . . . . . .. p. 85. 6. Continuação dos resultados numéricos para as matrizes K. . . .. p. 87. 7. Continuação dos resultados numéricos para as matrizes K. . . .. p. 89. 8. Continuação dos resultados numéricos para as matrizes K. . . .. p. 91.

(15) Lista de símbolos Mn (R) ge(A). Conjunto de todas as matrizes quadradas de ordem n com entradas reais Grau de esparsidade da matriz A. σ(A). Espectro de A. ρ(A). Raio espectral da matriz A. N Z(A). Conjunto das posições dos elementos não nulos da matriz A.

(16) Conteúdo. 1 Introdução. p. 17. 2 Tópicos elementares. p. 20. 2.1. Sistemas lineares . . . . . . . . . . . . . . . . . . . . . . . . . .. p. 20. 2.1.1. Matrizes esparsas . . . . . . . . . . . . . . . . . . . . . .. p. 21. 2.1.2. Métodos iterativos para sistemas de equações lineares . .. p. 23. 2.1.2.1. Conceitos de Cálculo Numérico e de Álgebra Linear p. 26. 2.2. Algumas classes matriciais importantes . . . . . . . . . . . . . .. p. 29. 2.3. Precondicionadores . . . . . . . . . . . . . . . . . . . . . . . . .. p. 34. Fatoração incompleta LU (ILU) . . . . . . . . . . . . . .. p. 35. Métodos de Krylov . . . . . . . . . . . . . . . . . . . . . . . . .. p. 36. 2.4.1. Base para subespaço de Krylov . . . . . . . . . . . . . .. p. 37. 2.4.2. Métodos de projeção . . . . . . . . . . . . . . . . . . . .. p. 38. 2.4.3. GMRES . . . . . . . . . . . . . . . . . . . . . . . . . . .. p. 41. 2.3.1 2.4. 3 Experimentos numéricos 3.1. p. 45. Sobre a matriz dos coeficientes dos problemas . . . . . . . . . .. p. 45. 3.1.1. p. 46. Propriedades estruturais . . . . . . . . . . . . . . . . . ..

(17) 3.1.2 3.2. 3.3. Propriedades numéricas . . . . . . . . . . . . . . . . . .. p. 47. Resultados numéricos . . . . . . . . . . . . . . . . . . . . . . . .. p. 48. 3.2.1. Configurações para as simulações numéricas . . . . . . .. p. 48. 3.2.2. Gráficos de dispersão . . . . . . . . . . . . . . . . . . . .. p. 49. 3.2.3. Análise dos resíduos para Z1 , Z2 e K . . . . . . . . . . .. p. 55. 3.2.4. Análise dos resíduos para outras matrizes K . . . . . . .. p. 58. Perfil de desempenho . . . . . . . . . . . . . . . . . . . . . . . .. p. 63. 4 Considerações finais. p. 69. 4.1. Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. p. 69. 4.2. Trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . .. p. 70. Referências. p. 71. Apêndice A - Tabelas. p. 76. A.1 Matrizes Z1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. p. 77. A.2 Matrizes K . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. p. 85. Apêndice B - Programação no Matlab. p. 94. B.1 Geraçao dos bancos de dados . . . . . . . . . . . . . . . . . . . .. p. 94. B.2 Matriz para perfil de desempenho . . . . . . . . . . . . . . . . . .. p. 98. B.3 Perfil de desempenho para matriz Z1 . . . . . . . . . . . . . . . .. p. 99.

(18) 17. 1. Introdução. A resolução de sistemas lineares não simétricos de grande porte esparsos surge em diversas áreas e entre os métodos numéricos bastante utilizados para isso encontra-se o método GMRES (Generalized Minimal RESidual). Tem sido uma escolha comum em Dinâmica dos Fluidos Computacional, em supercomputação paralela, onde ocorrem simulações em grande escala, (HIGGINS, 2004). Existem muitos problemas de diversas áreas onde a matriz dos coeficientes tem uma estrutura especial. Por exemplo, M -matrizes aparecem em métodos de elementos finitos ou de diferenças finitas de EDPs, análise input-output em economia e cadeias de Markov em processos estocásticos, (PLEMMONS, 1977), (RODRIGUEZ, 2012). É conhecido que M -matrizes inversíveis e H-matrizes admitem fatoração LU incompleta numericamente estável, (MESSAOUDI, 1995). Portanto, valeria investigar se o GMRES com precondicionador LU tenha um melhor desempenho (menor tempo de execução de CPU, número de iterações, norma resídual) para estas classes, comparado com matrizes gerais. Porém, dada a matriz, é difícil verificar se ela pertence a estas classes (POOLE; BOULLION, 1974). Assim, neste trabalho, considera-se a classe de Z-matrizes (com diagonal positiva), onde a fatoração LU não é garantida mas a verificação da propriedade-Z é fácil ver. Na prática, todas as Z-matrizes de ordem 300 esparsas consideradas neste trabalho admitem esta fatoraçao. A classe das Z-matrizes contem a classe das M -matrizes e tem interseção considerável com a maior classe de H-matrizes..

(19) 18. Neste trabalho consideraremos quatro versões do algoritmo GMRES: GMRES nominal; GMRES(m) obtido por reiniciar o GMRES cada m iterações; e as versões precondicionadas destes algoritmos, usando o precondicionador LU . Estudamos a influência da escolha do grau de esparsidade. Entre os parâmetros observados, concentramos no raio espectral da matriz dos coeficientes, tanto como a norma do resíduo relativo obtido por estes algoritmos. No capítulo 2, faz-se uma breve apresentação sobre alguns tópicos preliminares relevantes a sistemas lineares esparsos de grande porte, alguns conceitos básicos de Álgebra Linear e Cálculo Numérico. São definidas as classes das Z-matrizes, M -matrizes e H-matrizes, a técnica de precondicionamento; aborda-se a fatoração LU e apresenta-se o GM RES (Método do Resíduo Mínimo Generalizado). No capítulo 3, contêm os resultados de nossos experimentos numéricos. Na seção 3.2, estudamos por meio de gráficos de dispersão a relação entre o grau de esparsidade, a norma do resíduo relativo do GMRES e o raio espectral das matrizes Z1 e Z2 (Z-matrizes) e outras matrizes quaisquer com mesmo padrão de esparsidade dessas. Especificamente, dadas duas Z-matrizes com o mesmo padrão Z1 − Z2 de esparsidade, Z1 e Z2 , consideramos a matriz K = , maneira de gerar 2 uma matriz não Z aleatória geral com o mesmo padrão como uma Z-matriz de referência (ou seja, Z1 e Z2 ). Dado que os termos de Z1 e Z2 são escolhidos aleatoriamente no intervalo [0, 1], K representa matriz sem nenhuma estrutura particular, porém, com aproximadamente o mesmo padrão de esparsidade como Z1 e Z2 . Na seção 3.3, plotamos as curvas de convergência dos 4 algoritmos para algumas triplas representativas das matrizes Z1 , Z2 e K acima definidas, representando graus diferentes de esparsidade. Z1 − βZ2 (β > 1+β 0) de matrizes Z1 e Z2 , plotamos as curvas de convergência e atentamos para a Na Seção 3.4, consideramos outras combinações lineares K =. influência da estrutura da matriz. Na seção 3.5, usamos a técnica de perfil de desempenho para comparar os 4.

(20) 19. métodos aplicados nas várias matrizes Z1 e as correspondentes matrizes K, em termos de tempo de CPU e número de iterações. No Apêndice A, colocamos alguns dados técnicos referentes à geração computacional das matrizes utilizadas neste trabalho. E também, alguns dos resultados obtidos pelos quatro métodos numéricos considerados. No Apêndice B, temos alguns dos códigos da programação feita no MATLAB..

(21) 20. 2. Tópicos elementares. Neste capítulo, abordam-se alguns tópicos básicos sobre sistemas lineares, tratando sobre matrizes esparsas e alguns conceitos importantes de cálculo numérico. Em seguida, são introduzidas algumas definições de classes matriciais. Discute-se sobre a técnica de precondicionamento e uma breve apresentação do GMRES.. 2.1. Sistemas lineares. A resolução de sistemas de equações lineares é um problema que surge nas mais diversas áreas da engenharia e da ciência. Nesta relação, dada uma matriz A ∈ Mn (R) e um vetor b ∈ Rn , deseja-se encontrar, se existir, algum x ∈ Rn tal que Ax = b. Equivalentemente, n X. aij xj = bi ,. i = 1, 2, . . . , n,. j=1. em n equações e n incógnitas. Se A ∈ Mn (R) é não singular, a única solução é x = A−1 b ∈ Rn . Sistemas lineares não simétricos de grande porte esparsos surgem frequentemente no processo de discretização de equações diferenciais parciais (EDPs). A resolução de sistemas lineares desse tipo pode se tornar computacionalmente inviável se usarmos métodos analíticos, como a regra de Cramer ou até a eliminação.

(22) 21. gaussiana. Entre as alternativas de métodos de projeção usados na resolução desses sistemas lineares, temos o método do GMRES (Generalized Minimal RESidual) proposto por (SAAD; SCHULTZ, 1986) como um método de projeção em subespaços de Krylov. Em resumo, esse método minimiza a norma residual sobre o subespaço de Krylov e pode ser usado na resolução de sistemas lineares de grande porte não necessariamente simétricos, muitas vezes, mal condicionados. Por abordar esses tipos de sistemas esparsos, nos deteremos agora a esclarecer o conceito de matriz esparsa e definir grau de esparsidade.. 2.1.1. Matrizes esparsas. Uma matriz A ∈ Mm×n é dita, em geral, esparsa se a maioria de suas entradas são nulas, em oposição às matrizes densas onde a quantidade de zeros é irrelevante. Porém, essa definição é imprecisa por que não temos um limite inferior predefinido da quantidade de zeros que A deve ter, em relação ao seu tamanho, para classificar A como esparsa ou, ao contrário, densa, cheia (BIEZUNER, 2009). Existem técnicas especiais a fim de tirar vantagem da grande quantidade de zeros e de suas posições de modo a economizar o custo computacional quanto à armazenamento, acesso, e algoritmos para resolução do sistema, ver (SAAD, 2003). Para mais informações sobre outras definições de matriz esparsa e sobre "a arte de manipular matrizes esparsas", veja (PISSANETZKY, 1984). Várias aplicações reais da engenharia, física, matemática, pesquisa operacional, em particular, discretização de EDPs com o método de elementos finitos ou com o método de diferenças finitas é uma grande fonte de problemas envolvendo matrizes esparsas. Para maiores detalhes sobre discretização de EDPs por diferenças finitas, consultar (CUMINATO; MENEGUETTE, 2013). "Problemas hoje considerados de grande porte envolvem milhões de equações,.

(23) 22. sendo a maioria destes altamente estruturados, muito esparsos", (STERN, 1994). Para questões relacionadas a esparsidade, eliminação simétrica e assimétrica, estrutura e paralelismo, ver (STERN, 1994). A ordem das matrizes que frequentemente aparecem, por exemplo, “the Google matrix, decipting connections between all web pages on the World Wide Web, has dimensions on the order of billions”, (GREENBAUM,. 1997). Neste trabalho, consideram-se matrizes de ordem 300 e trata-se de. estudos preliminares sobre o GMRES(m) precondicionado aplicado à classe das Z-matrizes. Exemplo. 2.1 Matriz muito  0   0    0    0 A=   0   0    0  3. esparsa. 0.1 0 0 0 0 0 2 0 0 0 0 0 0 0. .  0 0 0 0 0 0    5 0 0 0 0 0    0 0 0 0 0 6    0 0 0 0 0 1   0 0 1 0 0 0    0 0 0 0 0 0   0 0 0 0 0 0. (2.1). 8×8. Trabalharemos com grau de esparsidade e entende-se por padrão de esparsidade como a disposição dos elementos não nulos que pode ser observado com o auxílio do comando spy no Matlab. Definição 2.1 (Grau de esparsidade) O grau de esparsidade de uma matriz A ge(A) é definido como a porcentagem de elementos nulos de A: ge(A) =. n0 nT. onde n0 é o número de elementos nulos e nT é o número total de elementos. No exemplo anterior, ge(A) = 89.0625% e o spy(A) é.

(24) 23. 0 1 2 3 4 5 6 7 8 9 0. 2. 4 nz = 7. 6. 8. Figura 1: Matriz esparsa. nz(A) é o número de elementos não nulos da matriz.. Esses pontos no gráfico representam a posição dos elementos não nulos da matriz. Veremos algumas questões importantes sobre métodos iterativos e algumas definições de Cálculo Numérico e Álgebra Linear necessários ao desenvolvimento do trabalho.. 2.1.2. Métodos iterativos para sistemas de equações lineares. Entre as técnicas utilizadas para resolver sistemas lineares de grande porte encontram-se os métodos iterativos, que veremos a seguir. Os métodos iterativos geram uma sequência de vetores (xk ), a partir de uma solução inicial x0 dada e espera-se, sob certas condições, que a sequência convirja para a solução do problema. Enquanto que os métodos diretos, a menos de erros de arredondamento, fornecem a solução exata do sistema linear, caso ela exista, após um número finito de operações, mas ainda assim tem-se vários problemas numéricos quanto estabilidade numérica e pivoteamente, (RUGGIERO; LOPES, 1997)..

(25) 24. Definição 2.2 Um método iterativo linear para resolver o sistema Ax = b é um método da forma xk+1 = Gxk + N b. (2.2). onde G e N são matrizes dadas. A matriz G é chamada a matriz de iteração do método. Ao trabalhar com matrizes esparsas, é interessante utilizar métodos iterativos devido ao fato deles preservarem a estrutura da matriz dos coefientes. Para mais detalhes sobre vantagens e desvantagens de métodos iterativos em geral, veja (VORST, 1993). Para métodos iterativos mais específicos, como os de Krylov, ver (PRADA, 2010). Prada discorre sobre as principais características, as vantagens e desvantagens desses métodos iterativos. Definição 2.3 Seja A, R ∈ Mn (R) uma matriz, um splitting de A é uma decomposição aditiva A = C − R. onde C é não singular e a matriz C é chamada matriz splitting. Veremos que C também pode ser chamada de precondicionador. A ideia básica do splitting é trocar o sistema Ax = b pelo algoritmo iterativo xk+1 = C −1 Rxk + C −1 b,. (2.3). dado que no caso de convergência (xk → x) x é solução de Ax = b e C −1 R = G é a matriz de iteração. Alguns algoritmos conhecidos podem ser interpretados como “splittings methods” como os algoritmos de Jacobi e Gauss-Seidell. Além disso, existem várias estratégias diferentes de splitting na literatura, veja (AXELSSON, 1996), (WOŹNICKI, 2001)..

(26) 25. Definição 2.4 Para métodos iterativos em geral, o erro algébrico é definido por e k = x − xk , e o erro residual por rk = b − Axk . Esses erros relacionam-se pela expressão Aek = rk . Considere A ∈ Mn (C). O conjunto de todos os autovalores de A é chamado o espectro de A, denotado por σ(A) . Definição 2.5 (Raio espectral) O raio espectral de A é dado por ρ(A) = max |λ|. λ∈σ(A). O raio espectral é importante porque informa sobre a convergência de métodos iterativos da forma 2.3. O próximo teorema fornece uma condição necessária e suficiente para a convergência de um método iterativo. Teorema 2.1 (BIEZUNER, 2009) Seja G a matriz de iteração do método iterativo 2.2. Então, ek → 0 para todo vetor inicial x0 ⇔ ρ(G) < 1. Sobre a convergência de métodos iterativos diante da tipologia dos splittings usando apenas teoria matricial, o leitor pode consultar (AXELSSON, 1996). Nesse texto, ademais Axelsson estuda algumas propriedades gerais de M -matrizes e famílias gerais de splittings convergentes. Também discute vários princípios para comparar a taxa de convergência de diferentes splittings. Para uma abordagem sobre a convergência de alguns métodos iterativos como uma aplicação do Teorema do Ponto Fixo, veja (ALBRECHT, 1973), (ALVES, 1999)..

(27) 26. Seguem algumas definições e resultados importantes que serão utilizadas nas próximas partes do trabalho. 2.1.2.1. Conceitos de Cálculo Numérico e de Álgebra Linear. Usaremos a norma-2 vetorial, definida por kxk2 =. n X p. |xi |2 .. i=1. Definição 2.6 Dada k · k uma norma vetorial em Rn , ela induz uma norma matricial através da definição kAk = max kAxk. kxk=1. (2.4). Definição 2.7 O número de condição de uma matriz A ∈ Mn não singular, para uma norma matricial k.k é dado por Cond(A) = ||A||.||A−1 || . Para a norma-2, o número de condição depende dos valores singulares σi não σ1 onde σi > σi+1 . negativos com i = 1, · · · , n, especificadamente, Cond(A) = σn É importante observar o número de condição pois ele nos informa sobre o quanto mal condicionado pode estar o problema Ax = b considerado. Quando o valor do número de condição é alto, diz-se que A é mal condicionada. Isso significa que pequenas pertubações em A ou em b podem resultar em alterações significativas no vetor solução aproximado. Definição 2.8 Dada A ∈ Mn , dizemos que λ1 é um autovalor dominante de A se |λ1 | > |λi |,. ∀i = 2, · · · , n..

(28) 27. O Método da Potência Clássico (veja a Proposição 2.1 abaixo) é importante para justificar o fato de uma matriz de Krylov não ser uma boa opção para uma base para o subespaço de Krylov. Considera-se o método da potência clássico que trata do caso onde as matrizes possuem um único autovalor dominante, isto é, |λ1 | > |λi |, ∀i = 2, · · · , n. Proposição 2.1 (ARAUJO, 2012) Seja A ∈ Mn diagonalizável e com um único autovalor dominante λ1 . Então, para quase todo valor inicial b ∈ Rn dado, a sequência de vetores (xk ) definida por xk+1 =. Axk , para todo k = 0, 1, · · · e x0 = b kAxk k. tende a um autovetor associado ao autovalor dominante de A. Demonstração. 2.1 Suponha que A seja diagonalizável. Então, existe uma base β = {x1 , · · · , xn } de autovetores unitários de Cn . Logo, Axi = λi xi para i = 1, 2, . . . , n e seja λ1 o autovalor dominante. Dado um vetor b, podemos escrever b como uma combinação linear dos vetores de β, ou seja,. b=. n X. αi xi com αi ∈ Cn e suponha α1 6= 0.. i=1. Pré-multiplicando b por Ak , tem-se. k. A b=. n X. αi Ak xi .. i=1. Afirmação: se Av = λv então Ak v = λk v. De fato, fazendo indução sobre k, claramente, a expressão Ak v = λk v é válida para k = 1. Suponha que essa expressão vale para k. Mostremos que vale também.

(29) 28. para k + 1, então Ak+1 v = Ak (Av) = Ak (λv) = λ(Ak v) = λ(λk v) = λk+1 v. Logo, Ak v = λk v é válida. Por essa afirmação,. k. A b=. n X. αi λki xi .. i=1. Pondo λk1 em evidência, tem-se. Ak b = λk1. α1 x1 +. n X i=2.  αi. λi λ1. !. k xi. .. Sendo λ1 o autovalor dominante, isto é, |λ1 | > |λi | para todo i = 2, · · · , n,   λi então < 1. λ1  k Ak b λi → 0 quando k → ∞ implica que k → α1 x1 . Então, λ1 λ1 Logo, xk ≈. α1 λk1 x1 = cx1 , com c ∈ C, onde cx1 é autovetor para λ1 . kα1 λk1 x1 k . A proposicao fica válida mesmo se a matriz A não for diagonalizável. Uma exceção ocorre se α1 = 0, onde xk converge para zero. Esta é a única exceção no caso diagonalizável; no caso não diagonalizável, de fato, a proposição segue valendo, porém, pode acontecer que Ak b = 0 para algum k, donde o algoritmo não pode ser continuado. Pode-se ver que os vetores b para os quais α1 6= 0 e Ak b e não nulo para todo k formam um conjunto aberto e denso em Rn , justificando a palavra ”quase” no teorema..

(30) 29. 2.2. Algumas classes matriciais importantes. Nesta seção, apresentamos e discutimos algumas classes de matrizes, em especial, as Z-matrizes. Muitos problemas de diversas áreas podem ser reduzidos a problemas envolvendo matrizes com uma determinada estrutura especial e, consequentemente, pertencentes a classes especiais de matrizes como as das M -matrizes. Definiremos tais classes que serão mencionadas durante o trabalho e em seguida, deremo-nos a algumas questões e resultados interessantes sobre elas. Definição 2.9 A = (aij ) ∈ Mn (R) é não negativa se aij > 0, ∀i, j. Definição 2.10 A matriz P = (Pij )16i,j6n é uma matriz estocástica se i) pij > 0 para todos i, j; ii) Para todo i,. n X. pij = 1.. j=1. Em outras palavras, todas as entradas de uma matriz estocástica são não negativas e qualquer linha tem soma um. O espectro de matrizes não negativas é discutido pelo Teorema de PerronFrobenius, veja (AXELSSON, 1996). O estudo destas matrizes é motivado pelo estudo de Cadeias de Markov onde aparecem matrizes estocásticas. Definição 2.11 A é Z-matriz se aij 6 0, ∀i 6= j. Em outras palavras, A é Z-matriz se, e somente se, A = sI − B com s ∈ R e B não negativa. As Z-matrizes estudadas neste trabalho terão sempre diagonal estritamente positiva. Definição 2.12 A é M -matriz se A = sI − B com B não negativa e s > ρ(B)..

(31) 30. Resulta que cada M -matriz é também Z-matriz. Alguns chamam de M -matrizes o que chamamos M -matriz inversível, veja (MESSAOUDI, 1995). As M -matrizes foram introduzidos em 1937 por Alexander M. Ostrowski, em (OSTROWSKI, 1937), em (PLEMMONS, 1977). Ainda sobre este brilhante matemático, devido à diversas contribuições em difentes áreas da Matemática como a Álgebra Linear, Teoria dos Números, Geometria, Topologia, Análise Numérica, Equações Diferenciais etc; encontra-se um trabalho sobre "His life, work, and students"(GAUTSCHI, 2010) donde vale destacar: "The theory of M -matrices and the related theory of H-matrices, stemming from Ostrowski’s 1937 paper, have proved to be powerful tools in the analysis of iterative methods for solving large systems of linear equations. In addition, this theory forms the basis for the general theory of eigenvalue inclusion regions for matrices, as in the case of the well-known Gershgorin Theorem." De fato, M -matrizes surgem em diversos campos científicos, entre eles: métodos de elementos finitos ou de diferenças de EDPs, análise input-output em economia e cadeias de Markov em processos estocásticos (PLEMMONS, 1977). Mais detalhes sobre outras classes de matrizes com inversa positiva e Bmatrizes, estreitamente relacionadas com as M -matrizes e um histórico sobre os problemas antecedentes da área podem ser encontrados em (RODRIGUEZ, 2012). A fatoração incompleta LU (ILU) consiste em conseguir um splitting da matriz esparsa A em que A = LU − R, onde L é uma matriz triangular inferior e U , triangular superior e R é a matriz residual, idealmente com padrão predeterminado kRk << 1, ver (MEIJERINK; VORST, 1977). O caso particular clássico de fatoracao LU , ocorre quando R = 0. Teorema 2.2 Seja A uma Z-matriz. Então, são equivalentes:.

(32) 31. 1. A é M -matriz invertível; 2. A possui menores principais positivos; 3. A admite fatoração LU ; 4. A−1 existe e é não negativa; 5. Existe um splitting A = C − R com C −1 , N não negativas e ρ(C −1 R) < 1 implicando convergência do método iterativo 2.3. Para este resultado, veja (PLEMMONS, 1977), onde são acrescentadas outras condições equivalentes a mais. Definição 2.13 A matriz de comparação M(A) = (bij ) para uma matriz arbitrária A ∈ Mn (C) com A = (aij ) é definida por  |aij | se i = j bij = −|a | se i 6= j.. (2.5). ij. Em (BRU et al., 2008), na literatura sobre métodos iterativos de sistemas lineares, H-matrizes são amplamente utilizadas porque elas aparecem em muitas aplicações envolvendo discretização de certas equações parabólicas não lineares e no LPC. Além disso, H-matrizes estão intimamente relacionados com M -matrizes. Definição 2.14 A ∈ Mn (C) é uma H-matriz se M(A) é uma M -matriz. Entre as razões pelas quais a teoria matricial é assunto de interesse da comunidade científica é devido às diversas aplicações onde surgem matrizes com certas propriedades especiais. Um exemplo importante é o problema do LPC (Problema da Complementariedade Linear) usado em problemas logísticos de grande porte da programação linear. Para mais detalhes, ver (MURTY; YU, 1988)..

(33) 32. Em 2010, no texto de Cottle, ”Over the years, many authors have compiled lists of classes related to the LCP, and a few authors have created diagrams indicating the inclusion relationships between most of the matrix classes known at the time“, ver (COTTLE, 2010). Em geral, nota-se que há muitos trabalhos direcionados à determinação de propriedades das matrizes pertencentes a certa classe, mas poucos trabalhos feitos, no sentido de mostrar diagramas de inclusões e também de se criar técnicas computacionais eficientes para determinar se uma matriz pertence ou não a alguma classe. Para mais detalhes sobre abordagens em termos de caracterizações o leitor pode consultar os seguintes clássicos: (ROTHBLUM, 1979), (PLEMMONS, 1977). A verificação eficiente se uma matriz pertence ou não a uma determinada classe é uma tarefa muito importante tanto teórica como prática. Em particular, a verificação das propriedades M ou H pode ser complicada, por exemplo, por requerer o cálculo de A−1 . Não nos debruçaremos sobre esta questão. Conforme (POOLE; BOULLION,. 1974), “Most of the work in M -matrices has been in the area of deter-. mining the properties of such matrices. Some work has been done in determining which matrices from a particular class of matrices are M -matrices.“ Em (PEÑA, 2004), é apresentado um teste estável para verificar se uma matriz é uma M -matrix não singular. Recentemente, em (GUILLEARD; ANTONIO, 2015), discute-se sobre determinação e caracterizações de H-matrizes, expõe um levantamento sobre algoritmos propostos na literatura que buscam estabelecer de maneira automática se uma dada matriz é ou não H-matriz. Neste trabalho, não faremos estudos sobre questões relacionadas a esparsidade, operações matriciais, invertibilidade, convergência de splittings ou métodos iterativos envolvendo matrizes dessas classes. Vejamos agora algumas considerações relacionadas à estabilidade da fatoração LU baseadas nos textos de (HIGHAM, 2002), (MESSAOUDI, 1995), (IPSEN, 2009)..

(34) 33. Existe vasta literatura sobre a estabilidade da fatoração LU . Como parâmetro principal, considera-se a razão α=. kL.U k kAk. (para qualquer norma matricial) onde A = LU é a fatoração dada e L e U são obtidas de L e de U usando o valor absoluto termo a termo. Na literatura, podemos encontrar limitantes para α para várias classes matriciais intimamente relacionadas com as Z-matrizes, como as M -matrizes, as Hmatrizes, matrizes não negativas, entre outras; mas não para as Z-matrizes (onde a fatoração LU não é garantida). Em particular, veja o seguinte teorema: Teorema 2.3 (MESSAOUDI, 1995),(MEIJERINK; VORST, 1977) A fatoração LU incompleta de uma H-matriz é tão estável como a fatoração LU incompleta de sua matriz de comparação M(A). Existe também resultados sobre a estabilidade de algumas classes de matrizes esparsas, como as matrizes de Hessenberg, de banda, em particular, para matrizes tridiagonais. Para mais detalhes, o leitor pode consultar (SAAD, 2003). Há muitos trabalhos sobre fatorações LU ou ILU (LU incompleta) para a classes das M -matrizes e H-matrizes, ver (MEIJERINK; VORST, 1977). Entre eles, mencionamos trabalhos sobre a fatoração LU para M -matrizes (VARGA; CAI, 1981), estatibilidade da fatoração LU para H-matrizes (AHAC; BUONI; OLESKY, 1988), sobre a estabilidade das fatorações LU incompletas e caracterizações de H-matrizes, (MESSAOUDI, 1995). Na sequência, definiremos as matrizes denotadas por K, sendo geradas de tal forma a não serem mais Z-matrizes. Definição 2.15 Dadas duas Z-matrizes, Z1 e Z2 , e um número positivo β, pode-.

(35) 34. mos gerar uma matriz K da seguinte forma K=. Z1 − βZ2 . 1+β. Esta construção será útil quando formos discutir sobre a influência nos algoritmos numéricos quanto à estrutura das matrizes, em particular, K terá aproximadamente o mesmo padrão de esparsidade de Z1 e de Z2 . Porém, K não será mais Z-matriz. Para matrizes aleatórias Z1 , Z2 com a mesma distribuição dos termos, a melhor escolha a priori é β = 1 pois não teremos uma preferência quanto aos sinais dos elementos de Z1 e de Z2 . Agora, discutiremos sobre precondicionadores onde faremos o uso da fatoração LU incompleta.. 2.3. Precondicionadores. Ao lado do splitting, outra técnica para resolver sistemas grandes, esparsos ou mal condicionados, Ax = b, é pré- (ou pós-) multiplicação de A por uma matriz M −1 que, de um lado, aproxima A−1 e, portanto, acelera a convergência e, por outro lado, mais fácil de se construir assim que seu uso não torne o sistema mais complicado ou mude suas características (e.g., esparso). Precondicionamento é uma técnica usada para acelerar um método iterativo. A idéia é reduzir o número de condição da matriz do sistema linear. Idealmente, o precondicionador da matriz A é uma matriz M tal que M −1 A deve ter um número de condição menor Cond(M −1 A) < Cond(A). Além disso, diminuir a dispersão espectral. Seu uso é indicado para matrizes mal condicionadas e/ou de grande porte. Algebricamente, precondicionar um sistema linear do tipo Ax = b seria aplicar.

(36) 35. uma das tranformações: pela esquerda, M −1 Ax = M −1 b; pela direita, AM −1 y = b, com M −1 y = x; ou ambos os lados. No caso do GMRES, o precondicionador é usado durante o procedimento de Arnoldi, para mais detalhes, veja (CARVALHO et al.,. 2010). Neste trabalho, a técnica de precondicionamento é usada à esquerda e considera-. se o precondicionador ILU (0) onde M = LU . O início da história dos precondicionadores é marcado pelo trabalho de Cesari em 1937, ver (FERRONATO, 2012), (MEDEIROS, 2014). Existem vários candidatos de precondicionador na literatura, por exemplo, (BENZI, 2002), (VORST, 2003), (FERRONATO, 2012), porém ainda não existe uma teoria unificada justificando o sucesso de seu uso com quaisquer matrizes e aplicado ao GMRES. Dessa forma, podemos tentar fazer o uso de determinados precondicionadores além do método baseado na fatoração ILU (0) para certos problemas e tentar encontrar algum padrão de convergência. Em geral, outras fatorações incompletas, inversa aproximada, decomposição de domínio, multigrid são alguns exemplos clássicos de classes de precondicionadores na literatura, (CARVALHO et al., 2010), (FERRONATO, 2012).. 2.3.1. Fatoração incompleta LU (ILU). Existem várias variações desse tipo de fatoração onde se impõe certas restrições sobre a matriz R como ter zeros em certas posições em que A tem elementos não nulos. Entre elas, existe a fatoração de preenchimento zero (zero fill-in), ILU (0); a fatoração ILU (l) com nível de preenchimento l, esta não descarta tantos elementos como a ILU (0) e pode ser mais precisa; a fatoração ILU modificada, M ILU ; entre outras. Na fatoração ILU (0), descarta-se todos os preenchimentos por coefientes não nulos em posições originalmente nulas. Dessa forma, espera-se que o conjunto dos elementos não nulos da matriz A e o da LU sejam iguais e assim, quanto ao número de elementos não nulos, temos nz(A) = nz(LU ) que pode ser facilmente verificado.

(37) 36. no MATLAB. Isto é sempre verdade quando A = LU . Um dos motivos de fazer modificações nessa fatoração é a questão de preservar a estrutura da matriz A tal como o grau de esparsidade após uma fatoração . É de se esperar, muitas vezes, que ocorra um preenchimento conhecido como fillin onde os elementos não nulos surgem de R após a fatoração em posições na matriz A onde originalmente tinham elementos nulos, com isso, diminui o grau de esparsidade de A e consequentemente, exige-se mais espaço de memória para armazenar A aumentando o custo computacional. Sobre precondicionadores e certas classes matriciais, veja (BROYDEN; VESPUCCI,. 2004), ”Thus if A is an M -matrix or an H-matrix, not only is incomplete. factorisation always possible but this factorisation will provide a workable preconditioner. Since many important applications derived from partial differential equations give rise to just such matrices, the results of Meijerink, van der Vorst and Manteuffel are of very considerable practical and theoretical importance.“ Em (CHEN, 2005), Chen também relata sobre a fatoração ILU para certas classes de matrizes. A seguir, veremos um pouco sobre métodos de Krylov, entre eles, o GMRES, o GMRES(m).. 2.4. Métodos de Krylov. Os Métodos de Krylov são centrais no processamento de sistemas lineares de grande porte. Por exemplo, (DONGARRA; SULLIVAN, 2000) os consideram entre os 10 algoritmos mais importantes do século XX: ”We tried to assemble the 10 algorithms with the greatest influence on the development and practice of science and engineering in the 20th century”. Para mais detalhes, veja (CIPRA, 2000). Sejam A ∈ Mn (R) e 0 6= b ∈ Mn×1 (R), define-se por:.

(38) 37. Definição 2.16 Sequência de Krylov (b, Ab, A2 b, . . . , Aj−1 b) Definição 2.17 Dada A ∈ Mn e um vetor não nulo b ∈ Rn , definimos o subespaço de Krylov por Kj = span{b, Ab, A2 b, . . . , Aj−1 b}. Definição 2.18 Matriz de Krylov Kn×j =. 2.4.1. h. 2. b Ab A b . . . A. j−1. b. i. Base para subespaço de Krylov. Uma matriz de Krylov Kn×j que contem uma base para o subespaço de Krylov Kj não é adequada para a implementação numérica pois com o aumento de j as colunas ficam mais próximas da dependência linear, pela Proposição 2.1. Suponha λk−1 pequeno, espera-se um λ1 seja um autovalor dominante, sendo o quociente λ1 mal condicionamento de Kn×j uma vez que duas colunas tornam-se quase linearmente dependentes. Assim, não basta tentar ortogonalizar a base do subespaço, pois como os vetores são quase linearmente dependentes, o processo de ortogonalização seria numericamente instável. Uma solução para esse problema será discutida onde apresentaremos o método de Arnoldi. Dado Ax0 = b, pela Proposição 2.1, veja que (enquanto Axj−1 6= 0) k =j−1. xj =. Axj−1 Aj−1 b = . kAxj−1 k kAj−1 bk. (2.6). O processo de Arnoldi é um algoritmo para construir uma base ortogonal do subespaço de Krylov Kl . Uma variante desse método é a seguinte: Algoritmo: Arnoldi Escolha um vetor v1 , tal que kv1 k2 = 1.

(39) 38. Para j = 1, 2, · · · , m Faça: Calcule hij = hAvj , vi i para i = 1, 2, · · · , j j X Calcule wj := Avj − hij vi i=1. hj+1,j = kwj k2 Se hj+1,j = 0 então Para wj vj+1 = hj+1,j Fim Faça Agora, veremos sobre métodos de projeção.. 2.4.2. Métodos de projeção. A maioria dos métodos iterativos para resolução de sistemas lineares de grande porte usam algum processo de projeção para obter, de maneira canônica, a melhor solução aproximada dentro de um subespaço aproximado e de dimensão menor, conhecido como subespaço de busca. Para uma visão mais geral sobre métodos de projeção, consulte (SAAD, 2003), (ARAUJO, 2011)..

(40) 39. Figura 2: A ideia é buscar a solução aproximada de um sistema de equações Ax = b em um subespaço de dimensão menor.. Veja que xn ∈ x0 + K k ,. rn ∈ ro + Ln. onde as restrições desejadas para determinar xn são dadas por rn ⊥ Ln ,. n L⊥ n ⊕ Ln = R ,. Kn é o subespaço de busca e Ln é o subespaço de restrição.. r0 = r0 |AKn +r0 |L⊥n = r0 |AKn +rn ,. r0 ∈ Kn⊥ .. Nosso tratatamento do subespaços de Krylov acima é baseado em (STRAKOŠ et al.,. 2009).. Normalmente, a escolha é uma das seguintes: se Ln = Kn temos uma projeção ortogonal; se Ln = AKn , a projeção é chamada oblíqua..

(41) 40. Figura 3: Projeção de r, resíduo, sobre K e ortogonal a L. Métodos que fornecem melhores aproximações em subespaços de Krylov são conhecidos como Métodos de Krylov (MK), isto é, utilizam o subespaço de Krylov como subespaço de busca, ver (VORST, 2003). Para uma abordagem sobre a evolução desses métodos de projeção, em particular, os de Kylov, veja (EIERMANN; ERNST,. 2001).. Os métodos de Krylov para encontrar xl ∈ Kl são divididos em quatro classes de projeção de acordo com a condição imposta, a saber, 1. de Ritz-Galerkin: Ll = Kl = (A, r0 ), isto é, busca xl ∈ Kl tal que rl ⊥ Kl ; 2. da norma mínima residual: busca xl ∈ Kl tal que krn k2 é mínima sobre Kl = (A, r0 ); 3. de Petrov-Galerkin: Ll = AKl e Kl = Kl (A, r0 ), isto é, busca rl ⊥ Ll e x ∈ Kl ; 4. da norma mínima do erro: Ll = Kl (AT , r0 ) e Kl = Kl (A, r0 ), isto, é determina xl ∈ AT Kk (A, r0 ) tal que kxl − xk2 seja mínima. Note, então, que as diferentes versões dos Métodos de Krylov decorrem, principalmente, das diferentes escolhas de Ln e do produto interno considerado. Por.

(42) 41. exemplo, se tomarmos a condição de Ritz-Galerkin, que define um problema a ser resolvido, temos um algoritmo específico para tal solução, temos o FOM (Método da Ortogonalização Completa) dependendo do produto interno considerado; se a escolha for a condição 3., entre os métodos mais conhecidos dessa classe, temos o GMRES, objeto de estudo desse trabalho.. Figura 4: Representação esquemática da condição de ortogonalidade do resíduo do GMRES. Essa figura é a mesma encontrada em (CARVALHO et al., 2010) porém, a reproduzimos colocando tais cores. A seguir, descreveremos brevemente o GMRES.. 2.4.3. GMRES. O GMRES ((SAAD; SCHULTZ, 1986)) é um método de projeção baseado em tomar K = Km e L = AKm , no qual Km é o m-ésimo subespaço de Krylov, com r0 v1 = . É uma técnica que minimiza norma residual sobre todos os vetores kr0 k2 x0 + K m . Usando a relação de Arnoldi (AVm = Vm+1 H˜m onde H˜m é uma matriz de Hessenberg), temos que qualquer vector x em x0 + Km pode ser escrita como x = x0 + Vm y,.

(43) 42. onde y ∈ Rm . Definindo. kb − Axk2 = kb − A(x0 + Vm y)k2 , da relação de Arnoldi,. rm = b − Axm = b − A(x0 + Vm ym ) = r0 − AVm ym = r0 − Vm+1 H˜m ym = Vm+1 (kr0 k2 e1 + H˜m ym ) Desde que as colunas de Vm+1 sejam ortonormais, então. krm k2 = kkr0 k2 e1 − H˜m ym k2 Temos então que resolver o sistema linear de ordem reduzida H˜m ym = kr0 k2 e1 . Algoritmo do GMRES(m) 1. Início: Escolha x0 e calcule r0 = b − Ax0 e v1 = ∗ Processo de Arnoldi. 2. Itere: Para j = 1, . . . , m faça: 3. hij = hAvj , vi i, i = 1, . . . , j,. r0 . kr0 k.

(44) 43. 4. v˜j+1 = Avj −. j X. hij vi. i=1. 5. hj+1,j = k˜ vj+1 k, e 6. vj+1 =. v˜j+1 hj+1,j. 7. Forme a solução aproximada: x = X0 + Vm ym onde ym minimiza ||βe1 − Hm ym ||, ym ∈ Rm , β = ||r0 || e e1 = (1, 0, · · · , 0)t um vetor. 8. Recomeço: Calcule rm = b−Axm ; se o critério de convergência for satisfeito Pare 9. senão compute x0 := xm , v1 := rm /||rm ||. 10. Volte para a linha 2. Observe que o algoritimo acima é chamado apenas GM RES quando desconsiderase a atualização em item 9. O precondicionamento do GM RES à esquerda resolve M −1 Ax = M −1 b em vez de resolver Ax = b. O precondicionamento no MATLAB é feito de modo que o precondicionador M é dado por uma matriz ou são dadas duas matrizes M1 e M2 tais que M = M1 .M2 e aplica-se M −1 Ax = M −1 b à Ax = b. No caso, quando o GMRES(m) é precondicionado com ILU (0), tem-se M1 = L e M2 = U . No caso do GM RES(m) precondicionado com uma matriz M à esquerda, na linha 1., inicia-se com r0 = M −1 (b − Ax0 ) e na linha 3., no lugar de Avj , calcula-se M −1 Avj . Sobre o uso do GMRES(m) precondicionado aplicado a sistemas lineares com M -matrizes não singulares, encontramos o artigo do (WANG; SONG, 2009), onde os.

(45) 44. autores sugerem que, em geral, o GMRES(m) precondicionado funcione melhor que o GMRES(m). Também há outro trabalho envolvendo sistemas singulares surgidos da modelagem de cadeias de Markov onde aplica-se o GMRES(m) precondicionado em que matriz do sistema possivelmente é M -matriz singular, (BENZI; UÇAR, 2007). Em (VIRNIK, 2007), trabalha-se com o GMRES precondicionado para resolver sistemas lineares grandes singulares do tipo (I − T t )x = 0 onde T é assumida como a matriz de transição de um processo de Markov. Observe que T (matriz estocástica) satisfaz ρ(T ) = 1 assim que I − T t é uma matriz M . No entanto, há poucos trabalhos envolvendo o GMRES(m) precondicionado aplicado a certas classes especiais como essas. Sobre resultados relacionados à convergência do GMRES e do GMRES(m), o leitor pode consultar (SAAD; SCHULTZ, 1986), (STRIKWERDA; STODDER, 1995), (SIMONCINI; SZYLD, 2007), (MEURANT, 2012), (MEURANT, 2014), (TEBBENS et al., 2014) e (TEBBENS; MEURANT, 2015). Neste trabalho, encontramos alguns resultados numéricos interessantes para o conjunto de dados que trabalhamos onde alguns padrões de repetem. No próximo capítulo, nos deteremos a esses resultados..

(46) 45. 3. Experimentos numéricos. Neste capítulo, observam-se algumas relações importantes entre as propriedades estruturais e numéricas da matriz dos coeficientes dos problemas Ax = b considerados nos casos particulares em que A = Z1 , A = Z2 , A = K, as definições de matrizes encontram-se na seção 2.2. Em seguida, procuramos algumas relações dessas propriedades entre o comportamento dos métodos GMRES, GMRES precondicionado com ILU(0), GMRES(m), GMRES(m) precondicionado com ILU (0), quanto as variáveis consideradas: o número de iterações (nit), o tempo de execução em segundos de CPU (time), a norma do resíduo relativo (res) e a bandeira de convergência (f lag). Apresentaremos apenas os gráficos das variáveis que mostram alguma relação interessante e as tabelas com os dados numéricos deste capítulo encontram-se no Apêndice A.. 3.1. Sobre a matriz dos coeficientes dos problemas. Nesta seção, serão destacadas algumas propriedades estruturais, numéricas e espectrais das matrizes Z1 , Z2 e K, onde Z1 e Z2 são Z-matrizes esparsas com o Z1 − Z2 mesmo padrão de esparsidade (N Z(Z1 ) = N Z(Z2 )) e K = é matriz geral 2 com, essencialmente N Z(K) = N Z(Z1 ) = N Z(Z2 ) onde N Z(Z1 ) = {(i, j), 1 6 i, j 6 n; zij 6= 0} . Esse é o conjunto das posições dos elementos não nulos da matriz Z1 . ..

(47) 46. 3.1.1. Propriedades estruturais. Consideramos as matrizes Z1 , Z2 e K estruturalmente idêntidas no sentido de serem não simétricas (Z1 6= Z1T ), terem elementos não nulos distintos nas mesmas posições e, consequentemente, possuem praticamente o mesmo grau de esparsidade após serem geradas. Todas as matrizes Z1 deste trabalho foram geradas da seguinte forma: 1. Gera-se uma matriz “R” com densidade uniforme d ∼ U [0, 1] (densidade d com distribuição uniforme no intervalo [0, 1]); 2. Os elementos da diagonal nulos são substituídos por números positivos aleatórios com a mesma densidade e os negativos são substituídos por menos o módulo de seu valor; 3. Feitas tais modificações na matriz R, tem-se a matriz Z1 . E assim, foi contruída a matriz Z1 (Z-matriz). Para as matrizes Z2 , temos: 1. Gera-se uma matriz “S” com a mesma densidade d de Z1 ; 2. É feito o mesmo processo 2 feito para a matriz Z1 , porém, acrescenta-se a condição que para os elementos não nulos fora da diagonal estes estejam nas mesmas posições da matriz Z1 e os elementos positivos fora da diagonal são substituídos pelos seus negativos. Caso, não estejam, esses números não nulos são substituídos por zero. 3. Feitas tais modificações na matriz S, obtem-se a matriz Z2 . O objetivo de acrescentar tal condição no item 2 é que a matriz K (combinação linear de Z1 e de Z2 ) tenha praticamente mesma esparsidade de Z1 e Z2 para possibilitar certas comparações da variação do grau de esparsidade com outras.

(48) 47. variáveis consideradas neste trabalho. A ideia é que estejamos trabalhando com o mesmo grau para Z1 , Z2 e a combinação linear destas que é a matriz K. Note que quando gera-se a matriz Z1 e suponha que gerassemos a Z2 da mesma forma que a Z1 sem acrescentar tal condição no item 2., embora que com a mesma densidade da Z1 , teríamos K muito mais densa. Exemplo. 3.1 . 0.2.  Z1 =   0 0. 0. −0.7. . 0.25. 0.   . 0. 0.5. . 0.3. 0. 0. .    Z2 =  −0.1 0.2 0   0 0 0.9. Se K = 0.5Z1 − 0.5Z2 , tem-se   −0.1 0 −0.35   K= 0   0.05 0.025  0 0 −0.2. (3.1). (3.2). Nesse caso, Z1 e Z2 mas K não tem o mesmo grau de esparsidade. E isso dificultaria certas comparações importantes. Portanto, a condição do padrão de esparsidade no item 2 para Z2 evita este aumento de densidade K.. 3.1.2. Propriedades numéricas. Sobre as propriedades numéricas para as matrizes Z1 , Z2 e K, atentaremos para o grau de esparsidade (ge(·)) e o número de condicionamento (cond(·)). Note que à medida que o valor da densidade (d) aumenta, o grau de esparsidade (ge) diminui e assim, as matrizes ficarão menos esparsas. São medidas inversamente proporcionais pois a densidade trata da razão entre o número de elementos não nulos e o número total de elementos da matriz, já o grau de esparsidade é a razão entre o número de elementos nulos e o número total de elementos da matriz.

(49) 48. multiplicado por 100 para sair o valor em %. Como foram feitas modificações nas matrizes geradas aleatoriamente com certa densidade d trocando-se elementos nulos por não nulos na diagonal das matrizes geradas, calculamos também o grau de esparsidade. Optamos, então, por usar apenas o grau de esparsidade da matriz devido a essas alterações.. 3.2. Resultados numéricos. Apresentaremos os principais resultados obtidos, levando em conta diversas análises. Todos os experimentos numéricos foram realizados no software MATLAB R2013, 64-bit, instalado em uma máquina com processador Intel Core i5 2.60GHz×4 e 4Gb de memória RAM.. 3.2.1. Configurações para as simulações numéricas. A tolerância tol usada para o GMRES em todos as simulações numéricas foi krk k2 de = 10−6 . kbk Para as matrizes de ordem 300, sempre que trabalhamos com o GMRES(m) precondicionado ou não, utilizamos m = 60. Adotamos arbitrariamente esse valor e assim, foi fixado tal valor para todos os problemas. A norma do resíduo relativo kb − Axk2 é dada por . Para o GMRES(m), precondicionado ou não, fixamos em kbk2 10 o número máximo de iterações seguindo a opcão DEFAULT de MATLAB. Para cada sistema, a solução exata é conhecida e o erro obtido em relação a solução exata pode ser visto nas tabelas apresentadas no Apêndice A. O erro é dado por kx − x∗ k2 onde x é a solução exata do problema e x∗ é a solução aproximada kx∗ k2 obtida pelo método considerado. A configuração utilizada para a fatoração ILU (0) no MATLAB encontra-se no Apêndice B onde constam os códigos com a programação feita no MATLAB..

(50) 49. Denotaremos apenas por 1. GMRES(60) para o método GMRES(60) sem precondicionador; 2. GMRES(60)/ILU (0) para GMRES(60) precondicionado com ILU (0); 3. GMRES para o método GMRES sem precondicionador; 4. GMRES/ILU (0) para GMRES precondicionado com ILU (0). As barras coloridas ao lado dos gráficos de dispersão exibem o mapa de cores corrente e indicam o mapeamento dos valores dos graus de esparsidade para o mapa de cores. Ou seja, cada ponto colorido representa um problema diferente onde a essa cor indica o grau de esparsidade do problema considerado. Apresentaremos agora os resultados que obtivemos.. 3.2.2. Gráficos de dispersão. Apresentaremos os gráficos onde encontramos relações significativas entre o raio espectral das matrizes dos coeficientes, o grau de esparsidade e as normas do resíduo relativo para as matrizes Z1 , Z2 e K. Como os resultados para as matrizes Z2 foram no estilo dos resultados para as matrizes Z1 , então, por esse motivo, vamos expor apenas tais resultados para as matrizes Z1 e K. Para o conjunto de todas matrizes de ordem 300 usadas neste trabalho, temos matrizes Z1 , Z2 e K, onde cada uma das 50 triplas dessas de matrizes tem um certo grau de esparsidade. E, por sua vez, essas triplas tem grau de esparsidade variando de 90.26% a 99.57%. Para cada tripla, geramos um vetor aleatório b com densidade uniforme em [0, 1] e o chute inicial x0 é o vetor nulo, onde resolveremos os sistemas Z1 x = b, Z2 x = b e Kx = b, no caso, por 4 métodos numéricos. Sobre o padrão de esparsidade, veja os spy’s de duas matrizes Z1 , a primeira matriz é que tem o menor grau de esparsidade e segunda é a que tem o maior grau..

(51) 50. 0. 50. 100. 150. 200. 250. 300 0. 50. 100. 150 nz = 8764. 200. 250. 300. Figura 5: spy da matriz Z1 com grau de esparsidade 90.26%.. 0. 50. 100. 150. 200. 250. 300 0. 50. 100. 150 nz = 390. 200. 250. 300. Figura 6: spy da matriz Z1 com grau de esparsidade 99.57%.. Para as matrizes Z1 , encontramos uma relação entre as variáveis grau de esparsidade e a norma do resíduo relativo quando aplicado o GMRES ou GMRES(60) aos problemas Z1 x = b, onde temos 50 matrizes Z1 com o grau de esparsidade variando no intervalo mencionado acima. Isto é, quando a matriz torna-se mais esparsa, a norma do resíduo relativo também aumentou. Isto sugere uma influência.

(52) 51. do grau de esparsidade quanto aos resíduos obtidos pelo GMRES ou GMRES(60). Nos casos em que fizemos o uso de precondicionador, não observamos tais relações. Z1 − GMRES. −6. x 10 1. 99 0.9 98 0.8 97 Norma do residuo relativo. 0.7 96. 0.6. 0.5. 95. 0.4. 94. 0.3. 93. 0.2. 92. 0.1. 0 90. 91. 91. 92. 93. 94 95 96 Grau de esparsidade. 97. 98. 99. 100. Figura 7: Gráfico do grau de esparsidade × Norma residual relativa do GMRES. Matrizes Z1 de ordem 300.. Observamos, no gráfico acima, que quanto mais esparsos os problemas, maiores foram os valores das normas do resíduos relativos quando utilizamos o GMRES para essas Z-matrizes. Nota-se uma relação não linear um pouco acentuada..

(53) 52 Z1 − GMRES(60) 0.45 99 0.4 98 0.35. Norma do residuo relativo. 97 0.3 96 0.25 95 0.2 94 0.15 93 0.1 92 0.05 91 0 90. 91. 92. 93. 94 95 96 Grau de esparsidade. 97. 98. 99. 100. Figura 8: Gráfico do grau de esparsidade × Norma residual relativa do GMRES(60). Matrizes Z1 de ordem 300.. Ainda há uma relação não linear bastante acentuada. Quanto mais esparsos foram os problemas, maiores foram os resíduos. O que sugere que a esparsidade dos problemas exerce alguma influência na norma do resíduo relativo do método considerado..

(54) 53 −7. K − GMRES. x 10 9. 99 8 98 7. Norma do residuo relativo. 97 6 96 5 95 4 94 3 93 2 92 1 91 0 90. 91. 92. 93. 94 95 96 Grau de esparsidade. 97. 98. 99. 100. Figura 9: Gráfico do grau de esparsidade × Norma residual relativa do GMRES. Matriz K de ordem 300.. Para a matriz K, note que o resíduo não oscilou muito e ficou muito alto, mesmo com a esparsidade variando. K − GMRES(60) 0.9 99 0.8 98 0.7. Norma do residuo relativo. 97 0.6 96 0.5 95 0.4 94 0.3 93 0.2 92 0.1 91 0 90. 91. 92. 93. 94 95 96 Grau de esparsidade. 97. 98. 99. 100. Figura 10: Gráfico da norma residual relativa da matriz K × Norma residual relativa do GMRES(60). Matriz K de ordem 300..

(55) 54. Veja no gráfico acima que não há muita oscilação da norma do resíduo relativo à medida que varia-se o grau de esparsidade e os valores dessas normas foram muito altos. As matrizes K, que não pertencem mais ao conjunto das Z-matrizes, não apresentam resultados tão bons no sentido de poder sugerir relações lineares ou não lineares fortes entre essas variáveis. Isso é bastante notável ao observarmos as figuras 8 e 10. Assim, ressaltamos a forte influência da estrutura matricial nos resultados obtidos a fim de encontrar certos “padrões”. Também observamos uma relação linear forte entre o grau de esparsidade das matrizes e o raio espectral da matriz ρ(Z1 ) para as matrizes Z1 . Z1 14 99 12 98. 97. Raio espectral da matriz Z1. 10. 96 8 95 6 94. 93. 4. 92 2 91 0 90. 91. 92. 93. 94 95 96 Grau de esparsidade. 97. 98. 99. 100. Figura 11: Gráfico do grau de esparsidade da matriz Z1 × Raio espectral da matriz Z1 .. Veja que quando a matriz é mais esparsa, o ρ diminui. Para as matrizes K como se pode observar no gráfico abaixo:.

(56) 55 K 1.3 99 1.2 98 1.1. Raio espectral da matriz K. 97 1 96 0.9 95 0.8 94 0.7 93 0.6 92 0.5 91 0.4 90. 91. 92. 93. 94 95 96 Grau de esparsidade. 97. 98. 99. 100. Figura 12: Gráfico do grau de esparsidade da matriz K × Raio espectral da matriz K.. Veja que quando a matriz é mais esparsa, o ρ diminui, porém há maior variabilidade nos dados do que para a matriz Z1 . Se plotarmos, o gráfico com o raio espectral dessas matrizes Z1 pela norma do resíduo obtido pelo GMRES ou GMRES(60), teremos gráficos no estilo dos anteriores a esses dois gráficos acima. Isso acontece por conta dessa relação linear que há esse raio espectral e o grau de esparsidade. Os gráficos de dispersão apresentados mostram similaridade dos resultados obtidos com o GMRES e o GMRES(60). No mesmo tempo, eles mostram uma diferença significativa entre as matrizes Z1 e as matrizes K.. 3.2.3. Análise dos resíduos para Z1 , Z2 e K. A seguir, plotaremos as curvas de convergência para a tripla de matrizes (Z1 , Z2 ,K) no mesmo gráfico que possuem o mesmo grau de esparsidade. A partir do primeiro gráfico dos 50 plotados, observamos um certo padrão.

(57) 56. nas curvas de convergência dessas triplas para o GMRES ou para o GMRES(60). Notamos qua à medida que as matrizes ficam menos esparsas, a curva da matriz K tende a se afastar das curvas das matrizes Z1 e Z2 . Veja o gráfico envolvendo as matrizes mais esparsas: GMRES aplicado a matrizes com ge(⋅)=99.5667% 0. 10. Z1 Z2 K −1. 10. −2. Norma do residuo relativo. 10. −3. 10. −4. 10. −5. 10. −6. 10. −7. 10. 0. 50. 100. 150 Numero de iteracoes. 200. 250. 300. Figura 13: Gráfico referente às matrizes Z1, Z2 e K com o GMRES. Matrizes de ordem 300.. E nos casos de matrizes menos esparsas, o estilo dos gráficos é parecido com esse abaixo.

(58) 57 GMRES aplicado a matrizes com ge(⋅)=90.2533% 0. 10. Z1 Z2 K −1. Norma do residuo relativo. 10. −2. 10. −3. 10. −4. 10. −5. 10. 0. 50. 100. 150 Numero de iteracoes. 200. 250. 300. Figura 14: Gráfico referente às matrizes Z1, Z2 e K menos esparsas consideradas com o GMRES. Matrizes de ordem 300.. Averiguamos que algo semelhante aconteceu para esses mesmos casos anteriores, porém, considerando o GMRES(60). GMRES(60) aplicado a matrizes com ge(⋅)=99.5667% 0. 10. Z1 Z2 K −1. 10. −2. Norma do residuo relativo. 10. −3. 10. −4. 10. −5. 10. −6. 10. −7. 10. 0. 50. 100. 150 200 Numero de iteracoes. 250. 300. 350. Figura 15: Gráfico referente às matrizes Z1, Z2 e K com o GMRES. Matrizes de ordem 300..

(59) 58. E nos casos de matrizes menos esparsas, o estilo dos gráficos é parecido com esse abaixo GMRES(60) aplicado a matrizes com ge(⋅)=90.2533% 0. 10. Norma do residuo relativo. Z1 Z2 K. −1. 10. −2. 10. 0. 50. 100. 150 200 Numero de iteracoes. 250. 300. 350. Figura 16: Gráfico referente às matrizes Z1, Z2 e K menos esparsas consideradas com o GMRES. Matrizes de ordem 300.. É notável que nestes gráficos as diferenças em padrão de convergência entre as duas classes de matrizes. Z1 , Z2 de um lado (Z-matrizes) e K do outro lado (não Z-matrizes). A seguir, consideraremos outras combinações lineares das matrizes Z1 e Z2 .. 3.2.4. Análise dos resíduos para outras matrizes K. Nesta seção, analizaremos de forma similar a seção anterior, mas acrescentando 4 novas matrizes. Veremos o que acontece quando perturbamos gradativamente uma matriz K. Então, aos gráficos anteriores, acrescentaremos essas 4 novas matrizes. Considere as seguintes matrizes dadas por.

(60) 59. Z1 − 4Z2 1+4 Z1 − 2Z2 = 1+2 Z1 − 0.5Z2 = 1 + 0.5 Z1 − 0.25Z2 . = 1 + 0.25. K4 = K2 K1/2 K1/4. 1 1 No caso, consideramos β = 4, 2, , de acordo com a expressão 2.6. 2 4 Enfatizamos o quanto a estrutura do problema influência bastante nas curvas de convergência conforme esperávamos. Pois quanto mais “próxima” a estrutura da matriz K for da matriz Z1 (ou Z2 ) mais próxima será sua curva de convergência da matriz Z1 . No caso, a matriz K1/4 se aproxima da matriz Z1 e a curva de convergência da matriz K1/4 tende a ficar mais próxima da matriz Z1 do que a curva da matriz K. Abaixo, considerando os problemas mais esparsos aos menos esparsos, vejamos o gráfico do oitavo problema mais esparso para o método GMRES..

Referências

Documentos relacionados

Nos tempos atuais, ao nos referirmos à profissão docente, ao ser professor, o que pensamos Uma profissão indesejada por muitos, social e economicamente desvalorizada Podemos dizer que

Art. 27º Poderão ser criadas outras categorias por solicitação dos clubes ou por iniciativa desta federação, como por exemplo: iniciantes e não federados. Parágrafo Único: Quando

As abraçadeiras tipo TUCHO SIMPLES INOX , foram desenvolvidas para aplicações que necessitam alto torque de aperto e condições severas de temperatura, permitin- do assim,

A apixaba- na reduziu o risco de AVE e embolismo sistêmico em mais de 50%: houve 51 eventos entre os pacientes do grupo apixabana versus 113 no grupo do AAS

libras ou pedagogia com especialização e proficiência em libras 40h 3 Imediato 0821FLET03 FLET Curso de Letras - Língua e Literatura Portuguesa. Estudos literários

Ao final, o Conselho Fiscal, tendo acompanhado a evolução dos estudos acerca da reestruturação societária da Celesc imposta pela Agência Nacional de Energia Elétrica – ANEEL

Nesse trabalho foram realizados ensaios para tratar solo contaminado artificialmente com fenantreno por oxidação química in situ utilizando diatomita modificada por ferro

A dobutamina pode provocar aumento dos batimentos do coração e da pressão arterial, que geralmente são revertidos pela redução da dose administrada.. Pacientes com fibrilação