Por que marcar um ponto para remover um espaço nulo é ruim?

13

Uma equação de Poisson com todas as condições de contorno de Neumann possui um único espaço nulo dimensional constante. Ao resolver através de um método de Krylov, o espaço nulo pode ser removido subtraindo a média da solução a cada iteração ou fixando o valor de um único vértice.

Fixar um único vértice tem o benefício da simplicidade e também evita uma redução global extra por projeção. No entanto, normalmente é visto como ruim devido ao seu efeito no condicionamento. Portanto, sempre subtraí meios.

No entanto, os dois métodos diferem um do outro por no máximo uma correção de classificação 2; portanto, de acordo com (1) eles devem convergir quase no mesmo número de iterações (pelo menos na aritmética exata). Esse raciocínio está correto ou existe um motivo adicional para que a marcação de pontos seja ruim (talvez aritmética inexata)?

(1): Como as modificações de baixa classificação afetam a convergência do método de Krylov?

Geoffrey Irving
fonte

Respostas:

9

Seus argumentos se aplicam naturalmente ao caso não pré-condicionado. A razão pela qual não recomendo fixar é que confunde normas e pré-condicionamento. Se você souber o tamanho de um valor diagonal típico, poderá dimensionar a equação trivial do nó fixado para que as normas se tornem razoáveis ​​novamente.

Para ver a conseqüência do pré-condicionamento, precisamos distinguir entre diferentes métodos de impor a fixação. Eu considero dois dos mais populares.

  1. Se a fixação é conseguida "zerando uma linha" (definindo uma linha igual a uma linha em escala da identidade), ele introduz uma assimetria que restringe a escolha do método de Krylov e pode confundir pré-condicionantes (por exemplo, faça com que o multigrid algébrico escolha um agregado ruim).
  2. Se a coluna correspondente também é zerada (com a contribuição "levantada" para o lado direito), o efeito é bastante benigno.

Observe que os operadores de interpolação para multigrid podem precisar ser ajustados para fazer a fixação de maneira compatível em cada nível. Se você não se importa com a complexidade introduzida pela implementação da fixação com uma boa escala, é uma boa abordagem. Na maioria dos casos, descobrimos que é mais invasivo e propenso a erros implementar a fixação de maneira não perturbadora do que fornecer o espaço quase nulo. Ao ter a matriz original (singular) por perto, a biblioteca do solver também pode verificar se o espaço nulo fornecido é realmente um espaço nulo, protegendo assim contra um erro comum.

Jed Brown
fonte