Jak wybrać dobry solver Riemanna podczas numerycznego rozwiązywania systemu hiperbolicznych PDE?

16

Wiele metod numerycznych dla hiperbolicznych PDE opiera się na zastosowaniu solverów Riemanna. Takie solwery są niezbędne do dokładnego wychwytywania fal uderzeniowych. Istnieje szereg takich solverów dla najlepiej zbadanych systemów (np. Solverów dokładnych, solarów Roe, solverów HLL). Jak zdecydować, którego użyć?

David Ketcheson
źródło

Odpowiedzi:

4

W numerycznym rozwiązaniu hiperbolicznych PDE zastosowanie solverów Riemanna jest niezbędnym składnikiem konserwatywnych metod przechwytywania uderzeń do dokładnej symulacji problemów falowych, które mogą mieć wstrząsy (nieciągłe skoki w zachowanych zmiennych). Aby uzyskać dokładne rozwiązania takich problemów, musimy zastosować odpowiednie techniki upwindingu - odpowiada za to solver Riemann. Solver Riemanna szuka dokładnego rozwiązania problemu interfejsu między komórkami (rys. W objętościach skończonych) lub elementami (rys. W nieciągłych metodach skończonych elementów Galerkina). Rozwiązanie tego problemu interfejsu opiera się na rozwiązaniu dowolnej strony interfejsu i ma na celu wykorzystanie go jako podstawy do dokładnej rekonstrukcji (liczbowego) strumienia (w kategoriach zachowanych zmiennych) w interfejsie.

Istnieją dwa standardowe podejścia do rozwiązywania takich (lokalnych dla interfejsu) problemów Riemanna, a mianowicie dokładne i przybliżone rozwiązania Riemanna. Dla wielu PDE nie ma dokładnego rozwiązania w formie zamkniętej, w którym to przypadku musimy zastosować przybliżone solwery Riemanna. W praktyce dokładne rozwiązanie problemów Riemanna może być (zbyt) kosztowne. W takim przypadku bardziej praktyczne może być zastosowanie przybliżonych rozwiązań Riemanna. Z tego samego powodu topniki typu Lax-Freidricha są szeroko stosowane jako prosty środek.

Zasadniczo wybór pomiędzy solverami Riemanna ma związek z tym, jak dokładnie chce się reprezentować prędkości fali rozwiązania i wynikową wydajność.

To zależy od problemu. Problem Riemanna opiera się na danych z obu stron interfejsów komórkowych. Aby zrekonstruować strumień w interfejsie w oparciu o te dane, musimy znać informacje o pełnej strukturze falowej danego hiperbolicznego PDE. To sprawia, że ​​problem Riemanna jest zależny od problemu, a zatem również wybór rozwiązania Riemann. Krótko mówiąc, dokładne solwery starają się wziąć pod uwagę strukturę pełnej fali, solwery Roe oparte są na aproksymacji lokalnej (przez linearyzację i specjalne uśrednianie) lokalnej fali, solver HLL opiera się na szacowaniu dwóch dominujących prędkości fal w lokalnym falować strukturę, a następnie narzucić ochronę, spełniając warunek Rankine-Hugoniot, aby wytrzymać wstrząsy lub nieciągłości kontaktu.

Zatem wybór pomiędzy konkretnymi rozwiązaniami, dokładnymi rozwiązaniami lub przybliżonymi rozwiązaniami Roe / HLL / etc zależy od znalezienia równowagi między dokładnością (naśladując fizykę leżącą u podstaw równań modelu) a potrzebami w zakresie wydajności. W końcu - jak widzę - w praktyce często wymagania dotyczące wydajności dyktują użycie przybliżonych solwerów Riemanna (np. Typu Lax-Friedrichs).

Dobrą ekspozycję na ten temat podaje EF Toro w swoim podręczniku „Solvery Riemanna i numeryczne metody dynamiki płynów”, Springer.

Allan P. Engsig-Karup
źródło
2
Ale nie mów absolutnie nic o tym, jak oceniasz swoje dane nawet dla jednej pary solverów. Zawsze równoważysz dokładność i wydajność, niezależnie od obliczeń.
Matt Knepley,
2

Zostałem doprowadzony do przekonania, że ​​do liczb numerycznych niskiego rzędu potrzebne są wysokiej jakości solwery Riemanna, a do numerycznych wysokich rzędów można używać niskiej jakości solverów Riemann. Intuicyjnie istnieje pewna liczba FLOP-ów potrzebnych do uchwycenia fizyki, poniżej której znajduje się jeden wąż.

I tak, w odpowiedzi znajduje się również zero treści z perspektywy metryki oceny ...

Rhys Ulerich
źródło