Como construir um operador de prolongamento e restrição para um solucionador de multigrid algébrico?

10

Estou tentando resolver um sistema linear de equações que é escasso, mas não possui nenhum tipo de estrutura em faixas. Ouvi dizer que existe uma maneira de estender os princípios de um solucionador multigrid para esquemas de diferenças finitas implícitas a um problema linear geral (se não me engano, isso é chamado de solucionador multigrid algébrico). Depois de ler alguma literatura sobre isso, ainda estou muito confuso sobre como interpolar (isto é, prolongar e restringir) entre grades grossas e finas sem explorar a estrutura agradável das matrizes em faixas, como as de um esquema de diferenças finitas. Existe alguma heurística nisso? Alguém pode dar um exemplo?

Paulo
fonte

Respostas:

13

Primeiro, se você possui uma grade estruturada, convém usar multigrelha geométrica em vez de algébrica devido a algumas vantagens teóricas e de eficiência (por exemplo, capacidade de rediscretizar em vez de usar operadores de grade grossa Galerkin). Os métodos multigrid algébricos geralmente se enquadram em duas categorias.

Multigrid Algébrico Clássico

M

Agregação suavizada

UMATUMA(também de Mark Adams, principalmente um substituto completo para Prometheus) e o componente de agregação suavizada do código CUSP da GPU baseado em CUDA .

Observe que todos os softwares mencionados acima podem ser acessados ​​através de uma interface comum usando o PETSc .

Jed Brown
fonte
4

"Multigrid", de Trottenberg et al., É um excelente livro e parece que a maioria está disponível nos livros do Google. Ele possui um apêndice sobre a AMG e você provavelmente precisará obter alguma experiência em MG no restante do livro. "Um tutorial multigrid" também é um bom livro.

Adams
fonte
3

Eu sugeriria o capítulo 8 de "A Multigrid Tutorial" (2Ed) de WL Briggs, VE Henson e SF McCormick. Dá uma idéia geral de alguns conceitos importantes, como suavidade algébrica e forte dependência. Também explica como definir o operador de interpolação (também operador de grade grossa) e como selecionar a grade grossa.

Bernardo MR
fonte
Bernardo, seja bem-vindo scicomp! Seu segundo parágrafo parece mais uma pergunta do que uma resposta. Você poderia cortá-lo da sua resposta e colá-lo em uma pergunta separada? A pergunta que você faz no seu segundo parágrafo é um bom exemplo do tipo de pergunta que gostamos de ver scicomp.
Geoff Oxberry