Dlaczego przypięcie punktu do usunięcia pustego miejsca jest złe?

13

Równanie Poissona ze wszystkimi warunkami brzegowymi Neumanna ma pojedynczą stałą przestrzeń zerową. Podczas rozwiązywania metodą Kryłowa, pustą przestrzeń można usunąć, odejmując średnią z każdego rozwiązania iteracji lub przypinając wartość pojedynczego wierzchołka.

Przypinanie pojedynczego wierzchołka ma tę zaletę, że jest proste, a także pozwala uniknąć dodatkowej globalnej redukcji na rzut. Jednak zwykle uważa się go za zły ze względu na jego wpływ na warunkowanie. Dlatego zawsze odejmowałem środki.

Jednak obie metody różnią się od siebie co najwyżej korektą rangi 2, więc zgodnie z (1) powinny one zbiegać się w prawie takiej samej liczbie iteracji (przynajmniej w dokładnej arytmetyce). Czy to rozumowanie jest prawidłowe, czy też istnieje dodatkowy powód, dla którego przypinanie punktów jest złe (być może niedokładna arytmetyka)?

(1): Jak modyfikacje niskiej rangi wpływają na zbieżność metody Kryłowa?

Geoffrey Irving
źródło

Odpowiedzi:

9

Twoje argumenty odnoszą się naturalnie do nieuwarunkowanej sprawy. Powodem, dla którego nie zalecam przypinania, jest to, że myli normy i warunki wstępne. Jeśli znasz rozmiar typowej wartości przekątnej, możesz skalować trywialne równanie dla przypiętego węzła, aby normy stały się znowu rozsądne.

Aby zobaczyć konsekwencje wstępnego kondycjonowania, musimy rozróżnić różne metody wymuszania przypinania. Uważam dwa z najbardziej popularnych.

  1. Jeśli przypinanie osiąga się przez „zerowanie wiersza” (ustawienie wiersza równego skalowanemu rzędowi tożsamości), wprowadza asymetrię, która ogranicza wybór metody Kryłowa i może dezorientować warunki wstępne (np. Zmusza algebraiczny multigrid do wybierania złego agregatu).
  2. Jeśli odpowiadająca kolumna jest również zerowana (z wkładem „podniesionym” na prawą stronę), efekt jest dość łagodny.

Należy pamiętać, że operatory interpolacji dla wielu sieci mogą wymagać dostosowania, aby wykonać przypinanie w kompatybilny sposób na każdym poziomie. Jeśli nie przeszkadza Ci złożoność wprowadzona przez wdrożenie przypinania z dobrym skalowaniem, jest to dobre podejście. W większości przypadków stwierdzamy, że bardziej inwazyjne i podatne na błędy jest wdrażanie przypinania w sposób niezakłócający niż zapewnianie przestrzeni prawie zerowej. Mając oryginalną (pojedynczą) macierz, biblioteka solvera może również sprawdzić, czy podana przestrzeń zerowa jest rzeczywiście przestrzenią zerową, chroniąc w ten sposób przed powszechnym błędem.

Jed Brown
źródło